Mündəricat:

Python RF İnkişaf Kiti: 5 addım
Python RF İnkişaf Kiti: 5 addım

Video: Python RF İnkişaf Kiti: 5 addım

Video: Python RF İnkişaf Kiti: 5 addım
Video: Atom Bombası Nasıl Yapılır? #shorts 2024, Iyul
Anonim
Python RF İnkişaf Dəsti
Python RF İnkişaf Dəsti

Hər şeydən əvvəl, RF materiallarına necə daxil olduğum və bu layihə üzərində niyə çalışdığım haqqında kiçik bir məlumat vermək istərdim.

Təchizata yaxınlığı olan bir kompüter elmləri tələbəsi olaraq, 2018-ci ilin oktyabr ayında simsiz siqnallar və simsiz rabitə təhlükəsizliyi ilə məşğul olan bəzi kurslara qatılmağa başladım. Tez RTL-SDR və HackRF proqram təminatlı radiolarla sınaqdan keçirməyə başladım. rəf Arduino RF modulları.

Məsələ budur: SDR -lər mənim məqsədlərim üçün kifayət qədər portativ deyil (həmişə bir dizüstü kompüter, anten və s. Daşımaq lazımdır) və ucuz Arduino RF modulları siqnal gücü, fərdiləşdirmə qabiliyyəti, tezlik diapazonları və avtomatlaşdırma baxımından yetərli deyil.

Texas Instruments CC1101 antenaları, çox ucuz olan kiçik, lakin qabiliyyətli RF alıcıları üçün əla seçimdir. İnsanlar özləri ilə DIY SDR və buna bənzər şeylər qurublar.

Bu mövzu ilə məşğul olmaq istədiyim başqa bir şey CircuitPython idi. Çox yaxşı şeylər eşitdiyim mikrokontrolörlərin yeni bir proqramlaşdırma dilidir, buna görə də sınamaq istədim. Xüsusilə bu layihədə istifadə etdiyim Adafruit'in Feather M4 Express lövhəsi ilə birlikdə çox zövq aldığım ortaya çıxdı. Ayarlamaq çox asandır, çünki hər dəfə kodunuzda kiçik bir dəyişiklik etdiyiniz zaman xüsusi proqramlar tərtib etməyinizə ehtiyac yoxdur, bir REPL konsolu alırsınız və kodunuz da mikrokontrolörün özündə qalır, yəni onu gəzdirə və qoşa bilərsiniz. müxtəlif kompüterlərə daxil edin və hər zaman yolda dəyişikliklər edə biləcəksiniz.

Addım 1: Avadanlıq Komponentləri

Avadanlıq Komponentləri
Avadanlıq Komponentləri

Bu layihəni təkrarlamaq üçün sizə lazım olacaq:

  • Adafruit Feather M4 Express
  • 2x Texas Instruments CC1101 Verici + Anten
  • Adafruit FeatherWing OLED
  • 3.7V LiPo

Əslində, olduqca yığcam və qabiliyyətli bir RF ötürücüsünə sahib olmaq üçün lazım olan hər şey budur, ancaq görüntüdə gördüyünüz kimi, bütün bu tullanan tellərlə çox etibarlı və səliqəli olmayacaq.

Buna görə https://easyeda.com/ istifadə edərək xüsusi bir PCB hazırladım və hər şeyi bir -birinə bağlamaq üçün JLCPCB.com -dan sifariş verdim (çox ucuz və əla keyfiyyət!). Bu da istifadəçi girişi və vəziyyət çıxışları üçün 3 düyməni və LED -i asanlıqla birləşdirməyə imkan verdi.

Və nəhayət, 3D -ni PCB -nin arxa tərəfinə kiçik bir örtüklə çap etdim, belə ki, heç bir şeyə mane olmur və masaya düz oturmur.

Elektronika və PCB dizaynı ilə yeni tanışsınızsa, bu Təlimatları yoxlamağı məsləhət görürəm: Əsas Elektronika, Dövrə Kartı Dizayn Sınıfı!

Əlavələrdə PCB üçün Gerber fayllarını tapa bilərsiniz. İstehsal etmək qərarına gəlsəniz, LCSC -dən şəxsən sifariş verdiyim bir neçə əlavə komponentə ehtiyacınız olacaq, çünki onlar JLCPCB ilə əlaqədardır, buna görə də hər şeyi birlikdə göndərməyi təklif edir ki, bu da bir az göndərmə xərclərinə qənaət edir və komponentlər də sadəcə orda cox ucuz. Ətraflı siyahı üçün BOM -a baxın. Qəsdən SMD komponentləri üçün 0805 böyük paket ölçüsünü seçdim ki, hər kəs onları PCB üzərinə əl ilə lehimləyə bilsin!

Addım 2: İdarə Heyətinin qurulması

Şuranın qurulması
Şuranın qurulması
Şuranın qurulması
Şuranın qurulması
Şuranın qurulması
Şuranın qurulması

İlk görüntüdə PCB -ləri heç bir "dəyişiklik" etmədən görə bilərik - bunlar fabrikdən belə gəlir. Bütün THT deliklərində çox təmiz kəsiklər (v-yivsiz, tamamilə yönləndirilmiş) və gözəl viyasalar.

LED -lərdən istifadə etmək istəyirsinizsə, onları SMD rezistorları ilə birlikdə lehimləməlisiniz. Rezistorlar ümumiyyətlə mikro nəzarətçinin altında gizlənir, lakin tamamilə lehimli lövhəni göstərən ikinci şəkildə görünür. Lehimləmə ilə bağlı çox təcrübəniz yoxdursa, SMD -ni lehimləmək bir az çətin ola bilər, ancaq bir növ isteğe bağlıdır və bütün əsas komponentlər THT -dir. Həmişə Davein (EEVblog) videolarını tövsiyə etməyi sevirəm və əslində bu videonu özüm izləmişəm: EEVblog #186 - Lehimləmə Dərsliyi 3 -cü hissə - Səthi montaj. Bu olduqca uzun, amma bu işdə yenisinizsə buna dəyər!

O da bunu qeyd edir, amma: əvvəlcə rezistorları və LED -ləri, sonra düymələri ikinci və sonunda başlıqları lehimləməyə diqqət yetirin. Bu şəkildə həmişə altdan komponentə və yuxarıdan lehimə basmaq üçün masadan istifadə edə bilərsiniz (PCB tərsinə çevrildi).

Hər şeyi lehimlədikdən sonra, Feather M4 və bir və ya iki antenə qoşa bilərsiniz və cihaz hazırdır! Bu komponentləri lehimləmədiyimiz üçün onları həmişə taxtadan çıxarıb əla bir başqa layihə üçün istifadə edə bilərik!

Diqqət yetirin ki, üçüncü şəkildəki Tüydə nizamlı, qısa kişi başlıqlarım var, buna görə OLED -ni üstə yığa bilmədim. Onları silmək və Tüy yığma başlıqları əlavə etməliydim. OLED -dən istifadə etmək istəyirsinizsə, vicdanla yığma başlıqları əldə edin: D Sökülmə sadəcə bir dərddir.

Addım 3: Proqram təminatı

Donanma tamamlandıqdan sonra proqramdan danışaq.

Girişdə qeyd edildiyi kimi, M4 Python kodunu işlədir, ancaq Python dilində CC1101 üçün heç bir kitabxana yox idi. Beləliklə DIYersin etdiklərini etdim və özüm yazdım. Burada tapa bilərsiniz:

Böyük TI ötürücülərinin bacardığı hər şeyi dəstəkləmir, lakin istənilən tezlikdə ASK kodlu məlumatları asanlıqla göndərmək və qəbul etmək kifayətdir. Bu kitabxanadan istifadə edərək RF nəzarətli divar prizləri ilə yanaşı ailəmin avtomobili ilə də əlaqə qura bildim.

Çox güman ki, üzərində işləməyə davam edə bilərəm və hər hansı bir sualınız, xüsusiyyət istəyiniz varsa və ya inkişafa töhfə vermək istəyirsinizsə, mənimlə əlaqə saxlaya bilərsiniz!

Addım 4: Bacarıqlar və Xüsusiyyətlər

Bu cihazı ikiqat antenalar və yüksək konfiqurasiya edilə bilən TI CC1101 ötürücülərindən istifadə etmək üçün hazırladığım üçün, xüsusən də smartfon ölçüsündə bir cihazdan başqa bir şey daşımaq istəmədiyiniz sahədə bir çox imkanınız var.

Məsələn, 433MHz diapazonunda rabitə siqnallarını tuta və 868MHz -də işləyən ikincil anten ilə ev stansiyanıza geri göndərə bilərsiniz.

Və ya reaktiv tıxanma ilə öyrənmək və təcrübə etmək istəyirsinizsə, RX və TX arasında "ənənəvi üsul" etmədən, ötürülmə aşkar edildikdən sonra öz siqnallarını göndərən bir dinləmə və tıxanma anteninə sahib ola bilərsiniz. mümkün qədər sürətli.

Feather M4 ilə əlaqəli başqa bir maraqlı şey, bir LiPo şarj dövrəsi ilə birlikdə gəlir, buna görə batareyanı bağlayırsınız və işə hazırsınız. Mənim vəziyyətimdə, daimi RX rejimində olan bir antenə malik, ötürmələri dinləyən və OLED ekranı olan cihaz, 1000 mAh LiPo -da təxminən 20 saat işləyəcək.

OLED ekranından istifadə - lakin onsuz da mümkündür, məs. üç statuslu LED -dən istifadə edərək - birdən çox proqramınız ola bilər və lövhənin altındakı düymələrlə hansını işlətmək istədiyinizi seçə bilərsiniz. Şəxsən mən hətta seçim rejimləri və tezlik qəbulu görünüşü və s.

Hətta bəzi ev avtomatlaşdırılması üçün əlində ola bilər! Qeyd etdiyim kimi, elektrik prizləri ilə uğurla ünsiyyət qura bilmişəm (orijinal siqnalları bir dəfə çəkə və ehtiyac duyduğunuz zaman təkrar oxuya bilərsiniz) və İnternetdə bir az araşdırma aparsanız, neçə cihazın da işlədiyini tez tapa bilərsiniz. Kodları dəyişməyən bu tezliklər. Hətta bəzi qarajların kodları bu cihazla qeyd oluna və saxlanıla bilər və sonra qarajınızı açmaq və ya bağlamaq lazım olduqda istifadə edilə bilər. Beləliklə, bu, bütün RF cihazlarınız üçün universal bir pult ola bilər!

Mən şəxsən RollJam hücumunu bu cihazla da təkrarladım, amma kodu çıxarmayacağam, çünki tıxanma əksər yerlərdə qanunsuzdur, buna görə də belə bir şey etməyə cəhd etsəniz, yerli qanunlarınızla məsləhətləşin;-)

Lövhə qoşulduqda bir USB disk olaraq göründüyü üçün və CircuitPython belə bir xüsusiyyət təklif etdiyindən, cihazın RF ötürülmələrini qeyd edə və demodulyasiya edilmiş məlumatları (bəli, ötürücülər bunu avtomatik olaraq edir!) Bir mətn sənədinə saxlaya bilərsiniz. daha sonra kompüterinizə kopyalaya və ötürmələrin tərs mühəndisliyi kimi elm məqsədləri üçün təhlil edə bilərsiniz.

Addım 5: Son nəticə

Yekun Nəticə
Yekun Nəticə

Bu layihəyə hər hansı bir rəy, təklif və töhfələr xoş gəlmisiniz və hər hansı bir sualınız varsa soruşmaqdan çekinmeyin!

Tövsiyə: