Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Implementación de biblioteca CAN para sAPI
Ing. Gabriel Gavinowich
Presentación del plan del Trabajo Final de Carrera
de Especialización de Sistemas Embebidos
Introducción - sAPIEl nombre significa “simple API”
Es una capa de abstracción de hardware para la EDU-CIAA-NXP y la
CIAA-NXP
Desarrollada por la comunidad CIAA, principalmente por su
creador Eric Pernia
https://github.com/epernia/sAPI
Introducción - CANBusDesarrollado por la empresa Bosch en 1983 para la industria automotriz
Se convierte en el estándar ISO-11898 en 1993 lo que permite interoperabilidad entre
nodos CAN de distintos fabricantes
Define las capas 1 y 2
del modelo OSI
Introducción - CANBus (Continuación)● Tiene alta inmunidad a
ruidos e interferencias
● Reduce el cableado al
comunicar muchos nodos
● Permite priorizar los
mensajes
● Todas las comunicaciones
son de tipo “multicast”
Introducción - CANopenDesarrollado por la fundación sin fines de lucro CAN in Automation (CiA) en 1995 en el
documento CiA 301
Implementa la capa de aplicación del modelo OSI dando lugar a un modelo de tres capas
Introducción - CANopen (Continuación)Define distintas relaciones entre los nodos según el tipo de mensaje
● Cliente / servidor
● Master / slave
● Productor / consumidor
Cada nodo tiene un diccionario que varía según el tipo de dispositivo que lo identifica e
indica las tareas que el nodo puede realizar.
Se definen varios protocolos que participan en distintas comunicaciones
● Protocolo de manejo de red (NMT)
● Protocolo de procesamiento de datos (PDO)
● Protocolo de latido (“Heartbeat”)
PropósitoImplementar los drivers de la interfaz CAN-Bus para la sAPI, un primer desarrollo del protocolo CANopen y un poncho CAN para la EDU-CIAA-NXP.
Trabajo
drivers CAN-Bus CANopen poncho
CAN
Propósito (continuación)Usar todo para interconectar dos EDU-CIAA-NXP
InteresadosRol Nombre y Apellido
Cliente Comunidad de
desarrolladores de la CIAA
Responsable Gabriel Gavinowich
Orientadores Eric Pernia
Franco Bucafusco
Usuario Final Comunidad de la CIAA
AlcanceEl presente trabajo incluye
● El desarrollo de firmware para una biblioteca CAN-Bus para la sAPI según protocolo 11898
● Un poncho para la EDU-CIAA-NXP que incluya el transmisor-receptor CAN● El transmisor-receptor CAN utilizado será de baja velocidad y seguirá el
estándar ISO 11898-3:2006
El presente trabajo no incluye
● Una implementación completa y acorde a norma del protocolo CANopen● Un transmisor-receptor CAN que funcione según la norma de lata velocidad ISO
11898-4:2004● Un programa o simulador de PC o similar para comunicarse con el proyecto
utilizando el protocolo CANopen
ValorBrindarle a la comunidad CIAA la posibilidad de conectarse a una
red muy establecida en el mercado automotriz
http://eecatalog.com/automotive/2013/03/13/automotive-communication-protocols-preparing-for-the-future/
VAlor (continuación)Y también
presente en la
industria
http://www.automationinside.com/2017/03/industrial-network-market-shares-2017.html
Requerimientos (ejemplos)1.1 Se debe desarrollar un firmware conforme al estándar ISO 11898-1:2015
1.3 La biblioteca desarrollada debe integrarse a la sAPI respetando su formato y
estilo de codificación
2.1 El firmware desarrollado implementará los siguientes elementos de la norma CiA
301
3.1 El poncho CAN tiene que estar conforme al estándar ISO 11898-3:2006.
4.3 Se deben colocar las dos EDU-CIAA-NXP en la misma red CAN
4.4 La placa maestro debe poder encuestar los parámetros básicos del diccionario de
la placa esclavo
AON
Gantt
Gestión de riesgosRiesgo S O RPN S* O* RPN*
Mal diseño del poncho CAN 9 3 27 5 3 15
Error de fabricación del poncho
6 5 30 4 3 12
Protocolo CANopen mucho más complejo de lo esperado
5 4 20
Falta de capacidad en la EDU-CIAA-NXP
9 2 18
No conseguir los componentes
9 2 18
Gestión de la calidad (ejemplos)EDT 1.3 La biblioteca desarrollada debe integrarse a la sAPI respetando su
formato y estilo de codificación
Verificación Se estudiará el estilo y formato de codificación de la sAPI
Validación Se distribuirá la biblioteca a desarrolladores de la sAPI para corroborar la
conformidad
EDT 3.2 El poncho CAN debe poder interconectarse al bus CAN con un conector
DB9 según estándar CiA DS-102
Verificación Se verificará el conector al diseñar la placa
Validación Se probará con un conector estándar DB9 y se conectará contra un nodo
CAN validando que funcione
¿Preguntas?
¡Gracias por su atención!