Необходимо собрать на RPi (или любой подходящий STM32) метеостанцию.
Метеостанция включает в себя следующие датчики:
- температура, влажность, давление воздуха – BME280
- датчик направления ветра
- датчик скорости ветра
- датчик ультрафиолетового излучения
- датчики температуры DS18b20 (1-3 шт)
- датчики влажности почвы (1-3шт)
- GSM-модем
- GPS
- Светодиодная индикация состояния
- Кнопки включения\перезагрузки
- Концевик (или геркон, или датчик движения) для сигнализации вскрытия корпуса
Питание (возможно будет заниматься другой человек, сможем обсудить с кандидатом или сможет сделать эту часть работы):
- Питание от АКБ 10+Ач и солнечной панели
- Контроллер заряда АКБ
- Разводка питания ко всем элементам устройства
- Развязка по необходимым уровням
- Съем уровня заряда АКБ
- Спящий режим
- Возможность автономной работы до 3х месяцев.
Принцип работы
- Включение
- Подключение GSM, синхронизация по времени (можно и с GPS)
- Подключение GPS
- Отправка на сервер данных: состояние, GPS, уровень заряда АКБ, состояние двери
- Снятие показаний всех датчиков в любом удобном порядке
- Формирование пакета данных в определенном формате (добавляется время, номер пакета, состояние АКБ)
- Отправка HTTP POST или IP по GSM на сервер
- Сон на 15 мин (минус время нужное для отправки)
- Далее снова с п.5.
- Раз в сутки отправлять пакет состояния как в п. 4.
С некоторых датчиков нужно будет снять 5-10 значений, найти среднее и его отправить.
Аварийные ситуации
1. Если нет подключения к интернету по GSM:
1.Повторная попытка
2. Если п.1 снова нет подключения - перезагрузка GSM
3. Если п.2. снова нет подключения – отправка SMS на номер в памяти
4. Повторять попытки пп. 1-3 каждые 30 мин
5.После появления сети:
1. Отправить пакет состояния
2. Отправить пакет данных
2.Нет показаний с любых датчиков:
1. Перезагрузка датчика
2. Если неуспешно – отправка данных, вместо неснятых данных отправить код, который будет соответствовать причине отсутствия данных (нет показаний, нет связи, не обнаружен, ошибка считывания (если датчик дает такую информацию при запросе))
3. Открытие дверцы
1. Отправка пакета состояния
2. Отправка SMS с аварийным сообщением
Список авариных ситуаций может быть расширен. По всем ним можно сделать Alarm Codes, которые будут соответствовать той или другой аварии, или их совокупности.
Удаленный функционал:
Путем отправки запросов на GSM модем должна быть возможность:
- изменить сервер для отправки данных
- изменить частоту отправки
- изменить аварийный телефонный номер
- запросить пакет состояния
- перезагрузить все
Так же устройство должно хранить данные за последние 60дней на SD-карте
ТЗ приблизительное (возможно будет как добавление функционала так и упрощение). Подбор датчиков ветра, влажности почвы, ультрафиолетового излучения в процессе. Но все будут промышленные.
С кандидатом готовы обсудить детали, сотрудничество