Სარჩევი:

Python RF განვითარების ნაკრები: 5 ნაბიჯი
Python RF განვითარების ნაკრები: 5 ნაბიჯი

ვიდეო: Python RF განვითარების ნაკრები: 5 ნაბიჯი

ვიდეო: Python RF განვითარების ნაკრები: 5 ნაბიჯი
ვიდეო: Python с нуля | Списки в Python | Методы списков, сортировка списка, срезы списков в Python 2024, ივლისი
Anonim
პითონის RF განვითარების ნაკრები
პითონის RF განვითარების ნაკრები

უპირველეს ყოვლისა, მინდა შემოვიტანო მცირედი შესავალი იმის შესახებ, თუ როგორ მოვხვდი რუსეთის ფედერაციაში და რატომ ვმუშაობ ამ პროექტზე.

როგორც კომპიუტერული მეცნიერების სტუდენტი აპარატურისადმი მიდრეკილებით, დავიწყე დასწრება ზოგიერთ კურსზე, რომელიც ეხება უკაბელო სიგნალებს და უსაფრთხოებას უკაბელო კომუნიკაციებში 2018 წლის ოქტომბერში. მე სწრაფად დავიწყე ექსპერიმენტები RTL-SDR და HackRF პროგრამული უზრუნველყოფის განსაზღვრული რადიოებით და გამორთული თარო Arduino RF მოდულები.

საკითხი ისაა: SDR– ები არ არის საკმარისად პორტატული ჩემი მიზნებისათვის (ყოველთვის მჭირდება ლეპტოპის, ანტენების და სხვა) და იაფი Arduino RF მოდულები არ არის საკმარისად საკმარისი სიგნალის სიძლიერის, მორგებულობის, სიხშირის დიაპაზონის და ავტომატიზაციის თვალსაზრისით.

CC1101 ანტენები Texas Instruments– დან შესანიშნავი არჩევანია მცირე, მაგრამ შესაძლებლობების მქონე RF გადამცემებისთვის, რომლებიც ასევე ძალიან იაფია. ადამიანებმა მათთან ერთად შექმნეს შესანიშნავი რამ, მაგალითად, წვრილმანი SDR და მსგავსი რამ.

კიდევ ერთი რამ, რისი განხილვაც მინდოდა ამ თემაზე იყო CircuitPython. ეს არის ახალი პროგრამირების ენა მიკროკონტროლერებისგან, რომლის შესახებაც ბევრი კარგი რამ მომისმენია, ამიტომ მინდოდა მისი გამოცდა. აღმოჩნდა, რომ მე ძალიან მსიამოვნებს, განსაკუთრებით ადაფრუტის ბუმბულით M4 ექსპრეს დაფაზე, რომელსაც ასევე ვიყენებ ამ პროექტში. გამოსწორება ძალიან ადვილია, რადგან თქვენ არ გჭირდებათ პერსონალური ფირმის შედგენა ყოველ ჯერზე, როდესაც თქვენს კოდში მცირე ცვლილებას ცდილობთ, თქვენ იღებთ REPL კონსოლს და თქვენი კოდი ასევე რჩება მიკროკონტროლერზე, რაც იმას ნიშნავს, რომ თქვენ შეგიძლიათ მისი ტარება, შეაერთეთ იგი სხვადასხვა კომპიუტერში და თქვენ ყოველთვის შეძლებთ ცვლილებების გაკეთებას.

ნაბიჯი 1: აპარატურის კომპონენტები

აპარატურის კომპონენტები
აპარატურის კომპონენტები

რა დაგჭირდებათ ამ პროექტის გამეორებისთვის:

  • ადაფრუტის ბუმბული M4 ექსპრესი
  • 2x Texas Instruments CC1101 გადამცემი + ანტენა
  • Adafruit FeatherWing OLED
  • 3.7V LiPo

არსებითად ეს არის ყველაფერი რაც თქვენ გჭირდებათ იმისათვის, რომ გქონდეთ საკმაოდ კომპაქტური და ქმედითი RF გადამცემი, მაგრამ როგორც ხედავთ სურათზე ის არ იქნება ძალიან საიმედო და მოწესრიგებული ყველა იმ მხტუნავ მავთულხლართებთან ერთად.

ასე რომ, მე შევქმენი პერსონალური PCB https://easyeda.com/ გამოყენებით და შევუკვეთე ის JLCPCB.com– დან (ძალიან იაფი და შესანიშნავი ხარისხი!), რომ ყველაფერი ერთმანეთთან დააკავშიროთ. ეს ასევე საშუალებას აძლევდა მარტივად ინტეგრირება 3 ღილაკს და LED- ებს მომხმარებლის შეყვანისა და სტატუსის შედეგებისთვის.

და ბოლოს, მე 3D დაბეჭდილი პატარა ყდა უკან PCB ასე რომ ეს არ იქნება მოკლე წინააღმდეგ არაფერი და იჯდეს ბინა მაგიდაზე.

თუ თქვენ ახალი ხართ ელექტრონიკისა და PCB დიზაინის სფეროში, გირჩევთ გაეცნოთ ამ ინსტრუქციას: ძირითადი ელექტრონიკა, მიკროსქემის დიზაინის კლასი!

დანართებში შეგიძლიათ ნახოთ გერბერის ფაილები ჩემი PCB– სთვის. თუ გადაწყვეტთ მისი დამზადებას, დაგჭირდებათ რამდენიმე დამატებითი კომპონენტი, რომელიც მე პირადად შევუკვეთე LCSC– ს, რადგან ისინი დაკავშირებულია JLCPCB– თან, ამიტომ ისინი გვთავაზობენ ყველაფრის ერთად გადაზიდვას, რაც ზოგავს გადაზიდვის ხარჯებს და კომპონენტებიც მხოლოდ ძალიან იაფია იქ იხილეთ BOM დეტალური ჩამონათვალისთვის. მე განზრახ ავირჩიე დიდი ზომის პაკეტი 0805 SMD კომპონენტებისთვის, ასე რომ ყველას შეუძლია ხელით შეკრას ისინი PCB– ზე!

ნაბიჯი 2: დაფის შექმნა

დაფის მშენებლობა
დაფის მშენებლობა
დაფის მშენებლობა
დაფის მშენებლობა
დაფის მშენებლობა
დაფის მშენებლობა

პირველ სურათზე ჩვენ ვხედავთ PCB- ებს ყოველგვარი "მოდიფიკაციის" გარეშე - ისინი ასე მოდიან ქარხნიდან. ძალიან სუფთა ჭრილობები (არ არის v-groove, მთლიანად არის გადატანილი) და ლამაზი ვიზა ყველა THT ხვრელზე.

თუ გსურთ გამოიყენოთ LED- ები, თქვენ უნდა შეაერთოთ ისინი, ისევე როგორც SMD რეზისტორები. რეზისტორები, როგორც წესი, იმალებიან მიკროკონტროლის ქვეშ, მაგრამ ჩანს მეორე სურათზე, რომელიც აჩვენებს მთლიანად შედუღებულ დაფას. თუ თქვენ არ გაქვთ დიდი გამოცდილება შედუღებასთან დაკავშირებით, ეს შეიძლება იყოს ცოტა სახიფათო SMD– ის შედუღება, მაგრამ ეს არჩევითია და ყველა ძირითადი კომპონენტი არის THT. მე ყოველთვის მომწონს დეივის (EEVblog) ვიდეოების რეკომენდაცია და რეალურად მე თვითონ ვუყურე ამას: EEVblog #186 - Soldering Tutorial ნაწილი 3 - ზედაპირის მთა. ეს საკმაოდ გრძელია, მაგრამ ღირს, თუ ახალი ხართ ამ ნივთში!

ის აღნიშნავს ამასაც, მაგრამ: იზრუნეთ იმაზე, რომ შეაერთოთ რეზისტორები და ები, შემდეგ მეორე ღილაკები და ბოლოს სათაურები. ამრიგად, თქვენ ყოველთვის შეგიძლიათ გამოიყენოთ მაგიდა კომპონენტის ქვემოდან და ზემოდან შესაკრავად (PCB თავდაყირა დატრიალდა).

ყველაფრის შედუღების შემდეგ შეგიძლიათ უბრალოდ შეაერთოთ ბუმბული M4 და ერთი ან ორი ანტენა და ტექნიკა მზად არის! ვინაიდან ჩვენ არ ვკერავთ ამ კომპონენტებს, ჩვენ ყოველთვის შეგვიძლია მათი ამოღება დაფადან და მათი გამოყენება სხვა პროექტისთვის, რომელიც შესანიშნავია!

გთხოვთ გაითვალისწინოთ, რომ მესამე სურათზე მე მაქვს ბუმბულზე რეგულარული, მოკლე მამრობითი სათაურები, ასე რომ OLED- ის თავზე დადება არ შემიძლია. მომიწია მათი მოცილება და დამატება ბუმბულის დაწყობის სათაურები. თუ გსურთ OLED– ის გამოყენება, დაუყოვნებლივ მიიღეთ თავსახური, გულწრფელად: D Desoldering არის მხოლოდ ტკივილი.

ნაბიჯი 3: პროგრამული უზრუნველყოფა

ტექნიკის დასრულების შემდეგ, მოდით ვისაუბროთ პროგრამულ უზრუნველყოფაზე.

როგორც შესავალში აღინიშნა, M4 მუშაობს პითონის კოდზე, მაგრამ ცხადია, რომ CC1101– ის ბიბლიოთეკა არ არსებობდა პითონის ენაზე. ასე რომ, მე გავაკეთე ის, რასაც აკეთებენ ხელოსნები და დავწერე ჩემი. შეგიძლიათ იპოვოთ აქ:

ის მხარს არ უჭერს ყველაფერს, რისი გაკეთებაც შეუძლიათ დიდ TI გადამცემებს, მაგრამ საკმარისია ადვილად გაგზავნოთ და მიიღოთ ASK კოდირებული მონაცემები ნებისმიერი სიხშირით. ამ ბიბლიოთეკის გამოყენებით შევძელი კომუნიკაცია RF კონტროლირებადი კედლის სოკეტებთან, ასევე ჩემი ოჯახის მანქანასთან.

მე ალბათ ალბათ გავაგრძელებ მასზე მუშაობას და თუ თქვენ გაქვთ რაიმე შეკითხვა, მახასიათებლების მოთხოვნა ან გსურთ წვლილი შეიტანოთ განვითარებაში, მოგერიდებათ დამიკავშირდით!

ნაბიჯი 4: შესაძლებლობები და მახასიათებლები

მას შემდეგ, რაც მე დავამუშავე ეს მოწყობილობა ორმაგი ანტენების და უაღრესად კონფიგურირებადი TI CC1101 გადამცემების გამოსაყენებლად, თქვენ გაქვთ უამრავი შესაძლებლობა, განსაკუთრებით იმ სფეროში, სადაც არ გინდათ სმარტფონის ზომის მოწყობილობის მეტი რამის ტარება.

შეგიძლიათ, მაგალითად, გადაიღოთ კომუნიკაციის სიგნალები 433 MHz დიაპაზონში და დააბრუნოთ ისინი თქვენს სახლში, მეორადი ანტენის საშუალებით, რომელიც მუშაობს 868 MHz.

ან თუ გსურთ შეისწავლოთ და ექსპერიმენტი ჩაატაროთ რეაქტიული შეფერხებით, შეგიძლიათ გქონდეთ მოსასმენი და შემაფერხებელი ანტენა, რომელიც გადასცემს საკუთარ სიგნალებს გადაცემის დადგენისთანავე, RX- სა და TX- ს შორის გადასვლის მცდელობის "ტრადიციული მეთოდის" გარეშე. რაც შეიძლება სწრაფად.

ბუმბულის M4– ის კიდევ ერთი ძალიან მაგარი რამ არის ის, რომ მას გააჩნია ბორტზე LiPo დატენვის წრე, ასე რომ თქვენ უბრალოდ აერთებთ ბატარეას და მზად ხართ წასასვლელად. ჩემს შემთხვევაში, ერთი ანტენა მუდმივ RX რეჟიმში, ყურს უგდებს გადაცემებს და ჩართულია OLED ეკრანი, მოწყობილობა მუშაობს თითქმის 20 საათის განმავლობაში 1000 mAh LiPo– ზე.

OLED ეკრანის გამოყენება - მაგრამ ასევე შესაძლებელია მის გარეშე, მაგ. სამი სტატუსის LED- ების გამოყენებით - შეგიძლიათ გქონდეთ მრავალი პროგრამა და შეარჩიოთ რომელი გსურთ გაუშვათ დაფის ბოლოში მდებარე ღილაკებით. მე პირადად განვახორციელე მთელი მენიუ არჩევანის რეჟიმებით და სიხშირის პარამეტრების ხედი და ა.

ეს შეიძლება ხელი შეუწყოს სახლის ავტომატიზაციას! როგორც აღვნიშნე, მე შევძელი წარმატებით დავუკავშირდე ელექტროსადგურებს (ერთხელ გადავიღო ორიგინალური სიგნალები და განმეორდეს როცა დაგჭირდებათ) და თუ ინტერნეტში ცოტათი შეისწავლით, სწრაფად ნახავთ რამდენ მოწყობილობასაც აქვს მუშაობა ეს სიხშირეები უცვლელი კოდებით. ზოგიერთი ავტოფარეხის კოდიც კი შეიძლება ჩაიწეროს და შეინახოს ამ მოწყობილობით და შემდეგ იქნას გამოყენებული, როცა დაგჭირდებათ თქვენი ავტოფარეხის გახსნა ან დახურვა. ასე რომ, ეს შეიძლება გახდეს უნივერსალური დისტანციური მართვა თქვენი ყველა RF მოწყობილობისთვის!

მე პირადად განვმეორდი RollJam თავდასხმას ამ მოწყობილობითაც, მაგრამ კოდს არ გამოვაქვეყნებ, რადგან დაბლოკვა უმეტეს ადგილებში უკანონოა, ასე რომ, თუ თქვენ მსგავს რამეს შეეცდებით, მიმართეთ ადგილობრივ კანონებს;-)

მას შემდეგ, რაც დაფა გამოჩნდება როგორც USB დისკი, როდესაც ჩართავთ მას და CircuitPython გვთავაზობს ასეთ ფუნქციას, თქვენ ასევე შეგიძლიათ გქონდეთ მოწყობილობის ჩანაწერი RF გადაცემებზე და შეინახოთ დემოდულირებული მონაცემები (ო, დიახ, გადამცემები ამას აკეთებენ ავტომატურად!) ტექსტურ ფაილში რომელიც მოგვიანებით შეგიძლიათ დააკოპიროთ თქვენს კომპიუტერში და გააანალიზოთ მეცნიერული მიზნებისთვის, როგორიცაა გადაცემების საპირისპირო ინჟინერია.

ნაბიჯი 5: საბოლოო შედეგი

Საბოლოო შედეგი
Საბოლოო შედეგი

ნებისმიერი გამოხმაურება, წინადადება და წვლილი ამ პროექტში მისასალმებელია და თავისუფლად დაუსვით კითხვები, თუ გაქვთ რაიმე!

გირჩევთ: