- La simulación hardware-in-the-loop (HIL) es una técnica usada para el desarrollo y comprobación de sistemas embebidos en tiempo real complejos. La simulación HIL constituye una plataforma efectiva porque incluye toda la complejidad de la planta que controla el sistema embebido. Esto lo realiza mediante modelos matemáticos de todos los sistemas dinámicos relacionados con la planta bajo control, formando lo que se denomina como "simulación de la planta". El sistema embebido que se está comprobando interactúa con esta simulación de la planta.
- HARDWARE IN THE LOOP EN LA PLATAFORMA ZEDBOARD (ZYNQ-7000)
La implementación del HIL en
la Zedboard se llevó a cabo con los siguientes elementos:
HARDWARE:
1) ZYNQ-7000
2) Bus de comunicación Ethernet
2) Bus de comunicación Ethernet
SOFTWARE:
1) FreeRTOS
2) VIVADO
3) SDK
XILINX
4) MATLAB
(SIMULINK)
5) VISUAL
STUDIO C++
6) NI
LABVIEW
- PASOS PARA CORRER HIL EN ZEDBOARD:
1) Montar
sistema FreeRTOS con IWIP habilitada. Ver documento Word Implementación de FreeRTOS.
2) Abrir
el proyecto Project_FreeRTOS_IwIP.zip donde está montado ya todo el sistema. En
caso de que no pueda abrirse correctamente el SDK. Revisar el documento word (pasos para correr el SDK cuando compartes
proyecto).
3) Asignarle
una dirección IP y mascara a tu conexión local de tu pc.
4) Conectar
el cable Ethernet entre tu PC y la Zedboard.
5) Programar
el FPGA (.bit) y el correr el ARM (.elf)
EJEMPLOS:
- MATLAB (código .m)
Se envía el string Hola Carlos y el valor 26. Y la tarjeta Zedboard responde con
ECO lo mismo.
- MATLAB (simulink)
Se construye el diagrama de
bloque como en la siguiente figura, donde básicamente se están enviando 4
valores (1, 80, 125, 255). Y por ECO de la tarjeta Zedboard se recibe lo mismo
en el bloque del display.
- VISUAL STUDIO C++
Se hace un programa con el
compilador visual studio en C++. Se hace la conexión con la IP y puerto de la
ZedBoard. Y se envía como ejemplo 8 datos (1,..8). Los cuales se vuelven a
recibir y se imprimen.
- NI LABVIEW
Se crea
los diagramas de bloques necesarios en labview por medio de socket para hacer
la conexión y envió de datos exactamente igual que en visual C++.
- TERMINAL TCP/IP
Rapido conexion y envio de datos por medio de una terminal
como Comm Operator. Se muestra en la parte de abajo la IP y puerto de conexión
y como enviamos un string de caracteres y recivimos lo mismo de la tarjeta
zedboard.
- IMPLEMENTACION EXITOSA!
Buenos dias, donde puedo encotrar el codigo de este programa? gracias
ResponderBorrar