Intentando realizar ingeniería inversa en un circuito simple

3

Mi única experiencia con la electrónica es jugar un poco con un kit de inicio Arduino, pero sin embargo decidí comprar un pequeño auto barato con control remoto y averiguar cómo funciona y ver si puedo conectar la antena a mi Arduino y Haz que haga cosas ... pero eso resultó ser más difícil de lo que esperaba.

Hay un cable conectado a la antena, luego este circuito se conecta a los dos motores, pero no he podido averiguar cómo funciona el circuito real. Pensé que tal vez aprendería algo conectando un cable de la antena a mi Arduino y leyendo los valores analógicos, pero estaban por todos lados, así que o lo hice mal o es lo incorrecto.

Básicamente, agradecería cualquier consejo o sugerencia sobre cómo puedo averiguar cómo funciona la antena y cómo usarla.

Aquí hay una imagen de ambos lados del tablero.

    
pregunta Tal

4 respuestas

4

Su mejor apuesta es probar los pines con un osciloscopio. Si no tiene uno o no puede pagar uno, puede utilizar un programa de software conectado a su tarjeta de sonido. Será basura para leer valores de voltaje pero lo suficientemente buena para ver señales digitales y PWM.

La siguiente mejor cosa es google. Siempre busco en Google antes de realizar ingeniería inversa para al menos saber qué buscar. Simplemente busque "señal de control remoto del carro de juguete" y uno de los mejores resultados lo llevará a esta página: enlace

Básicamente, los autos de juguete baratos envían pulsos para enviar una orden y el receptor cuenta el número de pulsos para determinar qué hacer (tenga en cuenta que este es un esquema de señalización muy diferente en comparación con el equipo RC "real", los que se encuentran en "juguetes" más caros).

Los pulsos tienen este aspecto:

    ┌────┐    ┌────┐ ┌─┐ ┌─┐ ┌─┐ ┌─┐
    │    │    │    │ │ │ │ │ │ │ │ │
────┘    └────┘    └─┘ └─┘ └─┘ └─┘ └────
 long pulses           short pulses
indicates start      encode the command
 of "packet"

El número de pulsos cortos codifica el comando. Por ejemplo, en un carro de juguete que una vez hackeé encontré esta codificación:

  • 10-15 pulsos = adelante
  • 18-24 pulsos = inverso
  • 26-30 pulsos = adelante a la izquierda
  • 32-38 pulsos = adelante hacia la derecha
  • 40-45 pulsos = marcha atrás a la izquierda
  • 48-54 pulsos = marcha atrás derecha

La última vez que utilicé uno de estos para enviar mis propios datos, generé los impulsos esperados utilizando un microcontrolador y en el extremo de recepción, un microcontrolador que lee los voltajes de las salidas del puente H que controlan los motores de dirección y accionamiento. Luego inventé mi propio esquema de codificación para enviar bytes. Algo como esto:

  • adelante (F) = inicio de byte
  • adelante a la izquierda (FL) = 00
  • adelante a la derecha (FR) = 01
  • invertir a la izquierda (RL) = 10
  • revertir a la derecha (RR) = 11

Entonces, para enviar la letra 'A', que es 0x41, transmitiría:

F, FR, FL, FL, FR

Teniendo en cuenta que cada "paquete" toma alrededor de 80 ms en promedio para transmitir y que necesita 5 paquetes por byte y para estar seguro y para evitar fallas, debe enviar al menos 2 o 3 cuadros por paquete, lo que está buscando en aproximadamente 1 segundo. por byte Que es de 8bps. Muy lento pero utilizable.

Si no necesita enviar bytes, simplemente lea la salida del motor directamente. Eso le da 6 señales momentáneas (F, R, FL, FR, RL, RR) o 3 señales de encendido / apagado (F / R, FL / FR, RL / RR).

    
respondido por el slebetman
4

El chip SMD y los otros componentes SMD en la parte inferior son probablemente el chip de radio de 27 MHz. Los cuatro transistores en la parte superior son probablemente dos puentes en H que impulsan los motores (¿dos?).

Determine el tipo de chip SMD, busque la hoja de datos. Probablemente contendrá un circuito de ejemplo que probablemente coincida con su impresión de cerca (los diseñadores son perezosos siempre que sea posible).

Alternativamente, determine el circuito alrededor de los 8 transistores, desacoplelo del chip de radio y condúzcalos directamente desde su arduino.

Olvídese de conectarse directamente a la antena, que es una frecuencia demasiado alta para generarla a partir de un arduino (o la mayoría de los otros uC, a menos que operen exactamente a la frecuencia requerida)

    
respondido por el Wouter van Ooijen
3

Es un tablero de un solo lado, por lo que debería ser bastante fácil elaborar un esquema para este tablero. No verás la salida de la antena con un Arduino. Simplemente no va a ser lo suficientemente rápido para ver los cambios de señal. Y la potencia de la antena es muy baja.

Supongo que el chip es el receptor y el controlador lógico. Para RC baratos, esto es generalmente alrededor de 27 MHz. Si esta es la única placa en el automóvil, los transistores son probablemente los conductores del puente H

Una vez que haya generado el esquema, entonces puede comenzar a ver dónde fluyen las señales. Y, lo que es más importante, tener una idea de dónde investigar y ver cosas.

Un osciloscopio es una de las mejores cosas para descubrir qué está sucediendo en un circuito. Incluso si se trata de un alcance analógico de $ 50 de uso barato, puede darle una idea de lo que está haciendo una señal cambiante.

    
respondido por el Joe
2

El chip SO-16 es probablemente una versión SMD del receptor de radio de coche RX-2B RC. Este es un receptor de 27 MHz con 5 salidas de función. Compare el pin-out con la hoja de datos encontrada aquí . Por ejemplo, el pin 2 es el pin de tierra, mientras que los pines 4 y 5 se conectan a través de una resistencia para formar el oscilador local. El pin 13 está conectado a VDD a través del condensador de orificio pasante grande en el otro lado.

    
respondido por el Zuofu

Lea otras preguntas en las etiquetas