You are on page 1of 12

REPARACIÓN DE PISTAS Y

DESARROLLO DE
FIRMWARE, TARJETA
PROINTEC.
INFORME DE REPARACIÓN

Cliente: Papelera de los Andes S.A.


Fecha de inicio : 20-10-2018
Situación: Terminado
1. Descripción del equipo
El equipo reparado se basa en un sistema embebido dedicado a mostrar la producción
de tiras por minuto de una de las fajas transportadoras en la fábrica.

Figura 1.0. Vista frontal de la tarjeta.

El núcleo del sistema utiliza un microcontrolador PIC16F76A, el cual registra los


pulsos enviados por el sensor de efecto hall ubicado sobre un engranaje giratorio de
la máquina.

Figura 1.1. Funcionamiento del sensor de efecto hall en la maquina (imagen


referencial).

Para la etapa de censado se utiliza un optoacoplador, que disminuye el voltaje de


salida del sensor (24V – 0V) a valores adecuados permitidos por el microcontrolador
(5V – 0V).

1
Figura 1.2. Pin de entrada (RC0) para el censado de pulsos.

Los pulsos recibidos son multiplicados por un factor de 3.75 (para calcular el número
de tiras producidas por minuto (datos y cálculos, pág. 5).

Finalmente, para mostrar los datos mencionados se utilizan cinco displays de ánodo
común; cada display está conectado a un decodificador y un driver de voltaje
respectivo, los cuales conforman el subsistema de presentación.

Figura 1.3. Displays, decodificadores y amplificadores del subsistema de


presentación.

Para la activación de cada display se utiliza un bus de 5 bits del microcontrolador,


mientras que para el envío del código BCD se usa un bus de 4 bits, conformando en
total un bus de 9 bits, mejorando el diseño de la tarjeta pero haciendo necesario un
firmware más complejo, el cual se detalla en la sección 3.

2
2. Procedimiento
A continuación, se mencionan los pasos secuenciales realizados en el proceso de
reparación aplicado a la tarjeta:

 Reparación de pistas en mal estado.


Se estañaron y utilizaron puentes para unir las pistas deterioradas.

Figura 2.0. Pistas reparadas en la cara frontal.

Figura 2.1. Pistas reparadas en la cara posterior.

Luego de reparar las pistas, se determinó que el microcontrolador (rectángulo


azul en la Figura 2.1) se encontraba en mal estado.

3
 Desarrollo de un nuevo firmware y pruebas.
Debido al estado del microcontrolador (deteriorado) se tuvo que desarrollar un
nuevo firmware, el cual fue simulado e implementado posteriormente.

Figura 2.2. Vista del archivo principal del nuevo firmware.

Para las pruebas se implementó un modulador de ancho de pulsos (figura 2.3)


y una etapa de amplificación de señal (figura 2.4) de 5V a 24V con el único fin
de hacer funcionar el optoacoplador CNY70 de la tarjeta.

Figura 2.3. Modulador de ancho de pulsos (12 a 500 Hz).

4
Figura 2.4. Etapa de amplificación y acople con el CNY70.

Las señales obtenidas en la simulación se observan en la figura 2.5.

Figura 2.5. Señales simuladas.

Canal A (amarillo) : Pulsos de activación para uno de los displays (500Hz).


Canal B (azul) : Pulsos de entrada para el PIN RC0 (7 Hz).
Canal C (magenta): Pulsos de muestreo (1 Hz).

Una explicación más detallada de las etapas mencionadas anteriormente puede


observarse en la sección 3, Datos y cálculos.

5
3. Datos y cálculos.

Datos tomados en la papelera (09/10/18)

Objetivos de la visita:
Anotar los datos mencionados a continuación:

 Medidas del piñón asociado al sensor de efecto Hall.


 Número de dientes de dicho piñón.
 Distancia entre uñas contiguas (una tira) en la faja transportadora.
 Relación entre dientes censados y tiras producidas.
 Relación entre número de tiras producidas y número de cuadernos producidos.

Datos tomados:

 Diámetros (interno y externo) del piñón asociado al sensor de efecto Hall:

Diámetro externo : 15 cm
Diámetro interno : 14 cm
Altura de diente : 5 mm
Ancho de diente : 17 mm

 Número de dientes del piñón : 6.

 Distancia entre uñas contiguas : 61cm.

 Dientes censados por tira producida : 48 dientes / tira.

 Cuadernos producidos por tira : 3 cuadernos / tira.

Nota: la cantidad de dientes por tira es equivalente al número de pulsos por tira
determinado por el sensor.

Cálculos:
Número de cuadernos producidos por minuto:

Sea “A” la cantidad de pulsos por segundo determinado por el velocímetro.

𝑝𝑢𝑙𝑠𝑜𝑠 1 𝑡𝑖𝑟𝑎 𝑐𝑢𝑎𝑑𝑒𝑟𝑛𝑜𝑠 𝑠𝑒𝑔𝑢𝑛𝑑𝑜𝑠


𝐶𝑢𝑎𝑑𝑒𝑟𝑛𝑜𝑠𝑥𝑚𝑖𝑛𝑢𝑡𝑜 = 𝐴 [ ]∗ [ ]∗ 3[ ] ∗ 60 [ ]
𝑠𝑒𝑔𝑢𝑛𝑑𝑜 48 𝑝𝑢𝑙𝑠𝑜𝑠 𝑡𝑖𝑟𝑎 𝑚𝑖𝑛𝑢𝑡𝑜

𝑐𝑢𝑎𝑑𝑒𝑟𝑛𝑜𝑠
𝐶𝑢𝑎𝑑𝑒𝑟𝑛𝑜𝑠𝑥𝑚𝑖𝑛𝑢𝑡𝑜 = 𝐴 [ ] ∗ 3.75
𝑚𝑖𝑛𝑢𝑡𝑜

6
Frecuencia para la muestra de datos:

Ya que el sistema cuenta con un único bus de 4 bits para mostrar los datos en los
displays, y otro bus de activación para cada uno, se requiere de una activación
secuencial de estos.

Se implementó una frecuencia de activación de 100Hz (𝐹𝑟𝑒𝑞𝑡𝑜𝑡𝑎𝑙 l) para la muestra de


datos, entonces para cada display:

𝐹𝑟𝑒𝑞𝑥𝑑𝑖𝑠𝑝𝑙𝑎𝑦 = 𝐹𝑟𝑒𝑞𝑡𝑜𝑡𝑎𝑙 ∗ 5

𝐹𝑟𝑒𝑞𝑥𝑑𝑖𝑠𝑝𝑙𝑎𝑦 = 500 [𝐻𝑧] = 0.002 [𝑠]

Firmware para la muestra de datos:

Para implementar dicha frecuencia en el microcontrolador, se utilizó el módulo TIMER


2 que tiene incorporado:

Figura 3.0. Diagrama de bloques para el TMR2.

De acuerdo con el bloque mostrado en la figura 3.0, se obtiene la siguiente expresión:

𝐹𝑜𝑠𝑐 ∗ 0.25
𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑑𝑖𝑠𝑝𝑙𝑎𝑦 =
(255 − 𝑇𝑀𝑅2) ∗ 𝑃𝑟𝑒𝑠𝑐𝑎𝑙𝑒𝑟 ∗ 𝑃𝑜𝑠𝑡𝑠𝑐𝑎𝑙𝑒𝑟 ∗ 𝐹𝑟𝑒𝑞𝑥𝑑𝑖𝑠𝑝𝑙𝑎𝑦

Teniendo como datos previos:

𝐹𝑟𝑒𝑞𝑥𝑑𝑖𝑠𝑝𝑙𝑎𝑦 = 500 [𝐻𝑧]

𝐹𝑜𝑠𝑐 = 4 ∗ 106 [𝐻𝑧]

Y configurando:

𝑃𝑟𝑒𝑠𝑐𝑎𝑙𝑒𝑟 = 1

𝑃𝑜𝑠𝑡𝑠𝑐𝑎𝑙𝑒𝑟 = 1

𝑇𝑀𝑅2 = 55

4 ∗ 106 ∗ 0.25
𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑑𝑖𝑠𝑝𝑙𝑎𝑦 = = 10
(255 − 55) ∗ 1 ∗ 1 ∗ 500

7
Una vez calculado el valor de la variable 𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑑𝑖𝑠𝑝𝑙𝑎𝑦 se procede a implementar el
firmware:

Figura 3.1. Bloque de inicialización para el TIMER 2.

Figura 3.2. Función de interrupción para el TIMER 2.

8
Firmware para el muestreo de pulsos:

Para el muestreo de los pulsos recibidos por el sensor de efecto hall (figura 1.1) se
requiere de una frecuencia de muestreo de 1Hz.

Para su implementación se utiliza el módulo TIMER 0 del microcontrolador.

Figura 3.3. Diagrama de bloques para el TMR0.

De acuerdo con el bloque mostrado en la figura 3.3, se obtiene la siguiente expresión:

𝐹𝑜𝑠𝑐 ∗ 0.25 ∗ 𝑇𝑖𝑒𝑚𝑝𝑜𝑚𝑢𝑒𝑠𝑡𝑟𝑒𝑜


𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔 =
(255 − 𝑇𝑀𝑅0) ∗ 𝑃𝑟𝑒𝑠𝑐𝑎𝑙𝑒𝑟

Teniendo como datos previos:

𝑇𝑖𝑒𝑚𝑝𝑜𝑚𝑢𝑒𝑠𝑡𝑟𝑒𝑜 = 1 [𝑠]

𝐹𝑜𝑠𝑐 = 4 ∗ 106 [𝐻𝑧]

Y configurando:

𝑃𝑟𝑒𝑠𝑐𝑎𝑙𝑒𝑟 = 32

𝑇𝑀𝑅0 = 5

4 ∗ 106 ∗ 0.25 ∗ 1
𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔 = = 125
(255 − 5) ∗ 32

9
Una vez calculado el valor de la variable 𝐶𝑜𝑢𝑛𝑡𝑒𝑟𝑠𝑎𝑚𝑝𝑙𝑖𝑛𝑔 se procede a implementar el
firmware:

Figura 3.4. Bloque de inicialización para el TIMER 0.

Figura 3.5. Función de interrupción para el TIMER 0.

Firmware para la recepción de pulsos:

Para la recepción de los pulsos recibidos, se utilizó el módulo TIMER 1 del


microcontrolador, en modo contador:

Figura 3.6. Diagrama de bloques para el TMR1.

10
Figura 3.7. Diagrama de bloques para el TMR1.

La cantidad de pulsos recibidos se guarda en una variable global (number) que se


muestra en los displays y se reinicia para un nuevo muestreo de pulsos., esto se
puede ver en la rutina de muestreo que realiza el TIMER 0 en su bloque de interrupción
de la figura 3.5.

11

You might also like