Сигнализация на Arduino, оповещающая об исчезновении напряжения сети
Порой бывает необходимо знать, не обесточено ли помещение в данный момент. А если все же оно было обесточено, то желательно быть своевременно проинформированным о его появлении. Ведь такие электроприборы как, например, холодильники не стоит надолго оставлять без света, и в случае его исчезновения нужно принимать соответствующие действия.
Столкнувшись с подобной проблемой, инженер Lauters Mehdi изобрел несложную сигнализацию на базе Arduino и телефона Nokia 3310, оповещающую об исчезновении и появлении сетевого напряжения. Она отсылает sms-сообщения на определенные номера и стоит дешевле своих коммерческих аналогов.
Связь с телефоном осуществляется по протоколу FBus. Ниже представлена структура кадра этого протокола:
Lauters Mehdi пытался найти в интернете библиотеку для протокола FBus, которая была бы объектно-ориентированной, кроссплатформенной и работала бы на устройствах с небольшим количеством оперативной памяти. После того, как его поиски не увенчались успехом, он написал небольшую программу, которая позволяет пересылать fbus-команды с компьютера на телефон через Arduino UNO (который выступает в качестве простого ретранслятора последовательной шины): arduinoSerialTransceiver. С такой программой ваша Нокия будет доступна через последовательный порт компьютера, и сами команды можно проверять с этого компьютера.
Затем Mehdi на компьютере с ОС Linux запустил тестовую программу на основе библиотеки n61sms.c для передачи fbus-команд. Исходники можно взять тут: Nokia3310_sendSmsSerial.
Схема подключения следующая:
Нумерация выводов:
Воспользовавшись всем этим, вы сможете отправить смс с вашего Arduino. Но вы также при желании можете заменить стандартный аккумулятор Nokia на свой элемент питания (например, на 9-вольтовую батарейку). Поэтому ниже приведена схема для подключения источника питания.
Для включения и выключения телефона достаточно кнопки сброса на землю. Для переключения платы на резервный источник питания без перезагрузки используется реле с конденсатором. Этим вторичным источником питания в данном случае является батарейка 9 В. Вся схема:
В итоге была собрана дешевая и полностью рабочая сигнализация на Arduino Micro. Исходники можно найти на гитхабе, а ниже представлены изображения этой самоделки: