Оглавление:
- Шаг 1. Окончательно отключите Omnik от Интернета
- Шаг 2. Загрузите и настройте программное обеспечение для Wemos D1
- Шаг 3. Несколько слов о сообщениях, брокере и тестировании
Видео: Инвертор Omnik Off It's Cloud и на моем MQTT: 3 шага (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
У меня есть солнечная энергетическая установка, использующая струнный инвертор Omnik. Omnik - китайский производитель фотоэлектрических инверторов, которые производят чрезвычайно эффективные устройства. При желании вы можете установить модуль WiFi, чтобы он «подключился». Я очень доволен устройством, за двумя заметными исключениями.
- Он «звонит домой» в облачный сервис, расположенный в Китае, и пока устройство подключено к Интернету, его нельзя отключить. Мне это не нравится.
- У инвертора нет достойного документированного API (как и у облачного сервиса). Поскольку домашняя автоматизация и устройства IoT тяготеют к сообщениям MQTT, я хотел, чтобы они отправляли сообщения MQTT.
Для этого проекта, который решает обе проблемы, мы обращаемся к нашему придирчивому, но надежному другу ESP8266. Я использовал Wemos D1, но можно использовать любое воплощение, которое вам нравится. В планах:
- Не давайте модулю WiFi инвертора никаких учетных данных для домашней сети Wi-Fi. Это решает проблему 1.
- Позвольте Wemos периодически подключаться к точке доступа инвертора для получения нужных нам данных. Для этого мы можем использовать реверсивный не-веб-протокол. Я использовал этот код как отправную точку.
- Затем отключитесь, подключитесь к домашней сети и опубликуйте указанные данные как сообщение MQTT.
Наша спецификация материалов предельно проста:
- Один Wemos D1, который можно приобрести на веб-сайте Wemos или на вашем любимом аукционе;
- Один блок питания USB с кабелем USB-mini.
Никакой проводки не требуется. Стоимость ниже 10 евро.
Я полагаю, у вас уже есть
- инвертор Omnik с установленным WiFi-модулем;
- инфраструктура MQTT (брокер, дашборд);
- последняя версия Arduino IDE с установленной поддержкой процессора ESP8266.
- некоторое знакомство с вышеизложенным.
Существует довольно много инструкций по MQTT и использованию Arduino IDE для процессора ESP8266, но не стесняйтесь спрашивать в разделе комментариев.
Шаг 1. Окончательно отключите Omnik от Интернета
Если, как и я, у вас был инвертор, подключенный к вашей сети Wi-Fi, отключить его на удивление сложно. Любые изменения, которые вы вносите в настройки Wi-Fi, проверяются перед их применением. Вместо того, чтобы прыгать через обруч, например, менять пароль шифрования маршрутизатора и инвертора, а затем снова менять маршрутизатор, я решил применить более чистый подход и начать с нуля.
Подойдите к инвертору и выполните следующие действия:
- нажимайте кнопку «Вниз», пока не замигает «Установить», затем нажмите «Ввод».
- Нажимайте кнопку «Вниз», пока не замигает WiFi, затем нажмите «Ввод».
- Нажмите кнопку «Вверх», чтобы замигало «Да», затем нажмите «Ввод».
Подключите к инвертору
Откройте свой компьютер и найдите сеть Wi-Fi под названием AP_xxxxxxxx, символ x. Подключитесь к нему. В зависимости от операционной системы вам может сначала потребоваться «забыть» эту сеть, если вы уже подключались к ней раньше, поскольку теперь возможно сохраненный пароль WiFi исчез.
Защитите точку доступа инвертора
После подключения откройте браузер, введите 10.10.100.254 и нажмите Enter. Появится всплывающее окно входа в систему. Введите admin в оба поля для входа в систему. НЕ следуйте указаниям мастера и настраивайте точку доступа. Нажмите «Дополнительно» в меню слева, затем в подменю «Беспроводная точка».
Сделайте следующие изменения:
- Метод шифрования в WPA2PSK
- Тип шифрования в TKIP
- Введите пароль WiFi. Запишите пароль, он понадобится вам для подключения к инвертору в ближайшее время.
Нажмите «Сохранить», и модуль Wi-Fi перезапустится. Вы потеряете соединение, так как теперь требуется пароль. Повторно подключитесь и введите пароль Wi-Fi. Опять же, вам может потребоваться сначала заставить ваш компьютер «забыть» сеть AP_xxxxxxxx. Теперь вы должны снова подключиться к инвертору по защищенному каналу Wi-Fi.
Защитите страницы конфигурации инвертора
Откройте браузер, введите 10.10.100.254 и снова нажмите Enter. Появится всплывающее окно входа в систему. Снова введите admin в обоих полях, чтобы войти в систему. Нажмите «Учетная запись» в меню слева. Измените имя пользователя и пароль на две уникальные нетривиальные строки. Вам придется ввести их оба дважды. Запишите их. Нажмите «Сохранить», и модуль Wi-Fi перезапустится. Подождите несколько секунд и перезагрузите страницу. Убедитесь, что теперь вам нужны новое имя пользователя и пароль для открытия страниц конфигурации. Теперь ваш инвертор имеет дополнительный уровень защиты от изменений, внесенных посторонними лицами.
На этом все работы, которые необходимо проделать с инвертором, завершены. Теперь он отключен от Интернета, в достаточной степени защищен, но по-прежнему действует как точка доступа Wi-Fi, которую мы можем использовать для запроса.
Шаг 2. Загрузите и настройте программное обеспечение для Wemos D1
Загрузите программное обеспечение для Wemos. Вы можете найти код здесь. Вам нужно внести несколько изменений, чтобы настроить его для вашей домашней сети и вашего инвертора.
- homeSsid: имя вашей домашней сети Wi-Fi.
- homePassword: пароль вашей домашней сети Wi-Fi.
- omnikSsid: имя вашей сети Omnik WiFi. Должно получиться AP_xxxxxxxxx
- omnikPassword: пароль вашей сети Omnik WiFi, который вы указали на предыдущем шаге.
- omnikIP: IP-адрес инвертора. Это всегда {10, 10, 100, 254}
- omnikCommand: байтовая строка, необходимая для запроса вашего инвертора, см. ниже.
- mqtt_server: имя хоста вашего брокера MQTT
- mqtt_port: номер порта TCP, обычно 1883 для небезопасных или 8883 для безопасных (SSL) соединений.
- mqtt_username и mqtt_password: учетные данные вашего брокера MQTT.
- mqtt_clientID: введите здесь случайные цифры
- mqtt_outTopic: тема сообщений MQTT.
Байтовый массив omnikCommand зависит от конкретного инвертора. Я опубликовал небольшой инструмент в виде электронной таблицы Google для вычисления строки. Вам нужно ввести серийный номер (около 10 десятичных цифр) в ячейку B1 и использовать строку, вычисленную в ячейке B4 в вашем эскизе.
Для успешной компиляции кода вам также понадобится библиотека PubSubClient.h. Убедитесь, что выбраны подходящая плата (Wemos D1) и порт, затем загрузите эскиз на плату. Вы можете поместить маленькую доску Wemos в небольшой пластиковый контейнер для защиты и подключить ее к источнику питания USB. Поместите его где-нибудь не слишком далеко от инвертора и вашего WiFi-роутера, и все готово!
Основной цикл в программном обеспечении подключается к инвертору WiFi, затем устанавливает TCP-соединение с ним, считывает данные, отключается, подключается к домашней сети WiFi, затем к брокеру MQTT и публикует отформатированные данные там. Все это подключение и отключение занимает чуть менее 15 секунд. После этого идет задержка в 20 секунд, поэтому данные должны публиковаться примерно каждые 35 секунд.
Шаг 3. Несколько слов о сообщениях, брокере и тестировании
Код выводит немного отладочных данных, поэтому, если что-то не работает, просто снова подключите WeMos к компьютеру, запустите Arduino IDE и нажмите CTRL + SHFT + M, чтобы запустить последовательную консоль. Убедитесь, что скорость установлена на 115200.
Вы можете использовать своего собственного брокера или использовать облачный сервис. Я использую свой собственный Mosquitto, установленный на моем NAS-устройстве Synology. Если вас устраивает облачный сервис, вы можете использовать Adafruit, Amazon AWS или любой другой.
Сообщения представляют собой строки JSON, отформатированные следующим образом:
При загрузке публикуется следующее сообщение:
Это можно использовать для обнаружения неожиданных перезагрузок.
Обычные сообщения выглядят так:
{«acPowerNow»: 580, «acVoltageNow»: 233,8, «acCurrentNow»: 2,5, «dcVoltage»: 410,8, «dcCurrent»: 1,4, «частота»: 49,96, «energyToday»: 12,16, «energyTotal»: 6082,7, » temperatureHeatsink »: 32,5}
Мощность в ваттах, напряжение в вольтах, ток в амперах, частота в герцах, энергия в киловатт-часах и температура в градусах Цельсия.
Я использую mosquitto_sub для проверки сообщений.
mosquitto_sub -h имя хоста -t "Solar / Omnik" -u пользователь -P пароль -p 1883 -v
Результаты см. На снимке экрана. Все сообщения публикуются с установленным флагом сохранения true.
На моем телефоне я использую приложение под названием MQTT Dash, и я добавил снимок экрана и что нужно ввести, чтобы показать этот зеленый диск питания.
Рекомендуемые:
Самый эффективный автономный солнечный инвертор в мире: 3 шага (с изображениями)
Самый эффективный автономный солнечный инвертор в мире: будущее за солнечной энергией. Панели могут прослужить много десятилетий. Допустим, у вас автономная солнечная система. У вас есть холодильник с морозильной камерой и множество других вещей, которые можно использовать в вашей красивой удаленной хижине. Вы не можете позволить себе выбрасывать энергию
DIMP (десульфатор в моем кармане): 22 шага (с изображениями)
DIMP (десульфатор в моем кармане): Майки Склар создал DA PIMP («Power In My Pocket») версий 1 и 2 на основе статьи Джорджа Вайзмана «Емкостное зарядное устройство»; и щедро представил его сообществу разработчиков аппаратного обеспечения. Он способен заряжать и десульфатировать
Как сделать инвертор с 12 В постоянного тока до 220 В переменного тока: 4 шага (с изображениями)
Как сделать инвертор с 12 В постоянного тока до 220 В переменного тока: Здравствуйте, ребята, в этой инструкции я проинструктирую вас сделать свой собственный инвертор с 12 В постоянного тока до 220 В переменного тока с меньшим количеством компонентов. В этом проекте я использую микросхему таймера 555 в режиме нестабильного мультивибратора для генерации прямоугольной волны на частоте 50 Гц. Подробнее
Кнопка питания Super Ghetto на моем Oneplus One (должна работать на чем угодно): 3 шага
Кнопка питания Super Ghetto на моем Oneplus One (должна работать на чем угодно): Проблема: все кнопки на моем телефоне сломаны. Их замена - только временное решение, так как у меня сломана задняя крышка, и я нигде не могу найти замену, которая не превышала бы цену использованного OPO, но я подумал, почему бы не обновить, если я
GPS на моем Toughbook: 7 шагов (с изображениями)
GPS на моем Toughbook: У меня от жены отличный ноутбук. Это Panasonic Toughbook CF-53 - лучшее решение для меня. Я использую Linux и использую компьютер в основном для своих проектов. Это означает, что я часто не забочусь об оборудовании. Также я довольно часто