Мазмұны:

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 Micro LIDAR модулі өзінің бірегей оптикалық, құрылымдық және электронды конструкцияларына ие. Өнімнің үш негізгі артықшылығы бар: төмен баға, шағын көлем және аз қуат тұтыну.

Ішкі және сыртқы ортаға бейімделген кіріктірілген алгоритм LiDAR-ның қолдану өрістері мен сценарийлерін айтарлықтай кеңейтетін және ақылдылардың болашақ «көздері» үшін берік негіз қалайтын шағын көлемде тамаша өнімділікке кепілдік бере алады. дәуір

Ерекшеліктер

  • Кіру кернеуі: 5в
  • Орташа қуат: 0,12 Вт
  • Байланыс протоколы: UART (Baud жылдамдығы: 115200)
  • Жұмыс температурасы: -20 ℃ ~ 60 ℃
  • FOV: 2.3 °

Өлшемдер

  • Өлшемі: 42x15x16x16 мм
  • Салмағы: 6.1 г

Шектеулер

0см-30см «соқырлар» диапазоны

Қайдан сатып алуға болады

  • RobotShop
  • Амазонка

Бұл нұсқаулықта мыналармен танысу қажет:

  • Негізгі электроника
  • Қолмен жұмыс жасайтын құралдар - сым кескіштер мен стриптерлер
  • Схемалар мен қосылу схемаларын оқу
  • Arduino үшін C/C ++ бағдарламалау (міндетті емес)
  • Raspberry Pi үшін Python бағдарламалау (міндетті емес)

1 -қадам: материалды жинау

Жинау материалы
Жинау материалы
Жинау материалы
Жинау материалы
Жинау материалы
Жинау материалы

Бұл нұсқаулық сізге Windows компьютері мен Raspberry Pi көмегімен TFmini LiDAR қолданудың әр түрлі жолдарын көрсетеді. Әр әдістің өз талаптары бар және сіздің қажеттіліктеріңізге байланысты өзгеруі мүмкін.

** Сізге әр жағдайда Benewake TFmini LiDAR қажет болады (әрине) **

Компьютерге негізделген енгізу үшін:

  • ОЖ: Windows
  • USB-TTL түрлендіргіші
  • Jumper Wires

Raspberry Pi негізіндегі енгізу үшін:

  • Raspberry Pi
  • Jumper Wires
  • Жарықдиодты шамдар (міндетті емес)
  • USB-TTL түрлендіргіші (міндетті емес)
  • Нан тақтасы (міндетті емес)
  • Резистор (100-1к Ом арасында) (міндетті емес)

2 -қадам: Benewake қосымшасы арқылы компьютерге негізделген енгізу

Benewake қосымшасы арқылы компьютерге негізделген енгізу
Benewake қосымшасы арқылы компьютерге негізделген енгізу
Benewake қосымшасы арқылы компьютерге негізделген енгізу
Benewake қосымшасы арқылы компьютерге негізделген енгізу
  1. TFmini LiDAR-ды USB-TTL түрлендіргішіне қосылым (еркек-әйел) сымдары арқылы көрсетілген схемаға сәйкес қосыңыз.

    • Қызыл сым 5В
    • Қара сым GND
    • Ақ/көк сым Tx
    • Жасыл сым Rx
  2. USB-TTL қосылымын компьютерге қосыңыз
  3. Құрылғы менеджеріне өтіңіз (Win + X) және порттар (COM & LPT) астындағы «USB-ден сериялы байланыс портын» табыңыз. Windows бұл құрылғыны танитынына көз жеткізіңіз
  4. WINCC_TF.rar жүктеу және шығару
  5. Шығарылған файлдардан WINCC_TFMini.exe іске қосыңыз
  6. Benewake қосымшасындағы сериялық порт айдарындағы ашылмалы мәзірден сәйкес COM портын таңдаңыз
  7. ҚОСУ түймесін басыңыз

3 -қадам: Python (PySerial) көмегімен компьютерге негізделген енгізу

Python (PySerial) көмегімен компьютерге негізделген енгізу
Python (PySerial) көмегімен компьютерге негізделген енгізу
  1. USB-TTL түрлендіргіші арқылы TFmini LiDAR-ды компьютерге қосыңыз
  2. Python IDLE көмегімен PC_Benewake_TFmini_LiDAR.py файлын жүктеңіз және ашыңыз (компьютерде PySerial және Python орнатылғанына көз жеткізіңіз)
  3. Компьютердегі USB-TTL түрлендіргішінің COM портына сәйкес келу үшін кодтағы COM портын өңдеңіз (суретті қараңыз)
  4. Іске қосу қойындысын нұқыңыз
  5. Іске қосу модулін басыңыз

** Кодты түсіндіру үшін 5-қадамды қараңыз

4 -қадам: Raspberry Pi негізіндегі енгізу

Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
Raspberry Pi негізіндегі енгізу
  1. USB-TTL түрлендіргіші немесе GPIO көмегімен UART порты арқылы TFmini LiDAR-ды RPi-ге қосыңыз
  2. Python IDLE көмегімен Pi_benewake_LiDAR.py файлын жүктеңіз және ашыңыз
  3. Егер сіз RPi бар USB-TTL түрлендіргішін қолдансаңыз, Arduino IDE ашыңыз. Құралдар -> Сериялық портты нұқыңыз және сәйкесінше кодты өңдеңіз. Егер сіз UART GPIO портын қолдансаңыз, /dev /ttyAMA0 деп жазыңыз
  4. Кодты іске қосыңыз

** Кодты қашықтықты басып шығару үшін қолдануға болады, бірақ RPi өңдеу қуаты көп болмағандықтан, егер жазылған қашықтық белгілі бір диапазоннан төмен болса, жарық диодты жандыру ұсынылады (RPi бар светодиодтың схемасы қоса берілген)

Q. Неліктен RPi бар USB-TTL түрлендіргішті қолдану керек?

RPi -де тек бір UART порты бар, кейде UART байланысын қажет ететін бірнеше модульдерді қою қажет. USB-TTL қосымша UART портын RPi-ге ұсынады, бұл бізге бірнеше UART құрылғысын (екі немесе одан да көп TFmini LiDAR сияқты) RPi-ге қосуға мүмкіндік береді.

5 -қадам: Кодекс туралы

Кодекс туралы
Кодекс туралы

Кодты үш бөлікке бөлуге болады:

  • Байланыс орнату
  • Мәліметтерді жазу
  • Деректерді оқу

Байланыс орнату:

Қажетті тақырыптық файлдарды импорттағаннан кейін, біз TFmini LiDAR-мен COM портын, Baud жылдамдығын және қосылымның күту уақытын көрсету арқылы байланыс орнатамыз.

ser = serial. Serial ('COM7', 115200, күту уақыты = 1) #ДК

ser = serial. Serial ('/dev/ttyUSB1', 115200, күту уақыты = 1) #Raspberry Pi

Мәліметтерді жазу:

Кодты екіге бөлуге болады, жазу және қабылдау. Деректерді алу үшін сізге белгілі бір команданы TFmini LiDAR -ге жіберу қажет (инициализация процесінің бөлігі). Бұл жағдайда мен 4257020000000106 таңдадым. RPi Python -дың бірдей нұсқасымен жұмыс жасаса да, синтаксисте шамалы өзгеріс бар, себебі 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 байтты «бөлуін» береді. Алғашқы екі байт - бұл 0x59 («Y» таңбасы) мәні бар кадр тақырыбы. Оларды UART хабарламасының басталуын анықтау үшін оқуға және пайдалануға болады.

егер (('Y' == ser.read ()) және ('Y' == ser.read ())):

Тақырып жақтауы оқылғаннан кейін, қашықтық туралы мәліметтерді тасымалдайтын келесі екі байтты оқуға болады. Қашықтық туралы деректер 8 биттік екі пакетке бөлінеді, Dist_L (Byte3) - Төменгі 8 бит және Dist_H (Byte4) - Жоғары 8 бит.

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

Dist_H -ді 256 -ға көбейту арқылы екілік деректер 8 -ге солға жылжиды («<< 8» баламасы). Енді Dist_L 8-биттік қашықтық деректерін қосуға болады, нәтижесінде Dist_Total 16-биттік деректер пайда болады.

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

Бізде «шешілген» қашықтық мәні болғандықтан, келесі бес байтты елемеуге болады. Оқылған деректер еш жерде сақталмайтынын ескеріңіз.

i ауқымында (0, 5): ser.read ()

** Басқа жерде сіз TFmini LiDAR 100 Гц жұмыс жиілігіне байланысты цикл аяқталғанға дейін енгізілген «кідірісті» (Python -дағы ұйқы) таба аласыз. Бұл кешіктіру 'бағдарламаның кешігуі' және біраз уақыт өткеннен кейін деректердің ЖАҢАРТЫЛУЫНА әкеледі. Менің ойымша, біз 9 байтқа дейін деректердің жиналуын күткендіктен, басқа кідіріс болмауы керек.

#уақыт.ұйықтау (0.0005) #Кешіктіру түсіндірілген

ал (ser.in_waiting> = 9):

Ұсынылған: