Სარჩევი:

Benewake LiDAR TFmini (სრული სახელმძღვანელო): 5 ნაბიჯი (სურათებით)
Benewake LiDAR TFmini (სრული სახელმძღვანელო): 5 ნაბიჯი (სურათებით)

ვიდეო: Benewake LiDAR TFmini (სრული სახელმძღვანელო): 5 ნაბიჯი (სურათებით)

ვიდეო: Benewake LiDAR TFmini (სრული სახელმძღვანელო): 5 ნაბიჯი (სურათებით)
ვიდეო: Benewake TFmini-S — лазерный дальномер на 12 метров для Arduino и Raspberry. Железки Амперки 2024, ნოემბერი
Anonim
Benewake LiDAR TFmini (სრული სახელმძღვანელო)
Benewake LiDAR TFmini (სრული სახელმძღვანელო)
Benewake LiDAR TFmini (სრული სახელმძღვანელო)
Benewake LiDAR TFmini (სრული სახელმძღვანელო)

აღწერა

Benewake TFMINI მიკრო LIDAR მოდულს აქვს თავისი უნიკალური ოპტიკური, სტრუქტურული და ელექტრონული დიზაინი. პროდუქტს აქვს სამი ძირითადი უპირატესობა: დაბალი ღირებულება, მცირე მოცულობა და დაბალი ენერგიის მოხმარება.

ჩაშენებული ალგორითმი, რომელიც ადაპტირებულია შიდა და გარე გარემოზე, შეიძლება გარანტირებული იყოს შესანიშნავი შესრულებით დაბალ ფასად და მცირე მოცულობით, რაც მნიშვნელოვნად აფართოებს LiDAR– ის გამოყენების სფეროებსა და სცენარებს და მყარ საფუძველს უყრის მომავალ „თვალებს“ჭკვიანებში. ეპოქა.

სპეციფიკაციები

  • შეყვანის ძაბვა: 5 ვ
  • საშუალო სიმძლავრე: 0.12W
  • საკომუნიკაციო პროტოკოლი: UART (Baud rate: 115200)
  • ოპერაციული ტემპერატურა: -20 ~ ~ 60
  • FOV: 2.3 °

ზომები

  • ზომა: 42 მმ x 15 მმ x16 მმ
  • წონა: 6.1 გ

შეზღუდვები

0 სმ -30 სმ "ბრმა" დიაპაზონი

Სად იყიდება

  • RobotShop
  • ამაზონი

ეს ინსტრუქცია მოითხოვს, რომ თქვენ იცოდეთ შემდეგი:

  • ძირითადი ელექტრონიკა
  • ხელის ხელსაწყოები, როგორიცაა მავთულის საჭრელები და სტრიპტიზატორები
  • სქემების კითხვა და კავშირის დიაგრამები
  • C/C ++ პროგრამირება Arduino– სთვის (სურვილისამებრ)
  • პითონის პროგრამირება Raspberry Pi– სთვის (სურვილისამებრ)

ნაბიჯი 1: მასალის შეგროვება

მასალის შეგროვება
მასალის შეგროვება
მასალის შეგროვება
მასალის შეგროვება
მასალის შეგროვება
მასალის შეგროვება

ეს ინსტრუქცია გაგიძღვებათ TFmini LiDAR– ის განლაგების სხვადასხვა გზებზე თქვენი Windows PC და Raspberry Pi– ს გამოყენებით. თითოეულ მეთოდს აქვს თავისი მოთხოვნები და შეიძლება განსხვავდებოდეს თქვენი საჭიროებიდან გამომდინარე.

** თქვენ დაგჭირდებათ Benewake TFmini LiDAR თითოეული შემთხვევისთვის (რა თქმა უნდა) **

კომპიუტერზე დაფუძნებული განხორციელებისთვის:

  • ოპერაციული სისტემა: Windows
  • USB-TTL გადამყვანი
  • Jumper Wires

Raspberry Pi– ზე დაფუძნებული განხორციელებისთვის:

  • ჟოლო პი
  • Jumper Wires
  • LED- ები (სურვილისამებრ)
  • USB-TTL გადამყვანი (სურვილისამებრ)
  • პურის დაფა (სურვილისამებრ)
  • რეზისტორი (100-1k Ohm– ს შორის) (სურვილისამებრ)

ნაბიჯი 2: კომპიუტერზე დაფუძნებული განხორციელება Benewake აპლიკაციის გამოყენებით

კომპიუტერზე დაფუძნებული განხორციელება Benewake აპლიკაციის გამოყენებით
კომპიუტერზე დაფუძნებული განხორციელება Benewake აპლიკაციის გამოყენებით
კომპიუტერზე დაფუძნებული განხორციელება Benewake აპლიკაციის გამოყენებით
კომპიუტერზე დაფუძნებული განხორციელება Benewake აპლიკაციის გამოყენებით
  1. შეაერთეთ TFmini LiDAR USB-TTL გადამყვანთან jumper (მამაკაცი-ქალი) მავთულის გამოყენებით ნაჩვენები სქემატური მიხედვით

    • წითელი მავთული 5V
    • შავი მავთულის GND
    • თეთრი/ლურჯი მავთული Tx
    • მწვანე მავთული Rx
  2. შეაერთეთ USB-TTL თქვენს კომპიუტერში
  3. გადადით მოწყობილობის მენეჯერზე (Win + X) და იპოვეთ "Prolific USB-to-Serial Comm Port" პორტების ქვეშ (COM & LPT). დარწმუნდით, რომ Windows აღიარებს მოწყობილობას
  4. ჩამოტვირთეთ და ამოიღეთ WINCC_TF.rar
  5. გაუშვით WINCC_TFMini.exe ამოღებული ფაილებიდან
  6. აირჩიეთ შესაბამისი COM პორტი Benewake აპლიკაციის ჩამოსაშლელი მენიუდან სათაურით სერიული პორტი
  7. დააწკაპუნეთ დაკავშირება

ნაბიჯი 3: კომპიუტერზე დაფუძნებული დანერგვა პითონის გამოყენებით (PySerial)

კომპიუტერზე დაფუძნებული დანერგვა პითონის გამოყენებით (PySerial)
კომპიუტერზე დაფუძნებული დანერგვა პითონის გამოყენებით (PySerial)
  1. შეაერთეთ TFmini LiDAR კომპიუტერთან USB-TTL გადამყვანის გამოყენებით
  2. ჩამოტვირთეთ და გახსენით PC_Benewake_TFmini_LiDAR.py Python IDLE გამოყენებით (დარწმუნდით, რომ თქვენს კომპიუტერში დაინსტალირებულია PySerial და Python)
  3. შეცვალეთ COM პორტი კოდში, რათა ემთხვეოდეს თქვენს კომპიუტერში USB-TTL გადამყვანის COM პორტს (იხ. სურათი)
  4. დააწკაპუნეთ გაშვების ჩანართზე
  5. დააწკაპუნეთ მოდულის გაშვებაზე

** კოდის ახსნისათვის იხილეთ ნაბიჯი 5

ნაბიჯი 4: Raspberry Pi დაფუძნებული განხორციელება

Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
Raspberry Pi დაფუძნებული განხორციელება
  1. შეაერთეთ TFmini LiDAR RPi– თან USB-TTL გადამყვანი ან UART პორტი GPIO– ს გამოყენებით
  2. ჩამოტვირთეთ და გახსენით Pi_benewake_LiDAR.py Python IDLE გამოყენებით
  3. თუ თქვენ იყენებთ USB-TTL კონვერტორს RPi– ით, გახსენით Arduino IDE. დააწკაპუნეთ ინსტრუმენტებზე -> სერიულ პორტზე და შეცვალეთ კოდი შესაბამისად. თუ თქვენ იყენებთ UART GPIO პორტს, ჩაწერეთ /dev /ttyAMA0
  4. გაუშვით კოდი

** კოდი შეიძლება გამოყენებულ იქნას მანძილის დასაბეჭდად, მაგრამ ვინაიდან RPi– ს არ აქვს ბევრი დამუშავების ძალა, გირჩევთ აანთოთ LED, თუ მანძილი ჩაწერილია გარკვეულ დიაპაზონში ქვემოთ (სქემატური LED– ისთვის RPi თან ერთვის)

კითხვა: რატომ გამოვიყენოთ USB-TTL გადამყვანი RPi– ით?

RPi– ს აქვს მხოლოდ ერთი UART პორტი და ზოგჯერ თქვენ უნდა განათავსოთ რამდენიმე მოდული, რომელიც მოითხოვს UART კომუნიკაციას. USB-TTL უზრუნველყოფს დამატებით UART პორტს RPi– სთვის, რაც გვაძლევს შესაძლებლობას დავუკავშიროთ ერთზე მეტი UART მოწყობილობა (მაგალითად, ორი ან მეტი TFmini LiDAR) RPi– ს.

ნაბიჯი 5: კოდის შესახებ

კოდის შესახებ
კოდის შესახებ

კოდი შეიძლება დაიყოს სამ ნაწილად:

  • კავშირის დამყარება
  • მონაცემების წერა
  • მონაცემების კითხვა

კავშირის დამყარება:

სათაურის საჭირო ფაილების იმპორტის შემდეგ, ჩვენ ვამყარებთ კავშირს ჩვენს TFmini LiDAR– თან, მისი COM პორტის, Baud– ის სიჩქარის და კავშირის ვადის დადგენის გზით.

ser = სერიული. სერიული ('COM7', 115200, ვადა = 1) #PC

ser = სერიული. სერიული ('/dev/ttyUSB1', 115200, ვადა = 1) #ჟოლოს პი

მონაცემების წერა:

კოდი შეიძლება დაიყოს ორ ნაწილად, წერა და მიღება. მონაცემების მისაღებად, თქვენ გჭირდებათ გარკვეული ბრძანების გადაცემა TFmini LiDAR– ზე (ინიციალიზაციის პროცესის ნაწილი). ამ შემთხვევაში, მე ავირჩიე 4257020000000106. მიუხედავად იმისა, რომ RPi მართავს პითონის ერთსა და იმავე ვერსიას, მაგრამ სინტაქსში უმნიშვნელო ცვლილებაა, რადგან RPi არ იღებს მონაცემებს ორობითი გარდა.

ser.write (0x42)

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

მონაცემების წაკითხვა:

მონაცემთა ცხრილში მოყვანილი სქემა გვაძლევს 9-ბაიტიანი UART შეტყობინების "დაშლას". პირველი ორი ბიტი არის ჩარჩოს სათაური, რომელსაც აქვს ექვსკუთხედი მნიშვნელობა 0x59 (სიმბოლო 'Y'). მათი წაკითხვა და გამოყენება შესაძლებელია UART შეტყობინების დაწყების დასადგენად.

თუ (('Y' == ser.read ()) და ('Y' == ser.read ()):

სათაურის ჩარჩოს წაკითხვის შემდეგ, მომდევნო ორი ბაიტი, დისტანციური მონაცემების წაკითხვა შეიძლება. მანძილის მონაცემები იყოფა ორ 8 ბიტიან პაკეტად, Dist_L (Byte3) - Lower 8bits და Dist_H (Byte4) - უმაღლესი 8 ბიტიანი.

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

Dist_H 256 -ით გამრავლებით, ორობითი მონაცემები გადაინაცვლებს 8 -ით მარცხნივ (ექვივალენტი "<< 8"). ახლა ქვედა 8 ბიტიანი მანძილის მონაცემები, Dist_L, შეიძლება უბრალოდ დაემატოს, რის შედეგადაც Dist_Total– ის 16 ბიტიანი მონაცემი მიიღება.

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

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

მე დიაპაზონში (0, 5): ser.read ()

** სხვაგან შეიძლება აღმოჩნდეს „დაგვიანება“(ძილის დრო პითონში) ჩართული მარყუჟის დასრულებამდე იმ მიზეზით, რომ TFmini LiDAR– ს აქვს 100 ჰც სიხშირე. ეს დაგვიანება 'პროგრამის დაყოვნება' და გამოიწვევს მონაცემების განახლებას გარკვეული შეფერხების შემდეგ. მე მჯერა, რომ რადგან ჩვენ უკვე ველოდებით მონაცემების დაგროვებას 9 ბაიტამდე, არ უნდა იყოს სხვა შეფერხება

#დრო. ძილი (0.0005) #დაგვიანებით კომენტარი ხდება

ხოლო (ser.in_waiting> = 9):

გირჩევთ: