sonyps4.ru

Умный дом на базе Ардуино: пошаговая инструкция по сборке. Простое управление вашим Arduino через web

Эта статья посвещенна в основном тем экпериментаторам, которые уже попробовали моргать светодиодыми с помощью Arduino и хотели бы попробовать применить свои контроллеры и приобретенные знания для более серьезных и полезных вещей. Также она будет интересная людям желающим систематизировать свои знания относительно возможности управления силовой нагрузкой и коммутации электрических цепей с помощью одноплатных контроллеров Arduino и им подобных плат.

Для начала давайте рассмотрим характеристики платы. Для примера возьмем Arduino Nano:

Микроконтроллер Atmel ATmega168 или ATmega328
Рабочее напряжение (логическая уровень) 5 В
Входное напряжение (рекомендуемое) 7-12 В
Входное напряжение (предельное) 6-20 В
Цифровые Входы/Выходы 14 (6 из которых могут использоваться как выходы ШИМ)
Аналоговые входы 8
Постоянный ток через вход/выход 40 мА
Флеш-память 16 Кб (ATmega168) или 32 Кб (ATmega328) при этом 2 Кб используются для загрузчика
ОЗУ 1 Кб (ATmega168) или 2 Кб (ATmega328)
EEPROM 512 байт (ATmega168) или 1 Кб (ATmega328)
Тактовая частота 16 МГц
Размеры 1.85 см x 4.2 см

Питание контроллера осуществляется через mini-USB или от нерегулируемого источника 6-20В (вход Vin соединенный со табилизатором напряжения).

Некоторые входы Arduino дуплексированны, тоесть могут выполнять несколько функций, например Pin 3, 5, 6, 9, 10, и 11 помимо возможности дискретных входов и выходов (задается программно) может выполнять функцию ШИМ с разрешением 8 бит и это пригодится нам чуть позже. максимальные выходные характеристики выходов контроллера 5В при токе 40мА

Вернемся к теме данной статьи, первым и самым простым методом управления нагрузкой как постоянного, так и переменного тока является реле . Суть работы которого заключается в управлении контактной группой на выходе (11, 12, 14), подачей напряжения на катушку на входе (А1, А2), которая по средствам магнитной силы двигает свой сердечник в свою очередь механически связанный с контактной группой. У реле есть один большой плюс – это гальваническая развязка между силовой цепью которую оно коммутирует и цепью управления, которая чаще всего низковольтная, в нашем случае катушка реле управляется 5V постоянного тока (DC) напрямую с любого выхода Arduino. Выходная контактная группа обычно состоит из 3 контактов: общий контакт, нормально закрытый NC, и нормально открытый NO. Общая схема реле выглядит следующим образом.


Сборка из 4 реле.


Таким образов с помощью реле можно коммутировать нагрузку до 10 А (согласно спецификации самого реле). Для программной реализации используется функция: digitalWrite(pin, value) . Где value принимает значение HIGH или LOW. Практическая схема, а также программа для управления лампой 250W 220V приведена в статье .

Если же необходимо плавное управление нагрузкой, подходящим инструментом бедет ШИМ регулирование . Как известно выходы ардуино не могут выдавать аналоговых значений в диапазоне 0…5 В, но возможно менять скважность сигнала тем самым получая эффект плавно рагулировки яркости светодиода или скорости электромоторчика. В программе используется функция: analogWrite(pin, value) , в которой value принимает значение от 0…255 (переод работы цикла). Частота же ШИМ сигнала приблизительно 490 Hz.

Для плавной регулировки яркости более мощной нагрузки (постоянного тока), чем обычный светодиод нам понадобится транзисто . Есть как готовые сборки (драйверы) с транзиторами для Arduino. Пример использования транзистора в статье , но также довольно просты в использовании простые транзисторы, цена их будет значительно ниже. В примере будет рассмотрен полевой транзистор STP16NF06 . Это N канальный транзистор, что значит без напряжения на затворе транзистор будет закрыт. Суть прибора заключается в управлении проводимостью канала сток – исток с помощью небольшого напряжения на затворе. Ниже фото устройства собранного мной для управления светододными лентами.


Сток ( drain ) – подача высокого напряжения
Затвор ( gate ) – управляющее напряжения с вых Arduino
Исток ( source ) – протекает ток со стока, когда транзистор открыт

Для наглядности привожу одну из своих схем по управлению светодиодными лентами.


Datasheet на транзистор также прикладываю к этой статье. Наиболее интересующие нас пареметры:

Vgs.th – должно быть в нашем случае не выше 5В. Vgs должно быть не меньше напряжения управляющего сигнала. Чтобы убедиться пропустит ли транзистор достаточный ток при подаче 5В от ардуино достаточно посмотреть на характеристику Id(Vgs).


Также обратите внимание что рассеивающая способность зависит от типа корпуса, для корпуса TO-220 она выше.

Существуют более специфичные схемы управления нагрузкой, например для управления мощными светодиодами, которые приобретают все большую поплярность. Пример такого управления я приводил в статье посвещенной фитолампам (). Особенность этих светодиодов заключается в отсутсвии токоограничивающих резисторов в цепи светодиода, значит постоянное значение тока 300mA для 1W светодиодов и до 700mA для 3W светододов должен поддерживать драйвер . При этом драйвер должен изменять значение своего выходного напряжения в зависимости от количества подключаемых светодиодов, так как светодиоды подключаются последовательно величина напряжения будет равна сумме падений напряжения на каждом светододе для 3W светодиодов это порядка 3V, значит для 5 светодиодов нам понадобится 15V на выходе драйвера и 700mA соответсвенно. Для уравления такими светодиодами я использую драйвер . Есть модификации как для установки на плату так и для наружной установки.


Устройсво имеет сравнительно невысокую стоимость и высокое качество сборки. Часто блоки питания и драйверы Mean well используются в промышленной автоматике.

Интересующие нас параметры:

Входное напряжение DC 9…56 В
Выходное напрядение 2…52 Вт
Постоянный выходной ток ток 600 мА
Вход диммирования 0.8…6 В

Устройство имеет вход для диммирования состояние выкл при V 2.5V DC. Таким образом драйвер можно напрямую подключать к платам ардуино с выходом ШИМ 5V.

Это все методы коммутации нагрузки, которые я хотле рассмотреть сегодня, конечно существуют и други схемы, с применением контакторов, импульсных реле и твердотельных реле, но о них я напишу в слюдеющей статье.

Драйвера мощных светодиодов meanwell LDD-700H datasheet приобрести можно на Aliexpress
Транзистор N канальный STP16NF06 MOSFET

Инфракрасный пульт дистанционного управления — один из самых простых способов взаимодействия с электронными приборами. Так, практически в каждом доме есть несколько таких устройств: телевизор, музыкальный центр, видеоплеер, кондиционер. Но самое интересное применение инфракрасного пульта — дистанционное правление роботом. Собственно, на этом уроке мы попытаемся реализовать такой способ управления с помощью популярного контроллера Ардуино Уно.

1. ИК-пульт

Что нужно для того, чтобы научить робота слушаться инфракрасного (ИК) пульта? Во-первых, нам потребуется сам пульт. Можно использовать обычный пульт от телевизора, а можно приобрести миниатюрный пульт от автомагнитолы. Именно такие пульты часто используются для управления роботами.

На таком пульте есть 10 цифровых кнопок и 11 кнопок для манипуляции с музыкой: громкость, перемотка, play, stop, и т.д. Для наших целей более чем достаточно.

2. ИК-датчик

Во-вторых, для приема сигнала с пульта нам потребуется специальный ИК-датчик. Вообще, мы можем детектировать инфракрасное излучение обычным фотодиодом/фототранзистором, но в отличие от него, наш ИК-датчик воспринимает инфракрасный сигнал только на частоте 38 кГц (иногда 40кГц). Именно такое свойство позволяет датчику игнорировать много посторонних световых шумов от ламп освещения и солнца.

Для этого урока воспользуемся популярным ИК-датчиком VS1838B , который обладает следующими характеристиками:

  • несущая частота: 38 кГц;
  • напряжение питания: 2,7 — 5,5 В;
  • потребляемый ток: 50 мкА.

Можно использовать и другие датчики, например: TSOP4838, TSOP1736, SFH506.

3. Подключение

Датчик имеет три вывода (три ноги). Если посмотреть на датчик со стороны приёмника ИК сигнала, как показано на рисунке,

  • то слева будет - выход на контроллер,
  • по центру - отрицательный контакт питания (земля),
  • и справа - положительный контакт питания (2.7 — 5.5В).

Принципиальная схема подключения

Внешний вид макета

4. Программа

Подключив ИК-датчик будем писать программу для Ардуино Уно. Для этого воспользуемся стандартной библиотекой IRremote , которая предназначена как раз для упрощения работы с приёмом и передачей ИК сигналов. С помощью этой библиотеки будем принимать команды с пульта, и для начала, просто выводить их в окно монитора последовательного порта. Эта программа нам пригодится для того, чтобы понять какой код дает каждая кнопка.

#include "IRremote.h" IRrecv irrecv(2); // указываем вывод, к которому подключен приемник decode_results results; void setup() { Serial.begin(9600); // выставляем скорость COM порта irrecv.enableIRIn(); // запускаем прием } void loop() { if (irrecv.decode(&results)) { // если данные пришли Serial.println(results.value, HEX); // печатаем данные irrecv.resume(); // принимаем следующую команду } }

Загружаем программу на Ардуино. После этого, пробуем получать команды с пульта. Открываем монитор последовательного порта (Ctrl+Shift+M), берём в руки пульт, и направляем его на датчик. Нажимая разные кнопочки, наблюдаем в окне монитора соответствующие этим кнопкам коды.

Проблема с загрузкой программы

В некоторых случаях, при попытке загрузить программу в контроллер, может появиться ошибка:

TDK2 was not declared In his scope

Чтобы ее исправить, достаточно удалить два файла из папки библиотеки. Заходим в проводник. Переходим в папку, где установлено приложение Arduino IDE (скорее всего это «C:\Program Files (x86)\Arduino»). Затем в папку с библиотекой:

…\Arduino\libraries\RobotIRremote

И удаляем файлы: IRremoteTools.cpp и IRremoteTools.h. Затем, перезапускаем Arduino IDE, и снова пробуем загрузить программу на контроллер.

5. Управляем светодиодом с помощью ИК-пульта

Теперь, когда мы знаем, какие коды соответствуют кнопкам пульта, пробуем запрограммировать контроллер на зажигание и гашение светодиода при нажатии на кнопки громкости. Для этого нам потребуется коды (могут отличаться, в зависимости от пульта):

  • FFA857 — увеличение громкости;
  • FFE01F — уменьшение громкости.

В качестве светодиода, используем встроенный светодиод на выводе №13, так что схема подключения останется прежней. Итак, программа:

#include "IRremote.h" IRrecv irrecv(2); // указываем вывод, к которому подключен приемник decode_results results; void setup() { irrecv.enableIRIn(); // запускаем прием } void loop() { if (irrecv.decode(&results)) { // если данные пришли switch (results.value) { case 0xFFA857: digitalWrite(13, HIGH); break; case 0xFFE01F: digitalWrite(13, LOW); break; } irrecv.resume(); // принимаем следующую команду } }

Загружаем на Ардуино и тестируем. Жмем vol+ — светодиод зажигается. Жмем vol- — гаснет. Теперь, зная как это все работает, можно вместо светодиода управлять двигателями робота, или другими самодельными микроэлектронными устройствами!

В данном уроке мы научимся делать простую систему, которая будет отпирать замок по электронному ключу (Метке).

В дальнейшем Вы можете доработать и расширить функционал. Например, добавить функцию "добавление новых ключей и удаления их из памяти". В базовом случае рассмотрим простой пример, когда уникальный идентификатор ключа предварительно задается в коде программы.

В этом уроке нам понадобится:

Для реализации проекта нам необходимо установить библиотеки:

2) Теперь нужно подключить Зуммер, который будет подавать сигнал, если ключ сработал и замок открывается, а второй сигнал, когда замок закрывается.

Зуммер подключаем в следующей последовательности:

Arduino Зуммер
5V VCC
GND GND
pin 5 IO

3) В роли отпирающего механизма будет использоваться сервопривод. Сервопривод может быть выбран любой, в зависимости от требуемых вам размеров и усилий, который создает сервопривод. У сервопривода имеется 3 контакта:

Более наглядно Вы можете посмотреть, как мы подключили все модули на картинке ниже:

Теперь, если все подключено, то можно переходить к программированию.

Скетч:

#include #include #include // библиотека "RFID". #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); unsigned long uidDec, uidDecTemp; // для храниения номера метки в десятичном формате Servo servo; void setup() { Serial.begin(9600); Serial.println("Waiting for card..."); SPI.begin(); // инициализация SPI / Init SPI bus. mfrc522.PCD_Init(); // инициализация MFRC522 / Init MFRC522 card. servo.attach(6); servo.write(0); // устанавливаем серву в закрытое сосотояние } void loop() { // Поиск новой метки if (! mfrc522.PICC_IsNewCardPresent()) { return; } // Выбор метки if (! mfrc522.PICC_ReadCardSerial()) { return; } uidDec = 0; // Выдача серийного номера метки. for (byte i = 0; i < mfrc522.uid.size; i++) { uidDecTemp = mfrc522.uid.uidByte[i]; uidDec = uidDec * 256 + uidDecTemp; } Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 3763966293) // Сравниваем Uid метки, если он равен заданому то серва открывает. { tone(5, 200, 500); // Делаем звуковой сигнал, Открытие servo.write(90); // Поворациваем серву на угол 90 градусов(Отпираем какой либо механизм: задвижку, поворациваем ключ и т.д.) delay(3000); // пауза 3 сек и механизм запирается. tone(5, 500, 500); // Делаем звуковой сигнал, Закрытие } servo.write(0); // устанавливаем серву в закрытое сосотояние }

Разберем скетч более детально:

Для того, что бы узнать UID карточки(Метки), необходимо записать данный скетч в arduino, собрать схему, изложенную выше, и открыть Консоль (Мониторинг последовательного порта). Когда вы поднесете метку к RFID, в консоли выведется номер

Полученный UID необходимо ввести в следующую строчку:

If (uidDec == 3763966293) // Сравниваем Uid метки, если он равен заданному то сервопривод открывает задвижку.

У каждой карточки данный идентификатор уникальный и не повторяется. Таком образом, когда вы поднесете карточку, идентификатор которой вы задали в программе, система откроет доступ с помощью сервопривода.

Видео:

Когда-нибудь задумывались о том, чтобы управлять любыми электронными устройствами с помощью смартфона? Согласитесь, управлять роботом или любыми другими устройствами с вашего смартфона было бы очень круто. Предлагаем простой урок для начинающих и чайников о том как с помощью Arduino через Bluetooth управлять смартфоном. Если вам после этого урока захочется познакомиться с Arduino поближе - вы можете найти книги о нём .

Устройства

Модуль - Bluetooth Module HC 05/06
Плата - Arduino
Светодиод (LED)
Резистор - 220Ω
Android-устройство

Программное обеспечение

Arduino IDE
Android Studio (на самом деле не нужно, т.к. приложение для Андроида вы найдете ниже)

Шаг 2. Как это работает

Обычно мы делаем этот шаг в конце, но, чтобы вы понимали к чему мы должны прийти - посмотрите на результат на этом промежуточном шаге. Также ниже мы опубликовали видео урока по шагам.

Шаг 3. Начинаем собирать схему

Цепь в нашем уроке настолько проста и мала, что нам нужно сделать всего несколько соединений:

Arduino Pins___________Bluetooth Module Pins
RX (Pin 0)___________________TX
TX (Pin 1)___________________RX
5V_________________________VCC
GND_______________________GND

Подключите минус светодиода к GND на Arduino, а плюс к контакту 13 через сопротивление 220 Ом - 1 кОм. В целом, на нашем рисунке ниже всё довольно наглядно.

Не подключайте RX к RX и TX к TX выходы Bluetooth к выходам Arduino, вы не получите никаких данных, здесь TX означает "передача", RX означает "прием".

Теперь нам нужно написать программу и загрузить её в наш Arduino. Если вы этого пока еще не умеете делать - скачайте книги . Код ниже именно то, что нам нужно загрузить в Ардуино.

/* Bluetooh Basic: LED ON OFF * Coder - Mayoogh Girish * Website - http://bit.do/Avishkar * Download the App: https://github.com/Mayoogh/Arduino-Bluetooth-Basic * This program lets you to control a LED on pin 13 of arduino using a bluetooth module */ char data = 0; //Variable for storing received data void setup() { Serial.begin(9600); //Sets the baud for serial data transmission pinMode(13, OUTPUT); //Sets digital pin 13 as output pin } void loop() { if(Serial.available() > 0) // Send data only when you receive data: { data = Serial.read(); //Read the incoming data and store it into variable data Serial.print(data); //Print Value inside data in Serial monitor Serial.print("\n"); //New line if(data == "1") // Checks whether value of data is equal to 1 digitalWrite(13, HIGH); //If value is 1 then LED turns ON else if(data == "0") // Checks whether value of data is equal to 0 digitalWrite(13, LOW); //If value is 0 then LED turns OFF } }

Шаг 5. Как происходит процесс

Модуль HC 05/06 работает по последовательному каналу связи. Андроид-приложение последовательно отправляет данные на модуль Bluetooth, когда вы нажимаете определенную клавишу. Bluetooth на другом конце получает данные и отправить на Arduino через TX-соединение модуля Bluetooth (RX-соединение Arduino) .

Код загруженный в Arduino проверяет полученные данные и сравнивает их. Если получена "1" - светодиод включается и выключается при получении "0". Откройте монитор последовательного порта и наблюдайте полученные данные.

Шаг 6. Приложение для Андроид-устройств

В этом уроке мы не будем касаться создания приложений для устройств на основе Андроида. Вы можете скачать приложение на GitHub.

Как использовать приложение?

После того как мы подключились через Bluetooth - нам нужно скачать и установить приложение, которое при помощи смартфона 🙂 будет управлять нашим светодиодом на расстоянии. Скачать приложение вы можете бесплатно на сайте Амазон.ком. Подсоединяем смартфон к модулю Bluetooth HC 05/06:

  1. Включите модуль HC 05/0
  2. Ищем устройство
  3. Соединяемся с HC 05/06 введя дефолтный пароль "1234" или "0000" (четыре нуля).

После этого мы устанавливаем приложение на наш смартфон. Открываем его. Выбираем устройство - выбираем модуль Bluetooth из списка (HC 05/06). После успешного подключения нажмите кнопку ON для включения светодиода и кнопку OFF, чтобы выключить светодиод. Потом уже можно нажать кнопку "Отключить", чтобы отключиться от модуля Bluetooth.

Это было руководство для чайников и начинающих по подключению модуля Bluetooth с Arduino. Этот проект можно улучшить и поднять на более высокий уровень для, например, автоматизация дома через управление смартфоном, управляемый робот и многое другое.


Всем добрый день.
Около года назад я написал небольшую , с помощью сервера NinjaBlocks. Это было довольно хорошее и удобное решение и оно отлично работало, пока в один прекрасный момент не начались проблемы с соединением. Попытки уговорить разработчиков через форум решить проблемы были напрасны - они просто игнорировали мои просьбы и не удосужились даже ответить, что было очень печально.

С того момента был просканирован весь интернет в поисках замены - и было найдено много очень интересных проектов, но они либо были слишком сложными в реализации и требовали значительных знаний в области программирования, либо были попросту неудобны. И вот тут и пришла мысль почему бы не сделать все самому.

Конечно очень хотелось использовать современные протоколы передачи данных websockets или mqtt, которые позволили бы контролировать все процессы в реальном времени, но если с клиентом для arduino дела обстояли хорошо - наличие неплохих библиотек радовало, то вот с серверной стороной дела обстояли хуже - нужны были серверы с поддержкой нужных протоколов, которых у обычного хостера не было. А заводить свой сервер ради зажигания светодиода не хотелось. И выбор пал на старый и добрый http.

1. Как это всё работает.

У нас имеется:
- сервер на php расположенный на хостинге который привязаный к доменному имени
- клиент в виде arduino
- панель управления

Arduino подключается к серверу и отправляет GET запрос, где содержатся значения датчиков температуры.

Сервер принимает запрос, и записывает значения температур в текстовые файлы. При этом читает из текстового файла значение установленного выхода для arduino и отправляет в ответ на запрос контроллера.

Arduino принимает ответ от сервера и согласно ему устанавливает состояние своего выхода

Панель управления, используя Ajax, считывает значение температуры из текстовых файлов и обновляет показания датчиков. А также считывает их текстового файла состояние выхода и обновляет его на странице. С помощью того же Ajax через форму в текстовый файл записывается значение выхода контроллера, откуда потом будет брать значение сервер и отправлять контроллеру.

2. Клиент на Arduino

Скетч довольно простой всё что он делает это собирает значение датчиков и отправляет их на сервер, получает ответ, влючает или отключает выход.

#include
#include
#include
#include

#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

byte mac = { 0x54, 0x34, 0x41, 0x30, 0x30, 0x31 };

EthernetClient client;
char server = "*************"; // имя вашего сервера
int buff=0;
const int led=5;

void setup()
{
Ethernet.begin(mac);
sensors.begin();
pinMode(led, OUTPUT);
digitalWrite(led, LOW);
}

void loop()
{

Sensors.requestTemperatures();

If (client.connect(server, 80))
{

client.print(«GET /add_data.php?»);
client.print(«temperature=»);
client.print(sensors.getTempCByIndex(0));
client.print("&");
client.print("&");
client.print(«temperature1=»);
client.print(sensors.getTempCByIndex(1));
client.println(" HTTP/1.1");
client.print(«Host: »);
client.println(server);
client.println(«Connection: close»);
client.println();
client.println();

While (client.available())
{
char c = client.read();
if (c=="1")
{
buff=1;
}
if (c=="0")
{
buff=0;
}
}
client.stop();
client.flush();
delay(100);
}
else
{
client.stop();
delay(1000);
client.connect(server, 80);
}

if (buff==1)
{
digitalWrite (led1, HIGH);
}
else
{
digitalWrite(led1, LOW);
}
delay(500);
}

3. Сервер и панель управления

Сервер состоит всего из нескольких файлов:


index.php - панель управления
add_data.php - файл обрабатывающий запросы с контроллера и отсылающий ответ обратно на arduino
style.css - определяет внешний вид панели
Папка transfer - содержит файлы с помощью котрых происходит считывание и запись значений из текстовых файлов.
led.php - записывает состояние выхода в файл out-1.txt, отправленное через форму в панели управления
ledstate.php - считывает состояние из текстового файла out-1.txt и выводит на пенели в виде «ON» или «OFF»
temp-1.php и temp-2.php - считывают значения температуры из файлов in-1.txt и in-2.txt и отправляют на панель управления.
Папка txt - своего рода база данных для хранения информации.

Сервер на самом деле очень простой и его сможет установить себе любой человек с минимальными познаниями, например, как я. До работы над этим проектом у меня был опыт работы только с arduino поэтому php, ajax, html и css пришлось изучать, буквально с нуля.

Установка очень простая. Просто скопируйте файлы на сервер и загрузите скетч в контроллер, при этом в скетче подправьте доменное имя, подключите датчики и светодиод и у вас все должно работать.

Уверен, что матерые программисты будут пинать меня и тыкать носом в те места где можно было бы написать код более лаконично и правильно. Я это только приветствую!!!
Если вы увидели, что некоторые вещи можно сделать проще и быстрее, то сообщите мне.

Что в итоге мы имеем?

Плюсы:
- все просто и понятно
- можно настроить под свои нужды и задачи
- хорошая стабильность
- сервер можно развернуть на любом бесплатном хостинге

Минусы:
- большое количество запросов на сервер (некоторым хостерам это может не понравиться, в этом случае нужно увеличить паузу между запросами в скетче)
- кушает много трафика со стороны клиента (при 1 запросе в секунду выходит около 300 Мб в сутки)
- существует небольшая задержка на включение выходов (может быть критично для некоторых случаев)

Планы на будущее:
- добавить кнопку на контролере для влючения и выключения реле с изменением состояния на сервер
- добавить авторизацию
- добавить идентификационные ключи в запросах
- организовать работу нескольких плат одновременно с одной панелью управления
- добавить подтверждения от контроллера о включении выхода
- очень хотелось бы использовать протоколо websockets или mqtt, но всё же склоняюсь к использованию websockets c использованием socket.io

Возможно, если будет интересно, напишу статью об управлении через интернет wifi модулем esp8266. Его я уже успел успешно опробовать и убедился что все работает, правда там есть свои нюансы в работе.

А если наберется достаточное количество желающих напишу будет подробная статья, где мы рассмотрим добавление новых блоков с датчиками и управлением дополнительными выходами в панель управления.

Все желающие могут сами посетить страницу моего сервера и проверить в действии
!!! Для изменения выхода контроллера поставьте маркер на нужное значение и нажмите «ОТПРАВИТЬ» !!!

Смотрим видео



Загрузка...