فهرست مطالب:

Benewake LiDAR TFmini (راهنمای کامل): 5 مرحله (همراه با تصاویر)
Benewake LiDAR TFmini (راهنمای کامل): 5 مرحله (همراه با تصاویر)

تصویری: Benewake LiDAR TFmini (راهنمای کامل): 5 مرحله (همراه با تصاویر)

تصویری: Benewake LiDAR TFmini (راهنمای کامل): 5 مرحله (همراه با تصاویر)
تصویری: جهاز كشف الذهب والكنوز المطور Royal analyzer pro 6000 2024, نوامبر
Anonim
Benewake LiDAR TFmini (راهنمای کامل)
Benewake LiDAR TFmini (راهنمای کامل)
Benewake LiDAR TFmini (راهنمای کامل)
Benewake LiDAR TFmini (راهنمای کامل)

شرح

ماژول Benewake TFMINI Micro LIDAR دارای طراحی های نوری ، ساختاری و الکترونیکی منحصر به فرد خود است. این محصول دارای سه مزیت عمده است: هزینه کم ، حجم کم و مصرف برق کم.

الگوریتم داخلی سازگار با محیط های داخلی و خارجی می تواند عملکرد بسیار عالی را با هزینه کم و حجم کم تضمین کند ، که زمینه های کاربردی و سناریوهای LiDAR را بسیار گسترش می دهد و پایه ای محکم برای "چشم" های آینده در هوشمند ایجاد می کند. عصر.

مشخصات فنی

  • ولتاژ ورودی: 5 ولت
  • میانگین قدرت: 0.12 وات
  • پروتکل ارتباطی: UART (نرخ Baud: 115200)
  • دمای کارکرد: -20 ~ ~ 60
  • FOV: 2.3 درجه

ابعاد

  • اندازه: 42mmx15mmx16mm
  • وزن: 6.1 گرم

محدودیت ها

محدوده "کور" 0 تا 30 سانتی متر

کجا بخریم

  • RobotShop
  • آمازون

این دستورالعمل مستلزم آشنایی با موارد زیر است:

  • لوازم الکترونیکی اولیه
  • ابزارهای دستی مانند برش و سیم برنده
  • خواندن نمودارها و نمودارهای اتصال
  • برنامه نویسی C/C ++ برای آردوینو (اختیاری)
  • برنامه نویسی پایتون برای رزبری پای (اختیاری)

مرحله 1: جمع آوری مواد

جمع آوری مواد
جمع آوری مواد
جمع آوری مواد
جمع آوری مواد
جمع آوری مواد
جمع آوری مواد

این دستورالعمل شما را در راه های مختلف استقرار TFmini LiDAR با استفاده از رایانه Windows و Raspberry Pi راهنمایی می کند. هر روش نیازهای خود را دارد و می تواند بر اساس نیاز شما متفاوت باشد.

** شما برای هر مورد به Benewake TFmini LiDAR (البته) نیاز خواهید داشت **

برای پیاده سازی مبتنی بر PC:

  • سیستم عامل: ویندوز
  • مبدل USB-TTL
  • سیم های جامپر

برای پیاده سازی مبتنی بر Raspberry Pi:

  • تمشک پای
  • سیم های جامپر
  • LED ها (اختیاری)
  • مبدل USB-TTL (اختیاری)
  • تخته نان (اختیاری)
  • مقاومت (بین 100-1k اهم) (اختیاری)

مرحله 2: پیاده سازی مبتنی بر رایانه با استفاده از Benewake App

پیاده سازی مبتنی بر رایانه با استفاده از برنامه Benewake
پیاده سازی مبتنی بر رایانه با استفاده از برنامه Benewake
پیاده سازی مبتنی بر رایانه با استفاده از برنامه Benewake
پیاده سازی مبتنی بر رایانه با استفاده از برنامه Benewake
  1. مطابق شماتیک نشان داده شده ، TFmini LiDAR را به مبدل USB-TTL با استفاده از سیم های جامپر (زن-مرد) متصل کنید

    • سیم قرمز 5 ولت
    • سیم سیاه GND
    • سفید/آبی سیم Tx
    • Green Wire Rx
  2. USB-TTL را به رایانه خود وصل کنید
  3. به Device Manager (Win + X) بروید و "Prolific USB-to-Serial Comm Port" را در قسمت Ports (COM & LPT) قرار دهید. اطمینان حاصل کنید که ویندوز دستگاه را تشخیص می دهد
  4. WINCC_TF.rar را بارگیری و استخراج کنید
  5. WINCC_TFMini.exe را از فایل های استخراج شده اجرا کنید
  6. پورت COM مربوطه را از منوی کشویی Benewake App تحت عنوان Serial Port انتخاب کنید
  7. روی CONNECT کلیک کنید

مرحله 3: پیاده سازی مبتنی بر رایانه با استفاده از پایتون (PySerial)

پیاده سازی مبتنی بر رایانه با استفاده از پایتون (PySerial)
پیاده سازی مبتنی بر رایانه با استفاده از پایتون (PySerial)
  1. TFmini LiDAR را با استفاده از مبدل USB-TTL به رایانه وصل کنید
  2. بارگیری و باز کردن PC_Benewake_TFmini_LiDAR.py با استفاده از Python IDLE (مطمئن شوید PySerial و Python را بر روی رایانه خود نصب کرده اید)
  3. پورت COM را در کد ویرایش کنید تا با پورت COM مبدل USB-TTL در رایانه مطابقت داشته باشد (تصویر را ببینید)
  4. روی تب Run کلیک کنید
  5. روی Run module کلیک کنید

** برای توضیح کد به مرحله 5 مراجعه کنید

مرحله 4: پیاده سازی مبتنی بر Raspberry Pi

پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
پیاده سازی مبتنی بر رزبری پای
  1. اتصال TFmini LiDAR به RPi با استفاده از مبدل USB-TTL یا پورت UART با استفاده از GPIO
  2. Pi_benewake_LiDAR.py را با استفاده از Python IDLE بارگیری و باز کنید
  3. اگر از مبدل USB-TTL با RPi استفاده می کنید ، Arduino IDE را باز کنید. روی Tools -> Serial Port کلیک کنید و کد را مطابق آن ویرایش کنید. اگر از پورت UART GPIO استفاده می کنید ، سپس /dev /ttyAMA0 را بنویسید
  4. کد را اجرا کنید

** می توان از کد برای چاپ فاصله استفاده کرد ، اما از آنجا که RPi قدرت پردازش زیادی ندارد ، توصیه می شود اگر فاصله ثبت شده زیر محدوده خاصی است یک LED روشن کنید (شماتیک LED با RPi ضمیمه شده است)

س. چرا باید از مبدل USB-TTL با RPi استفاده کرد؟

RPi فقط یک پورت UART دارد و گاهی اوقات شما نیاز به قرار دادن چند ماژول دارید که نیاز به ارتباط UART دارد. USB-TTL یک پورت UART اضافی به RPi ارائه می دهد و به ما این امکان را می دهد که بیش از یک دستگاه UART (مانند دو یا چند TFmini LiDAR) را به RPi متصل کنیم.

مرحله 5: درباره کد

درباره کد
درباره کد

کد را می توان به سه قسمت تقسیم کرد:

  • برقراری ارتباط
  • نوشتن داده ها
  • خواندن داده ها

برقراری ارتباط:

پس از وارد کردن فایلهای سرصفحه لازم ، ما با بیان پورت COM ، Baud-rate و timeout اتصال به TFmini LiDAR خود ارتباط برقرار می کنیم.

ser = serial. سریال ('COM7'، 115200، timeout = 1) #PC

ser = serial. سریال ('/dev/ttyUSB1'، 115200، timeout = 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)

خواندن داده ها:

نمودار ارائه شده در برگه اطلاعات "تجزیه" پیام UART 9 بایت را به ما می دهد. دو بایت اول هدر فریم هستند که دارای مقدار hex 0x59 (کاراکتر 'Y') هستند. می توان آنها را خواند و برای شناسایی شروع پیام UART استفاده کرد.

if (('Y' == ser.read ()) و ('Y' == ser.read ()):

هنگامی که قاب سرصفحه خوانده می شود ، دو بایت بعدی ، با حمل داده های فاصله ، قابل خواندن است. داده های فاصله به دو بسته 8 بیتی Dist_L (Byte3) - Lower 8bits و Dist_H (Byte4) - 8bit بالاتر تقسیم می شود.

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

با ضرب Dist_H در 256 ، داده های دودویی با 8 به چپ منتقل می شود (معادل "<< 8"). اکنون داده های فاصله 8 بیتی پایین تر ، Dist_L ، می تواند به سادگی اضافه شود و داده های 16 بیتی Dist_Total را ایجاد کند.

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

از آنجا که مقدار فاصله "رمزگشایی" را با خود داریم ، پنج بایت بعدی را می توان نادیده گرفت. توجه داشته باشید که داده های خوانده شده در جایی ذخیره نمی شوند.

برای i در محدوده (0 ، 5): ser.read ()

** در برخی نقاط دیگر ، ممکن است "تاخیر" (time.sleep در پایتون) را قبل از پایان حلقه به دلیل اینکه فرکانس کار TFmini LiDAR دارای 100 هرتز است ، درج کرده باشید. این تأخیر "تاخیر برنامه" است و منجر به به روز شدن داده ها پس از تأخیر می شود. من معتقدم از آنجایی که ما منتظر جمع شدن داده ها تا 9 بایت هستیم ، نباید هیچ تاخیر دیگری وجود داشته باشد

#time.sleep (0.0005) #تاخیر کامنت گذاری می شود

while (ser.in_waiting> = 9):

توصیه شده: