[ Pobierz całość w formacie PDF ]
.compari.z.pl.Na p³ycie CD-EP09/2000 znajduje siê katalog sprzêtu oferowanego przez Compari Auiomaiion.Elektronika Praktyczna 9/2000141PROJEKTYZdalnie sterowany modu³ 1/0 z programowanym kodem dostêpuAVT-878Jest to urz¹dzenie bardzouniwersalne, a przy tymniezwykle u¿yteczne.Dziêkioœmiu kana³om, niezale¿niesterowanym za pomoc¹podczerwieni, oraz mo¿liwoœcizabezpieczenia dostêpu donich has³em, sterownik mo¿nadostosowaæ nawet don ajb ardziej sp ecjalistycznychzastosowañ.W jednym z poprzednich numerów Elektroniki Praktycznej pozwoli³em sobie zaprezentowaæ Czytelnikom opis budowy uniwersalnego pilota, który mo¿e wspó³pracowaæ z dowolnym odbiornikiem kodu RC5.Wspomnia³em przy tym, ¿e opisywany uk³ad mo¿e okazaæ siê u¿yteczny nie tylko do sterowania prac¹ fabrycznego sprzêtu RTV, ale tak¿e do wspó³pracy z najró¿niejszymi uk³adami domowej automatyki, które w najbli¿szym czasie skonstruujemy.Najwy¿sza wiêc pora na dotrzymanie obietnicy i opisanie Czytelnikom jednego z uk³adów sterowanych kodem RC5, który mo¿e znaleŸæ zastosowanie jako uniwersalny sterownik praktycznie dowolnych urz¹dzeñ zasilanych energi¹ elektryczn¹.Proponowany uk³ad nie jest zwi¹zany z jakimkolwiek konkretnym pilotem i mo¿e wspó³pracowaæ z dowolnym nadajnikiem kodu RC5, w tym oczywiœcie z pilotem AVT-849.Po drugie, nie ma najmniejszego znaczenia, jakie komendy wykorzystamy do sterowania naszym uk³adem.Mog¹ to byædowolne polecenia z 64 komend, które zawiera standard RC5.Nasz uk³ad musi zostaæ „nauczony" podczas pierwszego uruchomienia, jakie komendy bêdziemy wykorzystywaæ i pod jaki adres bêd¹ one wysy³ane.Zapamiêtane informacje przechowywane s¹ w pamiêci EEP-ROM i mog¹ byæ stamt¹d usuniête lub zmienione jedynie w wyniku naszego celowego dzia³ania.To jednak nie wszystkie cechy odró¿niaj¹ce proponowany uk³ad od innych, o podobnym dzia³aniu.Nie zawsze jesteœmy zadowoleni z faktu, ¿e do urz¹dzeñ sterowanych za pomoc¹ kodu RC-5 mo¿e mieæ dostêp praktycznie ka¿dy, kto tylko posiada odpowiedni nadajnik, którym najczêœciej jest standardowy pilot od sprzêtu RTV.Nie tylko ma³e dzieci potrafi¹ narobiæ w domu niez³ego ba³aganu, ale i w wielu firmach jest po¿¹dane, aby do pewnych urz¹dzeñ mia³y dostêp tylko uprawnione osoby.Dostêp do sterowanych urz¹dzeñ mo¿emy zablokowaæ za pomoc¹ szyfru o praktycznie dowolnej liczbie cyfr (do 210), a tym samym ca³kowicie uniemo¿liwiæ korzystanie z niego przez dzieci czy te¿ pracowników „ni¿szego szczebla".Oczywiœcie, kod dostêpu mo¿e byæ w ka¿dej chwili zmieniony,Elektronika Praktyczna 9/200017Zdalnie sterowany modu³ l/O z programowanym kodem dostêpuRys.1.Schemat elektryczny pilota.a blokowanie nim dostêpu do uk³adu jest opcj¹, któr¹ mo¿emy wykorzystywaæ lub nie.Opis dzia³ania uk³aduNa rys.1 znajduje siê schemat elektryczny proponowanego uk³adu sterownika.Uk³ad jest wyj¹tkowo prosty: poza procesorem 89C2051 i pamiêci¹ AT24C04 uk³ad sk³ada siê z oœmiu przekaŸników wykonawczych, odbiornika kodu RC5 - TFMS5360 i garstki elementów dyskretnych.Procesor 89C2051 posiada liczne zalety, ale tak¿e i jedn¹ wadê: nie jest wyposa¿ony w wewnêtrzn¹ nieulotn¹ pamiêæ danych, co spowodowa³o koniecznoœæ zastosowania dodatkowego uk³adu przechowuj¹cego informacje o kodach poszczególnych komend steruj¹cych prac¹ urz¹dzenia i ewentualnie szyfru blokuj¹cego do niego dostêp.Sposób po³¹czenia procesora z biernymi elementami uk³adu najlepiej przeœledziæ na podstawie fragmentu programu, w którym za pomoc¹ arcywygodnego polecenia ALIAS nadano wyprowadzeniom procesora nazwy zgodne z pe³nionymi przez nie funkcjami.Dodatkowo w systemie utworzono magistralê PC, która s³u¿y obs³udze zewnêtrznej pamiêci danych - IC2.Relayl Alias Pl.7 Relay2 Alias P1.6 Relay3 Alias P1.5 Relay4 Alias Pl.4 Relay5 Alias P3.5 Relay6 Alias P3.7 Relay7 Alias Pl.2 RelayS Alias P1.3 Ledgreen Alias P1.0 Ledred Alias Pl.1 Jumperl Alias P3.3 Jumper2 Alias P3.4 Config Sda = P3.1 Config Scl = P3.0Omówienie dzia³ania uk³adu przeprowadzimy w oparciu o fragmenty programu uruchamianego w momencie w³¹czenia zasilania urz¹dzenia.Pierwsz¹ czynnoœci¹, jak¹ procesor wykonuje po inicja-lizacji i konfiguracji systemu, jest sprawdzenie stanu dwóch jumpe-rów: JPl i JP2.Od wyniku tego badania zale¿eæ bêdzie dalszy bieg wypadków.Set Jumperl : Set Jumper2 If Jumperl = 0 Then If Jumper2 = 1 Then Cali Warning18Elektronika Praktyczna 9/2000Zdalnie sterowany modu³ l/O z programowanym kodem dostêpuCali Commands_registration End If End IfIf Jumperl = 0 Then If Jumper2 = 0 Then Cali Warning Cali Code_registration End If End IfIf Jumperl = 1 Then If Jumper2 = 0 ThenCali Waitingforcode End If End IfIf Jumperl = 1 Then If Jumper2 = 1 ThenCali Waltingforcommand End If End IfZ analizy powy¿szego listingu wynika, ¿e stan jumpera JPl decyduje o tym, czy program ma przyst¹piæ do rejestrowania wydawanych z pilota poleceñ (JPl zwarty), czy te¿ od razu przejœæ do wykonywania wyznaczonych mu za pomoc¹ jumpera JP2 zadañ.Cztery mo¿liwe sytuacje pokazane s¹ w tab.1.Przypadek 1Poleceniem CALL WARNING zostaje wywo³any podprogram generuj¹cy sygna³ ostrzegawczy - 10 b³ysków czerwonej diody LED, informuj¹cy o przyst¹pieniu do programowania komend steruj¹cych.Nastêpnie rozpoczyna siê realizacja podprogramu rejestruj¹cego polecenia wysy³ane z pilota i zapisuj¹cego je w pamiêci EEP-ROM.Pojedynczy b³ysk zielonej diody jest sygna³em zachêty do podania z pilota komendy steruj¹cej pierwszym urz¹dzeniem -przekaŸnikiem RLl.Sub Commands_registration New = 0 Licznik = 1 Cali Ledgreenshort DoIf New = 1 Then Disable IntO New = 0 Cali Write_eeprom(licznik,Command) Cali Write_eeprom(10,Subaddress) Incr Licznik If Licznik = 9 Then Disable IntOCali Write_eeprom(255,133) Reset Ledgreen Wait 3Set Ledgreen Exit DoCali Wait ing forcommand End IfFor Rl= 1 To Licznik Cali Ledgreenshort Next R Enable IntO End If Loop End SubPowy¿szy podprogram pracuje ca³y czas w pêtli, oczekuj¹c na wys³anie z pilota kolejnej komendy.Znacznikiem œwiadcz¹cym o jej odebraniu jest zmienna NEW, która mo¿e przyj¹æ stan 1 podczas realizacji podprogramu wywo³ywanego wyst¹pieniem przerwania na wejœciu INTO.W³aœnie do tego wejœcia do³¹czone jest wyjœcie odbiornika kodu RC5 - IC4.Warto zwróciæ uwagê na umieszczon¹ na samym pocz¹tku programu g³Ã³wnego dyrektywê obs³ugi przerwania:On IntO Receiverc5 Enable Interrupts Enable IntOpowoduj¹c¹, ¿e w przypadku wyst¹pienia przerwania, czyli odebrania transmisji w podczerwieni, wykonywany jest nastêpuj¹cy podprogram:Receiverc5:Getrc5(subaddress, Command)New = 11 ReturnPolecenie GETRC5 jest jednym z licznych „fajerwerków" BAS-COM-a, a w wyniku jego dzia³ania otrzymujemy liczbowe wartoœci odebranej komendy RC5 i adresu, pod jaki zosta³a wys³ana.Obie te wartoœci zapisywane s¹ w zewnêtrznej pamiêci EEPROM, za pomoc¹ wywo³ywanego poleceniem CALL WRITE_EEPROM podprogramu:Sub Write_eeprom (adres As Byte, Value As Byte)I2cstart12 cwby te 16 0I2cwbyte AdresI2cwbyte ValueI2cstopWaitms 10 End Subz tym, ¿e dla uproszczenia programu wartoœæ, oznaczaj¹ca adres wysy³any przez pilota, zapisywana jest zawsze w tym samym miejscu w pamiêci.Ka¿dy kolejny prawid³owy zapis jest potwierdzany b³yskamiTab.1.Mo¿liwe konfiguracje jumperów i zwi¹zane z nimi funkcje.Case JP1 JP2 Dzia³anie programu1 0 1 Przejœcie do rejestrowania tylko poleceñ steruj¹cych2 0 0 Przejœcie do rejestrowania kodu dostêpu3 1 1 Przejœcie w tryb pracy bez zabezpieczenia uk³adu szyfrem4 1 0 Przejœcie w tryb pracy z blokad¹ dostêpu za pomoc¹ szyfruzielonej diody LED.Liczba tych b³ysków sygnalizuje, któr¹ z kolei komendê mamy teraz zarejestrowaæ
[ Pobierz całość w formacie PDF ]