0 / 0 / 0
Регистрация: 23.04.2022
Сообщений: 8
1

Ошибка в программе устройства, способное автоматически поддерживать уровень жидкости в указанных диапазонах

23.04.2022, 19:24. Показов 399. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Код программы на Arduino:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//Программа управления насосом по датчику расстояния
#include "Ultrasonic.h"
 
 
boolean pereliv = 0; //переменная для хранения значения с датчика перелива
boolean key = 0;    //переменная для хранения значения с кнопки (1 если кнопка нажата, 0 если нет)
boolean trevoga = 0; //переменная сигнализирующая о наличии тревоги
float maxLevel=4.00;  //расстояние в сантиметрах, соответствующее максимальному уровню жидкости в емкости
float minLevel=7.00; //расстояние в сантиметрах, соответствующее минимальному уровню жидкости в емкости
 
Ultrasonic ultrasonic(3, 4); //подключили датчик расстояния (TRIG к 3 пину. ECHO к 4)
 
 
 
void setup()
{
  Serial.begin(9600);    // запускаем серийный порт
  pinMode(8, INPUT_PULLUP);  //ПОДКЛЮЧИЛИ ПИН КНОПКИ (ИСПОЛЬЗУЕТСЯ ДЛЯ ОТКЛЮЧЕНИЯ РЕЖИМА ТРЕВОГИ)
  pinMode(10, INPUT_PULLUP);  //ПОДКЛЮЧИЛИ ПИН ПОПЛАВКОВОГО ВЫКЛЮЧАТЕЛЯ (НА СЛУЧАЙ ПЕРЕЛИВА)
}
 
void loop()
{
  float rast = ultrasonic.Ranging(CM);  // получаем расстояние с ультразвукового датчика и сохраняем его в rast
  pereliv = digitalRead(10); // считываем состояние поплавкового выключателя
  key = digitalRead(8); // считываем состояние кнопки
 
  Serial.print(rast);                   // выводим растояние до воды в монитор порта
  
  if (rast > minLevel) { //если растояние до поверхности воды больше 7 см
    digitalWrite(12, HIGH);  //включаем питание на реле
    digitalWrite(13, HIGH);  //подаем сигнал реле на включение насоса
    Serial.println("    OnNasos");
  }
 
  if (rast < maxLevel) { //если растояние до поверхности воды меньше maxLevel;
    digitalWrite(13, LOW); //даем сигнал на отключение реле
    digitalWrite(12, LOW); //отключаем питание реле
      Serial.println("    OFFNasos");
  }
 
  if (pereliv == 1) {//если сработал поплавковый выключатель, то
    trevoga = 1;  //включаем режим тревоги
  }
 
  if (trevoga == 1) {  //если режим тревоги включен, то
    digitalWrite(13, LOW); //даем сигнал на отключение реле
    digitalWrite(12, LOW); //отключаем питание реле
    tone(7, 2500, 250); //подаем сигнал тревоги с частотой 2500 и длительностью 250мс
  }
 
  if (key == 1) {  //если нажата кнопка, то
    trevoga = 0;  //отключаем режим тревоги
  }
 
 if (trevoga == 0) {  //если режим тревоги отключен, то
    noTone(7);  //отключаем пьезопищалку
  }
 
 
 
  delay(500);                               // задержка
 
  
}
Ошибка программы:
Ошибка в программе устройства, способное автоматически поддерживать уровень жидкости в указанных диапазонах

Так выглядит со стороны:
Ошибка в программе устройства, способное автоматически поддерживать уровень жидкости в указанных диапазонах

Схема подключений:
Ошибка в программе устройства, способное автоматически поддерживать уровень жидкости в указанных диапазонах


Что нужно изменить в коде, чтобы пропала ошибка? Помогите пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.04.2022, 19:24
Ответы с готовыми решениями:

Операторы, которые присваивают целые случайные числа в указанных диапазонах
Напишите операторы, которые присваивают целые случайные числа в следующих диапазонах: а) от 0 до 9...

Как меняется уровень жидкости?
Плавающая на воде плоская ледяшка удерживает железную гирьку. Гирька сваливается и тонет. Как...

Как запрограммировать уровень жидкости на подобии градусника
Всем привет. Первый раз на этом сайте. В школе выдали задание в visual basic. Мы должны вычислить...

В цилиндрическом сосуде уровень жидкости достигает 147 см
В цилиндрическом сосуде уровень жидкости достигает 147 см. На какой высоте будет находиться уровень...

Определить уровень жидкости через промежуток времени
Расходом Q (куб.м/сек) называется объем воды, проходящий через отверстие или трубу в единицу...

1
Вездепух
Эксперт CЭксперт С++
12441 / 6539 / 1755
Регистрация: 18.10.2014
Сообщений: 16,492
23.04.2022, 19:53 2
Цитата Сообщение от polyana1 Посмотреть сообщение
Что нужно изменить в коде, чтобы пропала ошибка?
Перестать пытаться вызывать функции, которых не существует. Не существует никакого ultrasonic.Ranging, как вам ясно сказал компилятор.
0
23.04.2022, 19:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2022, 19:53
Помогаю со студенческими работами здесь

Как изменится уровень жидкости в стакане после растворения льда?
Здравствуйте помогите пожалуйста решить данные задачу........Заранее благодарю... Кусок льда...

Определить, через какое время t уровень жидкости перестанет понижаться

написать систему управления персоналом. Система должна поддерживать один уровень иерархии для отображение связи начальник - подчиненный.
Добрый вечер. Дано задание - написать систему управления персоналом. Система должна поддерживать...

Сколько тепла переходит от одной жидкости к другой жидкости в процессе теплообмена
Пожалуйста, помогите решить! Смешаны две жидкости одинаковой массы. Одна жидкость имеет...

Как найти объём жидкости в усеченной четырехугольной пирамиде при уровне жидкости 3 метра
Как найти обьём жидкости при в усенной пирамиде при уровне жидкости 3 метра ,если...

Поставить краевую задачу для определения скорости частиц жидкости и давления жидкости в трубе
Задача Жуковского о гидравлическом ударе. Входное сечение прямей цилиндрической трубки длиной l...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru