Tabla de contenido:
- Paso 1: Transmisor Raspberry PI y Xbee RC
- Paso 2: configurar la UART de Raspberry Pi
- Paso 3: escriba una secuencia de comandos de Python para leer los valores del controlador del juego
- Paso 4: Conclusión
- Paso 5: Conecte la Raspberry Pi Zero a la radio XBee
Video: Transmisor RC Raspberry Pi + Xbee: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Este instructivo le mostrará lo que hice para crear mi propio transmisor RC Raspberry Pi Zero + Xbee
Paso 1: Transmisor Raspberry PI y Xbee RC
Paso 2: configurar la UART de Raspberry Pi
¡Hola!
Las Raspberry Pi (todas las variaciones) son extremadamente versátiles y ahora son la piedra angular de un ecosistema de muchos complementos fáciles de soldar que hacen que estos dispositivos sean REALMENTE prácticos. Desafortunadamente, lo único que le falta a Raspberry Pi (actualmente) es una placa de conexión o una interfaz GPIO llave en mano para radios XBee (ZigBee). Los dispositivos XBee son una excelente manera de comunicarse entre todo tipo de dispositivos sin muchos protocolos o formatos de datos de corte y corte y facilitan la integración de dispositivos USB y el envío de sus datos a otros dispositivos remotos. Para comenzar, comience con cualquier versión de Raspberry Pi. En este Instructable utilicé un Raspberry Pi zero y configuré la consola en serie para liberar el UART usando este Instructable.
Paso 3: escriba una secuencia de comandos de Python para leer los valores del controlador del juego
Este bit de código Python reacciona a los eventos generados por el controlador del juego y transmite el valor de la entrada en el control que generó el evento. Este código enviará datos tan rápido como la velocidad en baudios establecida en las radios XBee. En este ejemplo, las radios están configuradas en 57600 pero podrían configurarse a su velocidad en baudios más alta. El controlador de juegos es un controlador de juegos USB Logitech. El código utilizado es el siguiente:
importar pygame
importar serial
sOut = ""
ser = serial. Serial {
puerto = '/ dev / ttyAMA0', velocidad en baudios = 57600, paridad = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, tamaño de bytes = serial. EIGHTBITS, tiempo de espera = 1
}
pygame.init ()
hecho = falso
mientras está hecho == falso:
joystick = pygame.joystick.joystick (0)
joystick.init ()
# PROCESAMIENTO DE EVENTOS
para el evento en pygame.event.get ():
if event.type == pygame. JOYAXISMOTION:
sOut = "Eje:" + str (event.axis) + "; Valor:" + str (event.value)
imprimir (salir)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Sombrero: + str (event.hat) +"; Valor: "+ str (event.value)
imprimir (salir)
ser.write (sOut)
ser.flush ()
sOut = ""
si event.type == pygame. JOYBUTTONDOWN:
sOut = "Botón hacia abajo:" + str (event.button)
imprimir (salir)
ser.write (sOut)
ser.flush ()
sOut = ""
si event.button == 8:
print ("Saliendo")
hecho = Verdadero
si event.type == pygame. JOYBUTTONUP:
sOut = "Botón arriba:" + str (event.button)
imprimir (salir)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Paso 4: Conclusión
La versión final de esto utiliza una batería de teléfono auxiliar para alimentar la Raspberry Pi, que alimenta el controlador de juegos XBee y Logitech. En un proyecto futuro, agregaré una cubierta de plástico formada al vacío que incluirá la Raspberry PI Zero, XBee Radio y la fuente de alimentación, todos conectados al controlador del juego en un paquete agradable y ordenado. Esta construcción de transmisor RC hace que sea muy fácil enviar datos de control a casi cualquier cosa. En mi próxima compilación, enviaré los datos a un robot hexápodo que rescaté de Goodwill. Espero que encuentre útil este instructivo. ¡Feliz edificio!
Paso 5: Conecte la Raspberry Pi Zero a la radio XBee
Como se muestra en el diagrama, conecte el pin 1 de Pi GPIO (3.3v) al pin 1 de XBee. Conecte el pin 6 de Pi GPIO (Gnd) al pin 10 de XBee, y el pin 8 de Pi GPIO (TX) al pin 3 de XBee (Din). También puede usar una placa de conexión XBee que requerirá que conecte el pin 2 (5v) de Pi GPIO al pin de 5v en la placa de conexión.
Recomendado:
Cómo descargar el código MicroPython en XBee 3:18 pasos (con imágenes)
Cómo descargar el código de MicroPython en XBee 3: MicroPython es un lenguaje de programación inspirado en Python 3.0 que funciona en microcontroladores, como XBee 3. MicroPython puede ayudar a disminuir la cantidad de suministros y el volumen general de su proyecto, y hacer las cosas mucho más fáciles . Sin embargo, yo fou