Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Inkrementální kodéry se často používají pro průmyslové aplikace, jako je robotika nebo sledování polohy. Kodéry pro průmyslové aplikace přicházejí většinou s diferenciálním rozhraním RS422.
V tomto malém projektu ukážu, jak používat průmyslový inkrementální kodér - v našem případě SICK DFS60 - s Arduino UNO.
Krok 1: Nástroje a materiály
Materiály
- Arduino UNO
- 3x štít RS422 pro Arduino
- inkrementální kodér (nemocný DFS60)
Nástroje
- Šroubovák
- laboratorní napájení
Krok 2: Některé základy
Výstup kodéru RS422 se používá pouze jako hardwarová vrstva. Po RS422 nebude přenášen žádný sériový protokol. Pouze impulsy kodéru samotného jsou přímo přenášeny přes 3 různé kanály RS422: SIN, COS a Z (nulová poloha).
Kvůli 3 nezávislým kanálům RS422 potřebujeme pro Arduino 3 vstupy RS422. Za tímto účelem jsem použil 3 ks svých štítů Arduino RS422/RS485 - naskládaných na jednom Arduinu.
Krok 3: Nastavení přepínačů dipů štítů RS422
Nastavení přepínače DIP pro jakýkoli štít je stejné:
- S1: ON, OFF, OFF, OFF (přijímač vždy zapnutý / vysílač vždy vypnutý)
- S2: VYPNUTO, VYPNUTO, ZAPNUTO, ZAPNUTO
- S3: ON, OFF, OFF, OFF (zakončovací odpor zapnut)
Krok 4: Nastavení propojek štítů RS422
Nastavení propojky pro jakýkoli štít je jiné. V závislosti na připojeném kanálu je pin RX nakonfigurován tak, aby:
- Z: D2
- COS: D3
- HŘÍŠ: D4
Napěťový můstek JP1 musí být nastaven na 5V.
Krok 5: Zapojení
Kodér může být napájen laboratorním napájecím zdrojem nebo přímo 5V Arduino UNO
Krok 6: Software a test
Zkompilovejte přiložený soubor INO pod Arduino IDE. Po nahrání projektu do Arduina musíte otevřít sériový monitor s 115200 baudy.
Uvidíte tam aktuální hodnotu přírůstku (aktualizováno všech 0, 5 s) a aktuální stav kodéru….