buenas
Quisiera hacer una especie de WDT para arduino
Es decir el arduino principal envíe un pulso cada X segundos al secundario, y si el pulso no llega a tiempo el secundario resetea al primario y activa un zumbaor y un mosfet para avisar
la idea es hacer una placa con el micro soldado, ya lo he hecho otras veces pero ahora me gustaría que me enviaran las placas soldadas directamente asi que tengo que usar algunos componentes que nunca he probado, como el oscilador de la foto. comparto el diseño por si alguien ve algún error,
edito que no se ve muy bien es oscilador es: X322516MLB4SI y la hoja de caracteristicas no dice mucho
No se si te comprendo pero lo que quieras hacer conectalo al RESET del arduino. Entiendo que eso hará tu WatchDog por hard.
Si eso he hecho
Pero mas que nada preguntaba si el oscilador funcionará con el micro, es el único oscilador de 16mhz que me ofrecen ya soldado
Vaya y si mas te preocupa el oscilador porqué le pusiste WDT HARD al título? Edita el titulo entonces y usa uno mas adecuado.
Dice que varia 20ppm para tus 16Mhz o sea 320 Hz no me parece mal. Depende que quieras hacer. Si en tu aplicación hay alguna medición de tiempo que requiere precisión buscaría algo mas estable de lo contrario esta mas que bien.
la idea del invento es hacer un WDT via hardware, por que tengo comprobado que hasta el WDT por software de arduino falla.
Comparto el diseño para ver si alguien ve algún error en general, siendo el oscilador la parte mas complicada la verdad todo lo demás es unir unos pines del arduino con otros en el micro wdt
Decís que falla? Como lo comprobaste?
Es un tema interesante de debatir.
Nadie que recuerde desde 2014 lo ha hecho o planteado como tu y sería interesante que muestres tu experiencia en el caso.
Buscando algo de información en el tema di con esta tema Watchog fails to reset NANO
Como verán en el debate, hay muchas consideraciones a tener en cuenta y también algunos errores que normalmente podemos cometer además de fallos de los que desconocemos.
Recomiendo su lectura.
Y esta es la página a AVR Wdt que dice cómo usar y generar el watchdog adecuadamente.
el WDT del arduino me falla
Tengo bastantes placas transmitiendo cierta información cada cierto tiempo a una raspberry via ethernet shield
Cada tanto las placas se quedaban colgadas dejando de transmitir (meses, semanas depende) puede que el problema este en la saturacion de la red ethernet pero el arduino debe ser capaz de manejarlo
Vale le meto el WDT sencillo cada 8 segundos, si esta mas de 8 segundos esperando respuesta de la red o de lo que sea se debería resetar y estar transmitiendo en unos pocos segundos.
Ha mejorado casi no falla
Pero sigue fallando a veces, deja de transmitir. Pulsas el botón de reset sin hacer nada mas, y vuelve a transmitir, así que nada como un reset cada tanto
Hi,
Creo que lo que estas intentado hacer es tapar el problema y no resolverlo. Posiblemente cuando pierdes la comuncacion del internet el programa del arduino no recobra la comunicacion. Para mi deberias buscar la forma de resolver el problema.Una sugerencia es de anadir un mesajes de como ejemplo test 1 2,3,4,5, en diferentes sitios del program y cuando se tranque entonces mira a ver cual fue el ultimo mesaje. Resetea el systema y vuelve hacer la prueba para ver si simpre se tranca en el mismo mensaje y ver donde esta el problema. Recuerda que no vaz a tener una comunicacion estable cuando te conestas al iternet ya que esta puede fallar y debes de tener suficiente logica para restablecer la comunicacion. Solamente una sugerencia.
como ya he dicho es un problema que sucede muy esporadicamente de las 14 placas que tengo 24/7 solo falla alguna y desde que puse el soft WDT la frecuencia de fallos es de mas de 5 meses
el programa se queda colgado al hacer la conexión así que entiendo que sera un fallo de el shield o de la librería o no se de que el caso es que quiero llegar al 100% de disponibilidad y eso me lleva a tomar este tipo de medidas
ya se que arduino no es lo mejor para un 100% pero tema costes etc...
las placas están en lugares remotos de difícil acceso así que no puede hacer mucho debug, esta claro que el tiempo de pruebas en mi taller ya tubo y todo funcionaba ok
Aun así gracias por la sugerencia
Hi,
Entonces si te trabaja bien en tu taller y dices que estan en sitios remotos haz tratado de medir la temperatura para ver si se calienta la tarjeta del arduino, como estas alimentando el voltaje y si el voltaje esta normar y tambien si cuando esto ocurre que humedad hay en lugar que estan localizados.