Ved daisy chaining av roterende absolutte encodere, blir det koblet sammen flere encodere  i en serie slik at de kan kommunisere med en enkelt kontroller.

I denne situasjonen blir det brukt 6 stk EMS22A50 absolutte encodere som er koblet i serie i robot arm kontrolleren, og blir lest av en arduino mikrokontroller.

Det er dermed 1 encoder for hver av de følgende leddene; Base joint, Shoulder joint, Elbow joint, Wrist joint 1, Wrist joint 2 og Wrist joint 3.

Hver av disse encoderene har en oppløsning slik at de kan vise 1024 ulike posisjoner. 


Enkoderene, som blir brukt, har 6 pins hver. Under er en oversikt over hver av hver av de.

Pin 1 (DI) - Absolutt Digital Inngang (Datainngang): Denne pinnen brukes til å lese digital data inn i encoderen. Den mottar data fra den forrige encoderen i daisy-kjeden.

Pin 2 (CLK) - Klokke: Denne pinnen gir klokkepulser for å synkronisere dataoverføringen mellom encoderne i daisy-kjeden. Dette sikrer at data blir sendt og mottatt på riktig tidspunkt.

Pin 3 - GND: Jord.

Pin 4 - Digital Utgang: Denne pinnen brukes til å sende digital data fra encoderen til den neste encoderen i daisy-chainen.

Pin 5 - VCC: Dette kan være 5 eller 3.3 VDC

Pin 6 - CS (Chip Select): Denne pinnen brukes til å velge encoderen for kommunikasjon i et system med flere enheter. Når den er jordet, er encoderen valgt for kommunikasjon, og når den er høy, er encoderen ikke valgt.


Bildet under viser hvordan kommunikasjonen foregår.


Bildet viser at avlesningen blir iniatilisert av klokke pin-en. 16 bits, av informasjon,  blir avlest om hver encoder.

Mellom hver avlesning av encoder data er det en ekstra klokkesyklus før avlesningen av den neste encoderen.

De første 10 bitene er posisjonsdata mens de 6 er noen slags statusindikatorer eller diagnostiske flagg.

En konkret beskrivelse av hver av disse finnest under:


Bit nr. 11 (End of offset compensation algorithm): Denne indikatoren viser om kalibreringen for offsetkompensasjon er fullført. Offsetkompensasjon er en prosess for å korrigere eventuelle systematiske feil i målingene.

Når bit-en 1, betyr dette dermed at kalibreringen er fullført og dataene burde være mer nøyaktige.

Bit nr. 12 (Cordic overflow indicating an error in cordic part): Dette signalet indikerer en feil i CORDIC-delen (Coordinate Rotation Digital Computer) av sensoren.

Hvis det er en overflow, det vil si at bit-en er 1, er dette en indikator på at det har skjedd en feil som kan ha påvirket nøyaktigheten til de vinkelmålingene som er rapportert.

Bit nr. 13 (Linearity alarm): Denne indikatoren viser om det har vært et problem med lineariteten i sensorens målinger. Hvis bit nr. 11 er 1, indikerer det at målingene kanskje ikke er lineære, og dette kan påvirke nøyaktigheten av dataene for posisjons.

Bit nr. 14 (Increase in magnetic magnitude): Dette signalet indikerer at sensoren registrerer en økning i den magnetiske styrken. En slik økning kan påvirke sensorens målinger.

Bit nr. 15 (Decrease in magnetic magnitude): På samme måte som bit nr. 14, men dette signalet indikerer en reduksjon i den magnetiske styrken. 

Dette kan også påvirke nøyaktigheten til sensorens målinger.

Bit nr. 16 (Even parity for detecting bits 1-15 transmission error): Dette er en databit, som har som formål å gjøre det mulig å sjekke om dataene har blitt endret under lagring eller overføring.

Dette skal brukes for å gi en indikasjon på om det har vært en overføringsfeil i de første 15 bitene. Summen av bit-ene som er 1 skal alltid vil være et partall. 

Hvis summen ikke er et partall, indikerer det en overføringsfeil.



   


Produktdatablad for Bourns EMS22A50 roterende absolutte encoder:

bourns.com/product-datasheets/EMS22A.pdff







  • No labels