Ger Koper blogja
a távirányító kulcstartóit általában garázskapukhoz és hasonlókhoz használják. Az autó ajtónyitó rendszerei is használják őket. Ezeknek az eszközöknek a protokollja viszonylag szabványosnak tűnik. Az egyik gomb megnyomásakor rádiófrekvenciás (rf) impulzusok sorozata kerül elküldésre, amelyeket később az ajtónyitó berendezés fogad. Ezek összehasonlítják a kapott kódsorozatot a belső tárolt kóddal, és amikor egyenlő, nyissa ki vagy csukja be az ajtót. Ezt az elvet használják a világítás vezérlésére, az időjárási állomás információinak továbbítására stb.
ez a kis jelentés az úgynevezett kulcstartó a fent látható. Ezek jelenleg bőségesen elérhetők az interneten. Előnyük, hogy van egy mechanizmusuk, amellyel egy másik kulcstartóból programozhatók. Az eljárás viszonylag egyszerű, de némi kitartást igényel: végül működni fog:
- nyomja meg egyszerre az A és B gombokat. A LED kigyullad, és egy idő után gyorsan villogni kezd. Ez azt jelzi, hogy a kulcstartó törlődik, és a gombok elengedhetők.
- bármelyik gomb megnyomásakor a LED csak nagyon rövid ideig villog. Ez azt jelzi, hogy nincs kód továbbítva.
- nevezzük ezt az “üres” kulcsfob számot 1. A kulcstartó, amelyről másolni szeretnénk, a 2. szám.
- most átmásoljuk az X gomb kódját, akár a, B, C vagy D, A 2.kulcstartóról az 1. kulcstartóra Y gomb (A, B, C vagy D).
- nyomja meg az X gombot a 2.kulcstartón, a LED folyamatosan ég, jelezve, hogy továbbítja a kódsorozatokat.
- nyomja meg az Y gombot az 1.kulcstartón, a LED kezdeti rövid villogást ad, majd kikapcsol.
- hozza a két kulcstartót, miközben a gombokat együtt nyomja, általában elölről előre, de más pozíciók is működhetnek, amíg az 1. gomb LED-je villogni nem kezd. Ezután a gombok elengedhetők.
- nyomja meg az Y gombot az 1 kulcstartón, és a LED-nek folyamatosan világítania kell, jelezve, hogy kódot továbbít. Ha minden jól ment, ez a kód aktiválja az ajtót, amelyet a key fob 2 vezérelt.
- ez mind a négy gomb esetében megismételhető. Két különböző gomb azonos kódjai is programozhatók, a kulcs nem panaszkodik.
fontos megjegyezni, hogy a hasonlóan kinéző kulcstartók eltérő, bár hasonló protokollokkal rendelkezhetnek. Szükség esetén kövesse az eladó utasításait.
olyan vezérlőegységet is vásárolhat, amely két relét tartalmaz, amelyeket a fent leírt kulcstartó két gombjával lehet vezérelni. Ezeket az egységeket is be kell programozni, bár előre programozott kulcstartókkal vannak ellátva. Az egység rendelkezik egy DIP-választóval, amely beállítja a vezérlési módot. Itt azt használjuk, hogy egyetlen gomb be – és kikapcsolja. Az egységnek két LED-je van, amelyek a relék mellett vannak, és jelzik a relé állapotát: be vagy ki. A vezérlőgomb közelében van egy másik LED. Villog, amikor egy kódolt rf jelet kap egy kulcsfobról.
ha a gyárilag kódolt kódoktól eltérő kódokkal kíván működni, akkor a következőképpen jár el
- a kódokat a gomb megnyomásával törli, amíg a LED villogni nem kezd.
- a gombok már nem tudják váltani a reléket, bár a LED villoghat, jelezve, hogy Kód érkezett.
- az egység gombjának megnyomása ha az egységet programozási módba állítja, a LED kigyullad.
- először nyomja meg a kulcstartót az a relé vezérlésére szolgáló gombot. Engedje el a gombot. A LED világít.
- nyomja meg most a kulcstartón azt a gombot, amely a B relé vezérlésére szolgál.
- a készülék be van programozva.
- vegye figyelembe, hogy ugyanazon gomb kétszeri megnyomása csak az A relét programozza!
érdekes lehet egy teljesen más kódot használni a kulcstartókkal és az egységgel. Ilyen van leírva egy Raspberry Pi egy instructable írta george7378. Az alábbiakban egy példa a nyomvonal egy gomb kódot.
az rf jel be van kapcsolva a “magas” idő alatt, általában körülbelül 0,5 ms, és ki van kapcsolva az “alacsony” jel alatt, körülbelül 1 ms. Ezeket a szekvenciákat körülbelül 10 ms intervallummal ismételjük meg, így több száz kódszekvenciát küldünk a gomb körülbelül egy másodpercig történő megnyomásával. A kód könnyen olvasható, a rövid magas, majd a hosszú alacsony bináris 1-ként értelmezhető, míg a hosszú magas, majd egy rövid alacsony bináris 0. A bináris kódsorozat tehát 25 bitből áll, itt 1111 0000 0101 0110 0101 1110 1. 225 = 33 554 432 különböző kód lehetséges ezzel a 25 bittel.
a fent említett instructable által leírt kis Python programmal viszonylag egyszerű megadni a saját kódját. Egy 17,2 cm-es antenna használata a 433 MHz-es adón sokkal egyszerűbbé teszi a Kulcstartók kódolását. Különösen akkor, ha a szekvencia ismétlések száma nagy, azaz a num_attempts 10-ről 100-ra változik.
sok különböző kód lehetséges már ezzel a 25 bites szekvenciával, de ha azt képzeljük, hogy a bitek száma, a “magas” idő, az “alacsony” idő és az ismétlési idő tetszés szerint változtatható, akkor láthatjuk, hogy általában miért nincs túl sok interferencia a különböző eredetű egységek és kulcstartók között. Lesznek korlátai az időzítésnek és a használt kódoknak, de sok variáció marad egy adott halmaznál.
néhány megjegyzés az instructable-ben leírt programokról.
- ugyanazt a GPIO portot használja a küldéshez és a fogadáshoz. Úgy találtam, hogy könnyebb, hogy különböző is, hogy mindkét egység lehet csatlakoztatni egyszerre.
- az első sorban a
#!/usr/bin/python
kód használata és például
chmod +x TransmitRF.py
végrehajthatóvá tétele lehetővé teszi a program egyszerűbb hívását
./TransmitRF.py a_on
néven, és ismételje meg a műveletet.
- helyett ReceiveRF.py, a program, hogy olvassa el a kódsorozatot a kulcstartókból, inkább a Logic 4 Digital+Analog Logic Analyzer-t használom a Saleae-tól. Sokkal nagyobb szabadságot ad az adatok elemzésében.