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
Utilizar varios Arduinos
Respuestas: 43    Visitas: 8447
#1
Pues en mi proyecto de automatización del acuario basado en un Arduino Mega me encuentro con el problema de la limitación de salidas, pues entre la TFT que se conecta a los pines digitales ocupando todos los digitales a partir del pin 22, la activación de 12 Relés y el encendido de los correspondientes pilotos leds, no me alcanzan las salidas.
¿Es conveniente por ejemplo conectar por serie al Arduino Mega un Arduino Nano conectado a los 12 Relés?
#2
Deberia darte las salidas sin problemas con un arduino mega tienes 54 salidas.

http://3.bp.blogspot.com/-5bIrGV8-TfE/VK...iagram.png

Si le vas a poner una pantalla. Puedes usar los pines SPI. La parte icsp de la foto.

Para salidas adicionales busca el protocolo I2C en google que te da hasta 128 salidas mas con la librería wire... si no recuerdo mal. Pero eso es ya otra guerra.
#3
¿Y con solo esos 6 pines del iscp funciona la pantalla TFT?
Tienes algún esquema de los circuitos para saber cómo conectar los tropecientos pines de la TFT con esos 6?
#4
Habria que saber que tft tienes, pero normalmente vienen preparados para comunicar via spi. Si compartes el modelo te podria ser mas concreto.

Aquí tienes un tft generico que se suele usar con arduinos.
https://i0.wp.com/henrysbench.capnfatz.c...n-Outs.png
#5 Wink 
Ante todo gracias por tus consejos, se aprecian.
Pues tengo dos TFT, uno es el que utilizo ahora para hacer pruebas:

TFT 320x480

Y esta que la tengo "en reserva" pues aún no sé cómo conectarla:

TFT 7 Pulgadas

La primera la he conectado directamente a las salidas del Arduino Mega, la de la doble fila de pines hembra, pero claro, me bloquea todas esas entradas/salidas.
#6
Vale ahora entiendo el problema...
Normalmente esas pantallas requieren 16 pines pero como van montado con el conector ese te anula las demas.

yo creia que tenias una pantalla como las que te mande en la foto de arriba que va por SPI.

Visto lo visto y respondiendo a tu pregunta, si conectas la pantalla con un fajin para evitar que te tape los pines, he contado que quedan 30 pines digitales y analogicos libres. Recuerda que los analogicos los puedes usar como digitales si quieres. Simplemente declarandolos como HIGH o LOW sin los valores intemedios ni 1 ó 0.
No te valen con esos?

Un saludo.
#7
Pues lo he conectado creo que como dices, aunque entiendo que he ocupado más pines de los necesarios, pero ya sabes, el que no sabe es como el que no vé, jaja.

[Imagen: QxE1RF8.jpg]

Me tendría que enterar cuales son los pines digamos que imprescindibles para dejar el resto libres.

De todas formas, crees que es útil utilizar más de un Arduino interconectados?
#8
Pregunta: de la manera que lo tienes montado en la foto, no te valen los pines que te quedan libres?
Pregunto porque 30 pines libres me parecen una pasada y en base a lo que has descrito en otro post yo creo que deberia ser suficientes.

A la pregunta, de los arduinos interconectados, pues desde mi punto de vista cuanto mas simple mejor. Tienes varias opciones ahora mismo.

Opcion A:
Intenta cuestionarte que necesitas en tu proyecto. Cuantos pines te van hacer falta y dibuja el esquema/lista en un papel (siempre ayuda cuando la bestia va creciendo). Sigo pensando que te deberian ser suficientes los pines de un Arduino Mega.

Opcion B:
Dos arduinos independientes es mas simple a nivel de codigo y posiblemente de cables. Uno (nano) lleva los reles que vayan estrictamente por temporizador (nada mas).
y el otro (mega) un poco mas los reles que necesitan una logica detras. (si se cumple esta condicion haz esto...)

Opcion C:
interconectar los dos arduinos utilizando el standard I2C con la libreria wire. Esto deja un arduino como maestro y el otro como esclavo, el maestro es el que hace la logica y el esclavo solo recibe ordenes. Solo veo esta opcion, si vas a poner en la pantalla acciones que enciendan o apaguen los reles (simples) de los que describia en la opcion A.


Ya nos cuentas!
Un saludo
#9
Pues los mecanismos que pienso controlar son:
1.- 2 circuitos independientes de Leds de alta potencia
2.- Leds azules para Luz de Luna
3.- Solenoide de CO2
4.- Electro bomba de Agua para cambios automáticos de agua
5.- Sensor de caudal para el control de los litros de agua de recambio
6.- Filtro externo
7.- 5 sensores de temperatura (Grava, agua, pantalla de leds, caja de circuitos y ambiental)
8.- Ventiladores de la pantalla de Leds
9.- Ventiladores de la caja de circuitos
10.- Lámpara UV
11.- Dos bambas peristálticas, una para fertilizante y la otra para antialgas o medicación.
12.- Agitador para el recipiente de la medicación
13.- Dos alimentadores automáticos, uno para peces de fondo y la otra para el resto
14.- Alarma (buzzer)
15.- Probablemente un medidor de caudal para la salida del filtro externo.
16.- Algún mecanismo todavía no decidido para control de nivel de agua del acuario.
17.- Control wifi (para ver como vá todo y un mecanismo que apague todo el sistema).
18.- Calentador de Suelo
19.- La pantalla TFT
20.- 5 displays de 7 segmentos colocados en el frente de la pantalla de leds (temperaturas)
Cada mecanismo llevará uno o dos leds piloto.

En principio mi idea es la de tu opción B, un nano controlando los 12 relés proyectados (hasta ahora) y el mega con el control de todo el funcionamiento.
#10
Restar de la suma los leds piloto, estoy experimentando con los ShiftRegister o Registros de Desplazamiento para los leds piloto, así que con tres pines del Arduino puedo controlar 8 leds por cada Shift, en mi caso en principio utilizaré dos conectados en serie (para 16 leds), estoy haciendo pruebas y van bien.
#11
Buenas,

Viendo la lista de puntos de control que tienes, vas a tener que usar dos.
Asi de primeras cuento 23 pines de entrada salida sin contar las pantallas.

Yo soy de la escuela de siempre tener la simplicidad en mente que luego se vuelve un quebradero de cabeza cuando las cosas no funcionan. Si quieres usar wifi yo sinceramente no metería pantallas y viceversa ahora mismo es redundante tener los dos y ademas viene con un coste muy alto en pines y complejidad. Es simplemente mi manera de verlo, por experiencias pasadas.

Los arduinos no van muy bien en el aspecto de sacar datos a red (tienes los shields de LAN, pero requiren bastante programación para dejarlo funcional), para eso creo que te puede ir mejor un ESP8266.

Te vendo mi bilbia.

El concepto es muy simple cada ESP tiene 10 IOs digitales, estos nodos tienen codigo justo para recibir ordenes y devolver estado nada mas.

Todo la comunicacion va a traves del protocolo MQTT, entre los nodos y la central (broker MQTT). Con esto lo que ganas es escalabilidad sin tener que complicar el codigo.
El codigo lo haces con NodeRed que es una solucion para programar de manera grafica en base a eventos. Si pasa esto haz esto otro. Node red ya dispone de herramientas para publicar un "salpicadero" donde se puede ir añadiendo interuptores, graficas, informacion, notificaciones etc...

En mi caso el broker mqtt y el node red estan en una raspberry pi en mi casa. Pero hay soluciones online gratis... problema... si te quedas sin internet te quedas sin el invento.

Esto seria un esquema super simple que he dibjuado, alli ves la consola de node red y como se veria desde el movil o un navegador..

[Imagen: Untitled%20drawing.jpg]

Un saludo.
#12
(20-03-2017, 10:13 PM)albertoG1 escribió: Restar de la suma los leds piloto, estoy experimentando con los ShiftRegister o Registros de Desplazamiento para los leds piloto, así que con tres pines del Arduino puedo controlar 8 leds por cada Shift, en mi caso en principio utilizaré dos conectados en serie (para 16 leds), estoy haciendo pruebas y van bien.

Mira, pues de esto no tenia ni idea que se podia hacer, voy mirar un poco por ahi para enterarme de como va...

-good.gif
#13
https://geekytheory.com/como-expandir-lo...de-arduino

Creo que con varios de estos multiplicas salidas, no es necesario 3 pines de arduino para cada uno, alguno se puede compartir.

La pega es que es más lento que usar un pin para cada señal, pero si no es para algo que vayas a tocar muy a menudo es una buena opción.
#14
Para Myounges: Gracias, me llevas varios años luz de conocimientos -laughbounce2.gif
Pues ahí tengo material para trabajar. Espero andar poco a poco ese camino.
En realidad mi intención con respecto al wifi se reduce a tener una función dentro del programa que ante un desastre (mientras estoy fuera, por ejemplo de vacaciones -tengo una cámara web que me permite observar el acuario y todo el entorno-) me permita apagar todo.
Todo el circuito llevará a la entrada un Relé de 30 amperes "normalmente cerrado" y que ante esa situación de desastre corte el suministro eléctrico de todo el "invento", pues que además de los 500 litros de agua en el salón sigan funcionando los filtros hasta que se quemen, y lo peor, siga entrando agua cada 6 horas desde la electro bomba. Vaya desastre!. Así que antes de implementar todo deberé resolver este tema del wifi.
Para Dudo: así es, con tres pines (uno para datos, otro para hacer entrar los datos al modulito ese y el tercero para activarlos) se pueden controlar un montón de esos cacharritos (74HC595). En mi caso con dos controlaré 16 pilotos leds.
Excelente el artículo ese del link.
#15
No creo que tenga mucho mas de lo que sabemos todos por este rincon, ademas con el pequeño "Skynet" que tienes montado en casa tambien es digno de reconocer.
Lo que comentas es imprescindible tener lo que yo llamo el interruptor de la mano muerta (igualito a los tiempos de la guerra fria). En mi caso estoy implementando algo parecido pero con sensores de humedad (le quito la parte manual de estar pendiente), dichos senores no son mas que dos cables pelaos con un pull down. Tengo uno en la parte alta del acuario y otro en el mueble del filtro. Lo malo que aunque cortas la corriente no quita que puedas tener un problema con algun tubo y por sifon se vaya descargando el acuario, pero esta claro que este sistema ayuda a reducir el riesgo.

Respecto al 74HC595 lo habia visto alguna aplicacion para los displays de 7 segmentos pero nunca hubiera caido que se pueden usar para leds... buena idea.-good.gif

Pues nada ya nos iras comentando como te va quedando! Alguna fotilllo siempre gusta jajajaja.Big Grin

Usuarios navegando en este tema: 4 invitado(s)


Salto de foro: