Hey! I'm quite new with arduino and i have a simple project to develop.
Simulating a floodgate, i need to make my servo spin in positive or negative direction in given data.
But i need to make the code stop spinning when it reachs the maximum angle until the analog reads another number that gives a different command. Can someone help?
#include <Servo.h>
#define pino_sinal_analogico A0
const int pinoServo = 6;
int valor_analogico;
Servo s;
int pos;
void setup (){
Serial.begin(9600);
pinMode(pino_sinal_analogico, INPUT);
s.attach(pinoServo);
s.write(0);
}
void loop(){
valor_analogico = analogRead(pino_sinal_analogico);
Serial.print("Porta analogica: ");
Serial.print(valor_analogico);
if (valor_analogico > 300 && valor_analogico < 950)
{
Serial.println(" Status: Solo umido");
for(pos = 90; pos >= 0; pos--){
s.write(pos);
delay(30);
}}
if (valor_analogico > 0 && valor_analogico < 300)
{
Serial.println(" Status: Solo seco");
for(pos = 0; pos <= 90; pos++){
s.write(pos);
delay(15);
}
}delay(1000);
}