muy buena explicación Igor. el acelerometro ya lo tengo en casa pero como funciona por SPI me ha dado pereza ponerme con ello ya que tendria que analizar muy bien el tema del chipselect. tendria que haber comprado uno analogico y punto pero bueno.
de todas formas tambien se puede calcular la aceleración con el cambio de velocidad en el tiempo, la idea es hacerlo de las dos formas con el incremento de V y el acelerometro.
lo de la deceleracion que te comentaba, si miras mi código, yo detecto si la velocidad actual es inferior a la anterior, por lo que en lugar de quedarse sumando tiempo hasta que llegas a cero velocidad, en mi caso si detecta una deceleración se interrumpe el test.
Hoy con un poco más de tiempo, he probado la librería para la memoria de 2 Mb que trae el nuevo Industrial Brick. Funciona a la perfección!!
Pronto más información!
Por otro lado, no sé si conoceis las bases de plástico de Adafruit, pero están bastante bien para prototipar. Te lo puedes hacer con metraquilato, pero la verdad que están baratas y vienen con los tornillos para enganchar el Arduino, el plastico pre-agujereado, y con gomas para la base por 5 dólares:
@Igor R. la idea de cambiar los conectores de tu arduino por bornas me ha gustado ademas de ese policarbonato, si señor muy chulo.
Tienes alguna referencia de las bornas?
Si, es mi Arduino de prototipos!! je,je,je. Le desolde las tiras de pines y le puse las bornas.
Las bornas las compré en RS-Amidata o Farnell.... no recuerdo bien porque las tengo hace tiempo. Son las estandar de paso 2.54 mm. Me compre de diferentes vías. Por ejemplo => link . Te salen como productos asociados diferentes tamaños.
Estoy seguro que los puedes comprar más baratos que ahí, pero como referencia.
La memoria debería ser muy rápida, esta preparada para grabar desde 2 buffer de 512 ó 528 bytes. Todavía estoy probando, pero en teoría es menos de 20 ms para grabar una página (512 bytes) y leer muchísimo más rápido. La memoria admite hasta 66 Mhz de velocidad SPI, así que en teoría se podría usar directamente la velocidad de reloj de Arduino sin prescaler (16 Mhz). Aunque repito, estoy todavía en pruebas....
Resumiendo Sergio, necesitas una!!!
jaja buen resumen !! necesito una !!!
pero todavia no que aun ando liado en los ratos libres mejorando mi otro proyecto.
ademas de arduinocarblackbox que tambien intento añadirle alguna cosita de vez en cuando, tengo que ponerme serio para ver como mejorar drasticamente el refresco del LCD con datos nuevos CAN-BUS ya q de vez en cuando se queda pillado.
por lo tanto, me espero un pelin pero caera uno seguro. a ver si para entonces ya estas leyendo canbus y grabando en SD !! jeje sino te ayudo yo.
animo.
Necesitas un nuevo brick, asi puedes hacer pruebas sin irte al coche. Ya te haremos un precio especial...
El encapsulado de la memoria es bastante pequeño y se alimenta a de 3v3 (aunque sus pines son tolerantes a ttl). El brick dispone de un regulador para dicho voltaje.
Eduard nos ha mandado otro video de sus avances manejando el cluster de su Seat Leon. Lo que hace es enviar mensajes en el ID que usa la radio, aunque a veces pierde el control (por ejemplo al final del video). Sigue con sus pruebas, que no van nada mal!!
Hola.
Proximamente voy a comprar el brick de Igor R. para can bus y empezar a trastear con el coche(renault megane), y queria preguntaros que software usais para interpretar los datos del arduino en el pc, ya que leer las tramas con el hiperterminal de windows o similares me parece muy engorroso.
Un saludo y gracias.
lo primero es leer tramas en hiperterminal como tu dices.
luego ya es cuestion de hacerse algun programita en visual basic y con el programa que quieras para interpretar ya que no hay programas que hagan esto.
creas una trama en el arduino y que el programa lo reconozca.
velocidad;rpms;temp;presion; etc
120;2600;85;1.5;...
así puedes hacer que te lo grafique, te lo guarde en CSV, etc
Hola monitoreal una red can es muy bueno e interezante, yo parto de saber a que velocidad opera esa red, y si es modo standar o extendido y si tengo que usar o no resistencia terminal, luego de eso voy captando las trama pero igual no es nada facil saber que hace cada trama es algo complicado lo que si veo algo rapido de identificar son los ID pero luego el contenido de cada trama tiene un objetivo que es el que hay que estudiar y analizar para poder darle aplicacion y mas si es en el caso de los carros.
Hola de nuevo.
Me refiero a si existe un soft que saque en pantalla las tramas desglosadas en sus campos identificador, bytes de datos, etc. pero en tiempo real y agrupadas.
Hace ya unos años estuve mirando el tema del can con un elm327 pero a la hora de monitorear las tramas, se amontonaban unas tras otras y en un segundo o menos tenia el buffer del elm327 lleno y la pantalla parada y me perdia muchisimas tramas, ademas de no poder ver los cambios en cada una de las tramas.
Yo se que renault usa la norma ISO 15765-4 a una velocidad de 500kBit/s y con identificador de 11 bits, e incluso se los identificadores de las ecus del coche, pero necesito ver los cambios en las tramas en tiempo real para poder identificar que es lo que hacen cada una de ellas.
Dani29: Para que no se te "amontonen" las tramas lo mejor es filtrar y leer solamente las que te interesen. Usar las máscaras y los filtros es básico para "entrar" en una red de un coche.
No conozco ningún soft genérico para sniffer bus CAN.
El tema "tiempo real", tiene sus peros.... ¿Cual es la carga del bus? ¿Qué velocidad tienes? ¿Qué velocidad serie vas a usar para transmitir los datos al PC? Me refiero, si vas a sniffar un bus a 1Mbps y mandar los datos al PC a 9600 baudios.... pues ya sabes dónde tienes un cuello de botella enorme. (Por poner un ejemplo). Lo digo por recordar que estamos trabajando con un micro de 8bits, que el controlador CAN es externo por SPI y que mandas los datos por comunicación serie. Con ésto, tampoco quiero decir que no se puedan hacer muchas cosas.
En general, si te vas a concentrar en ciertas tramas, como bien te han aconsejado, el uso de filtros y mascaras te ayuda a liberar al micro y poder tener más rendimiento.
Me gustaría hacer una aplicación básica para hacer esto que comentas, pero nunca saco tiempo!! Es sencillo hacerlo.
De momento, para hacer cosas rápidas, sacando por puerto serie los datos en un formato tipo csv y grabandolos, luego con las típicas herramientas de linux, excel ó con algo como Log Parser, puedes empezar a hacer cosillas interesantes muy rápido.
ToloBCN, tienes que enseñarme algun video de lo que estas haciendo!! Tienes el FIS controlado 100% ?
Hola buenos dias, Dani29: si quieres monitoreal el red can del carro seria ideal lo que ya te comentan los colegas hacer filtrado de los ID que te interezan, otra para no complicarte mucho la cosa puede hacer un codigo basico y con el mismo terminal de la plataforma arduino ver las tramas. Lo que si te recomiendo es que uses la comunicacion serial entre el arduino y la pc a la maxima velocidad asi en lo posibles evitar perdida de tramas por visualizar en tu terminal.
Saludos y tienes que tomar todas las consideracion ya expuestas por el colega Igor y ToloBCN y como ya se dijo lo importante y para liberar y trabajar mas comodo es el filtrado de las tramas que te interezan.
Nota: si usas interrupciones en la recepcion veras mejores resultados de las tramas.
IgorR: A la pregunta si tengo controlado el FIS, pues las dos lineas de la radio (2x8 carácteres)de mi Audi A4 B6: Sí.
Es fácil, al sacar la radio original las dos líneas quedan en negro. Enviando un mensaje "Estoy aquí" cada 4 seg. aprox. las lineas se activan, mejor dicho no se apagan :P.
Para escribir en la línea superior se envia un mensaje de 8 bytes con los carácteres ASCII al ID 261h para la línea superior y 263h para la línea inferior.