Concurso de fotografía AM

Temática: «Una panorámica de tu acuario».
Ya esta abierto el plazo para presentar fotografías.

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
Diseño de un programador básico de acuario con arduino
Respuestas: 434    Visitas: 102518
#31
tengo varios los de 5v son los típicos de móvil
dos de 5v 850ma
otro de 5v 600ma
y en el curro tengo uno de 14v pero no recuerdo cuantos amperios,
Si valen todos al que le haga falta yo con uno tengo bastante.
#32
yo tambien me voy a sumar a este proyecto con vuestro permiso, para ir cogiendo las nociones basicas y haber si en un futuro me atrevo con el Cao-01
muchas gracias por darnos esta oportunidad a los mas negados como yo ,gracias deveras

yo en principio montare uno sencillo de 8 reles, en dos de 4 que ya os leido que se colocan mejor, mi intencion sera que enciendan y apagen las luces de 3 acuarios que tengo consecutivos

he puesto un rele por enchufe de lamapara que tengo, pero tengo la duda de si se puede usar el mismo rele para poner dos enchufes o tres ya que la hora de encendido y apagado es la misma, o tiene que ser uno por enchufe -nosweat.gif

Gracias de nuevo
Un Saludo
#33
En el tema de las breadboards pedí hace tiempo en los chinos y las bredboard que me llegaron no me valen para casi nada porque los agujeros son ligeramente más estrechos de lo normal y no me deja pinchar en ellan ni los Arduinos Pro Micro ni otra serie de componentes.

Las tiras de pines habitualmente están normalizadas y existe un estándar muy habitual donde los pines machos tienen sección cuadrada de 0,64mm de lado, y paso entre pines de 2,54mm.

[Imagen: L2518301-25.gif]

Este es el estandar que suelen usarse para Arduino y para un montón de circuitos y la mayoría de las breadboards vienen preparadas para poder pinchar esos pines que son muy habituales.

Como tenía prisa tuve que comprarme algunas más caras en tienda física para salir del paso. -glare.gif

Resumiendo: Si tenéis una referencia de alguien que comprara breadboards en el comercio chino usadla.
#34
Por si alguno le da "yuyu" comprar en aliexpress y prefiere pagar por paypal, os adjunto links de productos equivalentes en Banggood, eso si sale mas caro.

Placa Microprocesador:

Arduino Uno 3.79€ (chip serie CH340, microchip sin zocalo), pero sin cable USB (usa el tipico grande como el de impresoras)
http://www.banggood.com/es/UNO-R3-ATmega...64163.html

idem 4.55€ con cable USB
http://www.banggood.com/es/UNO-R3-ATmega...63697.html

El Arduino Uno 6.38 € de toda la vida con zocalo y serial atmega16u2 ¿original?
http://www.banggood.com/es/Wholesale-Ard...68537.html

Arduino pro micro 4.60€, estos vienen sin pines soldados y sin cable USB (en microUSB, valen los USB de cargadores de movil)
http://www.banggood.com/es/Pro-Micro-Atm...85617.html


Arduino Nano 2.77€ con CH340, sin soldar pines, sin cable miniUSB
http://www.banggood.com/es/ATmega328P-Na...40937.html

Arduino Nano 3.40€ con CH340, pines soldados, con cable miniUSB
http://www.banggood.com/es/ATmega328P-Ar...33647.html


Modulo reloj
DS3231 1.80€ con 32k eeprom
http://www.banggood.com/es/DS3231-AT24C3...81066.html

5 baterias CR2032 1.56€ litio NO recargable
http://www.banggood.com/es/Wholesale-5pc...68613.html


Reles

2 Reles 1,84€
http://www.banggood.com/es/2-Way-Relay-M...72428.html

4 Reles 3.41€
http://www.banggood.com/es/5V-4-Channel-...87987.html

8 Reles 5.55€
http://www.banggood.com/es/5V-8-Channel-...74110.html


Fuente alimentación: importante que el conector sea 5.5mmx2.1mm

9v 1.5A 3.85€
http://www.banggood.com/es/AC-DC-9V-1_5A...92152.html

9v 1A 1.84€
http://es.aliexpress.com/store/product/F...26052.html

9v 2A 3.10€
http://www.banggood.com/es/Dfg-p-953414.html

5V 1A 3.67€
http://www.banggood.com/es/5_5-x-2_1mm-J...13148.html

Regulador voltaje

LM7805 1.99€
http://www.banggood.com/es/L7805-LM7805-...72966.html

LM2596 1.48€ ajustable, necesario tener polimetro
http://www.banggood.com/es/LM2596-DC-DC-...88252.html


Cables y Clavijas (según placa microprocesador)

Clavijas fuente 0.92€ 5.5mmx2.1mm Macho y hembra a presion
http://www.banggood.com/es/DC-Power-Male...98683.html

40 cables dupont 4.62€ 10cm HH
http://www.banggood.com/es/40-x-10cm-Fem...89717.html


Soldadores

Soldador EU 4,69€
http://www.banggood.com/es/Wholesale-220...28225.html

Soldador EU 7,58€
http://www.banggood.com/es/Haoko-808-220...14124.html

Soldador temp regulable US 10.26€ + 5 puntas
http://www.banggood.com/es/60W-220V-Elec...93252.html

Soldador temp regulable EU 10.38€
http://www.banggood.com/es/60W-220V-Elec...93252.html

(13-12-2015, 07:56 PM)Fumon escribió: yo tambien me voy a sumar a este proyecto con vuestro permiso, para ir cogiendo las nociones basicas y haber si en un futuro me atrevo con el Cao-01
muchas gracias por darnos esta oportunidad a los mas negados como yo ,gracias deveras

yo en principio montare uno sencillo de 8 reles, en dos de 4 que ya os leido que se colocan mejor, mi intencion sera que enciendan y apagen las luces de 3 acuarios que tengo consecutivos

he puesto un rele por enchufe de lamapara que tengo, pero tengo la duda de si se puede usar el mismo rele para poner dos enchufes o tres ya que la hora de encendido y apagado es la misma, o tiene que ser uno por enchufe -nosweat.gif

Gracias de nuevo
Un Saludo

Bien llegado.

Flumon, el número de relés espero sea una cosa variable y si puedes unir varias cosas a un rele, si alimentas varios enchufes en paralelo, solo ten en cuenta los 10A de corriente que soporta el relé

Si tienes una pantalla con varias reactancias, puedes hacer un encendido progresivo de cada grupo de tubos, no es que sea un dimelado pero es mas suave
#35
(13-12-2015, 07:57 PM)Antonio Castro escribió: En el tema de las breadboards pedí hace tiempo en los chinos y las bredboard que me llegaron no me valen para casi nada porque los agujeros son ligeramente más estrechos de lo normal y no me deja pinchar en ellan ni los Arduinos Pro Micro ni otra serie de componentes.

Las tiras de pines habitualmente están normalizadas y existe un estándar muy habitual donde los pines machos tienen sección cuadrada de 0,64mm de lado, y paso entre pines de 2,54mm.

[Imagen: L2518301-25.gif]

Este es el estandar que suelen usarse para Arduino y para un montón de circuitos y la mayoría de las breadboards vienen preparadas para poder pinchar esos pines que son muy habituales.

Como tenía prisa tuve que comprarme algunas más caras en tienda física para salir del paso. -glare.gif

Resumiendo: Si tenéis una referencia de alguien que comprara breadboards en el comercio chino usadla.

Para mi creo que la placa me ayudaría, por que soy de darle muchas vueltas a las cosas antes de dejarlo de forma definitiva.
Pero si dices que no tengo la seguridad de que valga prefiero,aunque es muy poco dinero quizás esperar un poco, a ver si alguien ha pedido una y sabe a ciencia cierta, que es la adecuada.

mi lista de la compra casi definitiva:
modulo 4 relés
regulador de voltaje
modulo de relog
arduino
cables de puente hembras y machos
cable de conexion corriente para arduino
placa para torpes esta la tengo en el aireDodgy
total:12.50euros
#36
Quizas deberíamos concretar un poco.

1) PCB con Arduino UNO o compatible para personas que no deseen soldar.
2) PCP con Arduino Pro Micro 5v o compatible para personas que se quieran iniciar en el manejo del sol dador.

Con esto el RTC y el programa tendríamos una parte resuelta.

La parte de conmutación serían los reles que sería comprar placas con varios Reles. Pueden ser de distinto tipos según las necesidades. Basta con que sean capaces de aceptar una señal de 5v que va a mandar Arduino para activar los relés.

La PCB con el Arduino y la RTC vamos a alimentarla con 12v que servirá para obtener los 5v para el Arduino y los 12v podrán usarse para dispositivos de pocos vatios que requieran ese voltaje. También se podrán usar los reles para conmutar aparatos a 220v.

Hay mucho donde elegir. Lo importante ahora es tener claro que son dos partes independientes que se comunicarán por medio de cables (uno por relé que deseemos gobernar más otro común de retorno a masa).

Creo que hay que tener cuidado con no agobiar planteando demasiadas posibilidades porque quedaría confuso y se perderá el objetivo didáctico que en este caso es el principal.
#37
Ya comenté que había encontrado algo que parecía interesante bajo el título
"Actualización 1.4 de la librería RTC para reloj Dallas DS1307 y DS3231"
Dije que tendría que investigar el uso de esa librería y ya lo he hecho. Ha sido rápido. No me gusta.

Su autor afirmaba que ahora la librería detectaba el cambio de horario y existe un link para descargarse los fuentes. Los he mirado por encima y no solo no veo nada relativo al cambio de horario ni al DS3231 sino que he visto cosas que no me gustan y lo descarto. Incluso en el ejemplo se usan funciones que no veo implementadas y me pregunto si el enlace no estará equivocado.

Me temo que nuestro proyecto usará un RTC muy bueno pero no tendrá gestión por software del cambio de horario.

Como mucho se podría hacer que un pin jumper sirviera para forzar una hora más de la que proporcione el RTC.
[Imagen: 09044-04-L.jpg]
El pin jumper tendría una posición para invierno y otra para verano y habría que cambiarla manualmente un par de veces al año.
#38
Ok Antonio, la lista cerrada

- Microprocesador compatible arduino Uno o Pro Micro
- RTC DS3231
- Modulo/s relé (*)
- Fuente de alimentación
- Cables y varios

pero unas cosillas:

Los módulos de rele que sean de los que permiten alimentación independiente, ya que hablamos de unos cuantos y no queremos sobrecargar el regulador del microprocesador.

Se distinguen porque en la placa hay unos pines puenteados por un jumper (de cualquier color)
[Imagen: 54yrpmc.jpg]

Respecto a la alimentación, creo que puede ser entre 7.5v y 12v, no imprescindible 12v (incluso yo soy partidario de 9v por ser menor la caída de potencial del regulador y menor la potencia que necesita disipar). Y de 1A o 1.5/2A si se quieren poner más de 4 relés

Y además hay que alimentar los reles de 5v, por lo que creo que salvo el Uno (cuyo regulador esta mas dimensonado y ¿puede que aguante 4?) debería regularse aparte ya sea por un modulo con LM8705 o un modulo LM2596 (necesita soldar)


Aun así y dejandolo cerrado, aquí podemos evaluar la lista de compra que pase un user para ver su compatibilidad, y se le podemos aconsejar alguna cosa que le pueda faltar, que no va a estar esperando 60 dias mas tras detectar el defecto



Se puede hacer una función sencilla para cambiar el 1 de abril y el 1 nov, solo que su llamada conviene esconderla un poco para que no la verifique en cada bucle del loop porque sería un despifarro si se ejecuta una vez cada 6 meses, solo que habría que guardar un bit en la eeprom.
#39
(13-12-2015, 10:30 PM)ArturoS escribió: Ok Antonio, la lista cerrada

- Microprocesador compatible arduino Uno o Pro Micro
- RTC DS3231
- Modulo/s relé (*)
- Fuente de alimentación
- Cables y varios

pero unas cosillas:

Los módulos de rele que sean de los que permiten alimentación independiente, ya que hablamos de unos cuantos y no queremos sobrecargar el regulador del microprocesador.

Se distinguen porque en la placa hay unos pines puenteados por un jumper (de cualquier color)
[Imagen: 54yrpmc.jpg]

Respecto a la alimentación, creo que puede ser entre 7.5v y 12v, no imprescindible 12v (incluso yo soy partidario de 9v por ser menor la caída de potencial del regulador y menor la potencia que necesita disipar). Y de 1A o 1.5/2A si se quieren poner más de 4 relés

Una cosa sencilla se complica cuando quieres dejar abiertas demasiadas posibilidades. Buscar la máxima sencillez. Yo me centraría en usar un regulador de tensión LM8705. Para un aparato conectado a un alimentador la disipación que tiene es muy razonable. Yo nunca he usado disipador con este integrado. Creo que lo suyo es recomendar una fuente de alimentación a 12v o 9v en funcion del tipo de cargas.

(13-12-2015, 10:30 PM)ArturoS escribió: Y además hay que alimentar los reles de 5v, por lo que creo que salvo el Uno (cuyo regulador esta mas dimensonado y ¿puede que aguante 4?) debería regularse aparte ya sea por un modulo con LM8705 o un modulo LM2596 (necesita soldar)

Aun así y dejandolo cerrado, aquí podemos evaluar la lista de compra que pase un user para ver su compatibilidad, y se le podemos aconsejar alguna cosa que le pueda faltar, que no va a estar esperando 60 dias mas tras detectar el defecto



Se puede hacer una función sencilla para cambiar el 1 de abril y el 1 nov, solo que su llamada conviene esconderla un poco para que no la verifique en cada bucle del loop porque sería un despifarro si se ejecuta una vez cada 6 meses, solo que habría que guardar un bit en la eeprom.

A mi no me gustaría que el cacharro hiciera por su cuenta un cambio horario a destiempo. La fecha y hora del cambio automático tiene que coincidir con la oficial y si no, es mejor una solución manual o ninguna y hacer el ajuste en el ordenador.

A los peces les da igual el horario. Puede que al usuario le interese hacer el cambio de horario por razones prácticas pero no es una necesidad urgente, lo puede hacer cuando le venga cómodo. El jumper sería un parche para poder hacer un cambio de horario manual, aunque seguramente implique abrir la caja. La solución sería poner un conmutador de dos posiciones en el exterior.

Estoy viendo que son muchas las cosas que podrían necesitar de la gotita de estaño.

El aparato en algunas cosas es tan sencillo que no tiene ni LCD ni botones, pero todo tiene un precio. Por lo que hemos estado hablando creo que para una primera versión tendríamos que ceñirnos lo más posible a algo muy sencillo y eso va a suponer un funcionamiento con alguna pequeña limitación o una pérdida de comodidad en un par de ocasiones al año, etc.

En futuras versiones habrá que buscar satisfacer a los que después de alcanzar su primer éxito usando Arduino, deseen añadir cosas que echen en falta en una primera versión supersencilla. Por ejemplo añadir un LCD.

Una de las cosas que me planteo para esta primera versión es ignorar el tema de las fechas completamente. A los peces les da igual la fecha y nuestro cacharro no tendrá LCD, así que buena gana de hacerle introducir a un usuario una fecha de puesta en hora para luego no verla por ninguna parte.

Cambiando de tema voy a recomendar una página para todos aquellos que empiezan y que desean ampliar sus conocimientos o tener un buen sitio para consultar temas de electrónica.

http://www.electronicafacil.net/tutoriales/

He echado un vistazo al curso de electrónica básica y me parece muy recomendable.
#40
En tema de gestión de fechas, lo descartamos por simplicidad desde el principio, pero el ajustar el reloj a verano o invierno es por hacer coincidir la iluminación con la "hora del sofa" sin que el user tenga que estar abriendo la caja/o dando a un interruptor (soldadura) o recompilado para cambiar la hora.

El fundamento de la rutina que te comento es:
Tener una variable global boolean con indicador de horario de invierno (se le da valor en el setup en función del mes actual)
En el loop se captura el mes de la fecha, y si horario_invierno es true y mes >3 o <11 se cambia -1 la hora y se pone horario_invierno a false,
Y si horario_invierno es false y mes <4 o >10 se hace lo contrario.

El sistema solo falla si hay un corte de luz el 30/3 o 31/10 que dura hasta el día siguiente (para evitarlo había que usar la eeprom), pero creo que es error asumible.

No necesita ser exacto controlando que den las 2 am del ultimo domingo del mes para hacer el cambio, es mas cómodo esperar de 1 a 7 días que el sistema arregle el desfase de 1 hora que tener que estar retocando el sistema.
#41
(14-12-2015, 11:41 AM)ArturoS escribió: En tema de gestión de fechas, lo descartamos por simplicidad desde el principio, pero el ajustar el reloj a verano o invierno es por hacer coincidir la iluminación con la "hora del sofa" sin que el user tenga que estar abriendo la caja/o dando a un interruptor (soldadura) o recompilado para cambiar la hora.

El fundamento de la rutina que te comento es:
Tener una variable global boolean con indicador de horario de invierno (se le da valor en el setup en función del mes actual)
En el loop se captura el mes de la fecha, y si horario_invierno es true y mes >3 o <11 se cambia -1 la hora y se pone horario_invierno a false,
Y si horario_invierno es false y mes <4 o >10 se hace lo contrario.

El sistema solo falla si hay un corte de luz el 30/3 o 31/10 que dura hasta el día siguiente (para evitarlo había que usar la eeprom), pero creo que es error asumible.

No necesita ser exacto controlando que den las 2 am del ultimo domingo del mes para hacer el cambio, es mas cómodo esperar de 1 a 7 días que el sistema arregle el desfase de 1 hora que tener que estar retocando el sistema.

Lo que tú dices es que el usuario debe esperar a que se produzca un cambio de horario y en ese caso una desconexión y una reconexión dejaría el sistema configurado suponiendo que el algoritmo que tu describes fuera correcto, pero no lo es, porque los cambios de horarios ocurren en fines de semana. Tú algoritmo sirve para este año nada más.

El siguiente cambio ( al horario de Verano ) se producirá:
El día 27 de marzo de 2016
A las 2:00 de la mañana el reloj se cambiará a las 3:00 de la mañana

El anterior cambio ( al horario de Invierno ) se produjo:
El día 25 de octubre de 2015
A las 3:00 de la mañana el reloj se cambió 2:00 de la mañana

Para hacerlo bien, la manera que "se dice sencilla" por comparación con otros métodos, es aplicar la congruencia de Zeller.

Si eso te parece complicado te diré que a esto se le llama la manera sencilla porque no tiene en cuenta el hecho de que el pasado 25 de octubre a las 2:30 existe una ambigüedad imposible de resolver. Esa hora ocurrió dos veces seguidas en el espacio de una hora. La primera en horario de verano y la segunda en horario de invierno porque el reloj hizo la putada de saltar atrás una hora al llegar a las 3:00 la primera vez.

Cuando haces algo que no funciona como debe, el que recibe toneladas de comentarios de listillos es el autor del programa y decir que lo has hecho así aposta no sirve sino para empeorar las cosas y paso de eso.

Si queremos hacer algo sencillo yo creo que lo mejor sería poner un jumper o no poner nada. Los temporizadores sencillos no suelen incluir el cambio de horario.

PD:
Para el que no domine la jerga, en programación, se llama algoritmo a una receta para resolver un problema. La idea de Arturo es un algoritmo para este año, la congruencia de Zeller es un algoritmo para cualquier año, y ninguna de las dos es perfecta.
#42
Vale, vamos a ver, lista de compra ¿definitiva?
Arduino ProMicro.
Modulo DS3231 con su pila eternaBig Grin
Modulo de 4 relés
Pack de cables.
Clavijas (solo una? para alimentar arduino? o una para cada relé tambien hace falta?)
Fuente 9V 2A con su regulador a 5V(Aguanta los 2A? veo salida maxima 1,2A...)
El estaño y la pasta los puedo comprar en una ferretería, o coger los de ali, es indiferente.
Soldador regulable
Soporte para soldador (también se puede mirar en una ferretería o grandes almacenes)
Eso seria lo básico, creo que no me he dejado nada(para empezar de 0)
¿Cómo lo veis?
#43
Yo tengo este soporte de soldador:

http://www.banggood.com/MG16129C-Multifu...30906.html

Es evidentemente más caro, pero creo que tiene infinitamente más posibilidades.
#44
(14-12-2015, 04:40 PM)Dudo escribió: Yo tengo este soporte de soldador:

http://www.banggood.com/MG16129C-Multifu...30906.html

Es evidentemente más caro, pero creo que tiene infinitamente más posibilidades.

ostras gracias!!! solo le faltaria la lupa-laughbounce2.gif, miraré por tiendas fisicas a ver que me encuentro, sino ya tengo soporte-good.gif
#45
No Antonio no has entendido el algoritmo ni cuando falla.

No se controla cuando es el cambio horario, que por ley europea es a las 2 a.m. del último domingo de los meses de marzo y octubre. Lo cual como has comentado tiene su complicación a nivel de algoritmo.

Se controla que si el mes del sistema está entre abril y octubre ha de ser horario de verano, y si la variable horario_invierno es cierta, la rutina ha de cambiar la hora del sistema (aunque debe esperar a ser al menos 1 am para no entrar en un bucle en el cambio a invierno) adelantando 1h y cambiando horario_invierno a falso.

Lo mismo si horario_invierno es falso y el mes superior a 10 o menor que 4 debe retrasar 1h el reloj y poner horario_invierno a cierto, aquí lo de no hacerlo antes de 1 am, o retrocedería el mes

Resultado: el sistema cambia de horario invierno/verano el primer día del mes, no el domingo anterior, con lo que puede haber de 0 a 6 días (depende de la fecha en que cae el último domingo) con horario desplazado pero el cambio será automático.

El único error posible (si no se almacena horario_invierno en la eeprom), es que como la variable ha coger un valor inicial, que se debe hacer verificando el mes, en setup(), porque no gestionamos eeprom. Puede darse el caso de un corte de luz en el último día del mes que durara hasta entrado el mes siguiente y al reiniciarse el sistema toma ya el valor horario_invierno correspondiente sin haber modificado la hora.

Usuarios navegando en este tema: 4 invitado(s)


Salto de foro: