Tabla de contenido:

Calibrador Vernier digital pirateado con Arduino: 7 pasos
Calibrador Vernier digital pirateado con Arduino: 7 pasos

Video: Calibrador Vernier digital pirateado con Arduino: 7 pasos

Video: Calibrador Vernier digital pirateado con Arduino: 7 pasos
Video: Pr#81 - Caliper i2c Arduino | Medidor Filamento 3D 2024, Junio
Anonim
Calibrador Vernier digital pirateado con Arduino
Calibrador Vernier digital pirateado con Arduino

Entonces, ¿qué hay de hacer algunas mediciones con su Calibrador Vernier Digital y tener su Arduino para trabajar un poco con estas mediciones? Tal vez guardándolos, haciendo algunos cálculos basados en o agregando estas medidas a un circuito de retroalimentación desde su dispositivo mecánico. En este instructivo vamos a desmontar un calibrador Vernier digital, conectarle algunos cables e interconectar el calibrador con el Arduino para mostrar sus valores medidos en el monitor serial Arduino.

Paso 1: cómo se puede hacer

¿Cómo se puede hacer?
¿Cómo se puede hacer?

Resulta que algunos calibradores digitales son capaces de transmitir los datos medidos que aparecen en sus pantallas utilizando diferentes protocolos para ser utilizados por otros dispositivos.

En realidad, HAY un lugar para un enchufe de interfaz en la placa de la pinza, pero no hay nada soldado en él.

Puede deslizar la cubierta superior en la pantalla (no la cubierta de la batería) y encontrará 4 almohadillas que se supone que tienen un enchufe para comunicarse con la pinza, pero no lo son:(.

Este hecho se descubrió hace muchos años en diferentes calibradores y este instructivo se centra en el modelo exacto del calibrador a vernier digital chino que puede ver en las imágenes, así que asegúrese de que el suyo sea el mismo modelo, ya que diferentes modelos pueden tener diferentes protocolos para trabajar con, por lo tanto, diferentes códigos para usar, pero la idea principal es la misma entre la mayoría de estos chinos.

Iremos a:

  • Desmontar la pinza
  • Encuentre dónde podemos soldar un enchufe de interfaz a la placa
  • Identificar el pin-out del conector
  • Sueldelo y ensamble el Caliper
  • Realice ingeniería inversa de los datos transmitidos para saber cómo funciona su protocolo
  • Cambie de nivel las señales de Caliper para adaptarse al Arduino
  • Sube el código y listo:)

Lo que necesitarás:

  • Un calibre Vernier digital
  • Arduino (cualquier tipo hará el trabajo)
  • Tablero de convertidor lógico (adjuntaré un esquema para uno)
  • Un soldador de punta fina y limpia
  • Alambre de soldadura delgado
  • Algunos cables de puente

Paso 2: desmonte la pinza

Desmontar la pinza
Desmontar la pinza
Desmontar la pinza
Desmontar la pinza
Desmontar la pinza
Desmontar la pinza
  • En primer lugar, retire la batería Caliper de su clip.
  • Para este modelo, encontrará un papel guía plateado en su parte posterior y encontrará cuatro tornillos de montaje debajo. Mantienen la carcasa unida y debemos desenroscarlos con un destornillador Philips. Simplemente pase su destornillador sobre el papel a los lados y verá sus orificios de montaje.

Después de eso, verá que la PCB está montada en el panel frontal con cuatro tornillos. Debe desenroscarlos suavemente con un destornillador Philips de punta fina

Tenga cuidado de no rayar ni cortar ninguno de los rastros en ambos lados de la PCB

  • Ahora, después de sacar todos los tornillos y colocarlos en un lugar seguro donde no se puedan perder:),
  • Debe levantar la PCB con cuidado, ya que la pantalla y los tres botones de goma pueden deshacerse.
  • En este punto, puede tirar de la pantalla y los botones del PCB y colocarlos con los tornillos y continuar su trabajo con el PCB desnudo.

Paso 3: encuentre las almohadillas necesarias para soldar el zócalo

Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo
Encuentre las almohadillas necesarias para soldar el zócalo

Ahora, cuando mira la parte superior de la PCB, puede detectar fácilmente dónde debe montarse el conector de datos.

También puede ver que los encabezados de pines genéricos no se pueden soldar sin muchos ajustes, ya que el paso del conector es más pequeño que el de ellos (paso: distancia entre los centros de dos almohadillas adyacentes en el conector)

El paso de los cabezales de los pines es de 100 mil o 2,54 mm, por lo que puede doblarlos ligeramente y soldarlos, o puede encontrar otro enchufe.

Y aquí es cuando mi caja completa de simplemente sentarse alrededor de PCB tuvo un buen uso.

Encontré un conector de cable flexible de 4 pines (conector FPC) perfecto en uno de los PCB antiguos de la unidad de CD-ROM y decidí usarlo con el Caliper.

No es necesario decir que debe tener cuidado al desoldar los conectores de PCB, ya que su carcasa de plástico puede derretirse.

Tenga cuidado también de elegir usar encabezados de clavija o un enchufe especial como conector, ya que necesita este conector para poder encajar mecánicamente en la abertura del conector en la vitrina Caliper. (Puedes ver la imagen para más aclaraciones)

Paso 4: Identifique la asignación de pines del conector

Identificar el pin-out del conector
Identificar el pin-out del conector
Identificar el pin-out del conector
Identificar el pin-out del conector
Identificar el pin-out del conector
Identificar el pin-out del conector

Ahora, después de encontrar las almohadillas necesarias, necesitamos saber a qué está conectada cada almohadilla.

Bueno, ya se ha encontrado en otros proyectos de ingeniería inversa para estos Calipers y la mayoría de las veces tienen la misma configuración (GND, DATA, CLOCK, VCC)

Para configurarlo con usted mismo:

Quitar la batería

  • configure su multímetro en el estado del zumbador (prueba de continuidad)
  • Comience conectando una sonda al terminal Battery -VE (GND) y busque qué pin del conector está conectado a tierra usando la otra sonda
  • Haga lo mismo con el terminal Battery + VE

Puede dar dos nombres cualesquiera a los otros dos pines conectados al chip (EX: D0 y D1) ya que conoceremos sus funciones más adelante en su paso de ingeniería inversa

Si no desea configurar el pin-out, puede estimar el pin-out del conector como:

(TIERRA, DATOS, RELOJ, VCC)

GND es el pad más cercano a la pantalla

VCC es la almohadilla más cercana al borde de la PCB

y las dos almohadillas más grandes en el borde del conector para el montaje del conector están conectadas a GND (puede verificarlas con un multímetro)

Paso 5: Ingeniería inversa del protocolo de comunicación

Ingeniería inversa del protocolo de comunicación
Ingeniería inversa del protocolo de comunicación
Ingeniería inversa del protocolo de comunicación
Ingeniería inversa del protocolo de comunicación
Ingeniería inversa del protocolo de comunicación
Ingeniería inversa del protocolo de comunicación

Después de probar las señales de ambos pines de salida digital con un osciloscopio, esto es lo que parece.

se puede ver que uno de los pines funciona como reloj para sincronizar la transmisión de datos (línea CLK) y el otro es la línea de datos, por lo que estamos ante un protocolo de transmisión de datos sincronizados.

Resulta que: - Los datos se envían en un nivel lógico de 1,5 voltios (suena lógico ya que es el mismo voltaje que la batería nonio) - Los datos se envían en 6 nibbles (6 x 4 bits) con un total de 24 bits - Hay aproximadamente 200 mS entre el final de cada paquete de datos y el comienzo del otro

Decidí muestrear los datos en el borde ascendente del reloj, así que después de probar con diferentes medidas en la pinza y cambiar su modo de (mm a in) y también mostrar algunos valores negativos, obtuve esta tabla (3ras imágenes) para mis condiciones de prueba y comencé a descifrar el protocolo de comunicación

Entonces, después de estudiar los datos capturados:

- en modo mm: los bits del 1 al 16 son la representación binaria del número mostrado en el calibrador (multiplicado por 100) - en el modo (pulgadas): los bits del 2 al 17 son la representación binaria del número mostrado en el calibre (multiplicado por 1000)

- el bit no 21 representa el signo negativo (1 si el número mostrado es negativo y 0 si es positivo)

- el bit n. ° 24 representa la unidad de medida (1 si la unidad es (in) y 0 si la unidad es (mm))

- en modo (pulgadas): el bit n. ° 1 representa el segmento de 0,5 mil (1 si se agrega y 0 si no)

Paso 6: hacer un convertidor lógico

Hacer un convertidor lógico
Hacer un convertidor lógico
Hacer un convertidor lógico
Hacer un convertidor lógico

Ahora tenemos que cambiar el nivel de voltaje de los datos de la pinza (1,5 voltios no es adecuado para trabajar con Arduino, es demasiado bajo). Agregué un esquema para el convertidor lógico que hice para este proyecto, pero como puede ver los datos ahora. Además de cambiar al nivel lógico de 5 voltios, también se invertirá, por lo que debemos compensar eso en el código.

Paso 7: Código Arduino

Código Arduino
Código Arduino

Y ahora está listo para conectarlo con el Arduino. Puede encontrar el código adjunto. Conecte el pin del reloj al pin 2 o 3 en Arduino uno, nano o pro-mini (necesitará un pin con capacidad de interrupción) conecte el pin de datos a cualquier otro pin Cargue el código y abra el monitor serial para ver los datos medidos

El código puede detectar automáticamente en qué modo está trabajando la pinza escaneando el bit de datos 24

Recomendado: