Напоминание о социальном дистанцировании - коронавирус
Компоненты и расходные материалы
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Приложения и онлайн-сервисы
|
Об этом проекте
Что это такое?
Разумно, самый надежный способ замедлить распространение коронавируса - держаться подальше от других; профилактика лучше лечения. Однако было бы неприятно оборачиваться каждые тридцать секунд и смотреть, не приближается ли кто-нибудь к вам. Было бы полезно, если бы было устройство, которое могло бы предупреждать других держаться от вас подальше. Это цель проекта:предупредить других, чтобы они держались от вас на расстоянии 2 метра. Это 2-в-1, поскольку термистор используется не только для увеличения точности измерения расстояния (скорость звука изменяется в зависимости от температуры), но также означает, что - с помощью кнопки или сенсорного датчика для переключения между режимы - у него может быть два режима:предупреждение, если кто-то приближается к вам (режим 1) и измерение температуры и расстояния (режим 2). В режиме измерения на ЖК-дисплее отображается температура и расстояние.
Как это работает?
- Arduino измеряет температуру.
- Температура используется для более точного расчета расстояния.
Если Arduino находится в режиме 1:
- Если расстояние составляет от 2 до 1 м, загорается подсветка ЖК-дисплея, и на ЖК-дисплее отображается сообщение «Пожалуйста, держитесь подальше» и расстояние до человека.
- Если расстояние составляет 1–50 см, подсветка ЖК-дисплея мигает, и на ЖК-дисплее отображается сообщение «Держитесь подальше».
- Если расстояние меньше 50 см, подсветка выключается и включается два раза в секунду, а на ЖК-дисплее отображается сообщение «НЕ УДАЛЯЙТЕСЬ!»
Если Arduino находится в режиме 2, на ЖК-дисплее отображается расстояние вверху, а температура - внизу экрана.
Чтобы защитить компоненты от дождя, я прикрепил половину пластиковой бутылки, которую можно приподнять, когда идет дождь.
Его можно прикрепить (используя две веревки) и легко снять с дна рюкзака.
Сенсорный датчик используется для переключения между режимами.
Как мне его построить?
Подключите компоненты в соответствии со схемой ниже.
Как только вы это сделаете, импортируйте библиотеки в раздел под названием «Код», что вы можете сделать (при условии, что вы открыли IDE Arduino), перейдя в «Скетч» -> «Включить библиотеку» -> «Добавить .ZIP-библиотеку». .. 'и выберите библиотеку (это должен быть файл .zip). Обе библиотеки необходимы для работы кода.
Когда все это будет сделано, вы можете загрузить приведенный ниже код.
Код
- Код
Код Arduino
Загрузите его в Arduino.#include#include #define trigPin 7 # define echoPin 6 # define buzzer 9 # define backlight 10LiquidCrystal lcd (12, 11, 5, 4, 3 , 8); UltraSonicDistanceSensor distanceSensor (trigPin, echoPin); int tempReading; double tempK; float tempC; int rounded; int temp_round; volatile boolean mode =0; double distance; void setup () {lcd.begin (16, 2); attachInterrupt (0, changeMode, ПАДЕНИЕ); pinMode (2, ВХОД); pinMode (зуммер, ВЫХОД); pinMode (подсветка, ВЫХОД); digitalWrite (подсветка, ВЫСОКАЯ); backlightOn ();} недействительный цикл () {tempReading =analogRead (A0); tempK =журнал (10000.0 * ((1024.0 / tempReading - 1))); tempK =1 / (0,001129148 + (0,000234125 + (0,0000000876741 * tempK * tempK)) * tempK); tempC =tempK - 273,15; distance =distanceSensor.measureDistanceCm (tempC); temp_round =круглый (tempC); если (режимы ==1) {backlightOn (); если (расстояние> =300 || расстояние <=0) {округлено =0; lcd.clear (); lcd.print («Вне диапазона»); lcd.setCursor (0, 1); lcd.print ("Температура:" + String (temp_round) + "C"); } else {округлено =круглое (расстояние); lcd.clear (); lcd.print ("Расстояние:"); lcd.print (закругленный); lcd.print ("см"); lcd.setCursor (0, 1); lcd.print ("Температура:" + String (temp_round) + "C"); }} else {если (расстояние> =300 || расстояние <=0) {округлено =0; lcd.clear (); backlightOff (); } else {округлено =круглое (расстояние); если (расстояние> =200) {backlightOff (); lcd.clear (); } иначе, если (расстояние <=200 &&расстояние> 100) {backlightOn (); lcd.clear (); lcd.print («Пожалуйста, держитесь подальше»); lcd.setCursor (0, 1); lcd.print ("Расстояние:"); lcd.print (закругленный); lcd.print ("см"); } иначе, если (расстояние <=100 &&расстояние> 50) {backlightOn (); lcd.clear (); lcd.print («Держаться подальше»); lcd.setCursor (0, 1); lcd.print ("Расстояние:"); lcd.print (закругленный); lcd.print ("см"); задержка (200); гул(); backlightOff (); задержка (100); unbuzz (); backlightOn (); задержка (100); } иначе, если (расстояние <=50) {backlightOn (); lcd.clear (); lcd.print («УЙДИТЕ!»); lcd.setCursor (0, 1); lcd.print ("Расстояние:"); lcd.print (закругленный); lcd.print ("см"); задержка (200); гул(); backlightOff (); задержка (200); unbuzz (); backlightOn (); задержка (200); гул(); backlightOff (); задержка (200); unbuzz (); backlightOn (); }}} delay (700);} void changeMode () {Mode =! Mode;} void backlightOn () {digitalWrite (backlight, HIGH);} void backlightOff () {digitalWrite (backlight, LOW);} void buzz () {digitalWrite (buzzer, HIGH);} void unbuzz () {digitalWrite (buzzer, LOW);}
arduino-lib-hc-sr04-master.zip
https://github.com/Martinsos/arduino-lib-hc-sr04LiquidCrystal.zip
https://github.com/arduino-libraries/LiquidCrystalСхема
coronavirus_distancing_WQxTcxgmYm.fzzПроизводственный процесс
- Сборка Squid Games Doll с использованием Arduino UNO
- Часы Arduino с исламским временем молитв
- Робототехническая система для обнаружения человека с использованием Arduino Uno
- WebServerBlink с использованием Arduino Uno WiFi
- Простой калькулятор UNO
- Отображение изображения на ЖК-экране TFT с помощью Arduino UNO!
- Постоянство видения
- Борьба с коронавирусом:таймер простой ручной стирки
- Управление светодиодной матрицей с помощью Arduino Uno
- 4-контактный ШИМ-контроль вентилятора, 25 кГц, с Arduino Uno