Do jednej magistrali można dołączyć do 31 takich modułów i urządzenie sterujące np. konwerter USB<=>RS485 tworząc w ten sposób rozległą sieć sterującą aż 62 urządzeniami. Każde wyjście jest identyfikowane za pomocą dwucyfrowego adresu (00...99). Do połączenia modułów jest potrzebna 4-przewodowa skrętka (2 pary przewodów). Na złączach CON1 i CON2 znajdują się linie zasilania oraz sygnały magistrali RS485. Całość zaprojektowano w taki sposób, aby moduł zamontować przelotowo w miejscu przecięcia skrętki. Miniaturowa konstrukcja swobodnie mieści się w puszce elektroinstalacyjnej.
Pracą układu steruje mikrokontroler ATtiny24, który zapewnia odpowiednią liczbę linii I/O i jest dostępny w małej obudowie SO14. Interfejs UART został zrealizowany programowo i pracuje z parametrami: 9600, n, 8, 1. Schemat ideowy modułu pokazano na rysunku 1, natomiast montażowy na rysunku 2. Rolę wyjść pełnią przekaźniki o obciążalności styków do 3 A, (do 230 V AC lub 30 V DC). Moduł powinien być zasilany z napięcia 7...15 V DC, maksymalny pobór prądu wynosi ok. 60 mA.
Moduł dołączony do magistrali czeka na odebranie właściwej komendy. Jego aktywność jest sygnalizowana krótkim mignięciem diody LED. Komenda musi zaczynać się ciągiem znaków „R x x”, gdzie „xx” to adres modułu w zakresie 00...99. Jako kolejny podawany jest następujący parametr:
- „= 1”<CR> – powoduje załączenie wyjścia,
- „= 0”<CR> – powoduje wyłączenie wyjścia,
- „= ?”<CR> – zwraca odpowiedź układu zawierającą aktualny stan wyjścia.
Przykładowa komenda „R23=1”<CR> w postaci wartości szesnastkowych ma postać: 0x52 0x32 0x33 0x3D 0x31 0x0D. Odebranie komendy z adresem odpowiadającym adresowi modułu powoduje odpowiednią reakcję układu, a dla trzeciego przypadku powoduje wysłanie informacji o stanie wyjścia w postaci np R23=1<CR>, czyli wyjście załączone.
Układ wymaga wstępnej konfiguracji – potrzebny będzie terminal z interfejsem RS485 np. konwerter AVTMOD14 dołączony do komputera PC i programu Bray Terminal+. Założenie jumpera w pozycji 1 (rysunek 3) uruchamia automatyczne wysyłanie stanu wyjścia. Funkcja ta może być włączona tylko w jednym module w całej magistrali i tylko wtedy, gdy nie ma urządzenia nadrzędnego. Powoduje wysyłanie na magistralę co ok. 4 s ramki stanu wyjścia. Może być przydatna do identyfikowania modułów, ponieważ ramka zawiera adres modułu.
Założenie jumpera w pozycji 2 (rysunek 3) a następnie włączenie zasilania modułu powoduje przywrócenie domyślnego adresu o wartości „00”. Założenie jumpera w pozycji 3 (rysunek 3) i włączenie zasilania modułu powoduje wejście w tryb zmiany adresu. Moduł wysyła wartość aktualnego adresu a następnie czeka na wprowadzenie nowej wartości. Po zatwierdzeniu znakiem „Enter” nowa wartość zostaje zapamiętana i układ jest gotowy do pracy. Należy pamiętać, że drugie wyjście modułu automatycznie dostaje adres zwiększony o jeden, dlatego modułom należy nadawać adresy zwiększane o 2.
AS
- R1, R2: 10 kΩ (SMD 0805)
- R3, R5: 2,2 kΩ (SMD 0805)
- R4: 1 Ω (SMD 0805)
- C1…C3: 100 nF (SMD 0805)
- C4, C5: 10 µF (SMD 0805)
- C6, C7: 18 pF (SMD 0805)
- D1, D3, D4: LL4148
- D2: LED F3 przewlekana
- T1, T2: BC847
- X1: 4 MHz (SMD)
- US1: 78M05 (SMD)
- US2: ATtiny24(lub 44)
- US3: MAX485 (SMD)
- K1, K2: HF49F-5V
- CON1…4: DG 3.5/2
- PROG, RST: goldpin 1×7+zworka