Mundarija:

Python RF ishlab chiqish to'plami: 5 qadam
Python RF ishlab chiqish to'plami: 5 qadam

Video: Python RF ishlab chiqish to'plami: 5 qadam

Video: Python RF ishlab chiqish to'plami: 5 qadam
Video: PYTHON DASTURCHI - Kim u? 2024, Iyul
Anonim
Python RF rivojlantirish to'plami
Python RF rivojlantirish to'plami

Birinchidan, men RFga qanday kirganim va nima uchun bu loyihada ishlayotganim haqida qisqacha ma'lumot bermoqchiman.

Kompyuter fanlari talabasi sifatida men 2018 yil oktyabr oyida simsiz aloqa va simsiz aloqa xavfsizligi bilan shug'ullanadigan ba'zi kurslarga qatnay boshladim. Men tezda RTL-SDR va HackRF dasturlari bilan belgilangan radiolar bilan tajriba o'tkaza boshladim. raf Arduino RF modullari.

Muammo shundaki: SDR -lar mening maqsadlarim uchun etarlicha ko'chirilmaydi (har doim noutbuk, antennalar va boshqalarni olib yurish kerak) va Arduino RF -ning arzon modullari signal kuchi, sozlash qobiliyati, chastota diapazoni va avtomatlashtirish nuqtai nazaridan etarli emas.

Texas Instruments kompaniyasining CC1101 antennalari kichik, ammo qobiliyatli RF translyatorlari uchun ajoyib tanlovdir, ular ham juda arzon. Odamlar ular bilan DIY SDR va shunga o'xshash narsalar kabi ajoyib narsalarni qurdilar.

Men bu mavzu bilan shug'ullanmoqchi bo'lgan yana bir narsa - CircuitPython. Bu mikrokontrollerlarning yangi dasturlash tili, men juda ko'p yaxshi narsalarni eshitganman, shuning uchun men uni sinab ko'rmoqchi edim. Ma'lum bo'lishicha, menga juda yoqadi, ayniqsa Adafruit -ning Feather M4 Express kartasi bilan birga, men ham bu loyihada foydalanaman. Nosozliklarni tuzatish juda oson, chunki har safar kodingizni ozgina o'zgartirganingizda maxsus dasturiy ta'minotni kompilyatsiya qilishingiz shart emas, siz REPL konsoliga ega bo'lasiz va sizning kodingiz mikrokontrolderning o'zida qoladi, demak siz uni olib yurishingiz mumkin. har xil kompyuterlarga joylashtiring va siz har doim yo'lda o'zgarishlarni amalga oshira olasiz.

1 -qadam: Uskuna komponentlari

Uskuna komponentlari
Uskuna komponentlari

Ushbu loyihani takrorlash uchun sizga nima kerak:

  • Adafruit Feather M4 Express
  • 2x Texas asboblari CC1101 qabul qiluvchi + antenna
  • Adafruit FeatherWing OLED
  • 3.7V LiPo

Asosan, bu sizga juda ixcham va qobiliyatli chastotali radio qabul qilgichga ega bo'lish uchun kerak, lekin rasmda ko'rib turganingizdek, bu barcha o'tish simlari bilan juda ishonchli va tartibli bo'lmaydi.

Shunday qilib, men https://easyeda.com/ yordamida shaxsiy PCB yaratdim va hamma narsani bir -biriga ulash uchun JLCPCB.com saytidan buyurtma berdim (juda arzon va sifatli!). Bu, shuningdek, foydalanuvchi kiritish va holati chiqishi uchun 3 ta tugma va LEDni osongina birlashtirishga imkon berdi.

Va nihoyat, men 3D tenglikni orqa tomoni uchun kichik qopqoqni bosdim, shunda u hech narsaga to'sqinlik qilmaydi va stolga tekis o'tirmaydi.

Agar siz elektronika va PCB dizaynida yangi bo'lsangiz, men ushbu ko'rsatmalarni o'rganishni maslahat beraman: asosiy elektronika, elektron platalar dizayni klassi!

Qo'shimchalarda siz mening PCB uchun Gerber fayllarini topishingiz mumkin. Agar siz uni ishlab chiqarishga qaror qilsangiz, sizga LCSC -dan buyurtma bergan bir nechta qo'shimcha komponentlar kerak bo'ladi, chunki ular JLCPCB bilan bog'langan, shuning uchun ular hamma narsani birga etkazib berishni taklif qiladi, bu esa yuk tashish xarajatlarini ozgina tejaydi va komponentlar ham oddiy u erda juda arzon. Batafsil ro'yxat uchun BOMga qarang. Men qasddan SMD komponentlari uchun katta hajmdagi 0805 paketni tanladim, shuning uchun hamma ularni tenglikka lehimlab berishi mumkin!

2 -qadam: Kengashni qurish

Kengashni qurish
Kengashni qurish
Kengashni qurish
Kengashni qurish
Kengashni qurish
Kengashni qurish

Birinchi rasmda biz hech qanday "modifikatsiyasiz" PCBlarni ko'rishimiz mumkin - ular zavoddan shunday keladi. Hamma THT teshiklarida juda toza kesmalar (v-truba yo'q, to'liq yo'naltirilgan) va chiroyli chiziqlar.

Agar siz LEDlarni ishlatmoqchi bo'lsangiz, ularni SMD rezistorlari bilan bir qatorda lehimlashingiz kerak bo'ladi. Rezistorlar odatda mikrokontroller ostida yashiringan, lekin to'liq lehimli taxtani ko'rsatadigan ikkinchi rasmda ko'rinadi. Agar siz lehim bilan ishlash tajribasiga ega bo'lmasangiz, SMD -ni lehimlash biroz qiyin bo'lishi mumkin, lekin bu ixtiyoriy va barcha asosiy komponentlar THT. Men har doim Deyv (EEVblog) ning videolarini tavsiya qilishni yaxshi ko'raman va bu videoni o'zim ham ko'rganman: EEVblog #186 - Lehimlash bo'yicha qo'llanma 3 -qism - Sirtga o'rnatish. Bu juda uzoq, lekin agar siz bu narsada yangi bo'lsangiz, bunga arziydi!

U buni ham eslatib o'tadi, lekin: birinchi navbatda rezistorlar va LEDlarni, so'ng tugmalarni ikkinchi, sarlavhalarini lehimlashga e'tibor bering. Shunday qilib, siz har doim jadvaldan foydalanib, komponentni pastdan va yuqoridan lehim bilan bosishingiz mumkin (tenglikni teskari o'girib).

Hamma narsani lehimlagandan so'ng, siz Feather M4 va bitta yoki ikkita antennani ulashingiz mumkin va apparat tayyor! Biz bu komponentlarni lehimlamaganimiz uchun, biz ularni har doim taxtadan olib tashlab, boshqa ajoyib loyihada ishlata olamiz!

E'tibor bering, uchinchi rasmda menda tuklar ustida oddiy, qisqa erkakcha sarlavhalar bor, shuning uchun men OLED -ni tepaga qo'yolmadim. Men ularni qolipdan olib tashlash va tuklarni yig'ish sarlavhalarini qo'shishim kerak edi. Agar siz OLED -dan foydalanmoqchi bo'lsangiz, darhol sarlavhalarni to'plang, halol: D Desoldering - bu faqat og'riq.

3 -qadam: dasturiy ta'minot

Uskunani tugatgandan so'ng, dasturiy ta'minot haqida gapiraylik.

Kirish qismida aytilganidek, M4 Python kodini ishlatadi, lekin Python tilida CC1101 uchun kutubxona yo'qligi aniq. Shunday qilib, men DIYers qiladigan narsani qildim va o'zim yozdim. Siz uni bu erda topishingiz mumkin:

Bu buyuk TI transversionerlari qila oladigan hamma narsani qo'llab-quvvatlamaydi, lekin istalgan chastotada ASK-kodlangan ma'lumotlarni osongina yuborish va qabul qilish kifoya. Men ushbu kutubxonadan foydalanib, RF boshqaruvidagi devor rozetkalari bilan, shuningdek, oilamning mashinasi bilan aloqa qila oldim.

Ehtimol, men bu ishni davom ettirishim mumkin va agar sizda biron bir savol, xususiyat so'rovi yoki rivojlanishiga hissa qo'shmoqchi bo'lsangiz, men bilan bog'laning!

4 -qadam: imkoniyatlar va xususiyatlar

Men bu qurilmani ikkita antennadan va yuqori darajada konfiguratsiya qilinadigan TI CC1101 uzatgichlaridan foydalanish uchun yaratganim uchun, sizda juda ko'p imkoniyatlar bor, ayniqsa, siz smartfon o'lchamidagi qurilmadan boshqa narsani olib yurishni xohlamaysiz.

Siz, masalan, 433 MGts diapazonidagi aloqa signallarini yozib olishingiz va 868 MGts chastotali ikkilamchi antennaga ega bo'lgan holda o'z uy stantsiyangizga qaytarishingiz mumkin.

Yoki agar siz reaktiv tiqilib qolishni o'rganishni va tajriba o'tkazishni xohlasangiz, RX va TX o'rtasida "an'anaviy usul" ni ishlatmasdan, uzatish aniqlanganda o'z signallarini yuboradigan tinglash va siqish antennasiga ega bo'lishingiz mumkin. iloji boricha tezroq.

Feather M4 -ning yana bir ajoyib tomoni shundaki, u LiPo -ning zaryadlovchi zanjiri bilan ta'minlangan, shuning uchun siz batareyangizni ulab, ishga tayyor bo'lasiz. Menimcha, uzluksiz RX rejimida bitta antenna, translyatsiyalarni tinglash va OLED ekrani yoqilganda, qurilma 1000 mA / soat LiPo -da deyarli 20 soat ishlaydi.

OLED ekranidan foydalanish - lekin u holda ham mumkin, masalan. uchta holatli LED yordamida - siz bir nechta dasturlarga ega bo'lishingiz va qaysi birini ishlatishni xohlayotganingizni taxtaning pastki qismidagi tugmalar yordamida tanlashingiz mumkin. Shaxsan men hatto tanlash mumkin bo'lgan rejimlar va chastota sozlamalari ko'rinishini o'z ichiga olgan butun menyuni amalga oshirdim.

Bu hatto ba'zi uylarni avtomatlashtirish uchun ham qo'l kelishi mumkin! Aytganimdek, men elektr rozetkalari bilan muvaffaqiyatli muloqot qila oldim (bir marta asl signallarni yozib olaman va kerak bo'lganda ularni qayta o'ynata olaman) va agar siz Internetda ozgina tadqiqot qilsangiz, qancha qurilmalar ishlayotganini tezda topasiz. kodlari hech qachon o'zgarmaydigan bu chastotalar. Hatto ba'zi garajlarning kodlari ham ushbu qurilma yordamida yozib olinishi va saqlanishi mumkin, keyin garajni ochish yoki yopish kerak bo'lganda foydalanish mumkin. Shunday qilib, bu sizning barcha RF qurilmalaringiz uchun universal masofadan boshqarish pultiga aylanishi mumkin!

Men bu qurilmada RollJam hujumini shaxsan takrorladim, lekin kodni qo'yib yubormayman, chunki ko'p joylarda tiqilish noqonuniydir, shuning uchun agar siz shunga o'xshash harakat qilsangiz, mahalliy qonunlaringiz bilan maslahatlashing;-)

Kengash USB disk sifatida ko'rsatilganda va siz CircuitPython -da bunday funktsiyani taklif qilganda, siz qurilmaning chastotali uzatmalarini yozib olishingiz va demodulyatsiyalangan ma'lumotlarni (ha, qabul qiluvchilar buni avtomatik tarzda bajarishi mumkin) matnli faylga saqlashingiz mumkin. keyinchalik kompyuteringizga nusxa ko'chirishingiz va uzatishni teskari muhandisligi kabi ilmiy maqsadlarda tahlil qilishingiz mumkin.

5 -qadam: Yakuniy natija

Yakuniy natija
Yakuniy natija

Loyihaga bildirilgan har qanday fikr, taklif va hissa xush kelibsiz va agar sizda savol bo'lsa, bemalol so'rang!

Tavsiya: