Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Смягчение шока с помощью Superflux: наш сайт
Этот Instructables является продолжением системы Fogponic. Здесь у вас будет больше возможностей для измерения данных с вашего компьютера теплицы и управления несколькими операциями, такими как поток водяного насоса, время освещения, интенсивность вентилятора, туманообразователи и все другие контроллеры, которые вы стремитесь добавить в свой Fogponic. проект.
Шаг 1. Установите ESP 8266-01 Wifi Shield на Arduino
Минимальные требования к материалам:
- Ардуино MEGA 2560
- ESP 8266-01 Щит
- Смартфон
- Wi-Fi соединение
Связь:
- ARDUINO --- ESP 8266
- 3 В --- VCC
- 3 В --- CH_PD
- GND --- GND
- RX0 --- TX
- TX0 --- RX
Шаг 2: Настройте ESP8266-12 Shield
Несколько шагов, которые нужно выполнить:
- После подключения экрана ESP866-91 к Arduino вам необходимо загрузить пример Bareminimum, чтобы удалить предыдущий код на вашей плате.
- Загрузите код в Arduino, откройте Serial monitor, установите Baudrate на 115200 и установите NL и CR.
- В Serial Monitor введите следующую команду: AT. Обычно вы должны получить сообщение «ОК». Если нет, поменяйте местами следующие провода: RX и TX Arduino. В зависимости от щита положение ствольной коробки может быть разным.
- Вам нужно будет настроить РЕЖИМ вашего щита. Существует 3 разных варианта: станция (1), режим AP (2) и точка доступа + станция (3). Для MOS нам просто нужно получить первый режим, введите следующую команду: AT + CWMODE = 1. Если щит настроен правильно, вы получите сообщение «ОК». Вы можете узнать, в каком РЕЖИМЕ вы находитесь, набрав: AR + CWMODE?
- Чтобы подключить ESP8266-01 к вашему типу подключения Wi-Fi: AT + CWJAP = «Сеть Wi-Fi», «Пароль»
- Отличная работа! Прототип MOS подключен к Интернету. Теперь нам нужно подключить ESP8266 к приложению.
Шаг 3. Настройте подключение к Wi-Fi
#include #define BLYNK_PRINT Serial2 #include #include #define EspSerial Serial2 ESP8266 wifi (EspSerial); char auth = «b02cfbbfd2b34fd1826ec0718613306c»; #include #include
void setup () {
Serial2.begin (9600); задержка (10); EspSerial.begin (115200); задержка (10); Blynk.begin (авторизация, Wi-Fi, «ИМЯ ПОЛЬЗОВАТЕЛЯ», »ПАРОЛЬ»); timer.setInterval (3000L, время отправки); }
void sendUptime () {
Blynk.virtualWrite (V1, DHT. Температура); Blynk.virtualWrite (V2, DHT.humidity); Blynk.virtualWrite (23, м); }
пустой цикл ()
{rtc.begin (); timer.run (); Blynk.run ();
}
- Загрузите и установите последнюю библиотеку Blynk в папку библиотеки вашей программы Arduino.
- Загрузите и установите последнюю библиотеку Blynk ESP8266 в папку библиотеки. Возможно, вам потребуется заменить esp8226.cp другой версией.
- Установите приложение BLYNK в магазине приложений или Google Play и создайте новый проект.
- Скопируйте / вставьте приведенный выше код в новый эскиз Arduino. Вам нужно будет изменить поле char auth на ключ аутентификации из вашего проекта BLYNK. Текущий ключ приложения MOS - «b02cfbbfd2b34fd1826ec0718613306c».
- Напишите, что вы используете доску wi, и свой пароль в следующей строке: Blynk.begin (auth, wifi, «???», «???»);.
- Запустите скетч Arduino и откройте Serial Monitor. Не забудьте изменить Baudrate на 115200 и линейную кодировку на «Both NL and CR».
- Через несколько секунд MOS Arduino обычно подключается к Интернету. Пришло время создать приложение MOS Blynk!
Шаг 4. Изучите и примените язык BLYNK
Blynk хорошо адаптирован к языку Arduino. Одна из особенностей Blynk заключается в использовании цифровых, аналоговых, а также виртуальных контактов. В зависимости от контроллера, датчика или фейдера вам нужно будет написать виртуальные линии в эскизе приложения Arduino.
- Пример виртуальной записи на скетче Arduino: Blynk.virtualWrite (pin, action);
- Вы можете добавить в приложение все нужные виджеты, выполнив указанные выше действия.
- Но имейте в виду, что некоторым датчикам потребуется внести некоторые изменения в исходный код, чтобы он соответствовал приложению BLYNK.
Например, DHT-11 + BLYNK:
- Убедитесь, что не выставили задержку для кода настройки недействительности после последней задержки (10); Timer.setInterval (1000, Senduptime) используется в качестве задержки для экрана ESP8266-01, а не для последовательного монитора. Вам нужно установить как минимум 1000 миллисекунд на эту задержку, иначе ESP-щит будет бороться с отправкой и получением информации.
- Вам нужно будет обновить библиотеку DHT для приложения Blynk. Для этого вы можете загрузить новую библиотеку DHT, набрав DHT.h и DHT11.h в Google. Есть хороший репертуар Github с библиотекой DHT внутри.
- Большое изменение находится в void sendUptime () с новой библиотекой DHT, вам просто нужно будет установить виртуальный контакт, который вы хотите, с желаемым условием: температура или влажность. Итак, давайте посмотрим на пример строки, которую вы можете написать для отправки данных о влажности или температуре в приложение Blynk: Blynk.virtualWrite (V1, DHT.temperature);. Blynk.virtualWrite (виртуальный пин, датчик).
- Void loop () получает два новых условия: Blynk.run (); и timer.run ();. Но также, даже если вы вызвали DHT в пустоте ниже, которая функционирует как цикл void (), вам также нужно будет вызвать датчик в последней пустоте.
#include dht11 DHT; #define DHT11_PIN A0 #include SimpleTimer timer; #include #define BLYNK_PRINT Serial #include #include #de ne EspSerial Serial ESP8266 wi (EspSerial); char auth = «b02cfbbfd2b34fd1826ec0718613306c»; #include #include
void setup () {
Serial2.begin (9600); задержка (10); EspSerial.begin (115200); задержка (10); timer.setInterval (1000, sendUptime); }
недействительным sendUptime ()
{Blynk.virtualWrite (V1, DHT.temperature); Blynk.virtualWrite (V2, DHT.humidity); }
void loop () {
int chk = DHT.read (DHT11_PIN); timer.run (); Blynk.run ();
}