Índice:

Transmissor Raspberry Pi + Xbee RC: 5 etapas
Transmissor Raspberry Pi + Xbee RC: 5 etapas

Vídeo: Transmissor Raspberry Pi + Xbee RC: 5 etapas

Vídeo: Transmissor Raspberry Pi + Xbee RC: 5 etapas
Vídeo: Testing transmit receive data by xbee 2024, Julho
Anonim
Transmissor Raspberry Pi + Xbee RC
Transmissor Raspberry Pi + Xbee RC

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

Conecte o Raspberry Pi Zero ao XBee Radio
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: