Bienvenido, Invitado
Nombre de Usuario: Contraseña: Recordarme

TEMA:

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1532

Por favor, que yo no digo que tenga razón, y a demás cuando conozco mis limitaciones, ni soy programador, ni electrónico, ni nada parecido, solo un aficionado más al Arduino, con muchas ganas de sacar un proyecto, pero sin ser ningún experto, ya me gustaría a mí.
Solo cuento como me van las cosas con el proyecto, y cuando me encuentro un problema y lo soluciono en parte o totalmente, publico esa solución.

¿Y qué ocurre cuando no tienes esos conocimientos tan amplios, y quieres intentar hacer ese proyecto?

Solo comento que cuando se sabe que al conectar un sensor en un tipo de Arduino y puede fallar, debería de advertirse, o por lo menos decir que no se ha probado con otro tipo de Arduino y que se puede conectar de otra manera, o es que solo se publican las cosas para los expertos, creo que se publican precisamente para todo el mundo, independientemente del nivel de conocimientos y con intención de enseñar, o por lo menos debería de ser así, otra cosa es que lo sea, y solo se pretenda demostrar lo "genio" que es el que publica, que también ocurre.

Un saludo.

Por favor, Identificarse para unirse a la conversación.

Última Edición: por asesorplaza1.

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1533

Si yo entiendo lo que me quieres decir, pero no se puede decir todo de todo. Es complicado darlo todo mascado.
El siguiente usuario dijo gracias: asesorplaza1

Por favor, Identificarse para unirse a la conversación.

Última Edición: por Jose Luis.

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1534

Bueno, pues como dijo ese astronauta que piso la luna por primera vez, “este es un pequeño paso para la humanidad y un gran paso para mí”.
Acabo de conseguir implantar un segundo sensor de presión, el giroscopio con todas sus propiedades, y por supuesto COMPILA.
En el Monitor Serie del Arduino Esclavo, puedo ver como se cambian los datos del giroscopio según lo muevo, y los datos de temperatura, por lo tanto estoy pensando en que si el giro, me da los datos de temperatura interior del casco, me sobran el sensor D18B20, y el sensor DHT22, del casco, por lo que el programa se puede simplificar, y la instalación eléctrica de los sensores también. Pero los quitare cuando este seguro de que los datos de esos tres sensores sean iguales y me pueda fiar de los datos del giroscopio, y de los datos de los otros sensores, que de momento todo está en pruebas y observación.
También tengo dudas de que si el sensor DHT22, será eficaz al detectar las pequeñas fugas de agua que se puedan producir, por los cambios en los grados de humedad ambiente, tanto en el casco principal, como en los tubos de los motores, o tendré que cambiar este sensor por otra forma de detectarlo más efectiva, habrá que comprobarlo. Por lo tanto estoy también investigando de qué otra manera se pueden controlar esas pequeñas fugas de agua, estoy barajando las posibilidades entre, un sensor de humedad del suelo YL69, o directamente 2 cables pelados en cada punta de los diferentes tubos.
¿Cuál creéis que sería la mejor forma de hacerlo?, con el sensor, o con los cables.
Adjunto los dos códigos nuevos.
Y como no todo pueden ser buenas noticias, sigo teniendo algunas pegas.
Si os fijáis en el código “Maestro”, he conseguido poner todos los Serial.print, al final del Void Loop, y a demás ordenaditos, el programa queda muy bonito, pero en el programa del “Esclavo”, me ha sido imposible ponerlos al final igual de ordenados, por varios motivos, creo.
El primero, porque si los pongo al final, abajo del todo, teniendo en cuenta que, como dentro del Void Loop, solo están los nombres de los distintos Void de los sensores, y se termina el bloque, se me quedan fuera del Void Loop, y el programa no compila.
Si los pongo dentro del Void Loop, como le estoy pidiendo que me imprima los datos antes de que se consigan, (ejecuten los Void de los sensores) tampoco compila el código.
También he intentado hacer un Void con los Serial.print, como tengo los de los sensores, pero no me deja, da errores de compilación muy raros.
Por lo tanto para que me compile el código he tenido que dejar los Serial.print, cada uno en su sitio, dentro del bloque del sensor correspondiente.
Y por supuesto, no sé por qué demonios, sigo sin poder ver los datos de los sensores en el Monitor Serie del “Maestro”, supongo que por algún problema de comunicación, que no encuentro.
Sigo teniendo problemas a la hora de poner todos los botones del mando de la PS2 en el programa del “Maestro”, por eso están comentados, no sé porque no me los admite, y sin embargo en el “esclavo si los he podido poner, misterios de la programación.
Como veis sigo buscando soluciones a los problemas que me estoy encontrando
Un saludo.
Adjuntos:

Por favor, Identificarse para unirse a la conversación.

Última Edición: por asesorplaza1.

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1538

Que poco dura la alegría en casa del pobre.

Resulta que con lo avanzado que tengo el proyecto, me he dado cuenta de que el modelo que tengo como base de comunicación, creo que no me sirve, os explico.

Como sabéis, por los comentarios anteriores, estoy teniendo problemas de comunicación entre los dos Arduinos, y no encuentro el porqué, por lo tanto me he vuelto a mirar todo el proyecto de TechMonkeyBusiness, " www.techmonkeybusiness.com/tag/rov.html " para ver si encuentro el problema del mando de la PS2, y de las comunicaciones entre los Arduinos, y resulta que me he dado cuenta, de que el programa final publicado por TechMonkeyBusiness, en el que se supone que el ROV está acabado y listo para funcionar, el tío cabrón, (porque no tiene otro nombre), está utilizando el protocolo de comunicación de la librería “EasyTransfer”, que sirve para comunicar en distancias cortas por cable, (aconsejable a menos de 5 metros entre Arduinos), en vez de utilizar el protocolo de comunicación de “SoftwareSerial”, que es el que se tiene que utilizar para las distancias largas de comunicación por cable entre los Arduinos (más de 5 metros entre Arduinos). Para el proyecto me está esperando un cabe de par trenzado CAT 6, de 100 metros.



Que es la distancia a la que va a estar el ROV, del puesto de control.
Que putada, porque esto no tiene nombre, como siempre se explica el proyecto como al publicador le parece, y cuando estas a medias, o casi acabando, como es mi caso, te das cuenta de que lo que explica es una cosa y el programa final es otra. La pagina es muy bonita, las explicaciones publicadas muy coherentes, pero el código final NO se publica.
Por lo tanto mi gozo en un pozo, como ya me ha pasado varias veces, en vez de avanzar considerablemente en el proyecto, me vuelvo a atascar, y tengo que retroceder mucho más de lo que he avanzado.
Ahora me toca estudiar, cual es el protocolo de comunicación “SoftwareSerial”, para poder implementarlo en el proyecto, que por lo poco que he podido averiguar este fin de semana, no tiene nada que ver, con el protocolo de comunicación del “EasyTransfer”, que es el que está puesto en el código.
Lo primero que tengo que aclarar, es que en este protocolo de comunicación, tienes que definir cuál es el tamaño del “paquete” de datos a enviar y recibir, y en este momento, no tengo ni la más remota idea de cuál es el tamaño de los paquetes de datos.
Por lo tanto me tengo que encomendar otra vez a San Google, para ver si consigo averiguar, como se calcula “el tamaño de los paquetes de datos”, o que algún alma caritativa de este foro lea mi publicación, y me quiera orientar sobre el tema.

“Manda guevos”

Un saludo a todos
Adjuntos:

Por favor, Identificarse para unirse a la conversación.

Última Edición: por asesorplaza1.

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1539

A ver, el software serial no es un protocolo de comunicaciones, es una libreria para hacer un puerto virtual mediante pines pwm, que tu no necesitaras por que tienes puertos por hardware de sobra.
El software serial lo que hace es poder tener mas de un puerto en arduinos que no los tienen.

Vamos que estas muy pero que muy perdido y hace dias por no decir semanas que te di a entender que no usaras las librerias de transferencia de datos, que asi sabrias como se envian los datos realmente.

Pero no hay nada mejor que uno lo vea por uno mismo.

Ah y el cable cat 6 son para conexiones de red, nada que ver con una conexion serial. Que te valga el cable no quiere decir nada. Yo realice conexiones seriales con cable de mas de 25 metros. Eso si cable de calidad y apantallado.
El siguiente usuario dijo gracias: asesorplaza1

Por favor, Identificarse para unirse a la conversación.

Última Edición: por Jose Luis.

Un ROV de agua dulce, con mando de PS2 3 años 11 meses antes #1540

Con respecto a como establecer un protocolo de comunicaciones, depende de las necesidades que tengas. Yo por ejemplo tengo implementado uno que siempre empiezo la trama con * y termino con #. de esa forma todo lo que vaya entre ambos, son datos que puedo gestionar. Puedes ponerle controles a los paquetes, pero, haciendo como te digo, ya filtras mucho los errores, ya que si hay fallos de transimision, no suele enviarse la cabecera y el final de forma correcta y la trama se desecha.

Todo es cuestion de lo que quieras implementar y como.
El siguiente usuario dijo gracias: asesorplaza1

Por favor, Identificarse para unirse a la conversación.

Tiempo de carga de la página: 0.129 segundos
Gracias a Foro Kunena

Login