di DS18B20 ESP32 ESP8266 ESPUI flprog блоки для управления сервоприводом HC-06HC-SR501 KEYPAD MAX6675 MOC3061 SCADA UART Датчик давления и температуры Блок для En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в р Блок для TFT дисплея ST7735 Блок для Выбор тестовых параметров Блок для Расширение GPIO с помощью MCP23017 Блок для автомобильного бортового компьютера Блок для бегущая строка адресной светодиодной ленты Блок для вывода даты и времени Data Time Блок предназначен для совместного использования с блоками M Блок для датчик температуры и влажности HDC1080 на шине I2C Блок для детектирования попадания текущего времени в указанный временной интервал Блок для дисплея ST7920 TM1637D6 LCD12864 SSD1306 Блок для радиомодуля nRF24L01+ Блок для снятия показаний с трансформатора переменного тока Блок для таймер обратного отсчёта Блок для таймер обратного отсчёта отсчёт в секундах Блок для управления электронными потенциометрами Х9Сххх Блок для установки соединения с программой Virtuino Блок для энкодера Блок парсит погоду с сайта api.openweathermap.org Блок преобразует данные с датчика MPC9700 в градусы. Блок для передача данных по UART Блок служит для опроса одного датчика (только один датчик на один пин). Реализован контроль работосп Блок служит для создания бегущей строки Блок читает карту RFID и выдает ее ID на выход CardID Блоки для MPU-6050 модуль 3 оси гироскоп + акселерометр   Блоки разные (прочее блоки) включенных последовательно которая оптимизированна для контроллеров STM32 отсчёт в секундах при которой содержащийся в нём пар достигает состояния насыщения и начинает конденсироваться в росу.

Блок для супер кнопка ввод числа v.1.0
Автор: Dryundel
Обсуждение на форуме: https://forum.flprog.ru/viewtopic.php?f=72&t=5086

ButtSet1.0 - Это блок для ввода числа с помощью одной кнопки. Ввод цифр осуществляется последовательностью коротких нажатий (кликов) с паузами. Колличество кликов подряд ограничено 10-ю. При 10 клике вводится "0". При 11-ти и больше кликов подряд, ничего не происходит. Готовность к вводу очередной цифры сопровождается коротким импульсом на выходе Enter, что позволяет ввести звуковое сопровождение ввода. Неправильно вводимый код можно принудительно сбросить длинным нажатием (удержанием кнопки). 

Входы блока:
in - подключается к кнопке.

Выходы блока:
outCode - Вывод вводимого кода
Enter - сигнал событий (ввод числа / сброс)

Параметры пользователя:
Timeout - Установка таймаута ожидания удержания (ms)
ClickTime - Таймаут между кликамиНа основе библиотеки GyverButton    https://github.com/AlexGyver/GyverLibs

 

Фильтр Калмана.
Работает при en=1.
Автор: Boroda
Фильтр аномальных входных значений.
in - текущее входное значение.
in_x - предыдущие входные значения.
in_summ - среднеарифметическое предыдущих четырех измерений.
Если (in - in_summ) входит в диапазон (delta), то текущее входное значение попадает на выход.
Работает при en=1.
Автор: Boroda
Фильтр аномальных входных значений.
in - текущее входное значение.
in_x - предыдущие входные значения.
Если (in - in_1 + in_2 - in_3) входит в диапазон (delta), то их среднеарифметическое значение попадает на выход.
Работает при en=1.
Автор: Boroda
Фильтр аномальных входных значений.
in - текущее входное значение.
in_1 - предыдущее входное значение.
Если (in - in_1) входит в диапазон (delta), то текущее значение попадает на выход.
Работает при en=1.
Автор: Boroda
Медианный фильтр на 10.
Работает при en=1.
Принцип работы:
Есть ряд значений (11,10,12,100,500,30,10,9,10,12,11), которые запомнил фильтр.
Фильтр раскладывает их по возрастанию (9,10,10,10,11,11,12,12,30,100,500) и на выход выдает средний член этого ряда (11). 
Автор: Boroda
Медианный фильтр на 20.
Работает при en=1.
Принцип работы:
Есть ряд значений (11,10,12,100,500,30,10,9,10,12,11), которые запомнил фильтр.
Фильтр раскладывает их по возрастанию (9,10,10,10,11,11,12,12,30,100,500) и на выход выдает средний член этого ряда (11). 
Автор: Boroda
Цифровой RC-фильтр
in - вход (float)
out - выход (float)
K - постоянная времени от 1..255 (byte)
Работает при en=1.
"Постоянная времени фильтра" = K*"период работы", за это время "значение выхода" = 63% от "значения на входе"
Автор: Boroda
Цифровой RC-фильтр
in - вход (int)
out - выход (int)
K - постоянная времени от 1..255 (byte)
Работает при en=1.
"Постоянная времени фильтра" = K*"период работы", за это время "значение выхода" = 63% от "значения на входе".
Автор: Boroda
Цифровой RC-фильтр
in - вход (int)
out - выход (int)
K - постоянная времени от 1..255 (byte)
Работает при en=1.
"Постоянная времени фильтра" = K*"период работы", за это время "значение выхода" = 63% от "значения на входе".
Автор: Boroda
Оконный фильтр на 8 точек (скользящее среднее).
Работает при en=1.
Автор: Boroda
Оконный фильтр на 8 точек (скользящее среднее).
Работает при en=1.
Автор: Boroda
Оконный фильтр на 8 точек (скользящее среднее).
Работает при en=1.
Автор: Boroda
 

RtrigTimer
R-триггер с задержкой импульса

По фронту сиглала на входе " I " RtrigTimer выдает короткий импульс на выходе Q с задержкой Time в миллисекундах.
Если в параметре Time установлено значение "0", RtrigTimer работает как обычный R-триггер.

В параметрах пользователя необходимо выставить Time - время задержки импульса на выходе Q (выставляется в миллисекундах).

Aвтор: Dryundel

TT-R

T-триггер со принудительным сбросом в 0
Блок настроек не имеет.

Автор: Dryundel

 

R-триггер с задержкой импульса
Автор Dryundel

RtrigTimer выдает короткий (один цикл программы) импульс на выходе Q после задерки Time.

Time - время задержки до импульса на выходе Q выставляется в миллисекундах.

 

En_AP - включает автоматическое включение точки доступа в случае отсутствия подключения в режиме клиента
STAstat - выход статуса наличия подключения в режиме клиента

Автор: Phazz

 

 

Блок для датчик измерения тока acs712t 5а 20a 30а

Чувствительность:
ACS712_05B -  5В
ACS712_20A - 10В
ACS712_30A - 30В


AVGN 16-04-2019

/* Вольтметр 25V

const float R1          = 30000; // сопротивление первого резистора
const float R2          = 7500; // сопротивление второго резистора
const float Uref        = 5; // опорное напряжение


Вычисление температуры по упрощённому уравнению Стейнхарта-Харта (учитывается только коэфициент B).
Вход:         in - значение от аналогового входа.
Выходы:     T - температура.
            Err - неисправность датчика (обрыв или кз).
Параметры пользователя:
            B - коэфициент из даташита (при 25/100С).
            Ra - сопротивление нижнего плеча делителя, кОм (см. схему).
            R25 - сопротивление при 25С, из даташита.
Значения вводить с десятичной точкой, даже если они целые.
NTC подключается между плюсом питания и входом ардуино. Ra подключается между входом ардуино и минусом.

 +5V<-----|
              |
             ---
             | |
      NTC | |
             | |
             ---
              |
              |
              ------->Ain
              |
              |
             ---
             | |
        Ra | |
             ---
              |
              |
 GND<------------>GND

 

Блок базовый без авторизации блок для MQTT брокера на базе ESP8266

Автор: Sasha_erky
Тестовый, базовый, без авторизации, блок для MQTT брокера на базе ESP8266.
uMQTTBroker demo for Arduino
Minimal Demo: the program simply starts a broker and waits for any client to connect.

Просто выдает текущее состяние регистра миллисекунд контроллера

 

Блок для основной блок MQTT на базе ESP8266

Автор: Sasha_erky
Основной блок MQTT брокера на базе ESP8266.
В блоке реализована функция data_callback.

Автор: Sasha_erky
Блок отправки в топик MQTT брокера на базе ESP8266.

Автор: Sasha_erky
Блок обработки и получения даных из топика MQTT брокера на базе ESP8266.

 

Блок для запуска Esp Mesh.
3 входа:
    NAME: Имя сети
    PASSWORD: Пароль сети
    PORT: Порт сети

Как только на входе NAME и PORT(больше нуля) что-то будет, Esp Mesh сразу запустится.

Блок для запуска Esp Mesh.
3 входа:
    NAME: Имя сети
    PASSWORD: Пароль сети
    PORT: Порт сети

Как только  длина NAME > 0 и  PASSWORD >= 8, и PORT > 0, Esp Mesh сразу запустится.

Есть возможность одну из есп в сети подключить к роутеру, но только одну!
Для этого в настройках блока нужно выставить IS_ROOT_NODE true. 
И для каждой есп в сети выставить NETWORK_HAS_ROOT_NODE, включая ту есп, которая будет подключатся к сети.
Во время инициализации сети, если есп должна подключатся к роутеру, считываются данные со входов WiFi_SSID и WiFi_pass и есп будет пытаться подключится к этой сети. Позже, чтобы изменить их, нужно на вход saveWiFiCredentials подать импульс

Ushakov

 

Опрос

На сайте достаточно материала?

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