Статьи » Разработки
Добавить статью

Мытьё рук - профилактика коронавируса covid-19

2020-04-03 в 10:18 (последнее изменение 2021-03-12 в 09:43)

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

Так, например, живущий в Индии автор сайта Arduino Project Hub под ником Random Stuff We Make изготовил таймер мытья рук на Arduino Uno, и делится его описанием и прошивкой под лицензией GPL версии 3 и выше по вашему выбору. Описание конструкции размещено по адресу https://create.arduino.cc/project....11734a?

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

Модуль датчика приближения - стандартный, на ОУ LM358. Он продаётся во многих интернет-магазине arduino, либо может быть собран самостоятельно по схеме.

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

Вывод информации производится при помощи RGB-светодиода, который при желании можно заменить тремя разноцветными светодиодами, соединив их по схеме с общим катодом. Или белыми светодиодами с цветными фильтрами. Или одинаковыми светодиодами с поясняющими табличками. Впрочем, изучив скетч, вы обнаружите, что синий светодиод не используется, а значит, и необязателен, хотя вы можете придумать ему применение и модифицировать код:

Код
/* The following code is developed by members of Random Stuff Community.
  for further information or ideas, please keep following "Random Stuff We Make" on instagram
*/

void setup()  
{
pinMode(2,OUTPUT); //RED
pinMode(3,OUTPUT); //GREEN
pinMode(4,OUTPUT); //BLUE
pinMode(5,INPUT); //IR sensor
Serial.begin(9600);
}

void loop()  
{
  int a= digitalRead(5);
  Serial.println(a);
  delay(100);

  digitalWrite(2,LOW); //RED off
  digitalWrite(3,HIGH); //GREEN on by default
  digitalWrite(4,LOW); //BLUE off

  if(a==1)
  {  
  digitalWrite(3,LOW);
  digitalWrite(4,LOW);
   
  for(int i=0; i<20; i++)
  {
  digitalWrite(2,HIGH);
  delay(1000);
  }  
  digitalWrite(2,LOW);
  }
}

Алгоритм работы таймера следующий: обнаружив, что вы начали мыть руки, устройство включает зелёный светодиод, а через 20 секунд выключает его, а красный - включает. Затем выключает, когда вы убираете руки. Автор просит читателей закрывать воду на время намыливания рук. Скетч может быть переделан на применение емкостного датчика вместо оптического, также можно добавить поддержку какого-либо дисплея и/или звукоизлучателя. Неплохо также добавить вывод сообщений в монитор последовательного порта - пригодится при отладке.

Оптический датчик и RGB-светодиод подключаются к Arduino так:

Поскольку в ванной комнате повышенная влажность и множество заземлённых предметов, сетевое питание таймера недопустимо. Пересобрав конструкцию заново пайкой после отладки на breadboard'е, нужно поместить её в старый, но предварительно проверенный герметичный бокс для фотоаппарата вместе с небольшим пауэрбанком. Подобрать такое размещение устройства в ванной комнате, чтобы датчик уверенно реагировал на начало мытья рук. Извлекать пауэрбанк из бокса и заряжать его следует вне ванной комнаты. Так, как на этом фото, оформлять конструкцию не следует:

Если Arduino нет, а изготовить такую вещь нужно срочно, можно поместить в такой же герметичный бокс любой дешёвый будильник с секундной стрелкой, закрепив его там так, чтобы ручки не касались стенок, которые могут мешать им вращаться. Начав мыть руки, следует заметить текущее положение секундной стрелки, и прекращать мытьё не раньше, чем пройдут 20 секунд.


Не пропустите обновления! Подписывайтесь на нашу группу Вконтакте.
Так же у нас есть Telegram канал.
Вам понравился наш материал? Поделитесь с коллегами!

Просмотров: 2293. Оценка статьи: 3.0 из 5. Уже оценило 2 читателя

Об авторе - tormozedison

More by tormozedison

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]