Krets för att dela PWM pulslängd? [Löst]
Re: Krets för att dela PWM pulslängd?
Att mäta PWM-signalen görs rimligt enkelt med t.ex. en PIC där man använder Capture-enheten.
En Capture fungerar oftast på så sätt att man startar den rätta timer (som Capture är kopplat till) och enabler den flanka/de flankor som ska trigga Capture.
Resultatet blir att man kan läsa tiden (i timer-clocks) från förra trigning.
Subtraherar man 'förre' tiden från 'nu' tiden får man längden.
Om man t.ex. fångar båda stigande o fallande flank, kan man sortera vad som är vad vid att snabbt kolla pinnen som PWM-signalen kommer ind på.
Med lite sorterande kan man då enkelt få µC till att anpassa till samma PWM-frekvens (tiden mellan fallande flankor) samt läsa PWM 'ON'-tiden (tiden mellan stigande o fallande flanker) och sedan programmerat den inbyggda PWM-enhet till att "härma" - fast med en viss justering av PWM 'ON' tiden efter behag.
Enda kruxet kan vara om systemet får tacho-signal från fläkten o anser att "nu är det inte fläkt nog, panikstopp!"
En Capture fungerar oftast på så sätt att man startar den rätta timer (som Capture är kopplat till) och enabler den flanka/de flankor som ska trigga Capture.
Resultatet blir att man kan läsa tiden (i timer-clocks) från förra trigning.
Subtraherar man 'förre' tiden från 'nu' tiden får man längden.
Om man t.ex. fångar båda stigande o fallande flank, kan man sortera vad som är vad vid att snabbt kolla pinnen som PWM-signalen kommer ind på.
Med lite sorterande kan man då enkelt få µC till att anpassa till samma PWM-frekvens (tiden mellan fallande flankor) samt läsa PWM 'ON'-tiden (tiden mellan stigande o fallande flanker) och sedan programmerat den inbyggda PWM-enhet till att "härma" - fast med en viss justering av PWM 'ON' tiden efter behag.
Enda kruxet kan vara om systemet får tacho-signal från fläkten o anser att "nu är det inte fläkt nog, panikstopp!"
- Electricguy
- Inlägg: 12453
- Blev medlem: 15 augusti 2007, 16:52:14
- Ort: Kälmä' typ..
Re: Krets för att dela PWM pulslängd?
Jo, rättelse. Det *finns* en inställning för det i BIOS. Men enbart för att öka hastigheten. Den är redan nedställd så mycket det går, så det är inget alternativ.
Icecap,
Det låter ju inte så herrans komplicerat i sig. Men jag är verkligen ingen programmerare, så om det blir en PIC-lösning kommer jag behöva 100% programmeringshjälp.
Chefen petar en del med PIC-BASIC, så en början vore nog att fråga honom om assistans med det, och se ifall man kan få till en fungerande lösning den vägen, förutsatt att koden blir snabb nog.
Det känns spontant smidigare som ni säger, att kleta dit en mikroprocessor på vägen, så det inte reulterar i en halv näve med komponenter för att få samma resultat.
- SeniorLemuren
- Inlägg: 8365
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Krets för att dela PWM pulslängd?
När jag ser en sådan attityd som den här när någon i all välmening vill hjälpa till så tappar i alla fall jag inmtresse för tråden. För övrigt så tycker jag att Kafemans färslag var intressant :Electricguy skrev: ↑27 april 2025, 12:57:08 Och på vilket sätt ändrar det resultatet jag söker? Den där informationen är tämligen meningslös i sammanhanget.
Har du inga tankar eller idéer för hur jag kan lösa problemet så kan du sluta försöka visa dig duktig.
Vibrationerna har jag ju redan löst genom att byta till moderna fläktar. Det är ljudnivån jag vill få ner.
Saxat från mitt tidigare inlägg> "Seriemotstånd på matningen till respektive fläkt är heller inte praktiskt, då de kan dra ett par ampere styck, och det inte finns plats för något så stort motstånd."
Har du ens läst? Varje fläkt drar ca 38W vid full hastighet.
Ett alternativ är att RC lågpass-filtrera befintlig PWM till en variabel DC-nivå som sedan styr en PWM-krets med önskad relation.
Det räcker med en OP-krets för detta.
-
- Inlägg: 7052
- Blev medlem: 31 augusti 2006, 16:42:43
- Ort: Jamtland
Re: Krets för att dela PWM pulslängd?
SeniorLemuren:
Kafemans förslag fungerar om det är medelnivån på PWM signalen som styr.
I en del fall av PWM styrning är det en ren digital styrning. Dvs. du känner av hur lång tid det är hög eller låg signal. Ingången är en digital ingång.
Har man en analog ingång kan man känna medelnivån på insignalen. Då kan man klara av både digitala PWM signaler och/eller en analog signal som speglar medelnivån.
Tar man reda på vilken av dessa insignaler som fungerar kan man använda den lättare lösningen som Kafeman föreslog.
Kafemans förslag fungerar om det är medelnivån på PWM signalen som styr.
I en del fall av PWM styrning är det en ren digital styrning. Dvs. du känner av hur lång tid det är hög eller låg signal. Ingången är en digital ingång.
Har man en analog ingång kan man känna medelnivån på insignalen. Då kan man klara av både digitala PWM signaler och/eller en analog signal som speglar medelnivån.
Tar man reda på vilken av dessa insignaler som fungerar kan man använda den lättare lösningen som Kafeman föreslog.
- MadModder
- Co Admin
- Inlägg: 31279
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Krets för att dela PWM pulslängd?
Seriekopplar du två fläktar kommer en fläkt få en offset på halva matningsspänningen, och det är inte alls säkert att PWM-signalen kan tas emot korrekt då.
Och angående att halvera antalet pulser så är inte det heller säkert att det funkar bra.
De PWM-fläktar jag testat att endast mata med spänning går på full fräs.
Frågan är hur stort frekvensområde fläktarna klarar. Om det går att gå ner 50% utan att den får för sig att börja varva upp mot max.
Re: Krets för att dela PWM pulslängd?
Frekvensåterkopplingen från fläkten kanske kan dubbleras (att halvera är lättare) då borde HP fläktkontrollern dra ned fläktvarvet (minska PWM längden) för att få rätt varvtal?
Omvänt om du halverar PWM så kommer kontrollern att tycka att fläkten går för sakta enligt frekvensåterkopplingen och då dra på PWM längden?
Omvänt om du halverar PWM så kommer kontrollern att tycka att fläkten går för sakta enligt frekvensåterkopplingen och då dra på PWM längden?
- MadModder
- Co Admin
- Inlägg: 31279
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Krets för att dela PWM pulslängd?
Hur ofta håller en dator koll på att varvtalet är exakt rätt?
Alla jag stött på sätter bara fläktarna på inställt värde utefter en temperaturkurva, och så är det bra med det.
Kontrollen är temperatur samt om fläktarna snurrar alls.
Alla jag stött på sätter bara fläktarna på inställt värde utefter en temperaturkurva, och så är det bra med det.
Kontrollen är temperatur samt om fläktarna snurrar alls.
Re: Krets för att dela PWM pulslängd?
Tja... om datorn använder tacho-signal för att styra PWM-signalen, kanske det räcker med att dubbla tacho-signalen.
Det ville ju ske på ung. samma sätt som förra beskrivningen.
Det ville ju ske på ung. samma sätt som förra beskrivningen.
Re: Krets för att dela PWM pulslängd?
Jag har ingen praktisk erfarenhet av fläktar i server sammanhang utan resonerade endast logiskt vad som kan hända. Det är ju tråkigt om kontrollern tar hänsyn till fläkthastigheten och då vill inte lösningen med halverad PWM puls fungera. Hastighetssignalen kan ju även signalera att fläkten är blockerad och då borde servern varna för fel på fläkt X.
- Electricguy
- Inlägg: 12453
- Blev medlem: 15 augusti 2007, 16:52:14
- Ort: Kälmä' typ..
Re: Krets för att dela PWM pulslängd?
Mja av erfarenhet så är styrning och avläsning av datorfläktar inte så hårt kopplade, som Madmodder nämnde.
I servrar är det vanligtvis en smula grinigare, att servern under uppstart läser av hastigheten på fläktarna efter en utsatt tid, och kollar om de har nått en godtycklig hastighet. Vilken den lägsta godtagna hastigheten i det här fallet är vet jag faktiskt inte, så det hela är ett experiment med för att se om det går alls.
Jag tvivlar dock på att kontrollern kommer försöka höja fläkthastigheten om man externt tvingar ner fläkten till en lägre hastighet. Men jag vet faktiskt inte helt säkert hur jävlig kontrollern är. Ett experiment skulle kunna vara att ge en fläkt PWM från en helt fristående källa, och dra ner tills servern blir grinig. Är det värdet under 50% av det inställda serverns kontroller genererar så bör det gå bra.
Det slog mig när jag började tänka på det att jag har en Noctua NA-FC1 liggande, som är en liten extern PWM generator för datorfläktar, som bara kopplas "på vägen" till valfri fläkt.
Den jäkeln verkar faktiskt ha en funktion för att sänka moderkortets genererade signal till ett eget inställt värde! https://noctua.at/en/na-fc1
"By adjusting the NA-FC1’s speed control dial, users can either manually set a PWM duty cycle from 0 to 100% or reduce the PWM duty cycle supplied by PC motherboards in order to have the fans running slower than the automatic motherboard fan control would allow"
Detta måste provas. Tyvärr kostar den i runda slängar 300kr, så att köpa 6st och slakta känns en aning i överkant.
En fulgrej skulle eventuellt vara att lyfta ut PWM ingången från alla fläktar och koppla en sådan NA-FC1 till alla sex fläktar. Jag har aldrig märkt att servern varierar fläktarna individuellt ändå, så från styrningen sett skulle det nog gå bra. Och falerar en fläkt kommer servern fortfarande gnälla, och skulle PWM-signalen trilla bort kommer fläktarna kliva upp till 100%.
I servrar är det vanligtvis en smula grinigare, att servern under uppstart läser av hastigheten på fläktarna efter en utsatt tid, och kollar om de har nått en godtycklig hastighet. Vilken den lägsta godtagna hastigheten i det här fallet är vet jag faktiskt inte, så det hela är ett experiment med för att se om det går alls.
Jag tvivlar dock på att kontrollern kommer försöka höja fläkthastigheten om man externt tvingar ner fläkten till en lägre hastighet. Men jag vet faktiskt inte helt säkert hur jävlig kontrollern är. Ett experiment skulle kunna vara att ge en fläkt PWM från en helt fristående källa, och dra ner tills servern blir grinig. Är det värdet under 50% av det inställda serverns kontroller genererar så bör det gå bra.
Det slog mig när jag började tänka på det att jag har en Noctua NA-FC1 liggande, som är en liten extern PWM generator för datorfläktar, som bara kopplas "på vägen" till valfri fläkt.
Den jäkeln verkar faktiskt ha en funktion för att sänka moderkortets genererade signal till ett eget inställt värde! https://noctua.at/en/na-fc1
"By adjusting the NA-FC1’s speed control dial, users can either manually set a PWM duty cycle from 0 to 100% or reduce the PWM duty cycle supplied by PC motherboards in order to have the fans running slower than the automatic motherboard fan control would allow"
Detta måste provas. Tyvärr kostar den i runda slängar 300kr, så att köpa 6st och slakta känns en aning i överkant.
En fulgrej skulle eventuellt vara att lyfta ut PWM ingången från alla fläktar och koppla en sådan NA-FC1 till alla sex fläktar. Jag har aldrig märkt att servern varierar fläktarna individuellt ändå, så från styrningen sett skulle det nog gå bra. Och falerar en fläkt kommer servern fortfarande gnälla, och skulle PWM-signalen trilla bort kommer fläktarna kliva upp till 100%.

Re: Krets för att dela PWM pulslängd?
För länge sedan hade jag en logger som mätte temperaturer med en PWM-givare. Loggern kunde dessvärre inte presentera temperaturer under noll och jag behövde mäta ner till -20 grader. Konstruerade då en PWM-förlängare som blev så här:
Gjorde även en liten beskrivning:
Förkortning borde ju vara samma sak som inverterad förlängning, så det borde fungera åt andra hållet också.
I mitt fall var det krav på viss noggrannhet och dessutom var frekvensen inte fast vilket ställde till det. Om jag nu minns rätt så är det är en mät- och regler-loop som mäter och justerar den procentuella förlängningen med en fast procentsiffra. Bestämmande komponenter är markerade med *. I TS fall antar jag att noggrannheten är oväsentlig och kanske frekvensen fast, så mycket av detta är "overkill" och kan förenklas betydlig. Frågan är om man inte kan plocka bort OP-kretsen helt.
Gjorde även en liten beskrivning:
Förkortning borde ju vara samma sak som inverterad förlängning, så det borde fungera åt andra hållet också.
I mitt fall var det krav på viss noggrannhet och dessutom var frekvensen inte fast vilket ställde till det. Om jag nu minns rätt så är det är en mät- och regler-loop som mäter och justerar den procentuella förlängningen med en fast procentsiffra. Bestämmande komponenter är markerade med *. I TS fall antar jag att noggrannheten är oväsentlig och kanske frekvensen fast, så mycket av detta är "overkill" och kan förenklas betydlig. Frågan är om man inte kan plocka bort OP-kretsen helt.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
- Electricguy
- Inlägg: 12453
- Blev medlem: 15 augusti 2007, 16:52:14
- Ort: Kälmä' typ..
Re: Krets för att dela PWM pulslängd?
Det där var ju en lite rolig lösning, på ett något udda problem. Tack för att du delade!
Och tack till er andra som kommit med bra tankar, idéer och synpunkter.
Det blev ful-lösningen till slut, med alla fläktar styrda från en PWM-utgång, via den lilla Noctua fläktkontrollern jag hade, så jag helt enkelt kan ställa vad maxvärde på inkommande signal är, och kompensera utefter det.
Det går att köra fläktarna på lägsta hastighet utan att servern bryr sig, så den verkar inte bry sig så mycket när allt väl är igång.
Det var verkligen inte planerat att bli denna lösningen, för jag visste inte ens om att den kontrollern kunde göra precis det jag ville. Men det blev ju ändå en del intressant diskussion och input av det hela!
Såhär blev det till slut. De gula trådarna kopplar ihop alla PWM-ingångar på fläktarna, via små kontaktdon till fläktkontrollen, som får PWM från moderkortet via den färsta fläkten i fronten av servern (till höger i bild).
Jag tyckte det verkade logiskt, även fast det säkert inte spelar någon roll alls.
Och tack till er andra som kommit med bra tankar, idéer och synpunkter.
Det blev ful-lösningen till slut, med alla fläktar styrda från en PWM-utgång, via den lilla Noctua fläktkontrollern jag hade, så jag helt enkelt kan ställa vad maxvärde på inkommande signal är, och kompensera utefter det.
Det går att köra fläktarna på lägsta hastighet utan att servern bryr sig, så den verkar inte bry sig så mycket när allt väl är igång.
Det var verkligen inte planerat att bli denna lösningen, för jag visste inte ens om att den kontrollern kunde göra precis det jag ville. Men det blev ju ändå en del intressant diskussion och input av det hela!

Såhär blev det till slut. De gula trådarna kopplar ihop alla PWM-ingångar på fläktarna, via små kontaktdon till fläktkontrollen, som får PWM från moderkortet via den färsta fläkten i fronten av servern (till höger i bild).
Jag tyckte det verkade logiskt, även fast det säkert inte spelar någon roll alls.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Krets för att dela PWM pulslängd?
man skulle kunna korta en puls en relativt lätt
ex genom att ha en liten fördröjning av starten på pulsen
ex är pulsen som minst 1ms på och 10 ms av
så kan man göra en fördröjning på 0.5 ms av på delen och då få 0.5ms på och 10 av
vill datorn ha mer kyla så kommer den öka på tiden till säg 2ms men fläktarna får 1.5 ms, vilket lär räcka
en 4093 ett motstånd och en konding bör kunna lösa den saken
ex genom att ha en liten fördröjning av starten på pulsen
ex är pulsen som minst 1ms på och 10 ms av
så kan man göra en fördröjning på 0.5 ms av på delen och då få 0.5ms på och 10 av
vill datorn ha mer kyla så kommer den öka på tiden till säg 2ms men fläktarna får 1.5 ms, vilket lär räcka
en 4093 ett motstånd och en konding bör kunna lösa den saken
- HUGGBÄVERN
- Tidigare soundbrigade
- Inlägg: 34783
- Blev medlem: 23 augusti 2006, 22:44:11
- Ort: Lilla Paris
- Kontakt:
Re: Krets för att dela PWM pulslängd? [Löst]
Löst står det i rubriken men slänger in en grej efter Gryms idé:
https://yusynth.net/Modular/EN/PULSEDELAY/index.html
https://yusynth.net/Modular/EN/PULSEDELAY/index.html
Re: Krets för att dela PWM pulslängd? [Löst]
Kul det löste sig och intressant att inte ens HP bryr sig om att kontrollera att fläktarna går som dom förväntas genom att kontrollera förväntad hastighet (PWM) mot verklig hastighet (tacho signal).