Převodník RS232 pro Arduino pro mini

Datum 16. 08. 2019 v 12:02 | Rubrika: Elektronika

     A opět tu máme článek o Arduinu Tentokrát to ale bude skutečně kousek elektroniky a ne jen kus kabelu. Aby Arduino mohlo dělat nějakou činnost, musí se nejprve naprogramovat. A to lze buď ISP programátorem, třeba podle předchozího článku, a nebo pomocí bootloaderu Arduina přímo z IDE. Což je mnohem operativnější a vlastně to dělá Arduino Arduinem. „Velká Arduina“ mají komunikační převodník na sobě a tak se jen spojí s počítačem a už se může programovat. Malé Arduino pro mini tento převodník nemá a tak je třeba jej při programování doplnit.
     Konektor pro připojení převodníku je na pravé straně Arduina a je to celkem šest kontaktů. Od horního okraje to je takto:

1 – DTR, ovládání resetu procesoru
2 – TxD, výstup dat
3 - RxD, vstup dat
4 – Vcc, kladné napájení
5 – GND, zem
6 – GND, zem

     Vývod Vcc skrývá menší zradu a totiž tu, že není s ostatními takto označenými vývody přímo, ale přes diodu. Takže je to vstup napájení a nelze jej použít jako výstup. To jsem si při návrhu neověřila (zbytek stejně označených vývodů na Arduinu je mezi sebou spojených vodičem) a pak jsem se nestačila divit, proč mi to nechce fungovat. Proto na fotce vidíte trošku jiné provedení desky než je na výkresech.

Originální obrázek
Obr. 1 – schéma zapojení.


     Nejprve je potřeba si zodpovědět otázku, proč v roce 2019 stavět převodník pro sériové rozhraní počítače, když je to již značný anachronismus. No právě proto, že dneska všichni všechno valí na USB. Moje počítače ještě sériový port mají, takže jsem se rozhodla jej využít. Používám pochopitelně i USB, ale toto je taková malá radost a „známka punku“

     Schéma zapojení převodníku je na prvním obrázku. Jedná se vlastně o katalogové zapojení obvodu MAX232, doplněné o napájecí a indikační obvody. Zapojení je tak jednoduché, že je trochu problém o něm cokoli napsat. MAX232 obsahuje nábojovou pumpu pro vytvoření potřebných napětí a vlastní převodníky. V nábojové pumpě jsem použila tantalové kondenzátory s kapacitou 1 µF. Pokud chcete použít obyčejné elektrolytické kondenzátory, je to možné, ale je potřeba zvětšit jejich kapacitu na 10 µF. Konektor pro připojení k počítači je sameček typu Canon 9. Takový konektor se dá přímo zapojit do počítače, nebo se použije prodlužovací kabel se zapojením 1:1, čili ne křížený neboli „null-modem“ kabel, s takovým kabelem nebude převodník fungovat (tedy převodník fungovat bude, ale komunikace fungovat opravdu nebude).

     Protože pro komunikaci mezi počítačem a Arduinem jsou potřeba jen tři linky, zůstal by jeden převodník nevyužitý. Proto jsem na jeho výstup připojila dvě LEDky a vstup spojila s linkou RxD. Ledky pak při komunikaci mezi počítačem a procesorem blikají a tím indikují přenos. Jedna indikuje logickou nulu a druhá logickou jedničku. Které dioda bude indikovat kterou úroveň záleží na tom, jak diody zapojíte. Jen je potřeba, aby diody byly zapojené „antiparalelně“ čili katoda jedné je spojená s anodou druhé diody. Tím se LEDky navzájem chrání i proti vysokému napětí v závěrném směru, které jim nedělá dobře (na výstupu MAX232 je totiž cca 9 V).

Originální obrázek
Obr. 2 – deska plošných spojů.


     Výkres desky plošných spojů je na druhém obrázku. Destička je malá a jednoduchá, jen v některých místech jsou spoje poněkud hustější, ale zase ne tak moc, aby se destička nedala vyrobit i doma. Osazení součástkami je pak na obrázku třetím.

Originální obrázek
Obr. 3 – osazení součástkami.


     Na kontakty „PLUS1“ a „MINUS2“ je připojené napájecí napětí převodníku a Arduina, na zbytek pak programovací konektor. Arduino je při programování napájené z převodníku. Po připojení napájecího napětí se rozsvítí LED1 a jedna z LED2 a LED3, jak jsem již říkala, záleží na jejich zapojení. Zapojení celé sestavy při programování je na čtvrtém, a posledním, obrázku.

Originální obrázek
Obr. 4 – připojení převodníku k Arduinu.


     Vlastní programování Arduina se provede přímo z IDE Arduina, jen je potřeba nastavit vhodný port. Na rozdíl od dneska obvyklých vysokých čísel virtuálních sériových portů je potřeba vybrat COM1 nebo COM2, podle toho, kolik portů počítač má a kam převodník připojíte.

     A to je pro dnešek vlastně všechno. Převodník mi fungoval na první zapojení, ačkoli to nejprve vypadalo, že nefunguje. Důvodem byla ta dioda v napájení uvnitř Arduina, o které jsem nevěděla a myslela jsem, že budu převodník napájet z Arduina a ne, že je potřeba napájet Arduino z převodníku. Bohužel to tak nejde, ale když jsem na jednom chatu na tuto vlastnost remcala, bylo mi vysvětleno, že to je vlastně dobře a je normální napájet procesor z vývojového prostředku, ne naopak. No asi jo, ale pak by se ten vývod měl jmenovat jinak.

Použité součástky:

R1, R2 – 2k2 (určují jas LED)

C1 až C4 – 1 µF/15V tantalový nebo 10 µF/15V elektrolytický
C5 – 100 µF/10V elektrolytický

LED1 až LED3 – 3mm LED s nízkou spotřebou (2 mA), barvy dle libosti

IO1 – MAX 232 (či analog)

X1 – úhlový konektor Canon 9 do plošných spojů, sameček

Deska plošných spojů, propojovací vodiče, lišta pro připojení Arduina


     Schéma a výkres desky si můžete stáhnout ze Skladiště souborů. Pokud se vám dnešní povídání líbilo, tak jsem ráda. A pokud ne, tak snad příště



PS: Pokud vám destička připomíná destičku z Žirafovin již známou, tak máte pravdu, použila jsem ji jako základ



Článek pochází z webu Žirafoviny.cz
https://www.zirafoviny.cz

URL tohoto článku je:
https://www.zirafoviny.cz/modules/news/article.php?storyid=698