Dudas para proyecto con Arduino y Raspi

Bueno,

Acabo de abrir este hilo para englobar las muchas partes del proyecto con el que ando ahora mismo, y para ir comentando problemas y dudas que van saliendo por el camino para que la gente pueda opinar al respecto o incluso aportar nuevas ideas. De momento voy a enlazar ciertos problemas/dudas que ya estan por todo el foro para tenerlo todo aqui bien agrupado:

Alimentando varios arduinos

Pins y amperajes del Arduino

Configuracion de los dispositivos usb en linux

Barrera infrarroja para contar personas

[Usb y como alargarlo con cable UTP](http://Usb y como alargarlo con cable UTP)

Usb y como alargarlo con cable de red

Nuevo mega mejorado y mas pequeño

Unir varios arduinos

Cuidado con cortocircuitar un usb

Amperajes en instalacion electrica

Bueno aqui os hago una recopilacion de todos las dudas que han ido surgiendo durante el proyecto en las cuales me han ido ayudando @surbyte y @Lucario448
Dejare este unico hilo abierto para posibles futuras dudas que vayan surgiendo.

Un saludo

Buenas,

Os vengo hoy con una nueva consulta. Se trata de KNX, estoy mirando que es otro protocolo para la domotizacion con sus respectivos productos y demas. Pero la pregunta correcta es, para que?
Me refiero, he visto a gente intentando conectarlo con incluso arduinos y demas, pero no le veo la logica, es decir, con un arduino (microcontrolador) ya puedo hacer a base de reles, y actuadores de todo tipo ya sean digitales o analogicos todo tipo de domotizacion, por que entonces usar KNX con sus derivados productos los cuales me imagino que seran bastante mas caros.
Mas que nada por si alguien me pudiera arrojar un poco de luz al asunto.

Un saludo

Usa MQTT y no otra cosa. Yo uso MQTT con mi Raspberry corriendo Mosquito como servidor de los mensaje telegramas MQTT.
Es fácil. Existen librerpias para Arduino asi que no tendrás problemas.

No conozco KNX tal vez sea similar pero el hecho es que MQTT esta muy documentado y es el standard.

Si, pero si mal no recuerdo MQTT es un protocolo que va atraves de red, es decir, necesitaria un shield, wifi o ethernet, o directamente un arduino con ello ya incluido para usarlo, y logicamente es mas caro que un usb por eso mismo me decante por serial.

Ahh tienes razón y cierto que quieres conectar 100 Arduinos por USB.

No comparto lo de los costos y lo debatiría contigo pero tu ya llevas buena parte justificando tus razones asi que, quién soy para convencerte de lo contrario?

No, a ver, que yo haga justificado mis razones, no significa que sean las acertadas. Si sabes que dicha forma que estoy probando falla por que ya lo has probado pues encantado te haria caso, o bajo alguna buena argumentacion. No me cierro en banda a lo que los demas puedan opinar y mas si es para bien.

Pero esa fundamentación creo habertela dado por eso mas que abrir 100 hilos y por eso te pedi que nos enfocáramos en tu objetivo y ahora lo estas haciendo. De todas formas te sirvió porque ahora tienes varias opciones disponibles.

No tengo claro tu enfoque domótico. Mi enfoque domótido es muy puntual. Es un sensor en un lugar de la casa y a lo sumo sensor y rele. Es raro una situacion donde tenga 8 reles (eso lo dejo para mi quita).
Entonces verás que todo nodo para mi esta formado por un ESP01 con algun sensor digital, si es temperatura DS18B20, si es humedad/temperatura un DHT22, o otro similar I2C pero no me aparto de esto.

Cuando la situacion no me permite resolverlo asi, es posible que use un nano con un ESP01 o un ESP12.
En todos estos casos la alimentación esta dada por baterias litio 3.7V o fuentes 220VAC 5VDC pequeñas o ultrapequeñas.
Todo habla MQTT por WIFI. Todo reporta los mensajes al Raspi que corre Mosquito Ver Tutorial de instalacion de Mosquito y la visualizacion la hago con Node-Red en el Raspi como server.

Si la verdad es que con el tiempo empiezas a ver alternativas distintas de las que en un principio habias pensado, y esta genial. Ya ire probando todas poco a poco, ahora mismo voy a hacer las pruebas a ver que tal tira un cable usb de mas de 10m con todo lo que he estado investigando, en caso de que no lo vea rentable lo mas probable es que tire por mqtt.
En caso de usr MQTT lo mas probable es que tire por cable, por que el wifi ya sabemos todos como funciona, y encima si quieres integrar todo el sistema domotico con un sistema de seguridad a base de sensores, veo muy peligroso el usar radio frecuencias para dicho sistema, corriendo el riesgo de que te venga un tio con un inhibidor de frencuencias y te mande todo el sistema a la mierda.

Un saludo

En cuanto al tema de los reles, yo la verdad es que si que necesitare usar mas de 8 reles para algunas habitaciones en las cuales tengo 4 persianas para domotizar, y luego sumandole las luces pues otros pocos, pero bueno, como ya dije en su principio este proyecto me parece para mi forma de ver bastante amplio en el cual pretendo ir cogiendo bastante experiencia en todo este mundillo

Primera prueba hecha con unos 50m de cable UTP sin apantallar en bobina fallida, no hay forma de que reconozca el pc a arduino.
Segunda prueba, 10m mas o menos de cable UTP tirados en linea recta ya que al estar en forma de bobina me parecia que podria afectar un poco, funciona de sobra y creo que sin aparente perdidas de datos,es mas, he conseguido ponerlo a funcionar a 2.000.000 de baudios por usb con un pedazo texto enorme, y parecia que lo transmitia sin problemas a esa velocidad.
Mañana cortare unos 30 metros de cable stp que viene apantallado por todos lados, lo probare en linea recta tambien a ver que tal tira y os contare. La verdad espero que siga funcionando sin ningun problema.

Un saludo

No olvides poner algun cable de energia junto o acaso en tu casa tienes todo tan bien separado, energía y datos?

Sisi, claro que tengo que meter energia, sino no encendera xDDD
Pero vamos la idea es tener todo por separado, para evitar posibilidad de que pueda ocurrir cualquier interferencia, aunque teniendo un cable apantallado creo que eso ya me da un poco igual.

Un saludo

No comprendiste. Hablo de que junto al cable de datos tengas un cable de 220VAC.

A ver en principio lo he comprado apantallado por si tengo que meterlo con un cable de 220V como bien me dices, pero no entiendo por que me dices que no se me olvide meter el cable de 220V.

Tal vez me expresé mal. Quise decir que tu hablas de lo bien que funciona tu cable en distancia pero esta prueba puede decaer si tienes próximo a tu cable otro de 220VAC. Ahora que mencionas que esta apantallado no debería influenciar.
En fin... avanza porque tal vez te este deteniendo en debates que no te sirven.

Hagamos un resumen hasta ahora: Cómo vas a conectar los arduinos?
Busca información del protocolo KNX y coloca algun link asi lo debatimos.

Ah vale ya te he entendido. En principio las pruebas que hice fueron con un cable sin apantallar que ya tenia comprado, y queria probarlo asi antes de probar con el apantallado por si no funcionaba poder devolverlo, pero visto que parecia funcionar perfectamente, esta tarde me pondre a hacer pruebas con 30m con el apantallado a ver que tal.

En cuanto a como pretendia conectar los arduinos iba a ser todo por serial, de momento no pretendia usar KNX, a no ser que me tocara tirar por red, pero al ser serial no veo necesidad. De arduino a raspi por serial y listo.
Por lo menos asi pretendia probar al principio.

En cuanto algo que debatir, tengo una duda en cuanto a un sensor o realmente lo que sea (que no lo se). Tengo actualmente un coche que se abre por proximidad de la llave, es decir, cuando me acerco al coche y pulso el boton de la puerta, si la llave se encuentra cerca se abre, y cuando hay que arrancar el coche, la llave tiene que estar dentro, sino no arranca. Todo esto viene, a que no se que tecnologia es esa o que tipo de sensor, ya que infrarrojos no puede ser, a ver podria ser, pero dudo que mi mando este continuamente mandando la señal ya que supongo que la pila se gastaria bastante rapido. Asi que esa es basicamente mi consulta, por si alguien tiene alguna idea de lo que pueda ser eso.

Un saludo

Acabo de probar 30m de cable apantallado para alargar usb, y no funciona. Voy a probar otro tipo de empalme a ver.
De todas formas alguien tiene idea de como amplificar la señal, he estado leyendo y es por que por lo visto cuanto mas largo, mas atenuacion y se pierden las señales. Tambien he estado viendo este tipo de productos:

Y me gustaria saber que tiene eso por dentro para que te pueda aumentar la señal 50m segun pone en la descripcion del producto de la web que lo saque, ya que por si solo no tiene alimentacion externa ni nada.

A ver si alguien tiene idea de esto.

Un saludo

Hasta hoy lo unico que he conseguido es tirarme de los pelos, que ya no he conseguido de ninguna forma hacer funcionar 30m de cable usb por cable de red apantallado, mañana probare con 20m, que creo que ahi sera donde mas o menos este el limite por lo menos de la forma que estoy intentando.
Para futuros proyectos o incluso en este si me pongo muy cazurro, me empezare a mirar la comunicacion por mqtt como bien me ha dicho surbyte, el problema es que ya tenia estudiado el protocolo serial con arduino, raspi y openhab, y ahora meterme en un protocolo que para empezar me exige modulos de red para los arduinos que ya tengo, 1 cable de red unico para cada arduino, 1 switch dependiendo de los arduinos que tenga y estudiarme la comunicacion entre estas tecnologias, pues me da un poco de miedo, pero entiendo que puede ser lo mejor.

Cualquiera que tenga experiencias de este estilo, sera un placer escuchar sugerencias.

Un saludo

Surbyte, si no te importa decirme que tal funciona el mqtt te lo agradeceria.
Antes de ponerme a mirarlo me podrias contestar lo siguiente?:

La comunicacion por serial para mi forma de ver es muy flexible, ya que puedo mandar lo que sea, y automaticamente luego en raspi con openhab se recibe lo mismo y a base de programacion ya le digo yo el significado.
Querria saber si eso con mqtt tambien se puede hacer, o que tipo de estados o señales en concreto se pueden mandar.

En caso de no tener mucha experiencia con openhab no te preocupes, ire mirando pero poco a poco, pero si me contestas eso pues ya me quedo mas tranquilo de una solucion bastante mas aproximada al serial de lo que pensaba.

Un saludo

Primero debo decirte : TE LO DIJE!!!!!!!!!!!!!!!!!!!!!!!!
El limite USB viene dado por la capacitancia por metro del cable. Si no conoces ese valor no te arriesgues a probar nada. No es posible hacer nada mas alla de esa longitud que encontraste como límite. No fue pensado para llegar a 40 o 50 mts. Sino para cortas distancias. Y si no me creas, busca en Internet a ver si alguien ha conectado algo por USB a 50 mts? Tal vez alguien diga que lo hizo pero no dirá cómo. Internet esta plagado de mentirosos con tal de que le pongas un Like o Me_gusta

MQTT es una protocolo para comunciar máquina con maquina, micro con micro, pc con pc o todas sus variantes. Yo lo uso para comunicar el estado de mis sensores y darle ordenes a mis controladores RELEs o lo que sea.

Me sorprende que tu proyecto dependa de que te responda o no, solo busca MQTT en google y obtienes esto.
Que es MQTT?
Esta muy bien explicado. Y te resultará ameno y fácil de entender, incluso mejor que lo que tu irías a implementar.

Lo mejor es que esta hecho para todas las plataformas Raspi incluida, Linux, MAC, Windows,, Android.

Puedes interconectar todo y no era eso lo que buscabas? Por eso te cuestioné el enfoque desde el comienzo.
Porque resistirse es FUTIL como diria y BORG, no puedes ir contra algo que ya esta resuelto en tantas plataformas. El trabajo que debes desarrollar es inmenso. Y el producto final no será tan bueno.

Existen librerías para Arduino que permiten enviar esos telegramas. Mosquitto en Raspi corriendo como servicio sera quien reciba todo ese intercambio desde/hacia los sensores y/o controles y luego otro programa en Python, C++, Qt, Node-Red, Node.js, etc puede presentar la información en el Raspi y de ahi volverlo un server con el que interactues desde tu mobil.