Satura rādītājs:

Benewake LiDAR TFmini (pilnīga rokasgrāmata): 5 soļi (ar attēliem)
Benewake LiDAR TFmini (pilnīga rokasgrāmata): 5 soļi (ar attēliem)

Video: Benewake LiDAR TFmini (pilnīga rokasgrāmata): 5 soļi (ar attēliem)

Video: Benewake LiDAR TFmini (pilnīga rokasgrāmata): 5 soļi (ar attēliem)
Video: Benewake TFmini-S — лазерный дальномер на 12 метров для Arduino и Raspberry. Железки Амперки 2024, Novembris
Anonim
Benewake LiDAR TFmini (pilnīga rokasgrāmata)
Benewake LiDAR TFmini (pilnīga rokasgrāmata)
Benewake LiDAR TFmini (pilnīga rokasgrāmata)
Benewake LiDAR TFmini (pilnīga rokasgrāmata)

Apraksts

Benewake TFMINI Micro LIDAR modulim ir unikāls optiskais, strukturālais un elektroniskais dizains. Produktam ir trīs galvenās priekšrocības: zemas izmaksas, mazs apjoms un zems enerģijas patēriņš.

Iebūvētais algoritms, kas pielāgots iekštelpu un āra videi, var garantēt izcilu diapazona veiktspēju par zemām izmaksām un nelielā apjomā, kas ļoti paplašina LiDAR pielietojuma jomas un scenārijus un rada stabilu pamatu nākotnes viedajām acīm laikmets.

Specifikācijas

  • Ieejas spriegums: 5v
  • Vidējā jauda: 0,12 W
  • Sakaru protokols: UART (bodu ātrums: 115200)
  • Darba temperatūra: -20 ℃ ~ 60 ℃
  • FOV: 2,3 °

Izmēri

  • Izmērs: 42mmx15mmx16mm
  • Svars: 6,1 g

Ierobežojumi

0cm-30cm "aklo" diapazons

Kur nopirkt

  • RobotShop
  • Amazon

Šī pamācība prasa, lai jūs iepazītos ar sekojošo:

  • Pamata elektronika
  • Rokas instrumenti, piemēram, stiepļu griezēji un noņēmēji
  • Shēmu un savienojuma shēmu lasīšana
  • C/C ++ programmēšana Arduino (pēc izvēles)
  • Python programmēšana Raspberry Pi (pēc izvēles)

1. solis: materiāla savākšana

Savākšanas materiāls
Savākšanas materiāls
Savākšanas materiāls
Savākšanas materiāls
Savākšanas materiāls
Savākšanas materiāls

Šī pamācība sniegs jums dažādus veidus, kā izvietot TFmini LiDAR, izmantojot Windows datoru un Raspberry Pi. Katrai metodei ir savas prasības, un tā var atšķirties atkarībā no jūsu vajadzībām.

** Jums katrā gadījumā (protams) būs nepieciešama Benewake TFmini LiDAR **

Īstenošanai uz datora:

  • OS: Windows
  • USB-TTL pārveidotājs
  • Jumper vadi

Īstenošanai uz Raspberry Pi:

  • Raspberry Pi
  • Jumper vadi
  • LED (pēc izvēles)
  • USB-TTL pārveidotājs (pēc izvēles)
  • Maizes dēlis (pēc izvēles)
  • Rezistors (no 100-1k omi) (pēc izvēles)

2. darbība: ieviešana datorā, izmantojot lietotni Benewake

Uz datoru balstīta ieviešana, izmantojot lietotni Benewake
Uz datoru balstīta ieviešana, izmantojot lietotni Benewake
Uz datoru balstīta ieviešana, izmantojot lietotni Benewake
Uz datoru balstīta ieviešana, izmantojot lietotni Benewake
  1. Savienojiet TFmini LiDAR ar USB-TTL pārveidotāju, izmantojot džemperu (vīriešu un sieviešu) vadus saskaņā ar parādīto shēmu

    • Sarkanais vads 5V
    • Melnais vads GND
    • Balts/zils vads Tx
    • Green Wire Rx
  2. Pievienojiet datoram USB-TTL
  3. Dodieties uz ierīču pārvaldnieku (Win + X) un sadaļā Porti (COM un LPT) atrodiet "Prolific USB-to-Serial Comm Port". Pārliecinieties, vai sistēma Windows atpazīst ierīci
  4. Lejupielādējiet un izvelciet WINCC_TF.rar
  5. Palaidiet WINCC_TFMini.exe no iegūtajiem failiem
  6. Benewake App nolaižamajā izvēlnē zem virsraksta Sērijas ports atlasiet atbilstošo COM portu
  7. Noklikšķiniet uz SAVIENOT

3. darbība: ieviešana datorā, izmantojot Python (PySerial)

Uz datoru balstīta ieviešana, izmantojot Python (PySerial)
Uz datoru balstīta ieviešana, izmantojot Python (PySerial)
  1. Savienojiet TFmini LiDAR ar datoru, izmantojot USB-TTL pārveidotāju
  2. Lejupielādējiet un atveriet PC_Benewake_TFmini_LiDAR.py, izmantojot Python IDLE (pārliecinieties, vai datorā ir instalēta PySerial un Python)
  3. Rediģējiet koda COM portu, lai tas atbilstu datora USB-TTL pārveidotāja COM portam (skatiet attēlu)
  4. Noklikšķiniet uz cilnes Palaist
  5. Noklikšķiniet uz Palaist moduli

** Koda skaidrojumu skatiet 5. darbībā

4. darbība. Uz Raspberry Pi balstīta ieviešana

Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
Uz Raspberry Pi balstīta ieviešana
  1. Savienojiet TFmini LiDAR ar RPi, izmantojot USB-TTL pārveidotāju vai UART portu, izmantojot GPIO
  2. Lejupielādējiet un atveriet Pi_benewake_LiDAR.py, izmantojot Python IDLE
  3. Ja izmantojat USB-TTL pārveidotāju ar RPi, atveriet Arduino IDE. Noklikšķiniet uz Rīki -> Sērijas ports un attiecīgi rediģējiet kodu. Ja izmantojat UART GPIO portu, ierakstiet /dev /ttyAMA0
  4. Palaidiet kodu

** Kodu varētu izmantot, lai drukātu attālumu, taču, tā kā RPi nav lielas apstrādes jaudas, ieteicams iedegt gaismas diodi, ja ierakstītais attālums ir mazāks par noteiktu diapazonu (pievienota LED shēma ar RPi)

J. Kāpēc izmantot USB-TTL pārveidotāju ar RPi?

RPi ir tikai viens UART ports, un dažreiz jums ir jāievieto daži moduļi, kuriem nepieciešama UART komunikācija. USB-TTL nodrošina RPi papildu UART portu, dodot mums iespēju RPi savienot vairāk nekā vienu UART ierīci (piemēram, divas vai vairākas TFmini LiDAR).

5. darbība. Par kodu

Par kodeksu
Par kodeksu

Kodu var iedalīt trīs daļās:

  • Savienojuma izveide
  • Datu rakstīšana
  • Datu lasīšana

Savienojuma izveide:

Pēc nepieciešamo galvenes failu importēšanas mēs izveidojam savienojumu ar mūsu TFmini LiDAR, norādot tā COM portu, Baud ātrumu un savienojuma taimautu

ser = seriāls. Sērija ('COM7', 115200, taimauts = 1) #PC

ser = seriāls. Serial ('/dev/ttyUSB1', 115200, taimauts = 1) #Raspberry Pi

Datu rakstīšana:

Kods var tikt sadalīts divās daļās - rakstīšana un saņemšana. Lai saņemtu datus, jums ir jāpārsūta noteiktā komanda TFmini LiDAR (inicializācijas procesa daļa). Šajā gadījumā es izvēlējos 4257020000000106. Pat ja RPi darbojas tā pati Python versija, bet ir nelielas sintakses izmaiņas, jo RPi nepieņem citus datus, izņemot bināro.

ser.write (0x42)

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

Datu lasīšana:

Datu lapā sniegtā diagramma sniedz mums 9 baitu UART ziņojuma “sadalījumu”. Pirmie divi baiti ir rāmja galvene, kuras vērtība ir hex 0x59 (rakstzīme “Y”). Tos var izlasīt un izmantot, lai identificētu UART ziņojuma sākumu.

ja (('Y' == ser.read ()) un ('Y' == ser.read ())):

Kad galvenes rāmis ir nolasīts, varētu nolasīt nākamos divus baitus, kas satur attāluma datus. Attāluma dati ir sadalīti divās 8 bitu paketēs, Dist_L (baits3) - zemākie 8biti un dist_H (baits4) - augstākie 8biti.

Dist_L = ser.read () #baits3Dist_H = ser.read () #baits4

Reizinot Dist_H ar 256, binārie dati tiek pārvietoti par 8 pa kreisi (līdzvērtīgi "<< 8"). Tagad zemākos 8 bitu attāluma datus Dist_L var vienkārši pievienot, iegūstot 16 bitu Dist_Total datus.

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

Tā kā mums ir “atšifrētā” attāluma vērtība, nākamos piecus baitus var ignorēt. Ņemiet vērā, ka nolasītie dati nekur netiek saglabāti.

i diapazonā (0, 5): ser.read ()

** Kādā citā vietā pirms cilpas beigām var būt iestrādāta aizture (time.sleep programmā Python), jo TFmini LiDAR darbības frekvence ir 100 Hz. Šī kavēšanās “programmas aizkavēšanās”, kā rezultātā dati pēc noteiktas kavēšanās tiks ATJAUNINĀTI. Es uzskatu, ka, tā kā mēs jau gaidām, kamēr dati sakrājas līdz 9 baitiem, nekādai citai kavēšanai nevajadzētu būt

#time.sleep (0.0005) #Aizkavēšanās tiek komentēta

kamēr (ser.in_waiting> = 9):

Ieteicams: