(Х9С102 4х слов данных и контрольной суммы. Блок передачи сигнала по радиоканалу. Пакет состои AVGN Блок "Датчик тока SCT-013-030" до 100А DMX512 ESP32 ESP8266 GSM Блок RxTx UART Блок детектор фронта/спада Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для ESP NOW передачи и приема данных между ESP32 и ESPESP32 без создания WiFi сети без роутера Блок для FTP_SPIFFS ESP8266 Блок для IR recv IRremote ESP8266 Блок для NOKIA дисплея 5110 Graph RUS В константах задаётся контрастность Блок для PH-метр EC-PPM Блок для SPIFFS для проигрывания WAV и MP3 файлов Блок для Вольтметр 25V Блок для Логика компаратора с гистерезисом стандарта от Siemens Logo Блок для детектирования попадания текущего времени в указанный временной интервал Блок для одного Блок для парсинга погоды вашего города чарез https://openweathermap.org/city/524901 Блок для подключение к брокеру через SIM800 GPRS к MQTT Блок для снятия показаний с трансформатора переменного тока Блок для таймер обратного отсчёта Блок для установки соединения с программой Virtuino Блок для энкодер Pro (EncPro)  V1.4 Блок опроса одного выбранного канала АЦП типа НХ711 Блок предназначен использования с экранами LCD1602  HD44780  и его клонами с  I2C Блок служит для выдачи запроса по http.  У входа out у блока прописывается адрес сайта дапустим   на Блок служит для создания бегущей строки Блок управления биполярных шаговых двигателей с интерфейсом STEP/DIR Блоки для ESPUI - веб-интерфейс из блоков для ESP8266 Блоки для датчика переменного напряжения ZMPT101B Блоки приема-передачи четырех байт данных через интерфейс UART с использованием протокола PJON .Испо Блоки разные (прочее блоки) ДАТЧИК ВЛАЖНОСТИ ЗАРЯДНОЕ УСТРОЙСТВО Омметр включенных последовательно отсчёт в секундах
Блок предназначен для конвертации переменная в виде (HEX) на выходе будет виде (Dec)
Блок предназначен для конвертации строковых символов, которые несут в себе цифровую информацию, записанную в шестнацатеричном виде.
Блок способен преобразовать 4 байта информации на входе, представленной в шестнацатеричном виде.
Пример:
На вход подается переменная в виде (HEX) 0A1B2C3D, на выходе будет значение 169552957 в десятичном виде (Dec).
Внимание, блок "понимает" латинские прописные и заглавные символы, но не будет работать с кирилицей !
Блок предназначен для конвертации строковых символов, которые несут в себе цифровую информацию, записанную в шестнацатеричном виде.
Блок способен переработать только 1 байт информации на выходе.
На вход подается переменная в виде 0A, на выходе будет числовое значение в шестнацатеричном виде (Byte).
Внимание, блок "понимает" латинские прописные и заглавные символы но не будет работать с кирилицей !

 

Блок для проигрывания 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.

 

 

Опрос

Вам нравится наш сайт?

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