Funderingar kring att skicka PWM från en utrustning till en annan?
Postat: 14 mars 2022, 13:09:54
Om vi tänker att jag exempelvis har en Arduino där jag kör PWM på en av dess utgångar och sen har jag nån annan utrustning där jag sen vill läsa av denna signalen som en analog 0-5V signal, det kan exempelvis vara en raspberry PI, en annan Arduino eller något helt annat system.
En CPU liknande dessa jobbar ju cykliskt och läser av ingångar/utgångar, exikverar programmet och sedan börjar det om igen om och om igen i en rasande takt.
Om man då skickar ut en PWM-signal så skickar ju den ut denna med en viss frekvens på exempelvis 600Hz alltså av-på-av-på-av-på blixtsnabbt det med.
Man har alltså i praktiken aldrig en analog utsignal utan det enda som gör att den uppfattas som analog är trögheten i objektet som ska styras.
Och beroende på hur "tungt" objektet är så kan man behöva få öka på eller minska PWM-signalen för att få rätt resultat.
En lampa som drar mycket ström kan ju t.ex vara ett sådant "tungt" objekt medans en ingång på en raspberry pi har ju jättehög impedans och därför inte är lika "tung" som lampan.
Skulle man mäta PWM-signalen med ett oscilloskop så skulle man knappt se några fyrkantsvågor alls med lampan som belastning (utan det skulle mer bara bli som en varierande spänningsnivå) men med raspberryn så skulle det vara fyrkantsvåg hela tiden.
Jag är alltså fullt medveten om att "tunga" objekt kräver MOSFETstyrning för att inte bränna något men nu är det inte det frågan handlar om.
Hur uppfattar då det styrda objektet när den matas med en PWM-signal? Alltså med tanke på den jobbar cyklisk med ett sjuhelsikes tempo? I min värld så innebär ju därför detta att ibland så får den 100% och ibland 0% beroende på om fyrkantspulsen är hög eller låg vid tillfället.
Hur löser man då detta?
Jo med någon typ av lågpassfilter som dämpar signalen.
Men då kommer ju frågan, hur vet man vilka värden man ska ha på kondingar och resistorer för att det ska bli rätt?
En CPU liknande dessa jobbar ju cykliskt och läser av ingångar/utgångar, exikverar programmet och sedan börjar det om igen om och om igen i en rasande takt.
Om man då skickar ut en PWM-signal så skickar ju den ut denna med en viss frekvens på exempelvis 600Hz alltså av-på-av-på-av-på blixtsnabbt det med.
Man har alltså i praktiken aldrig en analog utsignal utan det enda som gör att den uppfattas som analog är trögheten i objektet som ska styras.
Och beroende på hur "tungt" objektet är så kan man behöva få öka på eller minska PWM-signalen för att få rätt resultat.
En lampa som drar mycket ström kan ju t.ex vara ett sådant "tungt" objekt medans en ingång på en raspberry pi har ju jättehög impedans och därför inte är lika "tung" som lampan.
Skulle man mäta PWM-signalen med ett oscilloskop så skulle man knappt se några fyrkantsvågor alls med lampan som belastning (utan det skulle mer bara bli som en varierande spänningsnivå) men med raspberryn så skulle det vara fyrkantsvåg hela tiden.
Jag är alltså fullt medveten om att "tunga" objekt kräver MOSFETstyrning för att inte bränna något men nu är det inte det frågan handlar om.
Hur uppfattar då det styrda objektet när den matas med en PWM-signal? Alltså med tanke på den jobbar cyklisk med ett sjuhelsikes tempo? I min värld så innebär ju därför detta att ibland så får den 100% och ibland 0% beroende på om fyrkantspulsen är hög eller låg vid tillfället.
Hur löser man då detta?
Jo med någon typ av lågpassfilter som dämpar signalen.
Men då kommer ju frågan, hur vet man vilka värden man ska ha på kondingar och resistorer för att det ska bli rätt?