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

Raspberry Pi + Xbee RC дамжуулагч: 5 алхам
Raspberry Pi + Xbee RC дамжуулагч: 5 алхам

Видео: Raspberry Pi + Xbee RC дамжуулагч: 5 алхам

Видео: Raspberry Pi + Xbee RC дамжуулагч: 5 алхам
Видео: Custom Xbee remote with Raspberry Pi 2024, Долдугаар сарын
Anonim
Raspberry Pi + Xbee RC дамжуулагч
Raspberry Pi + Xbee RC дамжуулагч

Энэхүү зааварчилгаа нь өөрийн 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 радиогоор холбоно уу

Raspberry Pi Zero -ийг XBee радиогоор холбоно уу
Raspberry Pi Zero -ийг XBee радиогоор холбоно уу

Диаграммд үзүүлсэн шиг Pi GPIO зүү 1 (3.3v) -ийг XBee зүү 1 -тэй холбоно уу.. Та мөн Pi GPIO pin 2 (5v) -ийг таслах самбар дээрх 5v зүүтэй холбохыг шаарддаг XBee таслах самбар ашиглаж болно.

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