Signalkurva från pulsgivare?

Övriga diskussioner relaterade till komponenter. Exempelvis radiorör, A/D, kontaktdon eller sensorer.
BJ
Inlägg: 8864
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Inlägg av BJ »

Jag tror att jag hade ungefär samma frekvens...

Jag menade både A och B.
Det första du frågade om blev jag lite osäker på nu,
Användarvisningsbild
Icecap
Inlägg: 26636
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Jag har gjort en sådan avläsning i mjukvara, den avläser 3 st encoders i ren mjukvara.

Jag har gjort så att den kollar inkommande nivåer och jämför med förra avläsningen. Om nivåerna för en av encoderna har varit i ett visst nivå (t.ex. '0' & '1') och NU har ett visst värde (t.ex. '1' & '1') räknar jag upp en räknare (som har förtecken), har de en annan kombination räknar jag ner räknaren.

Sedan överför jag nivåerna NU till nivåerna FÖRR och avslutar rutinen.

Då jag har massor av processorkraft tillövers kör den ISR som gör detta med 1KHz.
Användarvisningsbild
JimmyAndersson
Inlägg: 26577
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Jag brukar också använda den metoden och det fungerar fint. Kanske inte så konstigt: Jag fick tipset från Icecap. :)
jonas2307
Inlägg: 479
Blev medlem: 11 juni 2005, 08:48:33
Ort: Älvsjö

Inlägg av jonas2307 »

Nu var det en tid sedan jag byggde något med encoders men jag har för mig att jag använde port B på en PIC, den ger ett interrupt när den ändras.
Så man behövde inte läsa pinnarna förrän det hände något på dem.

-- Jonas
Användarvisningsbild
Icecap
Inlägg: 26636
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Låter som en bra lösning och användning av IOC-funktionen.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Håller med!

Eftersom man får avbrott vid vilken förändring som helst på flera pinnar så passar den utmärkt för detta.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Timerinterrupt blir lite mer okänslig för falska ändringar (kontaktstudsar t.ex).
Och om man har har cykler "to spare" så spelar det ingen större roll,
*något* måste ju processorn alltid göra... :-)
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Inlägg av vfr »

Jovisst. Det är ju riktigt. Men vill man ändå ha en effektiv avbrottsdriven variant så går ju den "filtreringen" också att lösa i avbrottsrutinen. Enklast med att läsa av pinnarna några ggr extra bara, annars lite mer avancerat med en timer som kollar när senaste förändringen skedde och bara godkänner efter viss stabil tid. Fast det är klart. Då är det liiite mer jobb, å andra sidan. :P
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Inlägg av Rocky_AL »

jag har fortfarande problem med pulsgivaren. Som jag har förstått det hela så ska de två utgångarna på pulsgivaren ändra läge vi varje hack (har modellen med distinkta lägen). Men när jag kopplar in allt och kollar med oscilloskop så är båda utgångarna alltid höga och när man vrider ett hack på pulsgivaren så ändras signalen till låg en kort stund, sedan tillbaka upp på hög nivå. Jag trodde att vissa hack/lägen var konstant låga och vissa var konstant höga. Är den trasig?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Hur är det kopplat ?

> Som jag har förstått det hela så ska de två utgångarna på pulsgivaren ändra läge vi varje hack...

Naj, en av dom, har jag för mig...
bearing
Inlägg: 11675
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Om det är så att din givare har distinkta lägen så stannar den på samma värde varje "hack".
Det är som jag skrev förut, den går igenom serien (00 01 11 10) 24 gånger per varv, den verkliga upplösningen är alltså 96 förändringar per varv.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Notera att visa encoders går igenom en full 4-fas cykel mellan varje "hack".
Andra modeller har ett hack per fas (alltså 4 hack för att få samma utsignal igen).
Det är lite oklart vilken det gäller i detta fall, men det är ju skitenkelt att mäta upp...

> den verkliga upplösningen är alltså 96 förändringar per varv.

Njae, den *praktiska* upplösningen är fortfarande 24 "hack" per varv, eftersom
den alltid stannar (vilar) i ett hack. Jag ser inte finessen med med en hel 4-fas
cykel för varje hack, man kan ju i alla fall inte använda det, och det blir bara
(4 gånger) mer job för dekodrutinen...
Rocky_AL
Inlägg: 617
Blev medlem: 7 december 2006, 15:14:50
Ort: Stockholm

Inlägg av Rocky_AL »

Pulsgivaren jag använder är art. nr. 35-847-60 på elfa. Databladet finns här (detta är även datablad för samma pulsgivare fast utan distinkta lägen): http://www.elfa.se/pdf/35/03584745.pdf
Denna pulsgivare kanske är en sådan som går igenom en hel 4-fascykel för varje hack.

Edit: Pulsgivaren är inkopplad så att terminal C är kopplad till jord. Terminalerna A och B är kopplade till varsin 10kΩ resistor som i sin tur går till +5V. Picens ingångar är kopplade direkt till terminal A/B.
bearing
Inlägg: 11675
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Inlägg av bearing »

Jag hjälpte en kompis använda en pulsgivare som ser ut precis som den i den här tråden, så jag antar att det var samma modell. Den hade alltså 24 cykler eller 96 förändringar per varv

>Jag ser inte finessen med med en hel 4-fas
cykel för varje hack, man kan ju i alla fall inte använda det, och det blir bara
(4 gånger) mer job för dekodrutinen...

Ja, det stämmer ju för modellen med hack. Med modellen utan hack är det en fördel.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

OK, då så, "databladet" som ELFA har var inte 100% tydligt på hur "hacken"
låg i förhållande till pulserna, så jag undvek avsiktligt att uttala mig om den.
Men, som jag sa, det är ju skitenkelt att mäta upp...
Skriv svar