QUEDADA AM - MAYO

Charla impartida por el SBC: «INICIACIÓN AL BETTA».
DOMINGO, 11 DE MAYO. ¡APÚNTATE YA!

Más info
image01

¿Aún no conoces AMA?

Hazte socio de Acuariofilia Madrid Asociación.
CERRADO EL PLAZO DE INSCRIPCIÓN

Más info
image01

Atlas de peces de AM

¡Hemos alcanzado las 800 fichas! Visita nuestro atlas de peces actualizado.

Más info
image01

Cardúmenes y sociabilidad

Nueva actualización de la tabla con una extensa relación de peces, donde podrás conocer qué entorno necesita cada especie, su sociabilidad y si convive o no en cardumen. ¡Pasa a descubrirla!

Mas info
image01
Compartir conocimientos, fuentes de información y más
Respuestas: 21    Visitas: 1484
#16
(31-01-2021, 05:15 AM)Jhon escribió: lo que te decía de el watchdog, es un temporizador que en algun punto del loop (o en varios puntos) se resetea, si el temporizador llega a 0, significa que no se ha llegado a resetear en el loop y se ha quedado colgada la arduino en algun punto (bucle infinito o algun error) entonces se reinicia la arduino para que vuelva a funcionar bien. La idea es que la arduino no se quede bloqueada ya que, si se bloquea y por ejemplo no controla la temperatura durante mucho rato podría ser algo critico.

Te dejo el ejemplo de arduino para que le eches un vistazo https://create.arduino.cc/projecthub/raf...mer-fffe20

Miraré su implementación, dado que, todo sistema de seguridad será siempre bienvenido, y harán un dispositivo más robusto y potente!!

Gracias!!!

(31-01-2021, 11:38 AM)Obuneo escribió: Hola! Cómo te dijimos en el otro hilo, es un proyecto muy interesante. Entiendo que la entrada de datos es manual y que montarás una base de datos noSQL por simplicidad de acceso a los mismos.

Pues tengo mis serias dudas @Obuneo.

Tengo varias ideas.
- 1) Montar en Firebase (sistema de base da tos de google)
- 2) Montarlo todo en un servidor NodeJS.

Respecto a la entrada de datos, quiero que sea automática, que arduino lea datos, los mande contra una capa de Servicio REST, y con ello, alimentar la base da datos.

Si que también quiero montar en la app móvil una interface de entrada de datos de "parámetros de agua" (tras hacer test de gotas, poder desde la app meterlos),y así, si ha habido variaciones de Gh, Kh, poder aplicarlas "en tiempo real" al resto de cálculos dependiente de ellos.


(31-01-2021, 11:38 AM)Obuneo escribió: Como ejemplo de interfaz, no sé lo que quieres montar, te puedes mirar el nuevo proyecto de Apache, se llama superset

https://superset.apache.org/

Le echo un ojo, pero, seguramente meta una interface custom basada en sistemas de chart que ya conozco (pero, no descarto ver cómo va la referencia que has pasado, y ver hasta dónde es sencilla implementarla).

Tod@s l@s que decís que "no sabéis", todo es ponerse y no tenerle miedo a nada.

Tampoco sabíamos de acuarofilia, ni sabíamos de nuestros trabajos, y, aquí estamos!! jejejej

Está claro que para temas de Hardware y software, la base de programación, ha de estar consolidada y fundada.

Pero, nunca es tarde!! jejejejej

Quién sabe si de aquí, ¿no puede salir una "controladora" universal, de bajo coste que, entre varios montamos, y distribuimos a los integranres del foro? Wink

Paso a paso Wink

Y gracias por leer!
#17
A mi firebase + nosejs me gusta mucho ( tal vez Couchbase en vez de firebase pero es más jaleo ). Ahora, dependiendo de lo que hagas, con js puedes perder rendimiento si vas a realizar cálculos matemáticos que puedan requerir ciclos de computación en la CPU ( aquí interesaría hacer los REST en Spring en vez de js).

Ya nos irás contando

Saludos
Eres nuevo? Pasa a presentarte aquí
Rellena tu ficha aqui, así podremos conocerte mejor.
¿Necesitas subir imágenes a tus posts?
Puedes hacerlo a través de Imgur, o a través de Google Drive.
Muchas gracias por tu colaboración.
#18
La parte de base de datos, de momento sólo la voy a alimentar, no la voy a explotar.

Incluso, si voy justo, lo mismo meto sólo una base de datos relacional, y ya está.

Después, crear un Script que la migre a otro soporte vital, no sería ningún problema.

Me "apetece mucho" poder tener control de estos datos, que .. lo mismo, el día de mañana no los exploto (porque los más importantes, como Gh, Kh, No3, Po4, Fe, no son medibles "electrónicamente" y para mi ESOS si son interesantes de explotar...

Pero bueno.. son las ideas jejejeje

(31-01-2021, 01:25 PM)Obuneo escribió: Ahora, dependiendo de lo que hagas, con js puedes perder rendimiento si vas a realizar cálculos matemáticos que puedan requerir ciclos de computación en la CPU ( aquí interesaría hacer los REST en Spring en vez de js).

De inicio, cálculos, pocos.

Mediciones en tiempo real y gráficas en tiempo real. Poco más.

Por lo que el rendimiento mediante un API Rest debería ir sobrado.

Si la vida se nos complica, porque, somos capaces de aplicar en nuestra afición ciclos de computación para sacar otras variantes y demás.. migramos a lo que haga falta!! Eso significaría que, hemos dado un paso de gigante en este "proyectillo"!!!! sería la caña!!!
#19
Por la compatibilidad entre ESP y Arduino no preocuparos porque todo es 100% compatible. Solamente hay que cambiar el entorno de programacion.

Yo recomiendo el cambio totalmente.

Javi, echale un vistazo a este proyecto https://acuariofiliamadrid.org/Thread-đo...e-pantalla para que veas la interfaz que hice integrandolo en el propio ESP. Asi evite hacer una app nativa y que fuese compatible con cualquier dispositivo.
#20
(31-01-2021, 02:11 PM)fg89o escribió: Por la compatibilidad entre ESP y Arduino no preocuparos porque todo es 100% compatible. Solamente hay que cambiar el entorno de programacion.

Yo recomiendo el cambio totalmente.

Hummm suena bien!!!

No se, hacer un cambio ahora, creo que puede ser retrasar "la salida".
Creo que saldré en Arduino al 100%, y cuando todo esté lanzado, haya lanzado el acuario, y tal, puede que valore el cambio.


(31-01-2021, 02:11 PM)fg89o escribió: Javi, echale un vistazo a este proyecto https://acuariofiliamadrid.org/Thread-đo...e-pantalla para que veas la interfaz que hice integrandolo en el propio ESP. Asi evite hacer una app nativa y que fuese compatible con cualquier dispositivo.

Veo en tu proyecto que si, que lo has elevado a una Aplicaicón Web, consumible desde navegador, y te despreocupas de la natividad del dispositivo que la consume.
Por ello, imagino que dentro de tu Hardware, en tu "máquina" (en mi caso arduino) tendrás un demonio que consume en cada vuelta (loop de arduino) los servicios web que tienen esa información guardada.

Esto genera la necesidad de tener varias capas de comunicación, y en mi caso, quería que fuese un "punto a punto".
Comunico por bluetooth el dispositivo con Arduino.

Quizás, por escalabilidad futura, se pueda pensar en un evolutivo por ese camino.

Además, me apetecía, como formación, trabajar con Flutter (Ecosistema de creación de Apps de Google, con el que, mediante lenguaje de programación Dart generas un app 100% nativa para Android y para iOS).

Hay mil maneras de hacer las cosas, y, en mi caso, esta, es por ampliar horizontes tecnológicos. Vengo de hacer Web toda la vida, por lo que, sin problema en montar una interface online. El desarrollo de apps centralizado en 1 solo lenguaje/ecosistema me llamaba mucho la antención.
#21
Llevo rato pensando en lo que aquí se está comentando y CREO que me he equivocado en la Infraestructura de alguna cosa.

Me llamó mucho la atención de mandar los datos desde arduino al dispositivo móvil por bluetooth, y en ello me centré. Aprender cosas nuevas, ampliar horizontes y demás.
Me obnubiló aprender (me encanta aprender).

Pero ... ¿y si cambio el paradigma?

- Arduino lee el acuario
---- Y manda esos datos leídos a una base de datos.
---- Y los visualiza en una pantalla (hardware local de arduino, en mi salón).

- El dispositivo que sea (móvil, tablet, ordenador) se conecta a una plataforma Web (una página web)
---- Lee esos datos enviados por Arduino y los visualiza en el dispositivo que lo consulta

Eso sería el concepto base (End2End).

Después (ampliaciones):
- Desde el dispositivo móvil, tablet o pc
---- Puedo meter datos (cambiar Gh, Kh, PO4, No3, etc, en función de un test de gotas previo) mediante un interface de entrada.
---- Se graban en la base de datos
---- Con los datos introducidos desde el formulario, y los que Arduino ha grabado en base de datos
-------- Muestro los datos necesarios para la controladora.
-------- Puedo visualizar gráficas, etc (explotación de datos)

- Arduino
---- Lee esos datos grabados en base de datos
---- Con los datos leídos del acuario más los leídos en base de datos
-------- Hace cálculos básicos (como los necesarios para saber la concentración de CO2, en función del pH y Kh)
-------- Visualiza en la pantalla local de Arduino en el salón


Creo que ese cambio de paradigma y arquitectura, me dará una mayor escalabilidad, y, las tecnologías a usar, no son tan novedosas para mi, me dedico profesionalmente a ellas.

El aprender desarrollo nativo (Flutter + Dart), me está gustando mucho, pero, si es cierto que me está ralentizando el avance por desconocimiento.

Creo que voy a plantearme este cambio de paradigma.
#22
Creo que estás haciendo un buen cambio, que la arduino sea la que guarde los datos mediante wifi te permite escalar mejor, controlar los datos en remoto y conectarte más fácilmente con diferentes dispositivos.

Usuarios navegando en este tema: 1 invitado(s)


Salto de foro: