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

TEMA:

Un ROV de agua dulce, con mando de PS2 4 años 2 meses antes #1330

pues ya esta, he conseguido que el Esclavo lea los sensores y que me mande los datos al Maestro, y que el Maestro me muestre los datos en el Monitor Serie, y a demás los datos se muestran en el Monitor Serie de manera ordenada, en columnas de datos, tanto en el Maestro como en el Esclavo, todo un logro para mi, para los que tenéis un nivel de programación alto, no es nada del otro mundo, pero para mi que soy un simple aficionado a la electrónica y a la robótica, es todo un logro.

adjunto los programas

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 4 años 2 meses antes #1333

Perfecto, cuantos sensores te quedan por implantar?
El siguiente usuario dijo gracias: asesorplaza1

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

Un ROV de agua dulce, con mando de PS2 4 años 2 meses antes #1335

los sensores que faltan son:

uno que me marque la presencia de un objeto a una distancia, para evitar el choque, tengo pensado en un sensor infrarrojo E18D80NK, (por que el de ultrasonidos SR04, en el agua no se comporta como en el aire, y daría mediciones erróneas), el infrarrojo no da mediciones de distancias, se regula para una distancia fija, solo marca si hay o no objeto a la distancia regulada previamente.
tengo que probar en el agua el sensor de ultrasonidos JSN-SR04T, a ver como se comporta, porque una cosa es que este protegido contra las salpicaduras de agua, y otra cosa es que pueda hacer mediciones mas o menos precisas dentro del agua.

otro sensor que me marque la temperatura exterior del agua (opcional, no lo tengo claro), porque tendría que hacer un agujero al casco, y tengo que estudiar como hacerlo primero, para evitar entradas de agua, hay que ser muy fino con el agujero, y seria el sensor DS18B20

otro sensor que me marque la presión interior del casco, para evitar que entre el agua o que reviente el casco por la presión del agua, esto se puede conseguir con un sensor de presión, o creo que con el mismo Giroscopio MPU6050, tengo que estudiarlo, si no con un sensor BMP280, o un sensor MS5803, lo mas fácil es colocar un transductor de presión de coche

otro sensor que me marque la profundidad a la que esta el ROV, que puede ser un transductor de presión de coche, adjunto foto por que no tiene nombre, calculando la presión ejercida por la columna de agua, se que hay una tabla de equivalencias, de presión y metros de profundidad, seria hacer los cálculos de los bares que marca el sensor, y traducirlos a metros de profundidad.

me falta hacer que funcione el circuito de refrigeración

me falta medir el voltaje de las baterías en tiempo real, ahora tengo 3 circuitos, uno que va a 3.3 V, para la alimentación del mando de la PS2, otro a 5 V para la alimentación de los sensores, y otro que va a 12 V, para la alimentación de los motores, todo esto encima de la mesa lo tengo conectado a una fuente de alimentación de un PC, pero dentro del ROV, tengo que instalar varios pull down, para tener solo baterías de litio de 12 V.
por lo que he leído esto se hace con un divisor de tensión, (2 resistencias), y una formula para que con los cálculos, el Arduino pueda leer el voltaje de las baterías, hasta 5 V. se puede hacer directamente, pero para mas voltaje, se necesita el divisor de tensión

esto que me acuerde así de cabeza, tengo que mirar la planificación que tengo hecha del ROV, cuando vuelva a casa la adjuntare.

y por supuesto la Nextion, de la que no tengo nada todavía

lo que ocurre es que es un coñazo, añadir cualquier sensor, creo que el programa debe tener algo así como una estructura de funcionamiento, ya que al añadir cualquier sensor me da problemas de compilación, y solucionarlo es bastante tedioso, como estáis viendo.
ahora por ejemplo he intentado añadir el sensor de infrarrojos E18-D80NK, que el programa es básico donde los halla, (sin ninguna librería, se define el pin de entrada de datos y un pin de salida para encender un led cuando se ha detectado un objeto, 3 lineas de void set up, y tres lineas de void loop) pues me da error al compilar y me dice que el MPU (giroscopio) no esta definido en el programa, cuando no es cierto, sin las lineas del infrarrojo el programa compila e incluso me da datos del giroscopio, por lo tanto debo averiguar en que sitio y en que orden van cada una de las lineas del sensor nuevo, no se pueden añadir simplemente donde me parezca, adjunto el código para que veáis lo sencillo que es, tengo que averiguar su sitio para que funcione el sensor nuevo, y no me afecte al funcionamiento del resto de sensores, que ya funcionan.
miedo me da poner el sensor de temperatura DS18B20, que el programa es mas complicado, puesto que hay que averiguar la dirección I2C del sensor, adjunto programa, y el código para que funcione este sensor es mucho mas complejo

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 4 años 2 meses antes #1336

Bueno aun te queda un poco, lo que es raro es lo que te pasa cada vez que pones un sensor nuevo.
Con el DS18B20 no vas a tener ningún problema, tienes los videos de Jose Luis muy bien explicado.
Lo que si te digo ya, es que cuando empieces con la Nextion vamos a tener que hacer cambios en tu código, por que ya veras como no seremos capaces de ver todas las mediciones en la Nextion al menos que úsenos millis. Pero bueno ya lo veremos cuando llegues.

Saludos
El siguiente usuario dijo gracias: asesorplaza1

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

Un ROV de agua dulce, con mando de PS2 4 años 2 meses antes #1339

el problema no lo tengo con los sensores, con un código para el sensor solo SI funcionan, el problema es cuando lo añado al programa Esclavo con todo junto, que o no funciona la parte nueva, o me estropea lo anterior, a ver por que demonios ahora me esta dando problemas con el giroscopio, cuando antes funcionaba, he borrado todo lo del sensor infrarrojo, y nada me dice que

#define MPU 0x68 // direccion I2C del MPU6050
error : expected `; `before numeric constant

algo así como que le falta el punto y coma al final de la linea
cosa que no es verdad
y si le pongo el punto y coma, me da el mismo error

algo muy raro

un saludo

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

Un ROV de agua dulce, con mando de PS2 4 años 2 meses antes #1340

pues he conseguido otro mínimo paso para la humanidad y un gran logro para mi

he averiguado la forma de unir los códigos de los sensores y que compile el programa, no hay nada como Internet y el Foro de Arduino

resulta que los códigos no se pueden incluir a la ligera, (como me temía y ya he comentado mas de una vez) tiene sus normas de programación y ya las he descubierto, adjunto los códigos con los últimos cambios y dos documentos pdf, del foro de Arduino, donde explican como juntar códigos

se incluyen las librerías necesarias, se definen los sensores y los pines, en el void setup se ponen las ordenes a realizar una vez, hasta aquí como siempre, pero el secreto esta en el void loop

hay que generar un bloque para cada sensor, básicamente un void de funcionamiento especifico para el sensor

me ha costado años descubrir esto, pero lo he conseguido

no estaría mal que Jose Luis, se animara e hiciera un vídeo de como juntar códigos de sensores, es solo una idea

he conseguido incluir el sensor infrarrojo, y que no me de errores, ni que me estropee el giroscopio, y a demás compila mas rápidamente

al final conseguiré un código publicable y del que estar orgulloso

un saludo
Adjuntos:

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

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

Login