Sinus till fyrkant
- SeniorLemuren
- Inlägg: 8417
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Sinus till fyrkant
Vilket är det absolut enklaste sättet att omvandla en 12 V sinusspänning (uttag w från bilgenerator) till en 5 V fyrkantvåg för input till µC. Finns det någon färdig krets eller använder man op-förstärkare, eller vad?
Re: Sinus till fyrkant
"Klippa" ner den (schottky dioder till GND och 5V) och in på en
Schmitt-trigger ingång på processorn. Plus lite filtrering. Nu så
ger kanske en bilgenerator en lite "smutsig" spänning, så en
optokopplare emellan som lite isolering kan vara bra.
Jag har några optokopplare för AC (de har dubbla lysdioder på
ingången så de leder under båda faserna), jag kan skicka
över några stycken.
Man kan även använda en vanlig 4000 CMOS krets med Scmitt
trigger ingång, om man inte har någon (ledig) på processorn.
Alltså mellan optokopplaren och processorn.
Schmitt-trigger ingång på processorn. Plus lite filtrering. Nu så
ger kanske en bilgenerator en lite "smutsig" spänning, så en
optokopplare emellan som lite isolering kan vara bra.
Jag har några optokopplare för AC (de har dubbla lysdioder på
ingången så de leder under båda faserna), jag kan skicka
över några stycken.
Man kan även använda en vanlig 4000 CMOS krets med Scmitt
trigger ingång, om man inte har någon (ledig) på processorn.
Alltså mellan optokopplaren och processorn.
Re: Sinus till fyrkant
Jag antar att det rör sig om mätning av RPM eller liknande och då är duty-cycle knappast en viktig faktor.
Min lösning hade varit:
* W kommer in på ett RC-lågpass filter, bara för att ta bort de värsta störningar.
* Ut från filtret går till ett basmotstånd till en NPN-transistor.
* Mellan bas och emitter monteras en diod (t.ex. 1N4148) med katod mot basen, detta säkrar mot zenereffekten vid negativa spänningar.
* Uttag på kollektorn, lägg till en pull-up och du får trevliga pulser.
Kan såklart göras med en N-MOSFET men då behöver man en zenerdiod istället för en 1N4148.
Schmitt-trigger funktionen är helt OK att ha med men den behövs inte, får man störningar är de sannolikt så korta att µC'n inte hinner att flagga ny interrupt och blir det ett problem kan man filtrera i mjukvaran (pulser inom xx från förra kastas).
Min lösning hade varit:
* W kommer in på ett RC-lågpass filter, bara för att ta bort de värsta störningar.
* Ut från filtret går till ett basmotstånd till en NPN-transistor.
* Mellan bas och emitter monteras en diod (t.ex. 1N4148) med katod mot basen, detta säkrar mot zenereffekten vid negativa spänningar.
* Uttag på kollektorn, lägg till en pull-up och du får trevliga pulser.
Kan såklart göras med en N-MOSFET men då behöver man en zenerdiod istället för en 1N4148.
Schmitt-trigger funktionen är helt OK att ha med men den behövs inte, får man störningar är de sannolikt så korta att µC'n inte hinner att flagga ny interrupt och blir det ett problem kan man filtrera i mjukvaran (pulser inom xx från förra kastas).
- SeniorLemuren
- Inlägg: 8417
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Sinus till fyrkant
@Icecap. Japp. Jag har börjat pilla med den varvräknare som du var behjälplig med. Tanken var ju att hänga på en magnet på insprutningspumpen och montera en hallgivare mot den.
Det innebär lite småmekaniskt pyssel nere i ett trångt maskinrum. Jag har därför funderat på om inte den enklaste lösningen är att anpassa det befintliga varväknarkortet mot varvräknaruttaget på generatorn.
Det sitter en PIC16F628A på det kortet och comparator-ingångarna A0 och A3 är lediga.
@sodjan. Jag tänker att varvtalet är så högt på generatorn jämfört med motorn så det borde räcka att indikera ena halvan av en period. Jag har ett gäng med enkelriktade optokopplare liggandes.
Detta att
Det innebär lite småmekaniskt pyssel nere i ett trångt maskinrum. Jag har därför funderat på om inte den enklaste lösningen är att anpassa det befintliga varväknarkortet mot varvräknaruttaget på generatorn.
Det sitter en PIC16F628A på det kortet och comparator-ingångarna A0 och A3 är lediga.
@sodjan. Jag tänker att varvtalet är så högt på generatorn jämfört med motorn så det borde räcka att indikera ena halvan av en period. Jag har ett gäng med enkelriktade optokopplare liggandes.
Detta att
ligger utanför mitt kunskapsområde och kräver lite mer förklaring. Jag tänker mer på zenerdiod när det gäller att begränsa spänningen?"Klippa" ner den (schottky dioder till GND och 5V)"

Re: Sinus till fyrkant
http://hades.mech.northwestern.edu/inde ... tage_Clamp
Visst KAN man använda zenerdioder, men vad jag förstått har de vissa nackdelar (ex. långsamma, flack tröskel).
Visst KAN man använda zenerdioder, men vad jag förstått har de vissa nackdelar (ex. långsamma, flack tröskel).
Re: Sinus till fyrkant
Borde inte RC-filter, spänningsdelning och en OP som klarar rail-to-rail matad med 5V funka fint?
MVH: Mikael
MVH: Mikael
Re: Sinus till fyrkant
En sån här med kanske en enkel spänningsdelare på ingången
och sedan mata 555:an med +5V i stället för +9V

http://www.circuitstoday.com/scmitt-tri ... ing-ne-555
och sedan mata 555:an med +5V i stället för +9V
http://www.circuitstoday.com/scmitt-tri ... ing-ne-555
Re: Sinus till fyrkant
Enklast och billigast:
Första R+C bildar ett lågpassfilter, en lämplig Ft (gränsfrekvens) är strax över högsta frekvens som ska mätas.
Motståndet mellan RC-filtret och basen/dioden är "bara" strömbegränsning, ett värde runt 10k - 47k duger nog alldeles utmärkt.
Pull-up-motståndet kan ligga runt 10k eller så, man ska bara se till att signalen in kan dra det "klart och tydligt" till noll.
Transistorn är en TUN (Transistor, Universal, NPN) alias BC547C eller liknande. De exakta data är alltså inte speciellt kritiska men en småsignal-typ är långt att föredra.
Dioden (1N4148) ser till att om signalen in blir för mycket negativ kommer transistorn inte att gå på pga. zenereffekten som finns i bipolära transistorer.Första R+C bildar ett lågpassfilter, en lämplig Ft (gränsfrekvens) är strax över högsta frekvens som ska mätas.
Motståndet mellan RC-filtret och basen/dioden är "bara" strömbegränsning, ett värde runt 10k - 47k duger nog alldeles utmärkt.
Pull-up-motståndet kan ligga runt 10k eller så, man ska bara se till att signalen in kan dra det "klart och tydligt" till noll.
Transistorn är en TUN (Transistor, Universal, NPN) alias BC547C eller liknande. De exakta data är alltså inte speciellt kritiska men en småsignal-typ är långt att föredra.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
- SeniorLemuren
- Inlägg: 8417
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Sinus till fyrkant
Tack, bra lösning. Då slipper jag krångla med comparatorn i PIC:en, utan kan gå på porten som var tänkt till hallgivaren direkt.
Re: Sinus till fyrkant
Om man byter ut dioden mot en zener och tar bort transistorn borde det också funka.
Re: Sinus till fyrkant
Inte lika bra. Skillnaden med transistor kontra utan är att transistorn ger ett snabbare omslag.
Re: Sinus till fyrkant
Om du tankar ned en zip-fil från citroen xm-avdelningen på min manualsida, filen heter BOX-och nått nummer eller nått liknande.
Den innehåller schema mm på exakt vad du behöver.
Det är en signalanpassningsburk mellan en givare som sitter på hastighetsmätaren (magnet och spole, dvs en liten generator, typ), och övriga styrdatorer i bilen.
Det kan ge dig ideer om hur man löst det hela, dessutom emulerar den felfunktioner såsom kortslutning och avbrott i givaren, allt med några OP.
Den innehåller schema mm på exakt vad du behöver.
Det är en signalanpassningsburk mellan en givare som sitter på hastighetsmätaren (magnet och spole, dvs en liten generator, typ), och övriga styrdatorer i bilen.
Det kan ge dig ideer om hur man löst det hela, dessutom emulerar den felfunktioner såsom kortslutning och avbrott i givaren, allt med några OP.
- SeniorLemuren
- Inlägg: 8417
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Sinus till fyrkant
Tack för det, men saken är den att jag redan byggt elektroniken till varvräknaren, så allt är klart förutom signalen in på kortet´och det presenterade Icecap en bra och enkel lösning på, som innebär att jag plockar på ett fåtal extra komponenter på det befintliga kortet.
Programmeringen är också¨klar, får ändra någon variabel för att få varvtalet att stämma med antalet pulser. Så detta verkar vara den smidigaste lösningen. Icecap var med och tog fram den befintliga lösningen så han är bra insatt i läget.
Programmeringen är också¨klar, får ändra någon variabel för att få varvtalet att stämma med antalet pulser. Så detta verkar vara den smidigaste lösningen. Icecap var med och tog fram den befintliga lösningen så han är bra insatt i läget.
Re: Sinus till fyrkant
Jag menade inte att du skulle kopiera den, dock kika på den, för ideer och förbättringar av din egen konstruktion.
Att tillägga, modulen i fråga är originalmonterad in många bilar, orsaken till att jag REade den är att vissa lödningar tenderar att vibrera sönder av någon anledning med tiden, Och det är bra med schema när man felsöker.
Att tillägga, modulen i fråga är originalmonterad in många bilar, orsaken till att jag REade den är att vissa lödningar tenderar att vibrera sönder av någon anledning med tiden, Och det är bra med schema när man felsöker.