Moduły Hoperf Electronics są dostępne od wielu lat. Firma ma w ofercie całą gamę modułów radiowych, pracujących w różnych pasmach radiowych i pracujące z wykorzystaniem różnych topologii. W artykule chciałbym jednak skupić się na modułach HM-TRP.
Dlaczego akurat te moduły? Są to transceivery przeznaczone sterowane za pomocą interfejsu USART. Można zaryzykować stwierdzenie, że po wykonaniu odpowiedniego adaptera para takich modułów zastępuje przewód połączeniowy interfejsu szeregowego RS. W zasadzie nie musimy też w modułach ustawiać żadnych parametrów. Po włączeniu zasilania moduły pracują z ustawieniami fabrycznymi i pełną mocą nadajnika oraz maksymalną czułością odbiornika, przy prędkości transmisji 9600 b/s. Kolejna zaleta, niezwykle moim zdanie ważna i ułatwiająca życie programisty, to brak konieczności stosowania skomplikowanych bibliotek do obsługi modułów, a także ustawiania szeregu parametrów w wielu rejestrach konfiguracyjnych, często zależnych od siebie. Nie bez znaczenia jest też zasięg modułów – producent deklaruje nawet 1 km!
Moduły produkowane są na trzy częstotliwości nośne – 433 MHz, 868 MHz i 915 MHz. Według noty katalogowej, maksymalna moc nadajnika to 100 mW (20 dBm), natomiast czułość odbiornika –117 dBm. W tym miejscu warto zaznaczyć, że pracując z pełną mocą nadajnik potrzebuje ok. 90 mA. Oczywiście, jeżeli nie musimy nadawać z mocą maksymalną, to możemy za pomocą nieskomplikowanego programu konfiguracyjnego obniżyć moc, a jednocześnie zapotrzebowanie na prąd. W trybie odbioru pobór prądu to około 20 mA, natomiast jeżeli wprowadzimy moduł w stan uśpienia, to jest on obniżany do około 1,5 mA.
Wygląd modułu oraz rozmieszczenie jego wyprowadzeń pokazano na rysunku 1. W tabelce zamieszczonej na rysunku 2, zaczerpniętej z dokumentacji modułu pokazano opis wyprowadzeń. Myślę, że opis jest czytelny i tabela nie wymaga komentarza.
Przejdźmy zatem do możliwości konfiguracyjnych modułów. W tym celu najłatwiej posłużyć się programem udostępnianym przez producenta. Komunikacja z modułem odbywa się przez interfejs USART za pomocą dowolnej przejściówki USB/USART. Bezwzględnie należy przy tym pamiętać jedynie o dopasowaniu poziomów napięcia na liniach RxD i TxD.
Program jest intuicyjny a jego dokładne omówienie znajdziemy w nocie PDF dostępnej pod adresem https://goo.gl/qdPcJz, natomiast sam program można pobrać spod adresu https://goo.gl/eMtwU8.
Schemat połączeń modułu z systemem nadrzędnym pokazano na rysunku 3. Oprócz linii Rx i Tx do procesora doprowadzono również linie config i enable. Zgodnie z tym, co napisano w nocie, ustawienie wejścia ENABLE wprowadza moduł w stan uśpienia, a tym samym pobór prądu spada do poziomu ok. 1,5 mA.
Pisałem, że konfiguracji modułu możemy dokonać za pomocą programu lub od razu pracować przy ustawieniach fabrycznych. Okazuje się, że po wyzerowaniu wejścia ENABLE możemy dokonać zmiany parametrów pracy nie tylko za pomocą programu HM-TRP Config GUI, ale również z poziomu mikrokontrolera. Komendy są przesyłane przez interfejs USART, a ich opis jest dostępny w nocie katalogowej. W większości wypadków przy połączeniu dwóch modułów peer-to-peer nie będzie nam to do niczego potrzebne i wtedy możemy pin config na stałe dołączyć do Vcc, oszczędzając jedno wyprowadzenie GPIO mikrokontrolera. Warto jednak wiedzieć, że taka możliwość istnieje i za pomocą funkcji w programie można zmieniać cyklicznie częstotliwość odbiornika i odpytywać szereg modułów nadawczych pracujących na innych ustawieniach.
Na koniec wspomnę o zasięgu modułów. W czasie testów udało mi się skomunikować moduły bez anten na odległość ok. 30 metrów. Nie polecam jednak tego sposobu, ponieważ część ramek docierała uszkodzona. Po zastosowaniu jako anteny kawałka przewodu o długości odpowiadającej 1/4 długości fali (dla 868 MHz to około 8,5 cm) bez problemu otrzymałem prawidłową komunikację przy odległości 150 metrów przez ściany budynku oraz prawie 300 metrów w terenie otwartym. Jak podaje producent, przy antenach fabrycznych, przeznaczonych do pracy przy danej częstotliwości, zasięg modułów dochodzi do 1 km.
Firma Hoperf ma w ofercie również moduły przystosowane do komunikacji RS232 i RS485, z zamontowanymi układami konwerterów poziomów napięcia MAX3232 lub MAX3485.
W artykule wykorzystano materiały zawarte w nocie PDF modułów oraz w książce „Język C pasja programowania mikrokontrolerów 8-bitowych” wydawnictwa Atnel.
Marek Rębecki