Делаем элементарный напоминатель на основе Ардуино, который вовремя подскажет о необходимости принять лекарства.
О проекте
Этот урок предназначен для тех, кто делает первые шаги в изучении микроконтроллеров и радиоэлектроники. Мы сделаем смарт-устройство на базе Arduino, которое помогает вовремя принимать лекарства.
Многим людям нужно время от времени принимать лекарства. Кроме того, еще большему числу людей нужно заботиться о своих родителях, близких и пожилых людях.
Своевременный прием лекарств - очень важная задача, особенно если это антибиотики. Теперь, даже если вас нет рядом, автоматический напоминатель о лекарствах позаботится о родных и близких.
Компоненты
Для создания нашего устройства, которое вовремя напомнит про лекарства, нужно совсем минимальный набор инструментов:
- Arduino Pro Mini
- Зуммер
- Светодиод
Из программного обеспечения нам нужно иметь установленную версию Arduino IDE.
Принцип работы
Я хотел сделать устройство как можно более простым. Поэтому я не использовал модуль RTC, но для работы использовал функцию задержки Arduino.
Итак, суть проекта: после перезапуска Arduino ждет 24 часа, а затем издает звуковой сигнал через зуммер, который не остановится, пока вы не нажмете кнопку перезапуска, а это означает, что вам нужно добраться до своей аптечки, чтобы отключить сигнал тревоги, и после того, как вы нажмете кнопку, устройство снова подаст сигнал через 24 часа.
Вы сможете изменить задержку в соответствии с вашими пожеланиями, потому что некоторые лекарства нужно принимать чаще чем 1 раз в сутки.
Схема соединения
Соедините контакты следующим образом:
UNO | Pro mini |
5v | vcc |
Gnd | Gnd |
tx | tx |
rx | rx |
reset | rst |
Наглядная схема:
Код проекта
Загрузите код ниже в Arduino Pro Mini. Чтобы запрограммировать Arduino Pro Mini, вам необходимо использовать конвертер USB в TTL, но вы также можете использовать Arduino Uno в качестве конвертера USB в TTL.
У нас нет возможности программирования USB на Pro Mini. Используйте преобразователь USB в TTL или Arduino Uno. В самом проекте мы используем Pro Mini из-за ее размеров.
Кстати, вам может быть интересно сравнить разные платы Ардуино.
const int blue = 3; // подключите СИНИЙ светодиод к контакту 3
int buz = 2; // зуммер на контакте 2
void setup()
{
// инициализировать вывод светодиода и зуммера как выход:
pinMode(blue, OUTPUT);
pinMode(buz,OUTPUT);
}
void loop()
{
tone(buz,1000,100); // звуковой сигнал в течение 1 секунды
delay(86400000); // задержка
goto buz;
buz:
{
digitalWrite(blue, HIGH); // синий светодиод горит
delay(100);
digitalWrite(blue,LOW); // светодиод выключен
delay(100);
tone(buz,1000,150); // старт звукового сигнала
delay(1000);
goto buz;
}
}
Данный код можно дополнить или поправить на GitHub. Друзья, вы можете сделать форк проекта, дополнить его и отправить мне pull request, если изменения будут актуальными.
Если вы не знаете или мало знакомы с GitHub, то ознакомьтесь с курсом Git для начинающих на сайте Uzabila.ru.