Агуулгын хүснэгт:

Вэб хяналттай Rover: 14 алхам (зурагтай)
Вэб хяналттай Rover: 14 алхам (зурагтай)

Видео: Вэб хяналттай Rover: 14 алхам (зурагтай)

Видео: Вэб хяналттай Rover: 14 алхам (зурагтай)
Видео: 125 САМЫХ ИННОВАЦИОННЫХ ЭЛЕКТРОТРАНСПОРТНЫХ И ЛИЧНЫХ ТРАНСПОРТНЫХ СРЕДСТВ 2024, Арваннэгдүгээр
Anonim
Вэб хяналттай Rover
Вэб хяналттай Rover
Вэб хяналттай Rover
Вэб хяналттай Rover

Робот барьж, тоглох нь миний амьдралын гол буруутан цэнгэл юм. Бусад нь гольф эсвэл цанаар тоглодог, гэхдээ би робот бүтээдэг (би гольф, цанаар тоглож чадахгүй болохоор:-). Надад тайвширч, хөгжилтэй санагдаж байна! Ихэнх роботуудаа хийхийн тулд би явах эд ангиудыг ашигладаг. Багцыг ашиглах нь илүү дуртай зүйлээ, програм хангамж, электроникийг хийхэд тусалдаг бөгөөд эрхий хуруугаараа илүү сайн явах эд ангиудыг бий болгодог.

Энэхүү зааварчилгааны хэсэгт бид энгийн боловч хүчирхэг Wifi/вэб удирдлагатай ровер хийхэд юу шаардлагатай байгааг авч үзэх болно. Ашигласан явах эд анги нь Actobotics Gooseneck юм. Би үүнийг хэмжээ, өргөжүүлэх чадвар, өртөгөөр нь сонгосон боловч та өөр хүссэн явах эд ангиудыг ашиглаж болно.

Ийм төслийн хувьд бидэнд сайн цорын ганц самбар бүхий компьютер хэрэгтэй болно, би энэ роботын хувьд Raspberry Pi (RPI) линукс дээр суурилсан компьютер ашиглахаар шийдсэн. RPI (ба Линукс) нь бидэнд кодлох олон сонголтыг өгдөг бөгөөд кодчилох тал дээр Python ашиглах болно. Вэб интерфэйсийн хувьд би Python -ийн хөнгөн вэб хүрээ болох Flask -ийг ашигладаг.

Мотор жолоодохын тулд би RoboClaw 2x5a загварыг сонгосон. Энэ нь үүнийг удирдахын тулд энгийн цуваа холболт хийх боломжийг олгодог бөгөөд RPI болон Gooseneck дээрх мотортой сайн ажилладаг.

Эцэст нь POV төрлийн видео санал хүсэлтийг алсаас жолоодох вэбкамертай. Би дараа нь сэдэв бүрийг илүү дэлгэрэнгүй авч үзэх болно.

Алхам 1: Тоног төхөөрөмж шаардлагатай

Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
Тоног төхөөрөмж шаардлагатай
  • Actobotics Gooesneck явах эд анги эсвэл таны сонгосон тохиромжтой орлуулалт
  • Таны сонгосон Raspberry Pi (эсвэл клон) - Энэ bot дээр RPI загвар B ашиглагддаг, гэхдээ дор хаяж хоёр USB порттой бүх төхөөрөмж ажиллах болно.
  • Стандарт Servo хавтан B x1
  • 90 ° Нэг өнцөгт сувгийн хаалт x1
  • RoboClaw 2x5a мотор жолооч
  • S3003 эсвэл үүнтэй төстэй стандарт хэмжээтэй servo
  • Жижиг талх эсвэл мини талхны хавтан
  • Эмэгтэй -Эмэгтэй холбогч утас
  • Эрэгтэй эмэгтэй холбогч утас
  • Вэб камер (заавал биш) - Би Logitech C110 ашигладаг бөгөөд энд RPI дэмжигддэг камеруудын жагсаалт байна.
  • Серво тэжээлд зориулсан 5v-6v тэжээлийн эх үүсвэр
  • Хөдөлгүүрийн хөдөлгүүрийг тэжээх зориулалттай 7.2v-11.1v зай
  • RPI -д зориулсан 5v 2600mah (эсвэл түүнээс дээш) USB цахилгаан банк
  • USB Wifi адаптер

Миний бот дээр би 4 инчийн дугуй ашигладаг бөгөөд үүнийг арай илүү бүхэлд нь хамарсан болгоно. Энэ сонголтыг хийхийн тулд танд дараахь зүйлс хэрэгтэй болно.

  • 4 "Хүнд даацын дугуй x2
  • 4 мм -ийн цооног бүхий шураг зангилаа (0.770 инч) x2

Алхам 2: Явах эд анги угсрах

Явах эд анги угсрах
Явах эд анги угсрах
Явах эд анги угсрах
Явах эд анги угсрах
Явах эд анги угсрах
Явах эд анги угсрах

Юуны өмнө явах эд анги эсвэл видеонд багтсан зааврыг дагаж явах эд ангиудыг угсарна. Дууссаны дараа зураг шиг зүйлтэй байх ёстой. ТАЙЛБАР: Хүзүүний хэсгийг угсрахдаа бэхэлгээг унтраах хэрэгтэй.

Миний бот дээр би 4 инчийн хүнд даацын дугуйнд зориулагдсан явах эд ангиудын дугуйг солихоор шийдсэн. Хэрэв та үүнийг хийхийг хүсэхгүй бол энэ нь заавал биш юм.

Алхам 3: Электроникийг суурилуулах

Электроникийг суурилуулах
Электроникийг суурилуулах
Электроникийг суурилуулах
Электроникийг суурилуулах
Электроникийг суурилуулах
Электроникийг суурилуулах

Gooseneck нь таны цахилгаан хэрэгслийг суурилуулах олон өрөө, сонголттой. Би эдгээр зургуудыг гарын авлага болгон өгч байна, гэхдээ та үүнийг хэрхэн яаж байрлуулахаа өөрөө сонгож болно. Самбар, батерейг суурилуулахын тулд та зогсолт, хоёр талт соронзон хальс, Velcro эсвэл servo-tape ашиглаж болно.

Алхам 4: Вэбкамер нэмэх

Вэбкамер нэмж байна
Вэбкамер нэмж байна
Вэбкамер нэмж байна
Вэбкамер нэмж байна
Вэбкамер нэмж байна
Вэбкамер нэмж байна

Энэ алхамд 90 градусын хаалт, хөнгөн servo зангилаа,.3125 инчийн дөрвөн (4) боолтыг аваарай.

  • Серво зангилааг аваад хаалтны нэг талд байрлуулж, зураг дээрх шиг.2125 "эрэг шургаар бэхлээрэй.
  • Дараа нь servo -ийг servo хаалтанд холбоно
  • Серво эвэртэй 90 градусын хаалтыг servos нуруунд холбож, servo -той хамт ирдэг эвэр боолтыг ашиглан холбоно.
  • Одоо үлдсэн боолтыг ашиглан галууны хүзүүний дээд хэсэгт Servo-ийг хаалтанд холбоно
  • Камерыг 90 градусын хаалтанд цахилгаан товч эсвэл хоёр талт соронзон хальс дээр бэхлээрэй

Шаардлагатай бол зургийг гарын авлага болгон ашиглаарай.

Алхам 5: Бүгдийг нь холбоно уу

Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна
Бүгдийг холбож байна

Энэхүү роботын утас нь нэлээд урагшлахад хэцүү байдаг.

Моторууд:

Хэрэв та аль хэдийн хийгээгүй бол гагнуур нь хоёр мотор дээр ажилладаг

Роботууд урд (галуу хүзүүтэй төгсгөл) танаас харсан байдлаар:

  • Зүүн мотор дээрх хөдөлгүүрийн утсыг M1A ба M1B суваг руу холбоно уу
  • Баруун мотор дээрх моторын утсыг M2A ба M2B суваг руу холбоно уу

Ground (GND) холболтууд:

  • RoboClaw дээрх нэг газардуулгын зүүг газрын холбогч самбар дээр холбоно уу. RoboClaw дээрх газардуулгын шугам нь төвд хамгийн ойр байдаг (Зураг харна уу)
  • RPI дээрх PIN 6 -ийг холбогч самбар дээр холбоно уу. Зүү хуваарилах талаар RPI толгойн зургийг үзнэ үү.
  • GND -ийг servo зайны багцаас холбогч самбар дээрх нэг зүү рүү холбоно уу.
  • Холбогч самбараас GND утас руу дамжуулагч холбоно.

RoboClaw руу RPI:

RPI GPIO14 TXD зүүг RoboClaw S1 зүүтэй холбоно уу

Эрчим хүч:

  • POS утсыг servo зайнаас servos POS залгуурт холбоно уу
  • POS утсыг моторын батерейнаас RoboClaw хөдөлгүүрийн оролтын терминалын POS (+) руу холбоно уу. Бид GND терминалыг одоогоор салгаж орхих болно.

Алхам 6: RPI -ийг тохируулах

RPI -ийг тохируулж байна
RPI -ийг тохируулж байна

Энд байгаа хэрэглэгч Linux болон RPI -ийн талаар зарим зүйлийг мэддэг гэж би бодож байна. Би хэрхэн яаж тохируулах эсвэл түүнтэй холбогдохыг тайлбарлахгүй байна. Хэрэв танд энэ талаар тусламж хэрэгтэй бол доорх хуудсыг ашиглана уу.

RPI тохиргоогоо авахын тулд дараах хуудсуудыг үзнэ үү.

  • RPI үндсэн тохиргоо
  • RPI Түргэн эхлүүлэх гарын авлага
  • NOOBS -ийн тохиргоо

Ерөнхий хуудсуудын хувьд RPI үндсэн хуудас болон eLinux хуудсууд нь эхлэхэд тохиромжтой газар юм.

WP -ийн ерөнхий тохиргоог энэ холбоосоос үзнэ үү.

Хэрэв та бот дээр ямар нэгэн камер эсвэл вэб камер ашиглахаар төлөвлөж байгаа бол эдгээр хуудсуудыг үзээд үндсэн шаардлагатай файлуудаа аваарай.

  • RPI камерын тохиргоо
  • eLinix RPI камерын тохиргоо

Видео дамжуулж байна:

Видео дамжуулалтыг RPI дээр ажиллуулах хэд хэдэн арга байдаг боловч миний илүүд үздэг арга бол Motion ашиглах явдал юм.

Үүнийг RPI дээрээ суулгахын тулд үүнийг ажиллуулна уу: sudo apt-get install motion

Энэхүү зааварчилгаа нь үүнийг цацахаар тохируулах явдал юм.

Алхам 7: RPI цуваа портыг тохируулах

Бид энэ портоос RoboClaw мотор хянагчтай ярилцахыг хүсч байгаа тул RX ба TX ашиглах Linux консолын горимыг идэвхгүй болгох шаардлагатай болно. Үүнийг хийхийн тулд та энэ аргыг эсвэл энэ хэрэгслийг ашиглаж болно. Эцсийн эцэст хоёулаа ижил зүйлийг хийдэг тул сонголт нь таны сонголт юм.

Алхам 8: Python модулийг суулгах

Танд RPI дээр python болон python багцын суулгагч pip хэрэгтэй болно.

Pip -ийг суулгахын тулд:

  1. sudo apt-get python-setuptools суулгана уу
  2. sudo easy_install pip

Дараа нь:

  1. sudo pip суулгах колбо
  2. sudo pip суулгах pyserial
  3. sudo pip суулгах RPIO

Энэ нь кодыг ажиллуулахад шаардлагатай бүх модулиуд байх болно.

Алхам 9: RoboClaw -ийг тохируулах

Би роботын кодыг RoboClaw -тэй стандарт цуваа горимд 19200 bod дээр ярьж байна.

RoboClaw -ийг тохируулахын тулд дараахь зүйлийг хийнэ үү.

  1. RoboClaw дээрх "MODE" товчийг дарна уу
  2. Хугацаа хоцрох хооронд LED 5 (таван) удаа анивчих хүртэл тохируулах товчийг дарна уу
  3. Хадгалахын тулд "LIPO" товчийг дарна уу
  4. Дараа нь хоцролтын хооронд LED 3 (гурван) удаа анивчих хүртэл "SET" товчийг дарна уу
  5. Хадгалахын тулд LIPO товчийг дарна уу

Энэ бол мотор хянагчийг тохируулах явдал юм. Шаардлагатай бол нэмэлт мэдээллийг pdf дээрээс үзнэ үү.

Алхам 10: Rover програм/файлуудыг суулгах

Rover.zip файлыг өөрийн хэрэглэгчийн лавлахад RPI руу татаж аваад хуулж аваарай.

Хэрэв та Linux эсвэл Mac дээр ажиллаж байгаа бол үүнийг хийхийн тулд 'scp' ашиглаж болно.

scp ~/байршил/of/the/file/rover.zip pi@your_rpi_ip:/~

Windows -ийн хувьд та pscp -ийг татаж аваад ашиглаж болно, дараа нь:

pscp /location/of/the/file/rover.zip pi@your_rpi_ip:/~

Zip файлыг RPI рүү хуулж авсны дараа pi хэрэглэгчээр нэвтэрнэ үү.

Одоо гүйх:

задлах rover.zip

Энэ нь файлуудыг 'rover' нэртэй хавтсанд задлах бөгөөд энэ хавтасны доор дараах зүйлсийг агуулна.

  • restrover.py (роботын питон код)
  • статик (хяналтын хуудсан дээрх товчлууруудын зургийн файлыг хадгалдаг)
  • загварууд (index.htlm файл, хяналтын вэб хуудас)

Хэрэв та вэб камер ашиглаж байгаа бол загварын хавтас дахь index.html файлын доод талын мөрийг өөрчилнө үү. IFRAME мөр дэх URL -г өөрийн видео дамжуулалтын src URL -тай тааруулахаар өөрчилнө үү.

Алхам 11: Bot -ийг дээш эхлүүлэх

Bot Up -ийг эхлүүлж байна
Bot Up -ийг эхлүүлж байна

USB тэжээлийг RPI руу холбоно уу.

Бот кодыг эхлүүлэхийн тулд pi хэрэглэгчийн нэрээр нэвтэрч ороод:

  • cd ровер
  • sudo python restrover.py

Хэрэв бүх зүйл зүгээр байсан бол та энэ алхам дээрх зурагтай төстэй дэлгэцийг харах ёстой

Хэрэв та ямар нэгэн алдаа, асуудал олж харвал цааш явахаасаа өмнө засах хэрэгтэй болно.

Одоо GND (-) утсыг RoboClaw хөдөлгүүрийн оролтын NEG (-) терминал руу холбоно уу.

Алхам 12: Bot хяналтын хуудсанд нэвтрэх

Bot хяналтын хуудсанд нэвтрэх
Bot хяналтын хуудсанд нэвтрэх
Bot хяналтын хуудсанд нэвтрэх
Bot хяналтын хуудсанд нэвтрэх

Роботын питон скрипт ажиллаж эхэлсний дараа RoboClaw -ийг асаагаад дараа нь RPI -ийн ip рүү очно уу.

your_rpi_ip

Вэб хяналтын хуудас зурган дээрх шиг гарч ирэх ёстой. Хэрэв тийм биш бол RPI гаралтын терминалаа шалгаад алдаа хайж, засаарай.

Хуудсанд орсны дараа та ботийг хянахад бэлэн байна.

Робот нь "Med run" тохиргооноос эхлэн дунд хурднаас эхлэх болно.

Ботыг хуудасны товчлуурууд эсвэл гарын товчлууруудаар удирдах боломжтой.

Түлхүүрүүд нь:

  • w - урагш
  • z - урвуу/арагш
  • a - зүүн тийш урт эргэх
  • s - урт баруун эргэлт
  • q - зүүн тийш богино эргэлт
  • e - баруун тийш богино эргэлт
  • 1 - зүүн талын камер
  • 2 - камерын баруун талд
  • 3 - зүүн тийш бүтэн таваг
  • 4 - баруун тийш бүрэн тавина
  • / - гэрийн/ төвийн камер
  • h - роботыг зогсоох/зогсоох

Илгээсэн командуудын хооронд хагас секундын хоцрогдол буфер байна. Би хүсээгүй давтагдсан тушаалуудыг арилгахын тулд үүнийг хийсэн. Хэрэв та хүсвэл үүнийг мэдээж кодоос хасах боломжтой (index.html дотор)

Үлдсэн хяналт, хяналт нь өөрөө тайлбартай байх ёстой.

Алхам 13: Python/Flask код

Энэ бот нь Python болон Flask вэб хүрээг ашигладаг. Хэрэв та сонирхож байвал Колбоны талаар илүү ихийг олж мэдэх боломжтой.

Flask програм болон ердийн Python скриптээс том ялгаа нь URI -ийг зохицуулахад ашигладаг @app.route класс/арга юм. Үүнээс гадна ихэнх тохиолдолд энэ нь ердийн Python юм.

#!/usr/bin/env python

# # Wifi/Веб хөтөчтэй Rover # # Бичсэн Скотт Биасли - 2015 # # RPIO, pyserial, Flask -ийг ашигладаг) # Комм порт руу холбогдож Roboclaw мотор хянагчтай ярилцана уу: # 19200 roboclaw = serial -ээс өөр бол энд дамжуулалтын хурдыг өөрчил. Сериал ('/dev/ttyAMA0', 19200) IOError -ээс бусад тохиолдолд: print ("Comm port not олдсон ") sys.exit (0) # Хурд ба жолоодлогын хяналтын хувьсагчид last_direction = -1 speed_offset = 84 turn_tm_offset = 0.166 run_time = 0.750 # Servo төвийг сахисан байрлал (гэрийн) servo_pos = 1250 servo = PWM. Servo () servo.set_servo (18), servo_pos) # Цагийг зохицуулахын тулд жаахан суух. унтах (3) # # URI зохицуулагчид - ботын хуудасны бүх үйлдэл энд хийгддэг # # Ботуудын хяналтын хуудсыг илгээх (нүүр хуудас) @app.route ("/") def index (): return render_template ('index.html', name = None) @app.route ("/forward") def forward (): global last_direction, run_ti me print "Forward" go_forward () last_direction = 0 # 100ms + run_time time.sleep (0.100 + run_time) # Хэрэв тасралтгүй биш бол run_time> 0 бол last_direction = -1 halt () буцаад "OK" @ app.route ("/backward") def backward (): global last_direction, run_time хэвлэх "Backward" go_backward () last_direction = 1 # унтах 100ms + run_time time.sleep (0.100 + run_time) # Хэрэв тасралтгүй байвал хойшлуулсны дараа зогсоо. хэрэв run_time> 0: last_direction = -1 stop () "ok" @app.route ("/left") def left (): global last_direction, turn_tm_offset хэвлэх "Left" go_left () last_direction = -1 # sleep @1 /2 секунд. Унтах (0.500 - эргэлт_tm_offset) # зогсоох зогсолт () time.sleep (0.100) "ok" буцаах () # унтах @1/2 секунд. унтах (0.500 - эргэлт_tm_offset) сүүлчийн чиглэл = -1 # зогсоох зогсолт () time.sleep (0.100) "ok" @app.route ("/ltforward") буцах def ltforward (): дэлхийн сүүлчийн чиглэл, эргэлт_t m_offset хэвлэх "Зүүн урагш эргэх" go_left () # 1/8 секундын турш # унтах.rute ("/rtforward") def rtforward (): global last_direction, turn_tm_offset хэвлэх "Баруун урагш эргэх" go_right () # 1/8 секундын турш # унтах stop halt () time.sleep (0.100) "ok" @app.route ("/stop") def stop (): global last_direction хэвлэх "Stop" зогсоох () last_direction = -1 # 100ms time.sleep (0.100)) буцах "ok" @app.route ("/panlt") def panlf (): global servo_pos хэвлэх "Panlt" servo_pos -= 100 бол servo_pos 2500: servo_pos = 2500 servo.set_servo (18, servo_pos) # 150ms цаг унтдаг. унтах (0.150) "ok" @app.route ("/home") буцах def home (): global servo_pos "Home" servo_pos = 1250 servo.set_servo (18, servo_pos) # 150ms time.sleep (0.150) return "ok" @app.route ("/panfull_lt") def panfull_lt (): global servo_pos хэвлэх "Pan full l eft "servo_pos = 500 servo.set_servo (18, servo_pos) # унтах 150ms time.sleep (0.150)" ok "буцах @app.route ("/panfull_rt ") def panfull_rt (): дэлхийн servo_pos хэвлэх" Бүтэн баруун тийш "servo_pos = 2500 servo.set_servo (18, servo_pos) # унтах 150ms time.sleep (0.150) "ok" @app.route ("/speed_low") def speed_low () буцах: global speed_offset, last_direction, turn_tm_offset speed_offset = 42 turn_tm_offset = 0.001 # Сүүлийн чиглэл нь шинэ хурд авахын тулд одоогийн чиглэлийг шинэчилнэ үү == 0: go_forward () if last_direction == 1: go_backward () # 150ms time.sleep (0.150) "ok" @app.route ("/speed_mid") буцах speed_mid (): global speed_offset, last_direction, turn_tm_offset speed_offset = 84 turn_tm_offset = 0.166 # Last_direction == 0: go_forward () if last_direction == 1: go_backward () # 150ms time.sleep (0.150)) "ok" буцаах @app.route ("/speed_hi") def speed_hi (): дэлхийн хурдны_офсет, сүүлчийн чиглэл, turn_tm_offset speed_offset = 126 тур n_tm_offset = 0.332 # Одоогийн чиглэлийг шинэчилбэл сүүлчийн чиглэл == 0 байвал go_forward () хэрэв сүүлчийн чиглэл == 1: go_backward () # унтах 150ms time.sleep (0.150) "ok" @app.route ("/тасралтгүй) буцах ") def тасралтгүй (): дэлхийн ажлын_хугацаа" Үргэлжлүүлэн гүйх "run_time = 0 # унтах 100ms time.sleep (0.100) буцах" ok " @app.route ("/mid_run ") def mid_run (): global run_time print" Mid run "run_time = 0.750 halt () # sleep 100ms time.sleep (0.100) return" ok " @app.route ("/short_time ") def short_time (): global run_time хэвлэх" Богино гүйлтийн "ажил_хугацаа = 0.300 зогсолт () # унтах 100ms time.sleep (0.100) "ok" буцах # # Мотор хөтөчийн функцууд # def go_forward (): speed_offset бол дэлхийн хурд_офсет! = 42: roboclaw.write (chr (1 + speed_offset)) roboclaw.write (chr (128 +) speed_offset)) өөр: roboclaw.write (chr (127 - speed_offset)) roboclaw.write (chr (255 - speed_offset)) def go_backward (): global_offset бол speed_offset! = 42: roboclaw.write (chr (127 - speed_offset)) roboclaw.wri te (chr (255 - speed_offset)) өөр: roboclaw.write (chr (1 + speed_offset)) roboclaw.write (chr (128 + speed_offset)) def go_left (): speed_offset бол дэлхийн хурд_ офсет! = 42: roboclaw.write (chr (127 - speed_offset)) roboclaw.write (chr (128 + speed_offset)) өөр: roboclaw.write (chr (1 + speed_offset)) roboclaw.write (chr (255 - speed_offset)) def go_right (): global speed_offset if speed_offset! = 42: roboclaw.write (chr (1 + speed_offset)) roboclaw.write (chr (255 - speed_offset)) өөр: roboclaw.write (chr (127 - speed_offset)) roboclaw.write (chr (128 + speed_offset)) def halt (): roboclaw.write (chr (0)) if _name_ == "_main_": app.run (host = '0.0.0.0', port = 80, debug = True)

Хэрэв та Flask -аас дибаг хийх мэдээллийг авахыг хүсэхгүй байгаа эсвэл хэрэггүй бол app.run мөрөнд дибаг 'худал' болгож тохируулна уу.

хэрэв _ name_ == "_main_":

app.run (host = '0.0.0.0', port = 80, debug = False)

Та мөн Flask http серверийн сонсдог портыг өөрчилж болно.

Алхам 14: Бусад тоног төхөөрөмжийг ашиглах

Хэрэв та өөр төрлийн SBC (Single Board Computer) гэх мэт бусад тоног төхөөрөмжийг ашиглахыг хүсч байвал Python болон Flask -ийг Beagle Bone, PCDuino гэх мэт бусад самбар дээр ажиллуулахад бага зэрэг асуудал гарна. Та кодыг GPIO -той нийцүүлэхийн тулд өөрчлөх шаардлагатай болно. шинэ самбарын servo жолоодох чадварыг байрлуулж, ашиглана уу.

Өөр төрлийн мотор драйвер ашиглахын тулд солих мотор драйверыг хөдөлгүүрийг тухайн үүргийг гүйцэтгүүлэхийн тулд хийх ёстой зүйлээ хийхийн тулд go_forward, go_backward, go_left, go_right, stop функцуудыг өөрчлөх хэрэгтэй.

Зөвлөмж болгож буй: