Índice:
- Etapa 1: Transmissor Raspberry PI e Xbee RC
- Etapa 2: configurar o Raspberry Pi UART
- Etapa 3: escrever um script Python para ler os valores do controlador de jogo
- Etapa 4: Conclusão
- Etapa 5: conecte o Raspberry Pi Zero ao XBee Radio
Vídeo: Transmissor Raspberry Pi + Xbee RC: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Este instrutível mostrará o que eu fiz para criar meu próprio transmissor Raspberry Pi Zero + Xbee RC
Etapa 1: Transmissor Raspberry PI e Xbee RC
Etapa 2: configurar o Raspberry Pi UART
Ei!
O Raspberry Pi (todas as variações) são extremamente versáteis e agora são a base de um ecossistema de muitos add-ons fáceis de soldar que tornam esses dispositivos REALMENTE úteis. Infelizmente, a única coisa que falta no Raspberry Pi (atualmente) é uma placa breakout ou uma interface GPIO pronta para uso para rádios XBee (ZigBee). Os dispositivos XBee são uma ótima maneira de se comunicar entre todos os tipos de dispositivos sem muitos protocolos de dados e cortes ou formatos de dados e tornam muito fácil integrar dispositivos USB e enviar seus dados para outros dispositivos remotos. Para começar, comece com qualquer versão do Raspberry Pi. Neste Instructable, usei um Raspberry Pi zero e configurei o console serial para liberar o UART usando este Instructable.
Etapa 3: escrever um script Python para ler os valores do controlador de jogo
Esse bit de código Python reage aos eventos gerados pelo controlador de jogo e transmite o valor da entrada no controle que gerou o evento. Este código enviará dados tão rápido quanto a taxa de transmissão definida nos rádios XBee. Neste exemplo, os rádios estão configurados para 57600, mas podem ser configurados para sua taxa de transmissão mais alta. O controlador de jogo é um controlador de jogo USB Logitech. O código utilizado está abaixo:
importar pygame
import serial
sOut = ""
ser = serial. Serial {
port = '/ dev / ttyAMA0', baudrate = 57600, paridade = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, tempo limite = 1
}
pygame.init ()
feito = falso
while done == false:
joystick = pygame.joystick.joystick (0)
joystick.init ()
#EVENT PROCESSING
para evento em pygame.event.get ():
if event.type == pygame. JOYAXISMOTION:
sOut = "Axis:" + str (event.axis) + "; Value:" + str (event.value)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Chapéu: + str (event.hat) +"; Valor: "+ str (event.value)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYBUTTONDOWN:
sOut = "Button Down:" + str (event.button)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
imprimir ("Sair")
feito = verdadeiro
if event.type == pygame. JOYBUTTONUP:
sOut = "Button Up:" + str (event.button)
imprimir (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Etapa 4: Conclusão
A construção final deste usa uma bateria auxiliar de telefone para alimentar o Raspberry Pi, que alimenta o controlador de jogo XBee e Logitech. Em um projeto futuro, irei adicionar uma tampa de plástico formada a vácuo que envolverá o Raspberry PI Zero, o XBee Radio e a fonte de alimentação, tudo conectado ao controlador de jogo em um pacote bonito e organizado. Esta construção de transmissor RC torna muito fácil enviar dados de controle para praticamente qualquer coisa. Em minha próxima construção, enviarei os dados para um robô hexapod que resgatei do Goodwill. Espero que você ache este instrutível útil. Edifício feliz!
Etapa 5: conecte o Raspberry Pi Zero ao XBee Radio
Conforme mostrado no diagrama, conecte o pino 1 do Pi GPIO (3,3v) ao pino 1 do XBee. Conecte o pino 6 do GPIO do Pi (Gnd) ao pino 10 do XBee e o pino 8 do GPIO do Pi (TX) ao pino 3 do XBee (Din). Você também pode usar uma placa de breakout XBee, que exigirá que você conecte o pino 2 GPIO Pi (5v) ao pino de 5v na placa de breakout
Recomendado:
Como fazer download do código MicroPython no XBee 3: 18 etapas (com imagens)
Como baixar o código MicroPython para XBee 3: MicroPython é uma linguagem de programação inspirada em Python 3.0 que funciona em microcontroladores, como o XBee 3. MicroPython pode ajudar a diminuir a quantidade de suprimentos e volume geral de seu projeto, e tornar as coisas muito mais fáceis . No entanto, eu fou