Სარჩევი:
- ნაბიჯი 1: აპარატურის დიზაინი
- ნაბიჯი 2: შეკრება
- ნაბიჯი 3: Firmware: პროგრამირება Bootloader
- ნაბიჯი 4: Firmware: Flashing Code With PlatformIO
- ნაბიჯი 5: Firmware: Flashing წამყვანმა
- ნაბიჯი 6: წინსვლა
ვიდეო: UWB ლოკალიზაციის ბუმბული: 6 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
Ultra-WideBand ბუმბული აერთიანებს Decawave DWM1000 მოდულს და ATSAMD21 ARM Cortex M0 ადაფრუტის ბუმბულის ფორმა-ფაქტორს. DWM1000 მოდული არის IEEE802.15.4-2011 UWB თავსებადი უკაბელო მოდული, რომელსაც შეუძლია ზუსტი შიდა პოზიციონირება და მონაცემთა მაღალი მაჩვენებლები, რაც ამ დაფას სრულყოფილად ხდის რობოტექნიკის პროექტებისთვის, სადაც ლოკალიზაციაა საჭირო.
მახასიათებლები:-Decawave DWM1000 ზუსტი თვალთვალისთვის-ARM Cortex M0 სწრაფი და მძლავრი პროგრამებისთვის-Adafruit Feather თავსებადი ფართო არსებულ ეკოსისტემასთან ინტეგრირებისთვის-SWD ინტერფეისი პროგრამების პროგრამირებისა და გამართვისთვის-USB-C კონექტორი-ინტეგრირებული LiPo ბატარეის დამტენი
სრული პროექტის დასაწერად და განახლებებისთვის ნახეთ ეს პროექტი ჩემს საიტზე Prototyping Corner at prototypingcorner.io/projects/uwb-feather
ამ პროექტის წყაროს აპარატურა და პროგრამული უზრუნველყოფა ხელმისაწვდომია GitHub საცავიდან.
ნაბიჯი 1: აპარატურის დიზაინი
როგორც შესავალში აღვნიშნეთ, UWB ბუმბული შედგება ATSAMD21 ARM Cortext M0+ ტვინისთვის და Decawave DWM1000 მოდულისთვის ულტრა ფართო დიაპაზონის უსადენოდ, ბუმბულის ფორმის ფაქტორში. დიზაინი შედარებით მარტივია, რომელიც შედგება 20 BoM ელემენტისგან 2 ფენის PCB- ზე. Pinout არის Adafruit M0 ბუმბულით თავსებადი
LiPo დატენვას ახორციელებს MCP73831 ერთუჯრედიანი, სრულად ინტეგრირებული მუხტის მართვის კონტროლერი. ბატარეის ძაბვის მონიტორინგი შესაძლებელია D9– ზე, თუმცა საჭიროა წვდომა ყველა IO– ზე, JP1 შეიძლება შემცირდეს ამ პინის გასათავისუფლებლად. 3.3 ვოლტიანი რეგულირება წინასწარ არის შემუშავებული AP2112K-3.3 დაბალი წვეთოვანი ხაზოვანი მარეგულირებლის მიერ, რომელიც უზრუნველყოფს 600mA- მდე.
Pinout სრულად თავსებადია Adafruit M0 ბუმბულის ხაზთან კოდის მოსახერხებლობისათვის. DWM1000 IO ხაზები დაკავშირებულია SPI ავტობუსთან და ციფრულ ქინძისთავებთან 2, 3 და 4 RST, IRQ & SPI_CS პატივისცემით (რომლებიც სათაურის საშუალებით არ არის გამოვლენილი). D13 ასევე უკავშირდება საბორტო LED- ს, როგორც ეს სტანდარტულია Arduino- თან თავსებად მრავალ დაფას შორის.
პროგრამირება შესაძლებელია წინასწარ SWD სათაურზე ან USB- ის საშუალებით, თუ დატვირთულია შესაბამისი ჩამტვირთველით, როგორიცაა uf2-samdx1 Microsoft- ისგან. იხილეთ firmware მეტი.
შენიშვნა V1.0
ამ დაფის 1 ვერსიაზე არის პრობლემა USB-C კონექტორთან. ნაკვალევი, რომელიც მე გამოვიყენე, არ მოიცავდა ამ კომპონენტის ამონაჭრის დამონტაჟების მეთოდისთვის საჭირო ჩახშობას.
ვერსია 1.1 მოიცავს ამის გამოსწორებას, ასევე დამატებას micro-b კონექტორი მათთვის, ვისაც სურს. იხილეთ ვერსია 1.1 განხილვები ქვემოთ.
მასალებისა და აპარატურის ვერსიის 1.1 დიზაინის მოსაზრებებისთვის იხილეთ პროექტის ჩანაწერი.
ნაბიჯი 2: შეკრება
მხოლოდ 20 BoM ელემენტი და კომპონენტების უმეტესობა არ არის არანაკლებ 0603 (2x ბროლის კონდენსატორები იყო 0402), ამ დაფის ხელით შეკრება ადვილი იყო. მე მქონდა PCB და solder stencil მიერ წარმოებული JLCPCB მქრქალი შავი ENIG ზედაპირის დასრულებით.
ჯამური ღირებულება 5 დაფაზე (თუმცა 10 -ს არ ჰქონდა ფასის სხვაობა) და შაბლონი იყო 68 აშშ დოლარი, თუმცა აქედან 42 დოლარი გადაზიდვა იყო. პირველად JLCPCB და დაფებიდან შეკვეთა იყო ძალიან მაღალი ხარისხის ლამაზი დასრულებით.
ნაბიჯი 3: Firmware: პროგრამირება Bootloader
Firmware შეიძლება ჩაიტვირთოს SWD კონექტორზე პროგრამისტის გამოყენებით, როგორიცაა J-Link Segger– დან. ზემოთ ნაჩვენებია J-Link EDU Mini. დაფის პროგრამირების დასაწყებად, ჩვენ უნდა ჩავტვირთოთ ჩამტვირთავი და შემდეგ შევქმნათ ჩვენი ინსტრუმენტების ჯაჭვი.
მე გამოვიყენებ Atmel Studio- ს ჩატვირთვის ჩამტვირთავისთვის. ამისათვის შეაერთეთ J-Link და გახსენით Atmel Studio. შემდეგ აირჩიეთ ინსტრუმენტები> მოწყობილობის პროგრამირება. ინსტრუმენტის ქვეშ შეარჩიეთ J-Link და დააყენეთ მოწყობილობა ATSAMD21G18A შემდეგ დააჭირეთ ღილაკს მიმართვა.
შეაერთეთ J-Link ბუმბულის SWD სათაურთან და გამოიყენეთ ენერგია USB- ზე ან ბატარეაზე. დაკავშირების შემდეგ, მოწყობილობის ხელმოწერის ქვეშ დააჭირეთ წაკითხვას. მოწყობილობის ხელმოწერა და სამიზნე ძაბვის ტექსტური ყუთები შესაბამისად უნდა გავრცელდეს. თუ ისინი არ ამოწმებენ კავშირებს და ხელახლა ცდებიან.
ჩამტვირთავი ჩამტვირთავი ჩვენ ჯერ უნდა გამორთოთ BOOTPROT დაუკრავენ. ამისათვის აირჩიეთ Fuses> USER_WORD_0. NVMCTRL_BOOTPROT და შეცვალეთ 0 ბაიტი. დააჭირეთ პროგრამას ცვლილებების ასატვირთად.
ახლა ჩვენ შეგვიძლია ჩავტვირთოთ ჩამტვირთავი Memories> Flash- ის არჩევით და ჩავტვირთოთ ჩამტვირთველის ადგილმდებარეობა. დარწმუნდით Erase Flash პროგრამირების არჩევის წინ და დააწკაპუნეთ პროგრამაზე. თუ ყველაფერი კარგად არის D13 დაფაზე უნდა დაიწყოს პულსი.
ახლა თქვენ უნდა დააყენოთ BOOTPROT დაუკრავენ 8 კბ ჩამტვირთავის ზომას. ამისათვის აირჩიეთ Fuses> USER_WORD_0. NVMCTRL_BOOTPROT და შეცვალეთ 8192 ბაიტი. დააწკაპუნეთ პროგრამაზე, რომ ატვირთოთ ცვლილებები.
ახლა, როდესაც ჩამტვირთავი აანთო D13 უნდა იყოს pulsing და თუ ჩართულია USB- ზე, მასობრივი შესანახი მოწყობილობა უნდა გამოჩნდეს. ეს არის ადგილი, სადაც UF2 ფაილების ატვირთვა შესაძლებელია დაფის დაპროგრამებისთვის.
ნაბიჯი 4: Firmware: Flashing Code With PlatformIO
Firmware შეიძლება აიტვირთოს UF2 პროტოკოლით ან პირდაპირ SWD ინტერფეისის საშუალებით. აქ ჩვენ ვიყენებთ PlatformIO– ს მისი სიმარტივისა და სიმარტივისთვის. დასაწყებად შექმენით ახალი PIO პროექტი და შეარჩიეთ Adafruit Feather M0 როგორც სამიზნე დაფა. JW Link- ით SWD- ზე ატვირთვისას დააყენეთ upload_protocol platformio.ini– ში, როგორც ეს ნაჩვენებია ქვემოთ.
[env: adafruit_feather_m0] პლატფორმა = atmelsam board = adafruit_feather_m0 frame = arduino upload_protocol = jlink
ახლა თქვენ შეგიძლიათ დაფის დაპროგრამება Arduino ჩარჩოს სიმარტივით.
ნაბიჯი 5: Firmware: Flashing წამყვანმა
DWM1000 მოდულები შეიძლება კონფიგურირებული იყოს როგორც წამყვანები ან ტეგები. როგორც წესი, წამყვანები ინახება ცნობილ სტატიკურ ადგილებში და ტეგები იყენებენ წამყვანებს მათთან შედარებით პოზიციის მისაღებად. DWM1000 მოდულის შესამოწმებლად შეგიძლიათ ატვირთოთ DW1000-წამყვანის მაგალითი GitHub საცავიდან.
ამ პროგრამის PlatformIO- ს დასაბლოკად, PIO Home- დან, აირჩიეთ Open Project და შემდეგ იპოვეთ DW1000-Anchor საქაღალდის მდებარეობა GitHub საცავში. შემდეგ დააწკაპუნეთ PIO ატვირთვის ღილაკზე და ის ავტომატურად იპოვის თანდართულ გამართვის ზონდს (დარწმუნდით, რომ ის დაკავშირებულია და დაფა იკვებება).
ტეგის firmware უნდა აიტვირთოს სხვა დაფაზე. შემდეგ შედეგი შეიძლება ჩაითვალოს სერიულ ტერმინალში.
ნაბიჯი 6: წინსვლა
ამ პროექტის შემდგომი გაუმჯობესება მოიცავს ახალ DW1000 ბიბლიოთეკის განვითარებას, V1.1 დაფა ცვლის სხვა პროექტებს, რომლებიც იყენებენ ამ ფართო ტექნოლოგიას. თუ საკმარისი ინტერესი იქნება, მე განვიხილავ ამ დაფების დამზადებას და გაყიდვას.
Მადლობა წაკითხვისთვის. დატოვეთ ნებისმიერი აზრი ან კრიტიკა ქვემოთ მოცემულ კომენტარებში და დარწმუნდით, რომ გადახედეთ პროექტს პროტოტიპების კუთხეში
გირჩევთ:
ნახევარი ნაბიჯი: 5 ნაბიჯი (სურათებით)
სემინარი: IntroduçãoNeste projeto, você construirá um an sistema de semáforos: არსებობს 3 LED ნათურები სხვადასხვა ბირთვით (verde, amarelo e vermelho) para imitar os semáforos dos carros; არსებობს 2 LED ნათურები სხვადასხვა ბირთვით (verde და vermelho) იმისთვის, რომ გააკეთოთ
Arduino Uno თევზის მიმწოდებელი 6 იაფი და მარტივი ნაბიჯი!: 6 ნაბიჯი
Arduino Uno თევზის მიმწოდებელი 6 იაფი და მარტივი ნაბიჯი! შინაური ცხოველების მქონე ადამიანებს, ალბათ, იგივე პრობლემა ჰქონდათ, როგორც მე: შვებულება და დავიწყება. მე მუდმივად მავიწყდებოდა ჩემი თევზის გამოკვება და ყოველთვის ვცდილობდი ასე გამეკეთებინა სანამ ის წავიდოდა
აკუსტიკური ლევიტაცია Arduino Uno– ით ეტაპობრივად (8 ნაბიჯი): 8 ნაბიჯი
აკუსტიკური ლევიტაცია Arduino Uno– სთან ერთად ეტაპობრივად (8 საფეხური): ულტრაბგერითი ხმის გადამცემები L298N Dc მდედრობითი ადაპტერი დენის წყაროს მამაკაცის dc pin Arduino UNOBreadboard და ანალოგური პორტები კოდის გადასაყვანად (C ++)
ნაბიჯი: 4 ნაბიჯი
聲納: 改作: https: //aboutsciences.com/blog/arduino-radar-using … 我 在 原本 聲納 的 ar ar ar ar ar: arduino uno, 感測器, 馬達, 喇叭: 掃描 到 物品 加速 並 傳 述 cm cm cm cm cm cm cm 10 სმ 時 喇叭 會
პირდაპირი 4G/5G HD ვიდეო ნაკადი DJI Drone– დან დაბალი ლატენტურობით [3 ნაბიჯი]: 3 ნაბიჯი
პირდაპირი 4G/5G HD ვიდეო ნაკადი DJI Drone– დან დაბალი ლატენტურობით [3 ნაბიჯი]: შემდეგი სახელმძღვანელო დაგეხმარებათ მიიღოთ პირდაპირი HD ხარისხის ვიდეო ნაკადები თითქმის ნებისმიერი DJI თვითმფრინავისგან. FlytOS მობილური აპლიკაციისა და FlytNow ვებ აპლიკაციის დახმარებით თქვენ შეგიძლიათ დაიწყოთ ვიდეოს სტრიმინგი დრონიდან