Блок для времени счетчик чисел округление числа дата числом подсчет дней перевод минут.
Генератор - счетчик чисел.
Задает счет чисел, с заданной скоростью и приделами.
Придел диапазона <= 100.
На выходах H и L целые числа.
На выходе HL дробное число.
Пример:
В настройке блока count_HL = 60
H - считает минуты, L - секунды, HL - минуты с десятыми долями часа.
В настройке блока count_HL = 100
H - считает сотки, L - единицы, HL - число с десятыми долями.
Скорость счета изменяется в диапазоне от 2мс. до 30000мс. (1000 = 1 секунде)
Возможна настройка стартового значения H, условие setpoint_H < count_HL.
Есть выбор режима, счет по кругу до верхнего значения H, или до упора.
Округление числа вверх.
in - ввод числа (float)
Ndigit - количество знаков после запятой.
Округление числа вниз.
in - ввод числа (float)
Ndigit - количество знаков после запятой.
Округление числа в ближайшую сторону.
in - ввод числа (float)
Ndigit - количество знаков после запятой.
Округление числа к целому в ближайшую сторону.
Округление к целому числу вверх.
Целое число -> число наоборот.
Год, месяц, день -> одним числом.
2016/11/22 = 20161122
Дата числом -> год, месяц, день + строкой.
20161122 = 2016
11
22
22/11/2016
Дата на входе только в такой последовательности.
Знак разделителя меняется в настройке блока.
Дата числом -> год, месяц, день.
20161122 = 2016
11
22
Дата на входе только в такой последовательности.
День, месяц, год -> строкой с нулями.
в формате ДД.ММ.ГГ (02.01.16).
Знак раздела меняется в настройке блока.
Блок перевода времени в строку
в формате 00:00
Блок перевода времени в строку
в формате 00:00 с мигающим в такт секунд делителем.
Подсчет дней между двумя датами нашего столетия.
Блок перевода времени в строку
в формате 00:00:00
Время числом - в часы, минуты.
1723=17:23, 723 = 07:23, 23=00:23, 3=00:03.
Перевод минут - в часы, минуты + строкой 00:00.
Перевод минут - в часы, минуты + строкой 00:00.
Перевод минут - в часы, минуты.
Подсчет дней и времени между двумя датами с временем.
Возможен подсчет между разными эпохами.
Время одним числом - в часах с минутами.
Число минут - в часах с минутами.
Блок для модуля SIM800L
Параметры
speed- скорость порта 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/сек (при использовании Software могут быть проблемы при скоростях больше 9600, 19200)
Time_wait - время предельного ожидание ответа (в мс), т.е. по истечении которого выполнение запроса прекращается
Time_Net - Период опроса модуля на связь с сетью, мс 0-опрос отключен.
SERIAL_M - выбор порта к которому подключен модуль. Варианты Serial, Serial1, Serial2, Serial3, Serial_S - для перевода на SoftwareSerial (еще необходимо добавить блок GSM_SoftwareSerial)
Срос выходов - По завершению процедуры приема и обработки, сбрасывает выхода GSM_Text_sms, GSM_T_Nomer , GSM_Number_calls
Входы
GSM_In_sms - отправляет СМС
GSM_Phone - номер телефона на который будет отправляется СМС в формате +7хххххххххх или имя контакта из телефонной книги (только, если есть и содержит Name_Contaсt)
GSM_text - данные которые будут отправлены в СМС
GSM_Reject_call - сбрасывает входящий вызов (отбой), разрывает установлено голосовое соединение
GSM_Outgoing_Call - исходящий вызов, Позвонить на номер указанный GSM_Phone основного блока
GSM_Take_Call - поднять трубку, ответить на входящий вызов. !!! В М590 не работает.
!!!Все входы срабатывают по переднему фронту сигнала, т.е. при переходе из 0 (false) в 1 (true)
Выходы
GSM_start - статус того, что модуль стартовал и успешно прошел инициализацию AT командами.
GSM_Net – регистрация в сети : 1 - модуль зарегистрирован в домашней сети, 0-нет
GSM_dBm - уровень сигнал (-120 уровень не известен)
GSM_Received_SMS - импульс в один программный цикл, при получении СМС
GSM_Sent_SMS - импульс в один программный цикл, при удачной оправки СМС
GSM_Text_sms - Строка содержащая текст принятой СМС
GSM_T_Nomer - Строка содержащая номер отправителя СМС/звонящего или имя контакта из телефонной книги (подробнее см ниже)
GSM_Call – Входящий звонок, пока идет входящий вызов 1 на выходе
GSM_Connect - Статус Установлено голосовое соединение
GSM_Number_calls - номер текущего гудка, сбрасывается поле поступления нового звонка.
GSM_DTMF – Выдает коды символов переданных по время установленного соединения в виде тоновых сигналов
Коды символов DTMF 0-9 A-10,B-11,C-12,D-13,#-14,*-15
Error_Code – Код ошибки в работе модуля, появляется после возникновение ошибки, и сбрасывается после следующей удачной операции
Часть ошибок, описаны в блоках, настройки на конкретный модуль, так как они уникальны для него
Перечень общих ошибок:
201 – Отправки СМС. Ошибка перевода формат сообщений в текстовый режим
202 - Отправки СМС. Ошибка начального этап отправки СМС
203 - Отправки СМС. Ошибка конечного этап отправки СМС
301 - Проверка связи с сетью. Ошибка команды - Проверка регистрации в сети
303 - Проверка связи с сетью. Ошибка команды - Проверка уровня сигнала
501- Исходящем вызове. Ошибка команды поднять трубку
505 - Исходящем вызове. Занят другим сеансом связи
506 - Исходящем вызове. Нет ответа
507 - Исходящем вызове. Вызов сброшен
508 - Нет сигнала
601 - Ошибка команды - Получение имени оператора
603 - Ошибка команды - Получить текущее время
701 - Ошибка команды - Отправить USSD запрос
10005 – При исходящем вызове, или отправки СМС. Некорректный номер
10006 – При исходящем вызове, или отправки СМС. Нет в списке разрешённых номеров. При использовании телефонной книге и включении функции White_list
10100 - превышен допустимый лимит длинны ответа модуля
Параметры
speed- скорость порта 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/сек (при использовании Software могут быть проблемы при скоростях больше 9600, 19200)
Time_wait - время предельного ожидание ответа (в мс), т.е. по истечении которого выполнение запроса прекращается
Time_Net - Период опроса модуля на связь с сетью, мс 0-опрос отключен.
SERIAL_M - выбор порта к которому подключен модуль. Варианты Serial, Serial1, Serial2, Serial3, Serial_S - для перевода на SoftwareSerial (еще необходимо добавить блок GSM_SoftwareSerial)
Срос выходов - По завершению процедуры приема и обработки, сбрасывает выхода GSM_Text_sms, GSM_T_Nomer , GSM_Number_calls
Входы
GSM_In_sms - отправляет СМС
GSM_Phone - номер телефона на который будет отправляется СМС в формате +7хххххххххх или имя контакта из телефонной книги (только, если есть и содержит Name_Contaсt)
GSM_text - данные которые будут отправлены в СМС
GSM_Reject_call - сбрасывает входящий вызов (отбой), разрывает установлено голосовое соединение
!!!Все входы срабатывают по переднему фронту сигнала, т.е. при переходе из 0 (false) в 1 (true)
Выходы
GSM_start - статус того, что модуль стартовал и успешно прошел инициализацию AT командами.
GSM_Net – регистрация в сети : 1 - модуль зарегистрирован в домашней сети, 0-нет
GSM_dBm - уровень сигнал (-120 уровень не известен)
GSM_Received_SMS - импульс в один программный цикл, при получении СМС
GSM_Sent_SMS - импульс в один программный цикл, при удачной оправки СМС
GSM_Text_sms - Строка содержащая текст принятой СМС
GSM_T_Nomer - Строка содержащая номер отправителя СМС/звонящего или имя контакта из телефонной книги (подробнее см ниже)
GSM_Call – Входящий звонок, пока идет входящий вызов 1 на выходе
GSM_Number_calls - номер текущего гудка, сбрасывается поле поступления нового звонка.
Error_Code – Код ошибки в работе модуля, появляется после возникновение ошибки, и сбрасывается после следующей удачной операции
Часть ошибок, описаны в блоках, настройки на конкретный модуль, так как они уникальны для него
Перечень общих ошибок:
201 – Отправки СМС. Ошибка перевода формат сообщений в текстовый режим
202 - Отправки СМС. Ошибка начального этап отправки СМС
203 - Отправки СМС. Ошибка конечного этап отправки СМС
301 - Проверка связи с сетью. Ошибка команды - Проверка регистрации в сети
303 - Проверка связи с сетью. Ошибка команды - Проверка уровня сигнала
501- Исходящем вызове. Ошибка команды поднять трубку
505 - Исходящем вызове. Занят другим сеансом связи
506 - Исходящем вызове. Нет ответа
507 - Исходящем вызове. Вызов сброшен
601 - Ошибка команды - Получение имени оператора
603 - Ошибка команды - Получить текущее время
701 - Ошибка команды - Отправить USSD запрос
10005 – При исходящем вызове, или отправки СМС. Некорректный номер
10006 – При исходящем вызове, или отправки СМС. Нет в списке разрешённых номеров. При использовании телефонной книге и включении функции White_list
10100 - превышен допустимый лимит длинны ответа модуля
Автор Слимпер
Блок для хранение String значений в памяти МК а не в оперативки
нужно зайти в редактирование блока во вкладку функции и отредоктировать текст в скобках "текст 1"
Text=F("текст 1 "); //выводит текст "текст 1 ", если на вход Z=1
Text=F("текст 2 "); //выводит текст "текст 2 ", если на вход Z=2
Text=F("пусто на входе"); //выводит текст "пусто на входе", если Z не равно ни одному из перечисленных выше значений.
Автор блока. Павел Перов.
AVGN Блок "Датчик тока SCT-013-030" до 100А
На библотеке EmonLib.h
Некоторые пояснения к тексту программы.
Функция emon1.current(0, 30) имеет два параметра. Первый – номер аналогового порта, куда подключен датчик (А0). Второй – калибровочный коэффициент, который получается делением максимального значения измеряемого тока на максимальное значение выходного напряжения датчика. У нас 30/1=30.
Функция emon1.calcIrms(1480), которая выдает действующее значение тока Irms (от англ. root-mean-square), имеет в параметре число 1480. Это означает, что измерения производятся 1480 раз за 14 периодов изменения тока, что составляет примерно 106 измерений за один период. Менять этот параметр не стоит.