Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Индикатор и контроллер уровня жидкости

Компоненты и расходные материалы

Arduino UNO
× 1
Ультразвуковой датчик - HC-SR04 (общий)
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

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

Введение

Индикатор уровня чаще всего используется во всех отраслях промышленности. Мы также можем реализовать то же самое для небольших рабочих или домашних целей. Мы создали датчик уровня жидкости, который помогает нам считывать непрерывные данные. Это дает нам значение того, сколько жидкости занято в резервуаре. Созданная нами система представляет собой систему обратной связи, которая не только сообщает нам количество занятой жидкости, но и контролирует ее с помощью насоса.

Строительство

На рисунке выше представлена ​​упрощенная блок-схема созданной мной системы. Arduino - это микроконтроллер, который мы используем. Ультразвуковой датчик HC-SR04 подключен к Arduino. Датчик установлен в верхней части резервуара. Для модели я использовал два погружных насоса. Погружные насосы являются однонаправленными, то есть могут перекачивать жидкость только из одного направления в другое. Мы могли бы использовать двунаправленный насос, который может работать в обоих направлениях. Оба насоса получают сигнал от Arduino. Для работы насосов требуется 12 В, поэтому мы также должны использовать драйвер двигателя. (Драйвер двигателя не показан на блок-схеме.)

Работает

Для облегчения понимания разделим модель на разные разделы:

  • Система обнаружения
  • Система управления

Чувство

Система зондирования имеет ультразвуковой датчик HC-SR04. Ультразвуковой диапазон превышает 20 кГц. Этот датчик имеет передатчик и приемник. Передатчик выдает частоту 40 кГц; эта ультразвуковая волна отражается от уровня жидкости и принимается приемником. Этот датчик имеет 4 контакта:земля подключается к земле Arduino, а напряжение VCC может составлять + 3,3 В или 5 В. Триггерный штифт используется для подачи триггерного сигнала на передатчик. Эхо-контакт используется для получения эхо-сигнала от ультразвука. Отсюда мы получаем период времени для получения и получения ультразвука. Нам нужно преобразовать время в расстояние. Ниже показано следующее:

  duration =pulseIn (echoPin, HIGH); // Расчет расстояния distance =duration * 0.034 / 2;  

Система управления

Arduino получает данные от датчика, а затем передает требуемый сигнал насосам. Мы можем установить наш заданный уровень из кода. Если уровень превышает заданный порог, насос в резервуаре получает сигнал и начинает откачивать воду из резервуара до уровня ниже порогового значения. Когда уровень опускается ниже указанного порога, насос в резервуаре начинает перекачивать жидкость в резервуар. Будет использован бак и только один насос.

Будущие улучшения

Мы можем повысить эффективность проекта следующим образом:

  • Мы можем использовать двунаправленный насос, который может быть расположен вне резервуара, тогда нужно будет использовать только один насос.
  • Мы можем отобразить результат на OLED или на ЖК-экране.
  • Мы также можем хранить данные в облаке, если подключены к Интернету вещей.
  • Мы можем контролировать уровень жидкости, а также проверять уровень жидкости из приложения, если оно подключено к IOT.
  • Мы также можем предоставить звуковой сигнал при переполнении резервуара. Мы также можем изменить код, чтобы избежать переполнения резервуара.

Код

  • регулятор уровня воды
контроллер уровня воды Arduino
 int tankPump =3; int reserviorPump =2; int trigPin =9; // whiteint echoPin =10; // brownlong duration; int distance; void setup () {Serial.begin (9600); pinMode (tankPump, ВЫХОД); pinMode (reserviorPump, ВЫХОД); pinMode (trigPin, ВЫХОД); // Устанавливает trigPin как OutputpinMode (echoPin, INPUT); // Устанавливает echoPin в качестве входа} void loop () {ultrasound (); pump ();} void ultrasound () {digitalWrite (trigPin, LOW); delayMicroseconds (2); // Устанавливает тригпин в состояние ВЫСОКОЕ на 10 микросекундыdigitalWrite (trigPin, HIGH); delayMicroseconds (10); digitalWrite (trigPin, LOW); // Считывает echoPin, возвращает время прохождения звуковой волны в микросекундахduration =pulseIn (echoPin, HIGH); // Расчет дистанции =duration * 0.034 / 2; // Печатает расстояние в Serial MonitorSerial.print ("Distance:"); Serial.println (distance); delay (1000);} void pump () {if (distance> 10) {digitalWrite (tankPump ,ВЫСОКИЙ); digitalWrite (reserviorPump, LOW); } else {digitalWrite (tankPump, LOW); } если (расстояние <6) {digitalWrite (reserviorPump, HIGH); digitalWrite (tankPump, LOW); } else {digitalWrite (reserviorPump, LOW); }} 

Схема


Производственный процесс

  1. Датчик артериального давления - работа и его приложения
  2. Работа датчика напряжения и его применение
  3. Датчик Arduino - типы и приложения
  4. Что такое трансмиссионная жидкость и для чего она нужна?
  5. Датчик температуры Python и Raspberry Pi
  6. Датчик температуры и освещенности Raspberry Pi
  7. Управление датчиком и исполнительным механизмом Raspberry Pi
  8. Аэропоника с Raspberry Pi и датчиком влажности
  9. Как проверить и откалибровать датчик влажности
  10. Windows 10 IoT Core и SHT15