Përmbajtje:

Kompleti i Zhvillimit Python RF: 5 hapa
Kompleti i Zhvillimit Python RF: 5 hapa

Video: Kompleti i Zhvillimit Python RF: 5 hapa

Video: Kompleti i Zhvillimit Python RF: 5 hapa
Video: Supersection 1, More Comfortable 2024, Korrik
Anonim
Kompleti i Zhvillimit Python RF
Kompleti i Zhvillimit Python RF

Para së gjithash, do të doja të bëja një hyrje të vogël se si u futa në gjërat RF dhe pse po punoj në këtë projekt.

Si student i shkencave kompjuterike me prirje ndaj harduerit, fillova të ndjek disa kurse që merren me sinjalet pa tel dhe sigurinë në komunikimet pa tel në Tetor 2018. Fillova shpejt të eksperimentoja me radiot e përcaktuara nga softueri RTL-SDR dhe HackRF dhe me jashtë raft modulet Arduino RF.

Çështja është: SDR -të nuk janë mjaft të lëvizshme për qëllimet e mia (gjithmonë duhet të mbaj një laptop, antena etj.) Dhe modulet e lirë Arduino RF nuk janë aq të aftë sa i përket fuqisë së sinjalit, përshtatshmërisë, intervalit të frekuencës dhe automatizimit.

Antenat CC1101 nga Texas Instruments janë një zgjedhje e shkëlqyeshme për transmetuesit e vegjël por të aftë RF që janë gjithashtu shumë të lirë. Njerëzit kanë ndërtuar gjëra të shkëlqyera me ta, si DIR SDR dhe gjëra të tilla.

Një gjë tjetër që doja të trajtoja me këtë temë ishte CircuitPython. It'sshtë një gjuhë e re programimi nga mikrokontrolluesit për të cilën kam dëgjuar shumë gjëra të mira, kështu që doja ta provoja. Doli se më pëlqen shumë, veçanërisht e shoqëruar me bordin e Adafruit's Feather M4 Express të cilin e përdor gjithashtu në këtë projekt. Veryshtë shumë e lehtë për të korrigjuar pasi nuk keni nevojë të përpiloni firmware të personalizuar sa herë që provoni një ndryshim të vogël në kodin tuaj, ju merrni një tastierë REPL dhe kodi juaj gjithashtu qëndron në vetë mikrokontrolluesin, që do të thotë se mund ta mbani me vete, ta lidhni në kompjuterë të ndryshëm dhe gjithmonë do të keni mundësi të bëni ndryshime në lëvizje.

Hapi 1: Komponentët e harduerit

Komponentet e harduerit
Komponentet e harduerit

Çfarë ju nevojitet për të përsëritur këtë projekt:

  • Pendë Adafruit M4 Express
  • 2x Transceiver Texas Instruments CC1101 + Antenë
  • Adafruit FeatherWing OLED
  • 3.7V LiPo

Në thelb kjo është gjithçka që ju nevojitet për të pasur një marrës RF mjaft kompakt dhe të aftë, por siç mund ta shihni në imazh nuk do të jetë shumë i besueshëm dhe i rregullt me të gjitha ato tela kërcyes.

Kështu që unë hartova një PCB të personalizuar duke përdorur https://easyeda.com/ dhe e porosita atë nga JLCPCB.com (shumë e lirë dhe me cilësi të shkëlqyeshme!) Për të lidhur gjithçka së bashku. Kjo gjithashtu lejoi të integrojë me lehtësi 3 butona dhe LED për hyrjen e përdoruesit dhe daljet e statusit.

Dhe së fundi, unë printova 3D një kopertinë të vogël për pjesën e prapme të PCB -së, kështu që nuk do të shkurtohet kundër asgjëje dhe do të ulem në tryezë.

Nëse jeni i ri në dizajnin e Elektronikës dhe PCB, unë do të rekomandoja të shikoni këto udhëzime: Elektronikë Bazë, Klasa e Dizajnit të Bordit të Qarkut!

Në bashkëngjitjet mund të gjeni skedarët Gerber për PCB -në time. Nëse vendosni ta prodhoni atë, do t'ju duhen disa përbërës shtesë të cilët unë personalisht i kam porositur nga LCSC, pasi ato janë të lidhura me JLCPCB kështu që ato ofrojnë të dërgojnë gjithçka së bashku që kursen pak nga kostot e transportit dhe përbërësit janë gjithashtu vetëm shumë lirë atje. Shikoni BOM për listën e detajuar. Unë me qëllim zgjodha madhësinë e paketës së madhe 0805 për përbërësit SMD në mënyrë që të gjithë t'i lidhin me dorë në PCB!

Hapi 2: Ndërtimi i Bordit

Ndërtimi i Bordit
Ndërtimi i Bordit
Ndërtimi i Bordit
Ndërtimi i Bordit
Ndërtimi i Bordit
Ndërtimi i Bordit

Në imazhin e parë ne mund të shohim PCB -të pa bërë asnjë "modifikim" - ato vijnë kështu nga fabrika. Prerje shumë të pastra (pa v-groove, të drejtuara plotësisht) dhe vias të këndshme në të gjitha vrimat e THT.

Nëse dëshironi të përdorni LED -të, do t'ju duhet t'i lidhni ato, si dhe rezistorët SMD. Rezistencat zakonisht fshihen nën mikrokontrollues, por të dukshme në foton e dytë që tregon tabelën e bashkuar plotësisht. Nëse nuk keni shumë përvojë me saldimin, mund të jetë pak e ndërlikuar të lidhni SMD, por është një lloj opsionale dhe të gjithë përbërësit kryesorë janë THT. Gjithmonë më pëlqen të rekomandoj videot e Dave (EEVblog) dhe në fakt e kam parë vetë këtë: EEVblog #186 - Udhëzues për bashkimin Pjesa 3 - Sipërfaqja. Prettyshtë shumë e gjatë, por ia vlen nëse jeni i ri në këto gjëra!

Ai e përmend edhe këtë, por: kujdesuni që së pari të lidhni rezistorët dhe LED -të, pastaj butonat e dyta dhe titujt në fund. Në këtë mënyrë ju gjithmonë mund të përdorni tabelën për të shtyrë kundër komponentit nga poshtë dhe ngjitur nga lart (PCB u përmbys përmbys).

Pasi të keni bashkuar gjithçka, thjesht mund të lidhni Feather M4 dhe një ose dy antena dhe pajisja është gati! Meqenëse ne nuk i bashkojmë këto përbërës, ne gjithmonë mund t'i heqim ato nga bordi dhe t'i përdorim ato për një projekt tjetër që është i shkëlqyeshëm!

Ju lutemi vini re se në foton e tretë kam kokë të rregullt, të shkurtër meshkuj në pendë, kështu që nuk mund të vendosja OLED në krye. Më duhej t'i shkrij ato dhe të shtoja titujt e grumbullimit të pendëve. Nëse dëshironi të përdorni OLED, merrni kokën e grumbullimit menjëherë, sinqerisht: D Shkrirja është thjesht një dhimbje.

Hapi 3: Softuer

Me harduerin e bërë, le të flasim për softuerin.

Siç u përmend në hyrje, M4 drejton kodin Python, por padyshim që asnjë bibliotekë për CC1101 nuk ekzistonte në gjuhën Python. Kështu që unë bëra atë që bëjnë DIY dhe shkrova timen. Mund ta gjeni këtu:

Nuk mbështet gjithçka për të cilën janë të aftë transmetuesit e mëdhenj TI, por është e mjaftueshme për të dërguar dhe marrë me lehtësi të dhëna të koduara ASK në çdo frekuencë. Isha në gjendje të komunikoja me prizat e murit të kontrolluara me RF, si dhe me makinën e familjes sime duke përdorur këtë bibliotekë.

Me shumë mundësi mund të vazhdoj të punoj në të dhe nëse keni ndonjë pyetje, kërkesë për veçori ose doni të kontribuoni në zhvillim, mos ngurroni të më kontaktoni!

Hapi 4: Aftësitë dhe Veçoritë

Meqenëse kam krijuar këtë pajisje për të përdorur antena të dyfishta dhe transmetues shumë të konfigurueshëm TI CC1101, ju keni një sërë mundësish, veçanërisht në fushën ku nuk doni të keni nevojë të mbani asgjë më shumë se një pajisje me madhësi smartphone.

Për shembull, mund të kapni sinjale të komunikimit në brezin 433MHz dhe t'i dërgoni përsëri në stacionin tuaj të shtëpisë me antenën dytësore që funksionon në 868MHz.

Ose nëse doni të studioni dhe eksperimentoni me bllokimin reaktiv, mund të keni një antenë dëgjimi dhe bllokimi që dërgon sinjalet e veta sapo të zbulohet një transmetim, pa bërë "metodën tradicionale" të përpjekjes për të kaluar midis RX dhe TX si sa me shpejt.

Një gjë tjetër shumë interesante në lidhje me Feather M4 është se ajo vjen me një qark ngarkimi LiPo në bord, kështu që thjesht lidhni baterinë tuaj dhe jeni gati për të shkuar. Në rastin tim, me një antenë në mënyrë konstante RX, duke dëgjuar transmetimet dhe ekranin OLED të ndezur, pajisja do të funksiononte për gati 20 orë në një LiPo 1000 mAh.

Përdorimi i ekranit OLED - por edhe i mundur pa të, p.sh. duke përdorur tre LED të statusit - mund të keni programe të shumta dhe zgjidhni atë që dëshironi të përdorni me butonat në pjesën e poshtme të tabelës. Unë personalisht madje zbatova një menu të tërë me mënyra për të zgjedhur dhe një pamje të cilësimit të frekuencës, etj.

Mund të vijë edhe në dorë për ndonjë automatizim të shtëpisë! Siç e përmenda, unë kam qenë në gjendje të komunikoj me priza me sukses (kapni sinjalet origjinale një herë dhe i rishikoni kur të keni nevojë) dhe nëse bëni pak kërkime në internet, shpejt do të gjeni se sa pajisje funksionojnë gjithashtu këto frekuenca me kode që nuk ndryshojnë kurrë. Edhe disa kode garazhesh mund të regjistrohen dhe ruhen me këtë pajisje dhe më pas të përdoren sa herë që keni nevojë të hapni ose mbyllni garazhin tuaj. Pra, kjo mund të bëhet një telekomandë universale për të gjitha pajisjet tuaja RF!

Unë personalisht përsërita sulmin RollJam edhe me këtë pajisje, por nuk do ta lëshoj kodin pasi bllokimi është i paligjshëm në shumicën e vendeve, kështu që nëse provoni diçka të tillë, konsultohuni me ligjet tuaja lokale;-)

Meqenëse bordi shfaqet si një disk USB kur e lidhni dhe CircuitPython ofron një veçori të tillë, ju gjithashtu mund të keni që pajisja të regjistrojë transmetimet RF dhe të ruani të dhënat e demoduluara (oh po, transmetuesit e bëjnë këtë automatikisht!) Në një skedar teksti të cilat më vonë mund t'i kopjoni në kompjuterin tuaj dhe t'i analizoni për qëllime shkencore si inxhinieria e kundërt e transmetimeve.

Hapi 5: Rezultati Përfundimtar

Rezultati Përfundimtar
Rezultati Përfundimtar

Çdo reagim, sugjerim dhe kontribut në këtë projekt është i mirëpritur dhe mos ngurroni të bëni pyetje nëse keni!

Recommended: