Vehículos Conectados & Functional Testing: Test Jig de Desarrollo

Publicado por EEVAM Technologies en

La conectividad es una de las tendencias disruptivas que, junto con la electrificación, marcará el futuro de la automoción en los próximos años.

El corazón del vehículo conectado es una unidad telemática que permite la conectividad entre el vehículo y el usuario. En EEVAM, trabajamos el diseño y desarrollo de unidades telemáticas para hacer del vehículo conectado una realidad. 

En este post os presentamos como hemos llevado a cabo la validación de una de las unidades telemáticas que hemos diseñado y desarrollado. 

Una vez fabricadas, todas las unidades se someten a diferentes tests, entre los que se encuentra el test funcional. El objetivo de este test es asegurarse de que las unidades funcionan correctamente, ya que es el último test al que se someten antes de ser enviadas a los clientes. 

Para llevar a cabo el test funcional se utiliza un test jig o banco de pruebas. El test jig es el producto detrás del producto, ya que su diseño y desarrollo es determinante para detectar errores de las unidades tras el proceso de producción.

En nuestro laboratorio de electrónica hemos desarrollado un test jig para ejecutar el test funcional en nuestras unidades de desarrollo, de manera que en un par de minutos podemos asegurarnos de que la unidad ofrece todas las funcionalidades deseadas. 

Para este test jig se ha utilizado una Raspberry Pi 3 Modelo B para el control y la ejecución de los tests, junto con dos módulos de extensión adicionales, el Automation HAT y el RS485 CAN HAT. El test jig incluye teclado, ratón y pantalla HDMI, para controlar, modificar, y ejecutar los tests. El test jig se conecta a la unidad a través del conector principal, con el objetivo de simular un escenario lo más real posible.

La Raspberry Pi programa la unidad y ejecuta los tests funcionales. Los test están implementados en el lenguaje de programación Python, que permite el control de los dos módulos de extensión acoplados a los pines GPIO de la Raspberry Pi y el análisis de los resultados de cada test.

El módulo Automation HAT permite la lectura y generación de señales digitales y analógicas de hasta 24V. Durante los diferentes tests, genera las señales de entrada a la unidad, y lleva a cabo la lectura de las señales de salida cuando es necesario. 

Esta unidad telemática incluye la comunicación por los buses RS485 y CAN, protocolos estándar presentes en automoción y otras industrias. El módulo RS485 CAN HAT permite la comunicación entre la Raspberry Pi y otros dispositivos que se comunican mediante estos protocolos, por lo que se utiliza para verificar la capacidad de conexión de la unidad. 

Una vez se ha verificado que la comunicación por el bus RS485 con la unidad es correcta, el test jig interactúa con la unidad mediante RS485. El protocolo RS485 se basa en la definición de una red máster/esclavos, siendo los esclavos las unidades que responden a las instrucciones del máster. En este caso, el máster es el test jig y hay un único esclavo, la unidad que se está validando.


A continuación, se muestra un fragmento de código de uno de los tests:

try:

automationhat.relay.two.on()

slave.set_values('block', 4, 6000)

value = slave.get_values('block', 5, 1)

if value[0]==1000:

D1 = slave.get_values('block',7,1)

if D1[0]==1000:

resultD1ON='PASS'

else:

print('ERROR CODE 3011')

resultD1ON='FAIL'

elif value[0]==2000:

print('ERROR CODE 3012')

resultD1ON='FAIL'

else:

print('ERROR CODE 1005')

resultD1ON='NULL'

results.append(resultD1OFF)

except:

resultD1ON='NULL'

print('ERROR CODE 5000')

Este test verifica la lectura de un nivel lógico alto en una de las entradas digitales de la unidad. 


En primer lugar, se activa uno de los relays del Automation HAT, configurado para proporcionar 5V a la entrada digital. Mediante MODBUS, se comunica al esclavo qué entrada digital se va a verificar, después se comprueba la confirmación de la ejecución del test, de manera que, si todo ha ido bien y no ha habido ningún problema durante la lectura, se pasa a comprobar el valor leído por la unidad. Si el valor que ha leído la unidad no coincide con el resultado esperado se muestra un código de error para poder tomar acciones tras la ejecución del resto de tests.

Cuando una unidad obtiene un resultado positivo en el test funcional, significa que está lista para empezar a funcionar.

El diseño de un test jig completo que evalúe todas las funcionalidades de las unidades en el momento de la producción asegura un producto de calidad.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

es_ESEspañol