Mundarija:

Benewake LiDAR TFmini (To'liq qo'llanma): 5 qadam (rasmlar bilan)
Benewake LiDAR TFmini (To'liq qo'llanma): 5 qadam (rasmlar bilan)

Video: Benewake LiDAR TFmini (To'liq qo'llanma): 5 qadam (rasmlar bilan)

Video: Benewake LiDAR TFmini (To'liq qo'llanma): 5 qadam (rasmlar bilan)
Video: Benewake LiDAR TF mini Plus Operation Demonstration 2024, Iyul
Anonim
Benewake LiDAR TFmini (to'liq qo'llanma)
Benewake LiDAR TFmini (to'liq qo'llanma)
Benewake LiDAR TFmini (to'liq qo'llanma)
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 va tashqi muhitga moslashtirilgan o'rnatilgan algoritm, LiDAR dastur maydonlari va stsenariylarini ancha kengaytiradigan va aqlli qurilmalarda kelajakdagi "ko'zlar" uchun mustahkam poydevor qo'yadigan, arzon narxda va kichik hajmda mukammal ishlashni kafolatlaydi. davr.

Xususiyatlar

  • Kirish kuchlanishi: 5v
  • O'rtacha quvvat: 0,12 Vt
  • Aloqa protokoli: UART (Baud tezligi: 115200)
  • Ishlash harorati: -20 ℃ ~ 60 ℃
  • FOV: 2.3 °

O'lchamlari

  • Hajmi: 42mmx15mmx16mm
  • Vazni: 6,1 g

Cheklovlar

0 sm dan 30 sm gacha "ko'r" diapazoni

Qayerdan sotib olish mumkin

  • Robot do'koni
  • Amazon

Bu ko'rsatma quyidagilarni bilishingizni talab qiladi.

  • Asosiy elektronika
  • Qo'l asboblari, masalan, tel kesgichlar va striptizchilar
  • Sxemalar va ulanish sxemalarini o'qish
  • Arduino uchun C/C ++ dasturlash (ixtiyoriy)
  • Raspberry Pi uchun Python dasturlash (ixtiyoriy)

1 -qadam: Materiallarni yig'ish

Yig'ish materiallari
Yig'ish materiallari
Yig'ish materiallari
Yig'ish materiallari
Yig'ish materiallari
Yig'ish materiallari

Bu ko'rsatma sizga Windows kompyuteri va Raspberry Pi yordamida TFmini LiDAR -ni joylashtirishning turli usullaridan o'tadi. Har bir usul o'z talablariga ega va sizning ehtiyojlaringizga qarab farq qilishi mumkin.

** Sizga har bir holat uchun Benewake TFmini LiDAR kerak bo'ladi (albatta) **

Kompyuterga asoslangan dastur uchun:

  • OS: Windows
  • USB-TTL konvertori
  • Jumper simlari

Raspberry Pi asosidagi dastur uchun:

  • Raspberry Pi
  • Jumper simlari
  • LEDlar (ixtiyoriy)
  • USB-TTL konvertori (ixtiyoriy)
  • Non paneli (ixtiyoriy)
  • Rezistor (100-1k Ohm oralig'ida) (ixtiyoriy)

2 -qadam: Benewake ilovasi yordamida kompyuterga asoslangan dastur

Benewake ilovasi yordamida kompyuterga asoslangan dastur
Benewake ilovasi yordamida kompyuterga asoslangan dastur
Benewake ilovasi yordamida kompyuterga asoslangan dastur
Benewake ilovasi yordamida kompyuterga asoslangan dastur
  1. TFmini LiDAR-ni USB-TTL konvertoriga ulagich (erkak-ayol) simlari yordamida ulangan sxemaga muvofiq ulang.

    • Qizil sim 5V
    • Qora sim GND
    • Oq/ko'k simli Tx
    • Yashil sim Rx
  2. USB-TTL-ni kompyuteringizga ulang
  3. Qurilma menejeriga o'ting (Win + X) va portlar (COM va LPT) ostida "USB-dan seriyali ulanish portini" toping. Windows qurilmani taniganiga ishonch hosil qiling
  4. WINCC_TF.rar -ni yuklab oling va chiqarib oling
  5. Olingan fayllardan WINCC_TFMini.exe -ni ishga tushiring
  6. Benewake ilovasidagi ketma-ket port sarlavhasi ostidagi ochiladigan menyudan mos keladigan COM portini tanlang
  7. Ulanish tugmasini bosing

3 -qadam: Python (PySerial) yordamida kompyuterga asoslangan dastur

Python (PySerial) yordamida kompyuterga asoslangan dastur
Python (PySerial) yordamida kompyuterga asoslangan dastur
  1. USB-TTL konvertori yordamida TFmini LiDAR-ni kompyuterga ulang
  2. Python IDLE yordamida PC_Benewake_TFmini_LiDAR.py -ni yuklab oling va oching (kompyuteringizda PySerial va Python o'rnatilganligiga ishonch hosil qiling)
  3. Kompyuterdagi USB-TTL konvertorining COM portiga mos keladigan koddagi MAQOMOTI portini tahrir qiling (rasmga qarang)
  4. Ishga tushirish yorlig'ini bosing
  5. Ishga tushirish moduli -ni bosing

** Kodni tushuntirish uchun 5-qadamga qarang

4 -qadam: Raspberry Pi -ga asoslangan dastur

Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
Raspberry Pi asosidagi dastur
  1. USB-TTL konvertori yoki GPIO yordamida UART porti yordamida TFmini LiDAR-ni RPi-ga ulang
  2. Python IDLE yordamida Pi_benewake_LiDAR.py -ni yuklab oling va oching
  3. Agar siz RPi bilan USB-TTL konvertoridan foydalanayotgan bo'lsangiz, Arduino IDE-ni oching. Asboblar -> Seriya portini bosing va shunga mos ravishda kodni tahrir qiling. Agar siz UART GPIO portidan foydalanayotgan bo'lsangiz, /dev /ttyAMA0 yozing
  4. Kodni ishga tushiring

** Kodni masofani bosib chiqarish uchun ishlatish mumkin edi, lekin RPi ko'p ishlov berish quvvatiga ega emasligi uchun, agar yozilgan masofa ma'lum bir diapazondan past bo'lsa, LEDni yoqish tavsiya etiladi (RPi bilan LEDning sxemasi ilova qilingan)

Savol: Nima uchun USB-TTL konverterini RPi bilan ishlatish kerak?

RPi faqat bitta UART portiga ega va ba'zida UART aloqasini talab qiladigan bir nechta modullarni qo'yish kerak bo'ladi. USB-TTL qo'shimcha UART portini RPi bilan ta'minlaydi, bu bizga bir nechta UART qurilmalarini (masalan, ikki yoki undan ortiq TFmini LiDAR) RPi-ga ulash imkonini beradi.

5 -qadam: Kod haqida

Kodeks haqida
Kodeks haqida

Kodni uch qismga bo'lish mumkin:

  • Aloqa o'rnatish
  • Ma'lumot yozish
  • Ma'lumotlarni o'qish

Aloqa o'rnatish:

Kerakli sarlavha fayllarini import qilgandan so'ng, biz TFmini LiDAR-ga COM portini, Baud tezligini va ulanish vaqtini bildirish orqali ulanishni o'rnatdik.

ser = serial. Serial ('COM7', 115200, timeout = 1) #PC

ser = serial. Serial ('/dev/ttyUSB1', 115200, vaqt tugashi = 1) #Raspberry Pi

Ma'lumot yozish:

Kodni ikki qismga bo'lish mumkin, yozish va qabul qilish. Ma'lumot olish uchun siz ma'lum bir buyruqni TFmini LiDAR -ga yuborishingiz kerak (ishga tushirish jarayonining bir qismi). Bu holda men 4257020000000106 ni tanladim. Garchi RPi Pythonning bir xil versiyasini ishlatsa -da, lekin sintaksisda ozgina o'zgarish bor, chunki RPi ikkilikdan boshqa ma'lumotlarni qabul qilmaydi.

ser.write (0x42)

ser.write (0x57) ser.write (0x02) ser.write (0x00) ser.write (0x00) ser.write (0x00) ser.write (0x01) ser.write (0x06)

Ma'lumotlarni o'qish:

Ma'lumot varaqasida keltirilgan jadval bizga 9 baytli UART xabarining "taqsimoti" ni beradi. Birinchi ikkita bayt - bu 0x59 ("Y" belgisi) qiymatiga ega ramka sarlavhasi. UART xabarining boshlanishini aniqlash uchun ularni o'qish va ishlatish mumkin.

agar (('Y' == ser.read ()) va ('Y' == ser.read ())):

Sarlavha ramkasi o'qilgandan so'ng, masofa ma'lumotlarini tashuvchi keyingi ikki bayt o'qilishi mumkin. Masofaviy ma'lumotlar ikkita 8 bitli paketga bo'linadi, Dist_L (Byte3) - Pastki 8bit va Dist_H (Byte4) - Yuqori 8 bitli.

Dist_L = ser.read () #Byte3Dist_H = ser.read () #Byte4

Dist_H ni 256 ga ko'paytirib, ikkilik ma'lumotlar 8 ga chapga siljiydi ("<< 8" ga teng). Endi quyi 8-bitli masofali ma'lumotlar, Dist_L qo'shilishi mumkin, natijada Dist_Total 16-bitli ma'lumotlar olinadi.

Dist_Total = (ord (Dist_H) * 256) + (ord (Dist_L))

Bizda "shifrlangan" masofa qiymati bo'lganligi sababli, keyingi besh baytni e'tiborsiz qoldirish mumkin. E'tibor bering, o'qilgan ma'lumotlar hech qaerda saqlanmaydi.

i uchun (0, 5): ser.read ()

** Boshqa joylarda, TFmini LiDAR 100Hz ish chastotasiga ega bo'lgani uchun, tsikl tugashidan oldin "kechikish" (Pythonda uxlash vaqti) ni topishingiz mumkin. Bu kechikish "dasturni kechiktirishi" va bir oz kechiktirilgandan so'ng ma'lumotlar YANGILANADI. Menimcha, biz 9 baytgacha ma'lumotlarni yig'ishni kutganimiz uchun boshqa kechikishlar bo'lmasligi kerak.

#time.sleep (0.0005) #Kechiktirishga izoh berilgan

vaqt (ser.in_waiting> = 9):

Tavsiya: