Úvod
Jedním z nejjednodušších způsobů,
jak dostat spolehlivě a levně data z počítače, tabletu či z
počítačové WiFi sítě do vlastoručně vyrobeného zařízení
(ovládání, měřicí přístroje) je využití modulu Elfin EW10. Jde o opravdu maličký,
spolehlivý a laciný modul, který se snadno konfiguruje. Vypadá takto:
|
 |
Rozhraní RS232
Rozhraní RS232 má
modul vyvedené pouze na 4 svorky. Napájení (používám 5V),
společná
zem GND a signály RX a TX. Zařízení je konfigurovatelné přes
webové rozhraní z prohlížeče. Rozhraní
RS232 jsem konfiguroval takto (pdf dokument).
Konfigurace zařízení
K zařízení
existuje několk manuálů a několik SW nástrojů. Z nástrojů,
které dodává výrobce, jsem nepotřeboval ani jeden.
Základní manuál dávám k dispozici ke stažení zde.
Zařízení umí několik režimů (z pohledu WiFi sítě), například
Access Point (AP), umí STA i kombinaci obou režimů.
Každý
Elfin, který jsem obdržel poštou, byl nakonfigurován jako
tzv. AP (Accsess Point). To znamená, že po připojení napájecího napětí se
mi objevil na notebooku v seznamu WiFi sítí. K Elfinu se
bylo možné vždy připojit z IP adresy 10.10.100.254
a přihlašovací login a heslo bylo z výroby nastaveno na admin a
admin.
Důležité upozornění:
Pokud konfigurujete Elfin prvně a chcete si ho jen
vyzkoušet ve spolupráci s vaší aplikací, doporučuji to dělat
v režimu AP. Pro cílovou aplikaci se vám však možná bude hodit
režim STA, kdy se bude chovat Elfin jako účastník vaší
domácí sítě.
Při
prvním laborování však buďte opatrní. V okamžiku, kdy
zvolíte režim STA, přestane fungovat režim AP. Po obdržení
třetí dodávky Elfinů jsem u prvního kusu jednal zbrkle.
Nastavování se provádí v několika záložkách menu. Když jsem
nastavoval položku "Settings", zapomněl jsem zadat jméno
WiFi sítě a přístupové heslo. Rovněž jsem změnil AP na STA.
Po restartu se Elfin rozběhl v režimu STA a vypnul AP. Jenže
v STA nenašel žádnou WiFi, ke které by se mohl připojit.
Režim AP byl vypnutý. Toto opomenutí bylo fatální a z Elfinu
se stal během jednoho kliknutí nekonfigurovatelný kus
železa.
Když už se toto stane, lze uvést
Elfin do továrního nastavení pomocí kabelu s konektorem
RJ-45, který má zapojené napájení. Barevné označení žil
kabelu je na obrázku na konci stránky. Hnědá žíla (pin 8) je
připojená na GND a hnědobílá (pin 7) na Vcc, např. 5V. Ještě
budeme potřebovat modrou (pin 4), který normálně
nepoužíváme. Můj Elfin se přepnul do továrního nastavení,
když jsem modrou (pin 4) spojil s GND na několik sekund a
současně jsem zapnul napájení. Při dalším zapnutí se Elfin
rozběhl jako AP z továrního nastavení.
Konfiguraci,
kterou dále popíšu je v režimu STA, kdy Elfin je součástí
mojí domácí sítě. Na routeru ho vidím takto: |
 |
Použitý režim jsem volil proto, že mi server umožňuje
jednoduchou práci s klientskými aplikacemi. V klientských
aplikacích používám tzv. TCP Socket. To je zapouzdřená
komponenta, do které posílám data, přijímám z ní data a
konfiguruji u ní jen dva parametry. IP adresu, kde TCP
server běží (viz obrazovka routeru) a port. Ten můj byl
defaultně pro popisované úlohy nastaven na 8899.
První zkouška přenosu dat skrz TCP
server a sériové rozhraní RS232
Pro první
zkoušku jsem si propojil vodiče RX a TX. Drátem místo USB
převodníku, na konektoru. Převodník, který je na fotkách,
slouží k připojení druhého PC a k rozsáhlejším testům
zařízení: |
 |
|
Testovací program
Testovací program
jsem si nakreslil v ProfiLab Expert (PLE). Vypadá takto.
Ukázal jsem i konfigurační menu, ze kterého je zřejmá IP
adresa (192.168.1.5), port (8899), režim (Client) nastavení
(analogové), což znamená, že neposílám po jednotlivých
vodičích bit po bitu (to by byl digitální režim), ale
hodnotu, která je mezi 000 a 255. TCP klient to šoupne do
serveru elfin, ten však má propojené RX a TX, takže to
server pošle zpátky do TCP klienta a zobrazí se ta hodnota
na displeji. |
 |
|
Vizuální vyvedení testeru
je vidět
z obrázku vpravo. Text zezelená, když se tester spojí se
serverem elfin EW10. Je to komponenta LED1, která má
vyvedení textu.
Data se zadávají sliderem SR1.
Zadání se zobrazuje na jednom displeji (ND2) a přijatá data
se zobrazují na druhém displeji (ND1). Pokud je server
zapnutý a RX s TX propojené, pak svítí LED 1 a přes port
jsou přenášená data.
Jak prosté, že? |
 |
|
Konfigurace ještě jednou, opakování je matka
moudrosti
Aby vše fungovalo, je třeba zařízení nakonfigurovat.
Konfigurace je jednoduchá, dělá se přes webové rozhraní.
Prvotní login/heslo je admin/admin a přihlašujeme se na IP
adrese zařízení, které má v sobě integrován normální html
server:
|
 |
|
Jednotlivé položky z levého menu jsem nakonfiguroval tak,
jak vidíte v pdf dokumentech. Lze stáhnout
STATUS -
SETTINGS - SERIAL -
COMMUNICATIONS -
OTHERS. |
Kabel pro ELFIN Kabel jsem
vyrobil z UTP okonektorovaného kabelu. Padl mi pod ruku s
barvami organizovanými podle T568B (obrázek vedle).
Použité žíly jsou: GND - hnědá +5V - hnědobílá
RX - zelená TX
- modrobílá
Pro reset zařízení se ještě může hodit
modrá žíla (pin č. 4). Ostatní žíly nejsou zapojené. Kabel
od napájecího zdroje (adaptéru 5V DC) jsem zapojil na
konektoru RS 232, stejný zdroj napájí zařízení i Elfin. Já
používám u svých zařízení k napájení rovněž konektor CANON
9, ale asi to v dohledné době změním u nových zařízení na
micro USB.
Fotka mého kabelu je níže. |
 |
|
 |
Pozor na kabely UTP, dělají se ve dvou
provedeních (tedy, pokud je mi známo). Netuším, jak jsou
které rozšířené. Já jsem padnul na kabel podle T568B. Kabel
podle T568A má jinak zapojené žíly.
Závěr
1. SW pomůcky, které dodává
výrobce, jsem k ničemu nepotřeboval, protože OPRAVDU VŠECHNO
lze nakonfigurovat přes webové rozhraní. Virtuální sériové
porty jsem rovněž nepotřeboval, protože umím psát aplikace
(a v publikaci o vidláckém programování jsem ty metody
publikoval), které mají v sobě vestavěn TCP Socket (klienta
TCP), do kterého posílám data z ovládacích prvků. Proto jsem
tyto věci nezkoušel, ani neinstaloval a ani si s nimi
nezasral počítač. Rád tuto činnost nechám nešťastníkům,
kteří mají staré aplikace, jež mají výstup dat pouze do
sériového portu. 2. Jde o velmi moderní a elegantní
řešení, které je navíc laciné.
3. Venku montuji
Elfin do novodurové trubky. Nahoře má plastovou zátku, dole
ji nechávám otevřenou. Aby modul nevypadl dolů, jistím kabel
špuntíkem z pěnového polystyrénu (není vidět na obrázcích).
4. Tento článek byl dříve publikován v mých
aplikacích. Jak vidíte, informace jsou stále platné. |
Shrnutí výhod a nevýhod řešení
|
Výhody |
Nevýhody |
1. Modul je dodán ke své funkci naprogramovaný.
Nic se neprogramuje, pouze se přes web konfiguruje. |
1. Proti Raspberry nebo Arduinu není modul univerzální.
Funkcionality modulu bychom s určitým nemalým úsilím
pravděpodobně dokázali naprogramovat. |
2. Modul je kompaktní, malý a extrémně spolehlivý. |
|
3. Konfigurace umožňuje použít více základních režimů, jako
je AP, STA (server TCP/IP). |
2. Sériovou komunikaci mezi sériovým rozhraním modulu a námi
vyrobeným přístrojem musíme vyřešit
programovatelným čipem. V článcích bude popsána extrémně
snadná a
jednoduchá metoda, jak vše rychle a spolehlivě realizovat.
Odměnou nám bude velké množství (např. stovky) výstupů
a vstupů dat. |
4. Díky TCP je modul snadno adresovatelný v domácích sítích
WiFi pomocí IP adresy a portu. Můžeme mít současně puštěných
desítky zařízení na jedné síti. |
|
5. Data lezou z modulu do námi vyrobeného přístroje
(zařízení) standardním způsobem pomocí sériového portu. |
3. Možnost výstupu dat např. z Raspberry do sériového portu
máme rovněž. Nejedná se o objektivní výhodu modulu. |
6. Na sériovém portu lze použít protokol s adresováním. Díky
tomu můžeme v jednom místě spínat např. stovky relé nebo z
místa sbírat hodnoty z desítek až stovek měřicích čidel (ADC
převodníků). Nejsme omezeni jednotkami až desítkami pinů,
jako např. u Arduina nebo Raspberry. |
|
7. Nemusíme se učit psát aplikace pro programování fyzických
portů Raspberry ... |
|
|
|
|