Estoy pensando en usar algo como esto para conectar un Arduino a una unidad de control de motor de motocicleta (ECU): Arduino CAN-Bus Shield con soporte de tarjeta uSD .
Nunca hice algo como esto; Usando el bus CAN, ¿puedo leer solo algunos parámetros de diagnóstico en la ECU o también puedo reasignar algunos parámetros de la ECU?
Es posible que puedas hacerlo, pero definitivamente no será fácil.
Un problema es que la mayoría de los vehículos no tienen uno, sino al menos tres buses CAN:
Su millaje puede variar, pero la mayoría de los fabricantes utilizan este tipo de subdivisión.
Su problema es que el conector ODB-II instalado en los automóviles/bicicletas modernos no está conectado directamente a uno de estos autobuses. En cambio, generalmente está conectado a un dispositivo de "puerta de enlace" aislado ópticamente. Permite que el equipo de diagnóstico consulte algunos valores básicos y obtenga una respuesta. Por lo tanto, proporciona una capa de abstracción, de modo que todos los vehículos pueden diagnosticarse utilizando el mismo dispositivo de diagnóstico genérico.
Algunas puertas de enlace tienen un método para pasar al "modo de servicio", que luego le permite enviar mensajes sin procesar directamente a uno de los buses CAN y ver lo que ya está allí. Sin embargo, eso ni siquiera es posible en todos los modelos, y siempre está bloqueado con algún tipo de código PIN específico del vehículo (que debe olfatear en el garaje o descifrar usando la fuerza bruta).
Una alternativa es conectar su escudo Arduino directamente a uno de los buses CAN. Tendrá que encontrar los cables en el compartimiento del motor o en otro lugar y empalmarlos en su propio conector. No tome esto a la ligera; Si el bus CAN de gestión del motor falla mientras conduce a alta velocidad, se encuentra en peligro real e inmediato . No solo se detiene el motor, sino que, según el nivel de automatización y control electrónico que tenga su automóvil, todos los tipos de sistemas fallan en diversos grados. Dirección asistida, asistente de frenado, ESP, ABS, luces de freno, control del acelerador, bolsas de aire... Todo puede dejar de funcionar.
Si realmente desea poder configurar la ECU de administración del motor , eso es completamente diferente del diagnóstico simple. Hablando de manera realista, no podrá aplicar ingeniería inversa a ese proceso durante su vida, a menos que tenga algún tipo de conocimiento interno. Como mínimo, necesitaría tener acceso a una herramienta de configuración/programación oficial del fabricante del vehículo que pueda tomar prestada para rastrear los mensajes CAN/ODB que envía y recibe. Aún así, tendría que invertir meses de trabajo (y algunos autos que explotan en el proceso) solo para poder cambiar algunos parámetros.
Si persiste en conectarse directamente al bus CAN de gestión del motor, utilice siempre un interruptor de desconexión de batería estilo coche de carreras montado a su alcance directo. Cuando las cosas van mal, siempre debería poder interrumpir la alimentación.
En resumen: será mejor que compre equipos específicos del fabricante (de terceros). Ese es el tipo de equipo que los servicios profesionales de ajuste de chips también tienden a usar, generalmente con gran éxito.
Por ejemplo, para autos Renault como el mío, recomendaría comprar un Renault CLIP. Esa es la herramienta que utilizan los concesionarios de Renault para diagnosticar y configurar las ECU y viene con software y documentación completos.
Por último, pero no menos importante, tenga en cuenta que a menudo es ilegal aumentar la velocidad máxima y/o la potencia de salida de su vehículo sin autorización o registro con la autoridad pertinente.
Para su referencia: gran parte de mi conocimiento práctico de la experimentación con bus CAN se obtuvo de este increíble hilo .
Algunos puedes, otros no, depende de la marca/modelo/año.
Sin embargo, el principal problema es saber lo que está haciendo en cuanto al motor: muy pocas personas son buenas para ajustar (y casi nadie puede hacerlo mejor que el fabricante) y si se equivoca, derretirá un pistón o lo acortará seriamente. la vida útil de su motor.
Una ruta diferente para ajustar es mirar un sistema como Megasquirt, es un ajuste retro de bricolaje y tiene una buena comunidad de soporte. Para una bicicleta hay una versión compacta llamada Microsquirt.
No recomiendo hacer esto en un Arduino. Necesitarás años para terminar este proyecto. Arduino es el camino equivocado. ¿Por qué deberías reinventar la rueda?
Estás buscando HUD ECU Hacker .
Si su ECU es compatible con los comandos OBD2 estándar a través del bus CAN utilizando el protocolo ISO 15765 y los ID de CAN estándar, simplemente conecte HUD ECU Hacker y vea los códigos de falla y los parámetros de su ECU.
HUD ECU Hacker también tiene un emulador de ECU incorporado y se puede adaptar a otros modelos de ECU con archivos XML.
También puede mostrar todo el tráfico en el bus CAN en tiempo real y le permite establecer filtros para rangos de ID específicos. En el terminal CAN Raw incorporado, puede enviar manualmente comandos de bus CAN y ver las respuestas.
HUD ECU Hacker es un software de caridad , lo que significa que puede usarlo sin restricciones, pero se le pide que haga una donación a una ONG de su elección si usa el programa con frecuencia.
HUD ECU Hacker se ejecuta en Windows XP, 7, 8, 10, 11 (32 y 64 bits).
Puede usar un adaptador J2534 chino barato ($ 30 - $ 40 USD) para conectarse al bus CAN. Estos adaptadores se conectan a cualquier computadora a través de USB. Lea el archivo de ayuda muy detallado sobre los diferentes tipos de adaptadores. HUD ECU Hacker también puede instalar los controladores que necesita para todos los adaptadores compatibles.
A continuación, puede ver a HUD ECU Hacker comunicándose con una ECU DENI E1700. Todo el tráfico de datos se puede registrar en un archivo de registro HTML .
Cisne y