3=00:03  8-разряды) динамическим управлением (му CJMCU-2317 DTMF ESP32 ESP8266 FLPROG БЛОКИ ДЛЯ КОНВЕРТАЦИЯ ТИПОВ INTEGER В BYTE И BYTE В INTEGER FLPROG БЛОКИ ДЛЯ КОНВЕРТАЦИЯ ТИПО HD44780 L298N MBI5026GN NEXTION SIM800 Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для esp8266 NODEMCU Telegram bot Ver. 0.0.1 Блок для MQTT IoTManager ESP8266 ESP32 Блок для OLED дисплея 0.96 inch 4-Pin 128 x 64 I2C Блок для RemoteXY POST INIT Блок для Дисплей HD44780 Блок для Стандартный гистерезис от X1 до X2 Блок для адресной светодиодной ленты ws2812 Блок для веб интерфейс для esp8266 / esp32 Блок для вывода процессы и задачи Блок для детектирования попадания текущего времени в указанный временной интервал Блок для пульсовый датчик модуль усилителя сердечного ритма Pulse Sensor Amped 1.4 Блок для снятия показаний с трансформатора переменного тока Блок для таймер обратного отсчёта Блок для установки соединения с программой Virtuino Блок служит для создания бегущей строки Блоки разные (прочее блоки) Взвешенное скользящее среднее Для проигрывания музыки формата WAV из файловой системы ESP8266 без использования дополнительных пла Запись данные с ESP8266 в Google-таблицы Отправка GET запроса ESP-32 ESP8266 Проигрываются vaw файлы с расширением( 1.wav Считает количество нажатий кнопки Х9С103 блок для записи и чтение на EEPROM 24C32 2 BYTE и 3 INTEGER включенных последовательно заката Солнца отсчёт в секундах
Блок для проигрывания vaw файла

 Проигрываются vaw файлы без расширений . При применении этого блока обязательно использовать вместе с уникальным блоком СД!
 Mega2560 пины  MOSI - 51, MISO - 50, SCK - 52 - SD.    Остальные arduino -  11,12,13. Leonardo подключить к разъему ICSP!
 Входы блока :
ind- название файла без расширения .
pl- возпроизвести файл.


Проигрываются vaw файлы .
Mega2560 пины  MOSI - 51, MISO - 50, SCK - 52 - SD.    Остальные arduino -  11,12,13. 
Контакт SC меняется в параметрах (по умолчанию 10).
Динамик подключить к ШИМ выводам.
Входы блока :
ind- название файла без расширения .
pl- возпроизвести файл.
Имя файла типа - "0", "1", "2", "3", "4", "5","6".... , без расширения.


Проигрываются vaw файлы, как с расширением( 1.wav, 2.wav, singl.wav, ....), так и без расширения (1, 2, 3, singl,  ....).
Mega2560 пины  MOSI - 51, MISO - 50, SCK - 52 - SD.    Остальные arduino -  11,12,13. 
Контакт SC меняется в параметрах (по умолчанию 10).
Динамик подключить к ШИМ выводам.

pl- возпроизвести файл.

 

Блок для Расширение GPIO с помощью MCP23017 (CJMCU-2317)
БЛОК ВВОДА_ВЫВОДА MCP23017.
------------------------------------------------------------------------------------------------------------------------------------
Блок осуществляет обмен с регистрами mcp23017 через шину i2c по адресу=addr.
    Может быть установлен любой адрес. Если адрес <0, устройство не используется, 
    Обычно mcp23017 выпускаются с базовым адресом 0x20 (32 десятичный). 
    Это адрес по умолчанию установлен в библиотеке как "базовый адрес".
    Пространство адресов может меняться входами a0,a1,a2 mcp23017 - всего восемь адресов.
    Если аddr в диапазоне 0-7, то к этому значению будет прибавлено значение базового адреса.
---------------------------------------------------------------------------------------------------------------------------------
Блок может работать с библиотекой RT_HW_MAIN.h и без неё. 
    Если до вызова блока шина i2c не инициализирована, блок инициализирует её. 
--------------------------------------------------------------------------------------------------------------------------------- 
Блок содержит два регистра A и B, кадый из которых может настроен на вывод или ввод - всего шесть режимов:
Настройка регистров определяется параметрами пользователя РЕГИСТР_А и РЕГИСТР_B (char):
    'U'    - вход с подтяжкой внутренним регистром к Vcc и с инверсией;
     'u'    - вход с подтяжкой внутренним регистром к Vcc без инверсии;
    'I'    - вход без подтяжки  к Vcc и с инверсией;
    'i'    - вход без подтяжки  к Vcc без инверсии;
    'O'    - выход прямой;
    'o'     - выход с инверсией.
--------------------------------------------------------------------------------------------------------------------------------------
Обмен с устройством осуществляется периодически с периодом, определяемый параметром "ПЕРИОД В ТИКАХ".
Один тик =50мс. Если ПЕРИОД В ТИКАХ = -1, устанавливается значения периода =10 (соотвествует 500 мс).
При обмене с устройством избыточные операции  обмена (не изменились входные данные или регистр не настроен на соответствующий режим) 
    пропускаются. Этим достигается разгрузка шины i2c.
--------------------------------------------------------------------------------------------------------------------------------------
Алгоритм поиска устройства на шине i2c:
    1.При инициализации устанавливается параметр состояния устройства="поиск устройства не оуществлялось" (=0). 
      2. При первом запуске осуществляется поиск устройства на шине i2c. 
         Если устройство найдено, вчерез 50мс) выполняется дополнительный (контрольный) поиск 
               и устанавливается  параметр состояния устройства="устройство обнаружено и готово к работе"(=2).
      3. Если устройство не найдено, то делается дополнительные 4-попытки обнаружения с периодом 100мс.
      4. Если устройство после дополнительных попыток не обнаружено, 
        то устанавливается  параметр состояния устройства="после поиска устройство не обнаружено"(=1).
     5. В дальнейшем поиск устройства осуществляется с периодичностью 1 сек. 
           Эти запросы на шине i2c по длительности минимально короткие и шину не перегружают.

 

Блок для PID регулятора

Расчет мощности идет по формуле PWR = Kp*E(t)+сумма(E(t)/Ki), где
E(t) -рассогласование (уставка - вход),
Kp,Ki - коэфф ПИ.

Параметры блока:
period - период ПИ и ШИМ в милисекундах

Входы блока:
Value - входная величина
Set - уставка
Kp - коэффициент пропорциональной составляющей >= 0
Ki - коэффициент интегральной составляющей > 0

Выходы блока:
PWR - выходная мощность 0..1000 (0..+100,0%)
pwm - ШИМ на нагреватель

Регулятор может управлять нагревателем (ТЭН).
Автор: Boroda.

Блок для фазового регулятора

Блок фазового регулятора.
Дата создания: 12.2016г.
*****************************************************************
Используется Timer2, поэтому этот блок нельзя использовать в схемах, где также используется этот таймер, например для формирования ШИМ с выводов 3 и 11 в Arduino Uno или Nano.
-------------------------------------------------------------------

Краткий алгоритм работы блока:
- при наступлении внешнего прерывания от детектора нуля синусоиды отключается выход на симмистор и начинается отсчёт времени паузы (значение со входа "Value", в условных единицах), по истечении которой произойдёт прерывание от переполнения таймера
- в момент прерывания от таймера (окончания паузы), включается выход на симмистор и он остаётся открытым (включенным) до конца полупериода сети, т.е. до возникновения прерывания от детектора нуля синусоиды
- далее всё повторяется "по кругу"
--------------------------------------------------------------------

Вход "Value" - задаёт уровень мощности.
Значения можно задавать от 0 до 255 (byte). 0 - минимальная, 255 - максимальная мощность.
При "Value" = 0 - выход на симмистор постоянно отключен, внешнее прерывание и прерывание от переполнения таймера запрещены,
при "Value" = 255 - выход на симмистор постоянно включен, внешнее прерывание и прерывание от переполнения таймера запрещены.
 
В реальности блок имеет около 156 (точнее будет равно 255 - "Val_Zero") значений градации мощности.
Для приведения к более удобному заданию значения уровня мощности использованно "внутреннее" масштабирование с "Val_Zero"...255 к 0...255 (без применения Long-чисел и операции деления, в отличии от стандартного пользовательского блока "Scale"). 
--------------------------------------------------------------------
Вход "Val_Zero" - корректировка "нулевого" значения мощности.
Обычно это значение равно 99 (byte), но возможно понадобиться эксперементальный подбор в небольших пределах этого значения для устранения мерцания лампы или "дёргания" двигателя при минимальных значениях на входе "Level" (кроме нуля, т.к. при нуле - выход на симмистор постоянно отключен).
***************************************************************************


--------------------------------------------------------------------
Параметры "N_Int" - номер внешнего прерывания и "Pin_Int" - номер ножки Arduino, к которому подключен детектор "нуля синусоиды":
Эти параметры необходимо менять совместно.

Прерывание Int0:
N_Int = 0 / Pin_Int = 2 - для Diecimila, Duemilanove, Nano, Pro, Uno и Mega2560
N_Int = 0 / Pin_Int = 3 - для Leonardo и Micro

Прерывание Int1:
N_Int = 1 / Pin_Int = 3 - для Diecimila, Duemilanove, Nano, Pro, Uno и Mega2560
N_Int = 1 / Pin_Int = 2 - для Leonardo и Micro

Прерывание Int2:
N_Int = 2 / Pin_Int = 0 - для Leonardo и Micro
N_Int = 2 / Pin_Int = 21 - для Mega2560

Прерывание Int3:
N_Int = 3 / Pin_Int = 1 - для Leonardo и Micro
N_Int = 3 / Pin_Int = 20 - для Mega2560
  
Прерывание Int4:
N_Int = 4 / Pin_Int = 7 - для Leonardo и Micro
N_Int = 4 / Pin_Int = 19 - для Mega2560

Прерывание Int5:
N_Int = 5 / Pin_Int = 18 - для Mega2560
--------------------------------------------------------------------
Параметр "Mode_Int" - режим возникновения внешнего прерывания от детектора "нуля синусоиды"
 "False" = FALLING прерывание возникает при переходе с лог. 1 на 0 
 "True" = RISING  прерывание возникает при переходе с лог. 0 на 1 
--------------------------------------------------------------------
Параметр "R_Inpt" - "подтягивающий" резистор на входе с прерыванием 
"False"- не подключен, 
"True" - подключен
--------------------------------------------------------------------
Параметр "Pin_Out" - № ножки Arduino, которая подключенна в цепь управления коммутации нагрузки
--------------------------------------------------------------------
Параметр "Invert_Out" инвертирует состояние выхода "Pin_Out"
Например, если выход Arduino подключен к Аноду оптосиммистора, а Катод оптосиммистора к Gnd, то "Invert_Out" = False. 
Если Анод оптосиммистора подключен к +Vdd, а Катод к выходу Arduino, то "Invert_Out" = True.

 

 

Блок для модуля тока и напряжения INA219 (CJMCU-219)
Сопротивление шунта указывать в сотых долях милиома
т.е. на плате стоит 100 милиом, 0,1 Ома, пишем 1000,
Для шунта 10А 75 мВ сопротивление 7,5 милиома - пишем 75
Вход:
R_shunt - Сопротивление шунта в сотых миллиома.На плате из али - R100=1000
Выходы:
Voltage - Вольты
Current - Амперы
V_Shunt - Напряжение на шунте, мВ
MAX_Current - Максимальное значение на шунте!!!
Автор Sancho.

 

Опрос

Оцените работу сайта

Другие опросы...