Помогите с датчиками уровня воды
- Войдите на сайт для отправки комментариев
Чт, 28/09/2017 - 10:22
Друзья,не получается выполнить код программы 2 датчика в бочке с водой,верх и низ.
// ""СЛЕДИМ ЗА УРОВНЕМ ВОДЫ В БОЧКЕ"""
if(digitalRead(up_sensor) && digitalRead(down_sensor)){ // Воды нет ни на одном датчике, включаем насос
digitalWrite(RELAY_PIN,HIGH);
Serial.println("БОЧКА ПУСТАЯ");
} else if(!digitalRead(up_sensor)){ // Вода на верхнем датчике, отключаем насос
digitalWrite(RELAY_PIN,LOW);
Serial.println("БОЧКА НАПОЛНЕНА ВОДОЙ");
}
Алгоритм такой что опрашивается состояния двух датчиков,если верхний и нижний в верхнем состоянии - значит вода в бочке полная,если оба внизу то бочка пуста и включается насос и соответственно как оба датчика будут в верхнем положении насос выключается
1. http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii и это не шутка, либо Вы это делаете, либо дальнейшего разговора не будет
если верхний и нижний в верхнем состоянии - значит вода в бочке полная,если оба внизу то бочка пуста и включается насос и соответственно как оба датчика будут в верхнем положении насос выключается
Сравните этот Ваш текст с кодом - в коденаписано совем другое. В коде у Вас: если оба датчика HIGH - мотор включается, иначе, если датчик up_sensor- LOW, то выключается.
Приведите код в соответсвие с текстом и будем много счастья.
Не нашёл как редактировать тему чтоб привести ка правильному виду
Такой код будет работать по алгоритму?
Я бы предусмотрел еще защиту от ошибок. Если показания датчиков противоречат друг другу (например, верхний "полный" а нижний "пустой") - высвечивать сигнал об ошибке и насос не включать.
Да Бог его знает, будет работать или нет. Вашему тексту это не соответсвует. В тексте написано "если оба внизу", а это не проверяется.