Mundarija:
- 1 -qadam: TFmini Teensy 3.5 -ga ulash (Arduino Mega -ga o'xshash)
- 2 -qadam: ishga tushirish uchun kod
- 3 -qadam: Arduino IDE ko'rish natijalarini ketma -ket Plotterda ishlatish
Video: Benewake TFmini - Teensy 3.5: 3 bosqichli arzon LiDAR
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Benewake TFmini LiDAR bloki - kichik, juda engil LiDAR sensori, taxminan 50 dollarlik kanadalik. Hujjatlar yaxshi, lekin to'liq emas edi. U sensordan ma'lumotlarni qabul qilish bo'yicha tafsilotlarni taqdim etdi, lekin sensorni standart rejimga o'tkazish uchun zarur bo'lgan signalni eslatib qo'yishni unutdi, shunda u ma'lumotlarni yuboradi. Yaxshiyamki, bu disk raskadrovka hujjatida edi.
Bu men uchun ishlagan narsa, va u bilan ishlash juda oson.
Men Teensy 3.5 dan foydalanishni tanladim, chunki u bir nechta HW ketma -ket portlarga ega, bu ma'lumotlarni yig'ish va ularni yig'ishga ruxsat bermasdan qayta ishlash uchun etarli. O'yin -kulgi uchun men Teensy Threading kutubxonasidan foydalanib, ma'lumotlarni kodning qolgan qismidan ajratib oldim.
1 -qadam: TFmini Teensy 3.5 -ga ulash (Arduino Mega -ga o'xshash)
Bu misol ikkita ketma -ket ulanishni talab qiladi: biri TFmini -ga, ikkinchisi kompyuterda natijalarni ko'rsatish uchun. Shu sababdan va aytishim mumkinki, faqat shu sabab, bu alohida misol Arduino Mega yoki Teensy 3.x dan pastda ishlamaydi.
Aytish kerakki, kompyuter ekranida chop etish uchun ketma -ket chiqishni talab qilmaydigan ilovalar uchun xuddi shu loyiha moslashtirilishi kerak.
Kiritilgan simlardan foydalanish:
1) qora simni Teensy GND ga ulang (agar farqli VDC manbasidan foydalansangiz, Teensy -da GND -ga o'tishini ta'minlang)
2) qizil simni Teensy Vin ga ulang (yoki 5VDC manbai)
3) oq simni (TFmini RX) Teensy (Serial1 TX) 1 -piniga ulang.
4) yashil simni (TFmini TX) Teensy (Serial RX) 0 -piniga ulang.
Menga non taxtasida ishlash uchun juda kichik simlar joylashtirilgan edi, shuning uchun men TFmini qarshisidagi uchini kesib tashladim va simlarni non taxtasiga lehimlab qo'ydim, JST ulagichini taxtaga qo'shdim va erkaklar jumperiga JST qildim. sim jabduqlar.
2 -qadam: ishga tushirish uchun kod
Quyidagi kodni ishlating (Teensy 3.5 uchun) yoki biriktirilgan faylni yuklab oling:
Arduino Mega uchun tishli ulanish ishlamaydi. ReadLiDAR funktsiyasidan kodni asosiy tsiklga o'tkazing va ishlov berish bilan bog'liq bo'lgan narsalarni olib tashlang.
#qo'shing #"TeensyThreads.h" ni qo'shing
// Berilgan kabeldan foydalanish:
// - Qora = GND (GND ga ulangan) // - Qizil = 5V (4.5 - 6.0V) (Teinsy 3.5 -da Vin yoki Arduino -da 5V ga ulangan) // - Oq = TFmini RX (aka. TX mikrokontrolleriga ulanish), Pin1 Teensy 3.5 -da) // - Yashil = TFmini TX (aka. RX mikrokontrolleriga ulanish, Teensy 3.5 -dagi pin0) // QAYD: bu eskiz uchun sizga USB kabelga ulanganidan tashqari qo'shimcha ketma -ket portli mikrokontroller kerak bo'ladi. / Bunga Arduino MEGA (Serial1 -dan foydalaning), Teensy (3.x) kiradi (HW Serial -ning mavjud ulanishlaridan birini ishlating)
o'zgaruvchan int liDARval = 0;
bekor o'qishLiDAR () {
// Benewake TFmini uchun ma'lumot formati // ============================= // Bir xabar uchun 9 bayt: // 1) 0x59 // 2) 0x59 // 3) Dist_L (past 8bit) // 4) Dist_H (yuqori 8bit) // 5) Strength_L (past 8bit) // 6) Strength_H (yuqori 8bit) // 7) Zaxiralangan baytlar // 8) Signal sifatining asl darajasi // 9) Tekshirish summasining parite biti (past 8bit), Checksum = Byte1 +Byte2 +… +Byte8. Bu faqat 8 bitlik past ko'rsatkich, lekin (1) {// abadiy davom eting (Serial1.available ()> = 9) // Agar kamida 9 bayt ma'lumot mavjud bo'lsa (1 signal uchun kutilgan bayt soni), keyin o'qing {if ((0x59 == Serial1.read ()) && (0x59 == Serial1.read ())) // bayt 1 va bayt 2 {unsigned int t1 = Serial1.read (); // bayt 3 = Dist_L imzosiz int t2 = Serial1.read (); // bayt 4 = Dist_H t2 << = 8; t2 += t1; liDARval = t2; t1 = Serial1.read (); // bayt 5 = Strength_L t2 = Serial1.read (); // bayt 6 = Kuch_H t2 << = 8; t2 += t1; for (int i = 0; i <3; i ++) Serial1.read (); // bayt 7, 8, 9 e'tiborga olinmaydi}}}}
bo'sh o'rnatish ()
{Serial1.begin (115200); // TFmini Serial.begin uchun HW seriyasi (115200); // USB orqali kompyuterni kechiktirishga ketma -ket chiqish (100); // Ishlar boshlanishiga ozgina vaqt bering // Serial1.write (0x42) standart chiqish rejimiga o'rnating; Serial1.write (0x57); Serial1.write (0x02); Serial1.write (0x00); Serial1.write (0x00); Serial1.write (0x00); Serial1.write (0x01); Serial1.write (0x06); // TFmini threads.addThread (readLiDAR) dan ketma -ket kirishni o'qish uchun sozlash tarmog'i; }
bo'sh halqa ()
{kechiktirish (10); // 100Hz Serial.println (liDARval) da TFmini namunalari sifatida tez -tez o'qishni xohlamang; }
3 -qadam: Arduino IDE ko'rish natijalarini ketma -ket Plotterda ishlatish
Siz xohlagan usuldan foydalanishingiz mumkin, lekin Arduino IDE natijalarni yaxshi tuzadi.
Teensy -ga ulaning va Serial monitorni oching. Baudrate 115200 ga o'rnatilganligiga ishonch hosil qiling.
Tavsiya:
Bosqichli motorli boshqariladigan lokomotiv modeli - Bosqichli motor aylanadigan kodlovchi sifatida: 11 qadam (rasmlar bilan)
Bosqichli motorli boshqariladigan lokomotiv modeli | Bosqichli dvigatel aylanuvchi kodlovchi sifatida: Oldingi ko'rsatmalarni birida biz step motorini aylanuvchi kodlovchi sifatida ishlatishni o'rgandik. Ushbu loyihada biz Arduino mikrokontrolleridan foydalanib, lokomotiv modelini boshqarish uchun aylanadigan aylanadigan enkoderdan foydalanamiz. Shunday qilib, fu holda
Bosqichli dvigatel bilan boshqariladigan step motor - Bosqichli motor aylanadigan kodlovchi sifatida: 11 qadam (rasmlar bilan)
Bosqichli dvigatel bilan boshqariladigan step motor | Bosqichli dvigatel aylanadigan kodlovchi sifatida: Bir nechta qadam dvigatellari yotib, biror narsa qilishni xohlayaptimi? Ushbu yo'riqnomada, Arduino mikrokontroller yordamida boshqa step motorining holatini nazorat qilish uchun qadamli motorni aylanuvchi kodlovchi sifatida ishlatamiz. Xo'sh, boshqa ko'p gapirmasdan, keling
TFMini Lidar displeyi - faqat yorug'lik bilan radar kabi! :-): 3 qadam
TFMini Lidar displeyi - Radar faqat yorug'lik bilan! :-): Bu ishni bajarish uchun bir qancha narsalar to'plangan, lekin eng katta (va meni bunga ilhomlantirgan) "Arduino Radar loyihasi" dir. howtomechatronics.com saytida Dejan Nedelkovskiy tomonidan topilgan (sanasi noma'lum). https: // howtomechatronics
Benewake LiDAR TFmini (To'liq qo'llanma): 5 qadam (rasmlar bilan)
Benewake LiDAR TFmini (To'liq qo'llanma): Tavsif Benewake TFMINI Micro LIDAR moduli o'ziga xos optik, tizimli va elektron dizaynga ega. Mahsulot uchta asosiy afzalliklarga ega: past narx, kichik hajm va kam quvvat sarfi. Ichki algoritm ichki va ichki
Multi-Touch interfeysi arzon (haqiqatan ham arzon): 3 qadam
Arzon (juda arzon) bo'yicha ko'p sensorli interfeys: bu mening birinchi ko'rsatmam, shuning uchun iltimos. Ish stolidan juda kam pul evaziga ko'p sensorli interfeysni shunday qilish mumkin. Nihoyat, video yuklandi, uzr, mening noutbukim yaxshi emas