estoy intentando solucionar un problema dde este codigo sobre el stepmotor. Lo que quiero que haga es que dependiendo de la temperatura gire para un lado u otro (simulando una persiana). Pero este lo hace en bucle y no se llega a detener.
Os lo dejo a continuación por si alguien puede ayudarme.
He trasladado su tema de una categoría de idioma inglés del foro a la categoría International > Español@nunyezz.
En adelante por favor usar la categoría apropiada a la lengua en que queráis publicar. Esto es importante para el uso responsable del foro, y esta explicado aquí la guía "How to get the best out of this forum".
Este guía contiene mucha información útil. Por favor leer.
En la vida real no basta con sensar solamente la temperatura, tienes que saber donde esta la persiana para poder detenerla, normalmente dos contactos, (interruptores o botones), colocados arriba y abajo del recorrido de la persiana.
Dico esto tu if:
Ha de ser mas complejo y tener en cuenta esos dos contactos de fin de carrera para detener o no la persiana.
Veo en tu código que anda de por medio un sensor ultrasónico buena idea para sustituir eso dos contactos, me lo apunto no se me había ocurrido, luego tu if para mover la persiana podría quedar algo así:
if (temperatura < 24) {
while (fnc_ultrasonic_distance(13, 11) > 5) { // creo recordar que 5 es el limite inferior de esos sensores.
myStepper.step(20);
}
} else {
while (fnc_ultrasonic_distance(13, 11) < 120) { // Persiana de 1,20 mts. de apertura.
myStepper.step(-20);
}
}
Es solo un ejemplo, estudialo, pruebalo, refina tu codigo y nos cuentas.
Saludos.
PERFECTO MUCHAS GRACIAS LO TENDRE EN CUENTA, en teoria el de ultra sonidos es para habrir unas luces al detectar objetos pero tambien seria buena idea la tuya la persiana se mueve mediante la temperatura (como si fuese una casa dependiendo de la temperatura)