Tartalomjegyzék:

Python RF fejlesztői készlet: 5 lépés
Python RF fejlesztői készlet: 5 lépés

Videó: Python RF fejlesztői készlet: 5 lépés

Videó: Python RF fejlesztői készlet: 5 lépés
Videó: PIC programozás lépésről - lépésre 1. 2024, November
Anonim
Python RF fejlesztői készlet
Python RF fejlesztői készlet

Először is szeretnék egy kis bevezetőt adni arról, hogyan kerültem bele az RF dolgokba, és miért dolgozom ezen a projekten.

A számítógépes tudomány hallgatójaként, aki érdeklődik a hardver iránt, 2018 októberében elkezdtem részt venni bizonyos tanfolyamokon, amelyek a vezeték nélküli jelekkel és a vezeték nélküli kommunikáció biztonságával foglalkoznak. Gyorsan elkezdtem kísérletezni az RTL-SDR és a HackRF szoftver által meghatározott rádiókkal, valamint polcos Arduino RF modulok.

A probléma az, hogy az SDR -ek nem eléggé hordozhatók az én céljaimhoz (mindig hordoznom kell laptopot, antennát stb.), És az olcsó Arduino RF modulok nem eléggé alkalmasak a jelerősség, a testreszabhatóság, a frekvenciatartományok és az automatizálás szempontjából.

A Texas Instruments CC1101 antennái nagyszerű választás a kicsi, de képes RF adó -vevők számára, amelyek szintén nagyon olcsók. Az emberek nagyszerű dolgokat építettek velük, például DIY SDR -eket és hasonlókat.

Egy másik dolog, amivel foglalkozni akartam ezzel a témával, az a CircuitPython volt. Ez egy új programozási nyelv a mikrovezérlőktől, amiről sok jót hallottam, ezért ki akartam próbálni. Kiderült, hogy nagyon élvezem, különösen az Adafruit Feather M4 Express táblájával együtt, amelyet ebben a projektben is használok. Nagyon egyszerű a hibakeresés, mivel nem kell egyéni firmware -eket fordítania minden alkalommal, amikor megpróbál egy kis változtatást a kódon, kap egy REPL konzolt, és a kód is rajta marad a mikrokontrolleren, ami azt jelenti, hogy hordozhatja, csatlakoztathatja különböző számítógépeken, és mindig képes lesz változtatni útközben.

1. lépés: Hardverkomponensek

Hardver alkatrészek
Hardver alkatrészek

Amire szüksége lesz a projekt megismétléséhez:

  • Adafruit Feather M4 Express
  • 2x Texas Instruments CC1101 adó -vevő + antenna
  • Adafruit FeatherWing OLED
  • 3.7V LiPo

Lényegében ez minden, amire szüksége van egy meglehetősen kompakt és képes RF adó -vevőhöz, de amint a képen is látható, nem lesz túl megbízható és rendezett az összes áthidaló vezetékkel.

Ezért egy egyedi NYÁK -t terveztem a https://easyeda.com/ segítségével, és megrendeltem a JLCPCB.com webhelyről (nagyon olcsó és kiváló minőségű!), Hogy mindent összekapcsolhassak. Ez lehetővé tette a 3 gomb és LED könnyű integrálását a felhasználói bemenetekhez és állapotkimenetekhez.

Végül 3D -ben kinyomtattam egy kis borítót a NYÁK hátoldalához, hogy ne zárkózzon el semmi ellen, és ne üljön le az asztalra.

Ha még nem ismeri az elektronikát és a NYÁK -tervezést, azt javaslom, hogy nézze meg ezeket az utasításokat: Alap elektronika, áramkör tervezési osztály!

A mellékletekben megtalálhatók a NYÁK -ra vonatkozó Gerber fájlok. Ha úgy dönt, hogy gyártja, akkor szüksége lesz néhány extra alkatrészre, amelyeket személyesen az LCSC -től rendeltem, mivel ezek a JLCPCB -hez kapcsolódnak, így felajánlják, hogy mindent együtt szállítanak, ami egy kis szállítási költséget takarít meg, és az alkatrészek is csak nagyon olcsó ott. A részletes listát lásd a BOM -ban. Szándékosan a 0805-ös nagy csomagméretet választottam az SMD alkatrészekhez, hogy mindenki kézzel forraszthassa őket a NYÁK-ra!

2. lépés: A tábla felépítése

A tábla építése
A tábla építése
A tábla építése
A tábla építése
A tábla építése
A tábla építése

Az első képen a PCB -ket láthatjuk minden "módosítás" elvégzése nélkül - ezek a gyárból származnak. Nagyon tiszta vágások (nincs v-horony, teljesen vezetett) és szép előlapok az összes THT lyukon.

Ha használni szeretné a LED -eket, forrasztania kell őket, valamint az SMD ellenállásokat. Az ellenállások általában a mikrokontroller alatt vannak elrejtve, de láthatók a második képen, amely a teljesen forrasztott táblát mutatja. Ha nincs sok tapasztalata a forrasztással kapcsolatban, kissé bonyolult lehet az SMD forrasztása, de ez opcionális, és az összes alapvető összetevő THT. Mindig szeretem ajánlani Dave (EEVblog) videóit, és tulajdonképpen ezt is megnéztem: EEVblog #186 - Forrasztási bemutató 3. rész - Felszíni szerelés. Elég hosszú, de megéri, ha még nem ismeri ezeket a dolgokat!

Ezt is megemlíti, de: ügyeljen arra, hogy először az ellenállásokat és a LED -eket forrasztja, majd a gombokat másodszor, a végén pedig a fejléceket. Így az asztallal mindig alulról nyomhatja az alkatrészt, felülről pedig forraszthat (a NYÁK fejjel lefelé fordult).

Miután mindent beforrasztott, csak csatlakoztathatja a Feather M4 -et és egy vagy két antennát, és a hardver készen áll! Mivel nem forrasztjuk ezeket az alkatrészeket, mindig le tudjuk venni őket a tábláról, és felhasználhatjuk egy másik nagyszerű projekthez!

Kérjük, vegye figyelembe, hogy a harmadik képen a szabályos, rövid férfi fejrészek vannak a tollon, így nem tudtam az OLED -t egymásra halmozni. Ki kellett forrasztanom őket, és hozzá kellett tennem Feather stacking fejléceket. Ha használni akarja az OLED -et, azonnal szerezze be a halmozási fejléceket, őszintén: D A forrasztás csak fájdalom.

3. lépés: Szoftver

Ha elkészült a hardver, beszéljünk a szoftverről.

Amint azt a bevezetőben említettük, az M4 futtat Python -kódot, de nyilvánvalóan nem létezett a CC1101 könyvtára Python nyelven. Tehát azt tettem, amit a barkácsolók, és megírtam a sajátomat. Itt találod:

Nem támogatja mindazt, amire a nagyszerű TI adó-vevők képesek, de elegendő ASK-kódolású adatok bármilyen frekvencián történő könnyű küldéséhez és fogadásához. Ezzel a könyvtárral tudtam kommunikálni az RF által vezérelt fali konnektorokkal, valamint a családom autójával.

Valószínűleg folytatom a munkát, és ha bármilyen kérdése, funkciója van, vagy szeretne hozzájárulni a fejlesztéshez, lépjen kapcsolatba velem!

4. lépés: Képességek és szolgáltatások

Mivel ezt az eszközt dupla antennák és a jól konfigurálható TI CC1101 adó-vevők felhasználására terveztem, rengeteg lehetősége van, különösen azon a területen, ahol nem szeretne mást hordozni, mint egy okostelefon méretű eszközt.

Például rögzítheti a 433 MHz -es sávban lévő kommunikáció jeleit, és 868 MHz -en működő másodlagos antennával küldheti vissza őket otthoni állomására.

Vagy ha tanulmányozni és kísérletezni szeretne a reaktív zavarással, rendelkezhet hallgatási és zavaró antennával, amely a saját jeleit küldi, amint az átvitelt észleli, anélkül, hogy végrehajtaná a "hagyományos módszert", amely az RX és a TX a lehető leggyorsabban.

Egy másik nagyon jó dolog a Feather M4 -ben az, hogy beépített LiPo töltőáramkörrel rendelkezik, így csak csatlakoztatja az akkumulátort és készen áll a használatra. Esetemben, ha egy antenna állandó RX módban van, hallgatja az adásokat és az OLED képernyő be van kapcsolva, a készülék majdnem 20 órán keresztül működne 1000 mAh LiPo -n.

Az OLED képernyő használata - de anélkül is lehetséges, pl. a három állapotjelző LED használatával - több programja is lehet, és a tábla alján található gombokkal kiválaszthatja, hogy melyiket szeretné futtatni. Én személy szerint még egy teljes menüt is megvalósítottam a választható módokkal és a frekvencia beállítási nézettel stb.

Ez akár egy otthoni automatizáláshoz is járhat! Mint már említettem, sikeresen tudtam kommunikálni a konnektorokkal (egyszer rögzítse az eredeti jeleket, és ha szükséges, ismételje meg őket), és ha egy kicsit kutakodik az interneten, gyorsan megtalálja, hogy hány eszköz is működik ezeket a frekvenciákat soha nem változó kódokkal. Még néhány garázs kódját is rögzítheti és elmentheti ezzel az eszközzel, majd használhatja, amikor meg kell nyitnia vagy bezárnia a garázst. Így ez univerzális távirányítóvá válhat az összes RF készülék számára!

Én személyesen is megismételtem a RollJam támadást ezzel az eszközzel, de nem adom ki a kódot, mivel a zavarás a legtöbb helyen illegális, ezért ha ilyesmivel próbálkozik, olvassa el a helyi törvényeket;-)

Mivel a tábla USB -lemezként jelenik meg, amikor csatlakoztatja, és a CircuitPython ilyen funkciót kínál, az eszköz rögzítheti az RF -adásokat, és mentheti a demodulált adatokat (ja, igen, az adó -vevők ezt automatikusan megteszik!) Egy szöveges fájlba. amelyeket később átmásolhat a számítógépére, és tudományos célokra elemezheti, mint például az átvitel fordított tervezése.

5. lépés: Végeredmény

Végeredmény
Végeredmény

A projekttel kapcsolatos bármilyen visszajelzést, javaslatot és hozzászólást szívesen fogadunk, és ha kérdése van, tegyen fel kérdéseket!

Ajánlott: