Tartalomjegyzék:
- 1. lépés: Hardverkomponensek
- 2. lépés: A tábla felépítése
- 3. lépés: Szoftver
- 4. lépés: Képességek és szolgáltatások
- 5. lépés: Végeredmény
Videó: Python RF fejlesztői készlet: 5 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
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
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
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
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:
Hordozható Bluetooth hangszóró - MKBoom DIY készlet: 5 lépés (képekkel)
Hordozható Bluetooth hangszóró | MKBoom DIY Kit: Sziasztok mindenkinek! Annyira jó, hogy hosszú szünet után visszatérhetek egy újabb hangszóróprojekthez. Mivel a legtöbb építéshez elég sok eszközre van szükség, ezúttal úgy döntöttem, hogy egy hordozható hangszórót építek egy könnyen megvásárolható készlet segítségével. Gondoltam
Teljes Python webes interfész készlet PhidgetSBC3 -hoz: 6 lépés
Teljes Python webes felületkészlet a PhidgetSBC3 számára: A PhidgetSBC3 kártya egy teljes funkcionalitású egykártyás számítógép, amely Debain Linux rendszert futtat. Hasonló a málna Pi -hez, de 8 analóg érzékelő bemenettel és 8 digitális bemenettel és 8 digitális kimenettel rendelkezik. Webkiszolgálóval és webalkalmazással együtt szállítják a
Az Arduino szoftver (IDE) telepítése a Jetson Nano fejlesztői készletre: 3 lépés
Az Arduino szoftver (IDE) telepítése a Jetson Nano fejlesztői készletre: U szüksége lesz Jetson Nano fejlesztői készletre? Internetkapcsolat a jetson táblához az Ethernet csatlakozó vagy a telepített wifi kártya használatával
Első lépések az NVIDIA Jetson Nano fejlesztői készlettel: 6 lépés
Első lépések az NVIDIA Jetson Nano fejlesztői készlettel: Az Nvidia Jetson rövid áttekintése A NanoJetson Nano fejlesztői készlet egy kicsi, nagy teljesítményű egylapos számítógép, amely lehetővé teszi több neurális hálózat párhuzamos futtatását olyan alkalmazásokhoz, mint a képosztályozás, objektumfelismerés, szegmentálás és beszéd pr
Flappy Bird játékot játszani az M5stack Esp32 alapú M5stick C fejlesztői táblával: 5 lépés
Flappy Bird Game játék az M5stack Esp32 alapú M5stick C fejlesztési táblájával: Sziasztok srácok, ma megtanuljuk, hogyan kell feltölteni a flappy bird game kódot az m5stack által biztosított m5stick c fejlesztőlapra. Ehhez a kis projekthez két dologra lesz szüksége: m5stick-c fejlesztési tábla: https://www.utsource.net/itm/p/8663561.h