Puzzlebox órbita: Utilizando un Arduino para controlar un helicóptero infrarrojo (4 / 9 paso)

Paso 4: Decodificación de la señal de Control

a continuación necesitamos decodificar el comando, que básicamente significa entender cómo funciona el comando, y lo que representa cada bit de la señal. Este proceso es bastante difícil, con muchas conjeturas involucradas. Una buena base de aritmética, lógica y a veces la imaginación se requiere.

Nuestro resultado para decodificar la señal de la órbita Puzzlebox se ha colocado en a un archivo de hoja de cálculo de Open Office (en .zip). Una captura de pantalla de ese documento también se incluye en este paso.

Durante la prueba de mover la palanca de mando del acelerador y direccional en varias posiciones y grabadas cada una con el analizador lógico. Luego hemos intentado descifrar el comando de la señal grabada.

En la columna A, T1 ~ T5 significa acelerador nivel 1 ~ 5, L2 significa izquierda máximo R2 significa max derecha, F2 significa máximo hacia adelante, B2 significa máximo posterior. A B y C se refieren a tres diferentes "canales" (diferentes canales pueden utilizarse para controlar múltiples helicópteros diferentes en el mismo lugar al mismo tiempo sin sus señales interfieren uno con el otro).

El significado de la señal comienza a convertirse en claro una vez organizado y aparece de esta manera. Los 7 bits del bloque amarillo define el nivel de aceleración, los 7 bits en el bloque verde define la izquierda y velocidad de giro derecha, 6 pedacitos en rojo define inclinándose hacia adelante y hacia atrás y los dos bits en azul define qué canal usar. (otra vez, canales se utilizan cuando tiene más de un helicóptero en el mismo lugar y desea controlar por separado. Tener tres canales significa que hay un máximo de tres helicópteros puede estar en una misma habitación y todavía volar independientemente).

¿Qué es el acuerdo con el bloque de cian?

Esto se refiere a una suma. Una suma de comprobación es un mecanismo común en cualquier sistema de comunicación donde usted necesita para asegurarse de que la información recibida coincide con lo que se envió. Un checksum es un número calculado del resto del código, con un algoritmo predefinido. Cuando el dispositivo recibe el código, primero tratará de calcular la suma de comprobación por sí mismo, a continuación, compararlo con el checksum que adjunta en el mensaje. Si son iguales entonces el mensaje es correcto, de lo contrario algo mucho han ido mal durante la transmisión por ejemplo el sistema de iluminación en una habitación brillante puede interferir con el sensor de infrarrojos. Si los checksums no coinciden, el dispositivo receptor normalmente pedirá al emisor el mismo mensaje otra vez. Si el dispositivo no es capaz de comunicación de dos vías (como en el caso de la mayoría de los dispositivos infrarrojos) el mensaje debe ser ignorado.

El algoritmo utilizado para generar la suma de comprobación puede ser simple o extremadamente complejo. Un método común incluye bit a bit suma y XOR bit a bit.

La órbita Puzzlebox utiliza el siguiente algoritmo:

Iniciar desde el bit 3 (incluyen los 2 bits de líderes y asignarlos a 0)
Sumar cada 4 bits
Obtener los últimos 4 bits del resultado
Usar 0B10000 (10000 en binario equivale a 16 en decimal) y restar esos últimos cuatro bits

Tomemos por ejemplo T1:

0B0100 + 0B0111 + 0B0100 + 0B1100 + 0B1001 + 0B1111 = 0B110011

Los últimos 4 bits es 0B0011.

0B10000-0B0011 = 0B1101, que coincide con la suma de comprobación en el extremo de la señal de control.

Artículos Relacionados

Utilizando un Arduino para controlar o probar un dispositivo electrónico SPI

Utilizando un Arduino para controlar o probar un dispositivo electrónico SPI

hay muchos dispositivos electrónicos que utilizan el bus SPI, o autobús de interfaz periférico Serial, comunicaciones (varios sensores, LCD displays, potenciómetros digitales, convertidores D/a y A/d, transmisores inalámbricos y receptores, controles
El LeapCopter! (Salto de movimiento para controlar el helicóptero de Quad)

El LeapCopter! (Salto de movimiento para controlar el helicóptero de Quad)

Hola a todos! Esta es mi primera esperanza instructable que usted disfrutará.   Lo que hice en este proyecto fue tomando la plataforma del movimiento de salto y había usado para controlar un quad copter con nada más que de gestos con las manos!   Uti
Arduino en vuelo, un Arduino que puede controlar un helicóptero

Arduino en vuelo, un Arduino que puede controlar un helicóptero

he visto muchos hacks para controlar un helicóptero rc con un arduino pero tengo un helicóptero con radio control (no ir led). Con un par piezas le mostraré cómo construir tu propio! Lea el instructable conjunto antes de comenzar este proyecto. Esto
Cómo hacer teclado contraseña usando arduino para controlar servo y led

Cómo hacer teclado contraseña usando arduino para controlar servo y led

En este proyecto yo le dirá cómo hacer teclado contraseña utilizando arduino y controlar servo y led.primero hacen simple teclado con botón de 4 visitas opara todos los proyectos y otros proyectos visite http://arduinoo.tk/Project/para todo proyecto
Utilizando un Arduino para cargar un DS lite

Utilizando un Arduino para cargar un DS lite

Este instructable es para una ds lite utilizando un Arduino y dos cables de carga. Este también es mi primer instructivo, así que no puede ser lo mejor posible. :)Aviso: no soy responsable por cualquier daño hecho a tu ds, por favor, trabajo con cuid
Cómo hacer trabajo reemplazo bielas para algunas micro helicópteros de RC.

Cómo hacer trabajo reemplazo bielas para algunas micro helicópteros de RC.

En este instructble, le mostraré cómo hacer reemplazos para las barras de conexión del rotor y estabilizador.Paso 1: materiales: -Micro R/C helicóptero-Alambre trenzado-Pelacables-Alicates-TijerasPaso 2: Paso 1 Tira el cable y separar las hebras.Paso
Usando MikroTik Router Board 433 y Arduino para controlar LEDs

Usando MikroTik Router Board 433 y Arduino para controlar LEDs

En este tutorial voy a explicar cómo controlar LEDs usando MikroTik router tablero y Arduino.MikroTik 433 es un enrutador basado en kernel Linux, contiene 3 puertos Ethernet y 3 puertos PCI mini utiliza para conectar tarjetas inalámbricas como sea ne
$45 bricolaje FPV gafas para RC Quad helicópteros o aviones

$45 bricolaje FPV gafas para RC Quad helicópteros o aviones

en mi opinión es la mejor manera de disfrutar de FPV con gafas de vídeo. Lamentablemente las gafas FPV más baratas ahí es alrededor de $150. $150 que no tengo. Así que se ocurrió una solución! Un par DIY que puede hacer por $45! Seguro que la experie
Utilizando un sensor de temperatura para controlar la velocidad de un motor utilizando arduino

Utilizando un sensor de temperatura para controlar la velocidad de un motor utilizando arduino

Esta aplicación es simple sólo mediante el uso de sensor de temperatura LM35 con un kit de arduino para controlar un ventilador y cambiar su velocidad con respecto a la temperatura leída por el microcontrolador que es en este caso el kit arduino.El s
Utilice un controlador de PS3 para controlar un robot NXT de Arduino

Utilice un controlador de PS3 para controlar un robot NXT de Arduino

actualización:Lo he arreglado un par de ejecución errores con el paquete de datos, y he modificado la biblioteca NXTI2CDevice para que sea compatible con Arduino 1.0.El archivo zip adjunto ha1. un nuevo sketch de Arduino2. un nuevo boceto de procesam
Alertas de empuje de Arduino para timbre, alarma antirrobo, alarmas de humo etc.

Alertas de empuje de Arduino para timbre, alarma antirrobo, alarmas de humo etc.

Notificaciones de IoT de su timbre, alarma antirrobo, etc. alarmas de humo utilizando un Arduino Uno y un escudo de Ethernet.Más detalles en mi página web aquíSobre la casilla de alerta de empuje de ArduinoUtiliza un Arduino Uno y Shield Ethernet bas
Arduino para principiantes

Arduino para principiantes

Arduino es un ordenador de bolsillo (también llamado un "microcontrolador") que se puede programar para controlar circuitos. Interactúa con la palabra exterior a través de sensores, leds, motores, altavoces... incluso el internet; Esto es una pl
Generador de código para menús personalizados de Android/Arduino activar salidas de Arduino y apagado. Andriod/Arduino para principiantes. Absolutamente ninguna programación requerida

Generador de código para menús personalizados de Android/Arduino activar salidas de Arduino y apagado. Andriod/Arduino para principiantes. Absolutamente ninguna programación requerida

Actualización: un usuario pidió menú apoyo. pfodApp siempre admite submenús pero he agregado submenús al pfodDesigner. El instructable diseño un sistema de menú Custom muestra cómo utilizar pfodDesigner para crear un menú con submenús que mostrará en
Serial Servo Controller w/Arduino - Control hasta 12 Servos a la vez utilizando el Arduino y una conexión USB

Serial Servo Controller w/Arduino - Control hasta 12 Servos a la vez utilizando el Arduino y una conexión USB

voy a mostrarle cómo usar el Arduino para controlar hasta 12 servos a la vez con variación mínima.  Mediante una sencilla interfaz serial puede controlar la posición del servo hasta 12 canales.  Hasta 10 posiciones instantáneas se puede guardar y rep