Elektronika, mikrokontrolery, programowanie, komputery, sieci ... to moja praca i moje hobby | |||||
Menu | Elektronika - projekty - ECHO | eKamSoft.pl | |||
Start O mnie Copyright Elektronika - Poradniki - Projekty - Linki Kociaki Kontakt |
ECHO Czasami zachodzi potrzeba połączenia razem kilku urządzeń odległych od siebie o kilka, kilkanaście metrów. Tutaj z pomocą przychodzi standard RS485. Tytułem wyjaśnienia. Jest to dwuliniowa magistrala na której stany logiczne 0 i 1 są reprezentowane poprzez zmianę polaryzacji lini względem siebie. Dzięki temu nie ma znaczenie poziom napięcia ważne jest jaki potencjał (dodatni lub ujemny) ma jedna linia względem drugiej. Linie są oznaczane jako A i B. Poziom logiczny 0 występuje gdy linia A ma potencjał mniejszy niż B i na odwrót. W stanie oczekiwania na liniach powinien być utrzymywany stan 1 (A>B). Właśnie dzięki tym właściwościom i niebagatelnemu dystansowi 1200m na którym można dołączyć do 32 urządzeń postanowiłem skorzystać z magistrali RS485. Teoretycznie wystarczą dwa przewody. W praktyce przydałoby się również przesłać z centralnego źródła zasilanie co uwolniłoby nas od nadmiaru zasilaczy sieciowych. Idąć tą drogą skorzystałem z popularnego kabla 4 parowego stosowanego w sieciach komputerowych czyli popularnej skrętki 5e. Zgodnie z numeracją żyłami 1,2,3 dostarczam 12V, żyła 4 to A, żyła 5 to B i kończymy 6,7,8 jako gnd. W ten sposób zbudowałem sieć do której mogę dołączać kolejne urządzenia. W sieci pracuje zasilacz o wydajności 12V/1A co w zupełności wystarczy do obecnych jak i przyszłych urządzeń które będą podłączane. Oczywiście należy pamiętać aby pobierały one znikomą moc. W przypadku gdy potrzebują jej więcej zasilanie z sieci należy traktować jako pomocnicze załączające większe zasilacze. Na przykład mikrokontroler zasilany z sieci RS485 po otrzymaniu odpowiedniej komendy może załączyć swoje główne zasilanie i sterować stycznikami, silnikami itd. Oczywiście budując nowe urządzenie należy je najpierw dokładnie przetestować zanim podłączymy go do sieci. I tutaj właśnie zaczyna się opis testowego zasilacza magistrali RS485 z monitorem przesyłanych danych który umożliwi nam utworzenie mini sieci, przetestowanie urządzenia w symulowanych warunkach przed podłączeniem do właściwej sieci. Zasilacz składa się zasadniczo z dwóch bloku. Pierwszy to zasilacz. Jak widać na schemacie ideowym składa się z części tłumiącej zakłócenia, transformatora sieciowego, mostka oraz dwóch stabilizatorów na układach scalonych 7805, 7812. Pierwszy służy jak zasilacz monitora, drugi zasila magistralę RS485. Drugi blok to monitor magistrali RS485. Monitor został zrealizowany na mikrokontrolerze PIC16F628A, odbiorniku/nadajniku magistrali RS485 MAX485 (lub odpowiednik)(osobiście używam najczęściej SN75176 lub ILX485) oraz transoptorze CNY17-4. Złącze ICSP JP6 służy do programowania mikrokontrolera w układzie. Jego układ pinów jest zgodny pod względem kolejności z programatorem PICKIT 2 (Vpp,Vdd,Vss,DAT,CLK). Podczas programowania należy pamiętać o rozłączeniu zwory JP5 aby zasilić tylko programowany układ. Transoptor IC3 służy jako źródło informacji o obecności napięcia 12V zasilającego magistralę RS485. Złącza LED101 do LED104 to diody led sygnalizujące prace układu. Dwie znich (5V i 12V) informują o obecności napięć. Dioda SYS miganie informuuje o poprawnej pracy mikrokontrolera. Ostatnia błyskaniem lub nie informuje o przesyłaniu danych magistralą. Jest to oczywiście uproszczona forma monitora ale z praktyki wiem że najczęściej potrzeba jedynie określić czy coś jest przesyłanie lub nie. Pin RB0 portu B steruje kierunkiem przepływu danych. W tym wypadku jest na stałe ustawiony na odbiór. Program obsługi mikrokontrolera został napisany w języku C w środowisku MPLAB X IDE oraz skompilowany do formatu HEX kompilatorem XC8. Kod programu został podzielony na kilka bloków rozdzielonych nagłówkami z komentarzy które wyjaśniają pełnione zadanie każdego z nich. Myśle że jest on na tyle przejrzysty iż nie wymaga dodatkowego komentarza. Na zakończenie zestawienie materiałów i linków niezbędnych/przydatnych do wykonania zasilacza oraz kilka zdjęć ilustrujących szczegóły jego budowy oraz funkcjonowania.
- Schemat ideowy bloku zasilania. Rafał Szulc |
||||
Copyright (c) by eKamSoft 1974-2024 |