Агуулгын хүснэгт:
- Алхам 1: Raspberry PI ба Xbee RC дамжуулагч
- Алхам 2: Raspberry Pi UART -ийг тохируулна уу
- Алхам 3: Тоглоомын хянагчийн утгыг уншихын тулд Python скрипт бичээрэй
- Алхам 4: Дүгнэлт
- Алхам 5: Raspberry Pi Zero -ийг XBee радиогоор холбоно уу
Видео: Raspberry Pi + Xbee RC дамжуулагч: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Энэхүү зааварчилгаа нь өөрийн Raspberry Pi Zero + Xbee RC дамжуулагчийг бий болгохын тулд юу хийснээ танд харуулах болно.
Алхам 1: Raspberry PI ба Xbee RC дамжуулагч
Алхам 2: Raspberry Pi UART -ийг тохируулна уу
Хөөе!
Raspberry Pi (бүх хувилбарууд) нь маш уян хатан бөгөөд одоо эдгээр төхөөрөмжийг үнэхээр ашиглахад хялбар болгодог гагнахад хялбар олон нэмэлтүүдийн экосистемийн тулгын чулуу болж байна. Харамсалтай нь Raspberry Pi -д дутагдаж байгаа нэг зүйл бол XBee (ZigBee) радиог таслах самбар эсвэл түлхүүр гардуулах GPIO интерфэйс юм. XBee төхөөрөмжүүд нь бүх төрлийн төхөөрөмжүүдийн хооронд маш олон тооны тайрах, зүсэх протокол, өгөгдлийн форматгүйгээр харилцах гайхалтай арга бөгөөд USB төхөөрөмжүүдийг нэгтгэх, өгөгдлөө бусад алсын төхөөрөмж рүү илгээхэд маш хялбар болгодог. Эхлэхийн тулд Raspberry Pi -ийн аль ч хувилбараас эхэл. Энэхүү зааварт би Raspberry Pi тэг ашигласан бөгөөд энэхүү зааврыг ашиглан UART -ийг суллахын тулд цуваа консолыг тохируулсан.
Алхам 3: Тоглоомын хянагчийн утгыг уншихын тулд Python скрипт бичээрэй
Python кодын энэ хэсэг нь тоглоомын хянагчийн үүсгэсэн үйл явдалд хариу үйлдэл үзүүлж, үйл явдлыг өдөөсөн хяналтын оролтын утгыг дамжуулдаг. Энэ код нь өгөгдлийг XBee радио дээр тогтоосон хурдны хурд шиг хурдан илгээх болно. Энэ жишээнд радиог 57600 гэж тохируулсан боловч хамгийн их дамжуулах хурдыг тохируулж болно. Тоглоомын хянагч нь Logitech USB тоглоомын хянагч юм. Ашигласан кодыг доор харуулав.
pygame импортлох
цуваа импортлох
sOut = ""
сер = цуваа. Цуврал {
порт = '/dev/ttyAMA0', baudrate = 57600, паритет = цуваа. PARITY_NONE, stopbits = цуваа. STOPBITS_ONE, байт хэмжээ = цуваа. EIGHTBITS, завсарлага = 1
}
pygame.init ()
хийсэн = Худал
хийж байхдаа == худал:
joystick = pygame.joystick.joystick (0)
joystick.init ()
#ҮЙЛ АЖИЛЛАГАА
pygame.event.get () дахь үйл явдлын хувьд:
хэрэв event.type == pygame. JOYAXISMOTION:
sOut = "Axis:" + str (event.axis) + "; Утга:" + str (event.value)
хэвлэх (гарах)
ser.write (sOut)
ser.flush ()
sOut = ""
хэрэв event.type == pygame. JOYHATMOTION:
sOut = "Hat: + str (event.hat) +"; Утга: " + str (event.value)
хэвлэх (гарах)
ser.write (sOut)
ser.flush ()
sOut = ""
хэрэв event.type == pygame. JOYBUTTONDOWN:
sOut = "Down Button:" + str (event.button)
хэвлэх (гарах)
ser.write (sOut)
ser.flush ()
sOut = ""
хэрэв event.button == 8:
хэвлэх ("Гарах")
хийсэн = Үнэн
хэрэв event.type == pygame. JOYBUTTONUP:
sOut = "Button Up:" + str (event.button)
хэвлэх (гарах)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Алхам 4: Дүгнэлт
Үүний эцсийн хувилбар нь туслах утасны батерейг ашигладаг бөгөөд Raspberry Pi -ийг тэжээдэг бөгөөд энэ нь XBee болон Logitech тоглоомын хянагчийг ажиллуулдаг. Ирээдүйн төсөлд би Raspberry PI Zero, XBee Радио, цахилгаан хангамжийг багтаасан вакуум хэлбэртэй хуванцар бүрхэвч нэмж, тоглоомын хянагчтай нэг багцад хавсаргасан болно. Энэхүү RC дамжуулагчийн бүтэц нь хяналтын өгөгдлийг бараг бүх зүйл рүү илгээхэд маш хялбар болгодог. Дараагийн бүтцэд би өгөгдлийг сайн санааны байдлаас аварсан зургаан өнцөгт робот руу илгээх болно. Энэ заавар танд тустай гэж найдаж байна. Аз жаргалтай барилга!
Алхам 5: Raspberry Pi Zero -ийг XBee радиогоор холбоно уу
Диаграммд үзүүлсэн шиг Pi GPIO зүү 1 (3.3v) -ийг XBee зүү 1 -тэй холбоно уу.. Та мөн Pi GPIO pin 2 (5v) -ийг таслах самбар дээрх 5v зүүтэй холбохыг шаарддаг XBee таслах самбар ашиглаж болно.
Зөвлөмж болгож буй:
MicroPython кодыг XBee 3: 18 алхам руу хэрхэн татаж авах вэ (зурагтай)
MicroPython кодыг XBee 3 дээр хэрхэн татаж авах вэ: MicroPython бол XBee 3 гэх мэт микроконтроллер дээр ажилладаг Python 3.0 -аас санаа авсан програмчлалын хэл юм. . Гэсэн хэдий ч би