Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Inkrementalni koderi često se koriste za industrijske primjene poput robotike ili praćenja pozicioniranja. Enkoderi za industrijske aplikacije uglavnom dolaze s diferencijalnim RS422 sučeljem.
U ovom malom projektu pokazat ću kako se koristi industrijski inkrementalni koder - u našem slučaju SICK DFS60 - s Arduino UNO.
Korak 1: Alati i materijali
Materijali
- Arduino UNO
- 3x RS422 štit za Arduino
- inkrementalni koder (Sick DFS60)
Alati
- Šrafciger
- laboratorijsko napajanje
Korak 2: Neke osnove
RS422 izlaz kodera koristi se samo kao hardverski sloj. Preko RS422 neće se prenositi serijski protokol. Samo impulsi samog kodera prenose se putem 3 različita RS422 kanala: SIN, COS i Z (nulta pozicija).
Zbog 3 nezavisna RS422 kanala potrebna su nam 3 RS422 ulaza za Arduino. U tu svrhu koristio sam 3 kom svojih Arduino RS422/RS485 štitova - složenih na jedan Arduino.
Korak 3: Postavite dip prekidač RS422 štitova
Postavka dip prekidača za bilo koji štit je ista:
- S1: UKLJUČENO, ISKLJUČENO, ISKLJUČENO, ISKLJUČENO (prijemnik uvek uključen / predajnik uvek isključen)
- S2: OFF, OFF, ON, ON
- S3: ON, OFF, OFF, OFF (završni otpornik uključen)
Korak 4: Postavke kratkospojnika RS422 štitova
Postavke skakača za bilo koji štit su različite. Ovisno o spojenom kanalu, RX pin je konfiguriran za:
- Z: D2
- COS: D3
- SIN: D4
Skakač napona JP1 mora biti postavljen na 5V.
Korak 5: Ožičenje
Enkoder se može napajati laboratorijskim napajanjem ili direktno 5V Arduino UNO
Korak 6: Softver i testiranje
Molimo vas da sastavite priloženu INO datoteku pod Arduino IDE -om. Nakon učitavanja projekta na Arduino morate otvoriti serijski monitor sa 115200 bauda.
Tamo ćete vidjeti trenutnu vrijednost prirasta (ažurirano svih 0, 5s) i trenutni status kodera….