Бесконтактный датчик уровня жидкости XKC-Y25-V зафиксирует наличие водного раствора сквозь преграды и стены.
Датчик не будет работать с металлическими препятствиями.
Для теста сенсора воспользуйтесь стаканом или кружкой. Наполните ёмкость наполовину водой и перемещайте сенсор в области ватерлинии. Для питания и обработки результатов понадобится контроллер.
Подключите датчик уровня воды к Arduino Uno через Troyka Shield к 4
цифровому пину.
// пин бесконтакного датчика уровня жидкости #define LIQIID_SENSOR_PIN 4 void setup() { // открываем монитор Serial-порта Serial.begin(9600); // настраиваем пин в режим входа pinMode(LIQIID_SENSOR_PIN, INPUT); } void loop() { // считываем состояние пина int motionState = digitalRead(LIQIID_SENSOR_PIN); // выводим данные в Serial-порт Serial.println(motionState); delay(100); }
После прошивки платы, откройте монитор Serial порта. Если уровень жидкости будет выше сенсора — вы увидите бегущие единицы, а как уровень воды снизится ниже датчика — единицы сменятся на нули.
Скоммутируем датчик к Iskra JS через Troyka Shield к 4
цифровому пину.
Зафиксируем изменение уровня жидкости с помощью Espruino и языка JavaScript.
// наблюдаем за датчиком уровня жидкости setWatch(function() { // если сработало изменение на пине датчика // считываем состояние сенсора var state = digitalRead(P7); // выводим в консоль текущие состояние if (state) { print("Water is Yes"); } else { print("Water is Not"); } }, P7, { // функция вызывается многократно repeat: true, // фиксация восходящего фронта edge: "both" });
В результате вы увидите сообщение в консоле, при изменении уровня воды вблизи видимости датчика.
Произведите мониторинг уровня воды микрокомпьютером Raspberry Pi. Подключите сенсор движения к 4
пину малины. Чтобы обойтись без макеток и проводов, используйте плату расширения Troyka HAT.
# библиотека для работы с методами языка Wiring (Arduino) import wiringpi as wp # инициализация WiringPi wp.wiringPiSetup() # пин 4 в режим входа wp.pinMode(4, 0) while (True): # считываем состояние с датчика уровня воды motionState = wp.digitalRead(4) # печатаем результат в консоль print(motionState); # ждём 100 мс wp.delay(100)
После запуска скрипта вы увидите текущие показатели сенсора. Пока уровень воды находится выше датчика — в консоле выводятся единицы, при опускании уровня ниже сенсора — нули.
Информационный светодиод о детектировании жидкости: при наличии воды в зоне поиска сенсора — светодиод горит, при отсутствии — не горит. Светодиод дублирует выходной сигнал сенсора.
Откройте заднюю крышку сенсора.
Под защитным колпачком находится многооборотный потенциометр регулировки чувствительности сенсора. При вращении винта по часовой стрелке чувствительность датчика уменьшается, а против часовой — увеличивается.
Для регулировки используйте маленькую плоскую отвёртку, которую можно найти в «Наборе отвёрток».
Сенсор подключается к управляющей плате через встроенный кабель. На конце провода расположен разъём в формфакторе Troyka-контактов: