Съдържание:
- Стъпка 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 07:53
Тази инструкция ще ви покаже какво направих, за да създам свой собствен Raspberry Pi Zero + Xbee RC предавател
Стъпка 1: Raspberry PI и Xbee RC предавател
Стъпка 2: Конфигурирайте Raspberry Pi UART
Здравей!
Raspberry Pi (всички варианти) са изключително гъвкави и сега са крайъгълният камък на екосистема от много лесни за запояване добавки, които правят тези устройства ИЗИСКИ удобни. За съжаление единственото нещо, което липсва (понастоящем) на Raspberry Pi, е пробивната платка или GPIO интерфейсът до ключ за радиостанции XBee (ZigBee). Устройствата XBee са чудесен начин за комуникация между всички видове устройства без много протоколи за нарязване и нарязване или формати на данни и правят много лесно интегрирането на USB устройства и изпращането на техните данни до други отдалечени устройства. За да започнете, започнете с всяка версия на Raspberry Pi. В този Instructable използвах Raspberry Pi нула и конфигурирах серийната конзола да освободи UART с помощта на тази Instructable.
Стъпка 3: Напишете скрипт на Python, за да прочетете стойностите на контролера на играта
Този бит код на Python реагира на събитията, повдигнати от контролера на играта и предава стойността на входа на контролата, която е повдигнала събитието. Този код ще изпраща данни толкова бързо, колкото скоростта на предаване, зададена на радиостанциите XBee. В този пример радиостанциите са настроени на 57600, но могат да бъдат настроени на най -високата им скорост на предаване. Контролерът за игри е USB контролер за игри на Logitech. Използваният код е по -долу:
импортирайте pygame
внос сериен
sOut = ""
ser = serial. Serial {
порт = '/dev/ttyAMA0', бодрейт = 57600, parity = serial. PARITY_NONE, stopbits = сериен. STOPBITS_ONE, bytesize = serial. EIGHTBITS, таймаут = 1
}
pygame.init ()
done = False
докато е готово == false:
джойстик = pygame.joystick.joystick (0)
joystick.init ()
#ВЪЗМОЖНА ОБРАБОТКА
за събитие в pygame.event.get ():
ако event.type == pygame. JOYAXISMOTION:
sOut = "Оста:" + str (event.axis) + "; Стойност:" + str (event.value)
печат (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ако event.type == pygame. JOYHATMOTION:
sOut = "Hat: + str (event.hat) +"; Стойност: " + str (event.value)
печат (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ако event.type == pygame. JOYBUTTONDOWN:
sOut = "Button Down:" + str (event.button)
печат (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ако event.button == 8:
print ("Излизане")
направено = Вярно
ако event.type == pygame. JOYBUTTONUP:
sOut = "Button Up:" + str (event.button)
печат (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Стъпка 4: Заключение
Окончателната версия на това използва батерия на спомагателен телефон за захранване на Raspberry Pi, който захранва XBee и Logitech контролера за игри. В бъдещ проект ще добавя вакуумно оформен пластмасов капак, който ще обхваща Raspberry PI Zero, XBee Radio и захранване, всички свързани към контролера на играта в един хубав, чист пакет. Тази конструкция на RC предавател прави много лесно изпращането на контролни данни до почти всичко. В следващата си компилация ще изпратя данните на шестоног робот, който спасих от добра воля. Надявам се да намерите тази инструкция за полезна. Честита сграда!
Стъпка 5: Свържете Raspberry Pi Zero към радио XBee
Както е показано на диаграмата, свържете Pi GPIO пин 1 (3.3v) към XBee пин 1. Свържете Pi GPIO пин 6 (Gnd) към XBee пин 10 и Pi GPIO Pin 8 (TX) към XBee пин 3 (Din). Можете също така да използвате пробивна платка XBee, която ще изисква от вас да свържете Pi GPIO щифт 2 (5v) към 5v щифт на пробивната платка
Препоръчано:
Как да изтеглите кода на MicroPython на XBee 3: 18 стъпки (със снимки)
Как да изтеглите кода на MicroPython на XBee 3: MicroPython е език за програмиране, вдъхновен от Python 3.0, който работи на микроконтролери, като XBee 3. MicroPython може да помогне за намаляване на количествата и общата маса на вашия проект и да направи нещата много по -лесни . Въпреки това, аз съм фаул