Бесконтактный автоматический открыватель двери с измерением температуры
Компоненты и материалы
| Arduino UNO | × | 1 |
| LCD 2004 с I2C | × | 1 |
| GY-906-BCC — ИК-термометр (MLX90614) | × | 1 |
| Два сервопривода Tower Pro MG90S | × | 1 комплект |
| Зуммер | × | 1 |
| PIR-датчик HC-SR501 | × | 1 |
О проекте
Цель — автоматически открывать дверь при нормальной температуре тела. Проект помогает не пускать людей с повышенной температурой (COVID-19), повышая безопасность помещения.
Использованные детали (ссылки на Amazon в оригинале):
- Arduino UNO
- LCD 2004 I2C
- GY-906-BCC (MLX90614)
- 2× MG90S сервопривода
- Зуммер
- HC-SR501 PIR-датчик
Код: GitHub
Спасибо за внимание! Будьте здоровы! #Arduino #COVID-19
Код
autodoor.ino (Arduino)
#include <LiquidCrystal_I2C.h>
#include <Servo.h>
#include <Wire.h>
#include <Adafruit_MLX90614.h>
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
LiquidCrystal_I2C lcd(0x27, 20, 4);
Servo myservo1;
Servo myservo2;
#define red 13
#define haha 4
int pos1, pos2;
void setup() {
Serial.begin(9600);
pinMode(red, OUTPUT);
pinMode(haha, INPUT);
myservo1.attach(7);
myservo2.attach(8);
myservo1.write(90);
myservo2.write(90);
mlx.begin();
lcd.init();
lcd.backlight();
}
void loop() {
int motion = digitalRead(haha);
if(motion == 1) {
Serial.print("motion\n");
lcd.setCursor(0,0);
lcd.print("ObjectTemp:");
lcd.setCursor(13,3);
lcd.print("-DKARDU");
kaiguan();
}
}
void kaiguan(){
int temp_obj = mlx.readObjectTempC();
Serial.print(temp_obj);
Serial.print("\n");
if(temp_obj < 31){
lcd.setCursor(0,1);
lcd.print(temp_obj);
lcd.setCursor(0,2);
lcd.print("Not detected,retest!");
}
if(temp_obj > 30 && temp_obj < 38){
lcd.setCursor(0,1);
lcd.print(temp_obj);
lcd.setCursor(0,2);
lcd.print("body temperature ok ");
for(pos1 = 90; pos1 <= 180; pos1 += 1) {
myservo1.write(pos1);
myservo2.write(180-pos1);
delay(15);
}
delay(5000);
for(pos1 = 180; pos1 >= 90; pos1 -= 1) {
myservo1.write(pos1);
myservo2.write(180-pos1);
delay(15);
}
}
if(temp_obj > 37){
digitalWrite(red, HIGH);
lcd.setCursor(0,1);
lcd.print(temp_obj);
lcd.setCursor(0,2);
lcd.print(" Keep out! ");
delay(500);
}
digitalWrite(red, LOW);
}
Схемы

Производственный процесс
- Создание робота на Arduino и Raspberry Pi: пошаговое руководство
- Полное руководство по производству стекловолокна
- Создание анимации прогрессивного среза в SolidWorks — Пошаговый урок
- Создайте выигрывающий прототип: Пошаговое руководство для быстрой разработки продукта
- Осмотр тормозов спецтехники: инструкция по проверке и требования ОСНА (OSHA)
- Проверка тормозов тяжёлой техники: безопасность и соответствие OSHA
- Принцип работы механической и автоматической коробки передач
- Автоматическая коробка передач: полное руководство — виды, узлы, принцип работы
- Автоматические системы смазки (ALS): принципы, виды, компоненты и преимущества
- Пошаговое руководство по ремонту ручки автомобильной двери