Утвш,
Утвш писал(а): ↑21.09.2021{, 23:13}
Всем спасибо.
Предлагаю, в контексте названия темы, не останавливаться, а продолжить разбираться с проблемой по возможности штатными средствами.
Начнём с анализа.За основу проект из
поста 103.
Сбор данных от датчиков и их передача.
Теги модбас - это переменные, посему выходы с блоков float to int задублированы.
Присвоение этих переменных идёт в каждом цикле, хотя данные от датчиков не обновляются.
Для присвоения данных каждой переменной происходит обработка впередистоящей функции - т.е. чтобы присвоить двум переменным значения float->int выполняется дважды!
На плате 4 - каждый цикл собираем строки.
Немного переделаем.
Добавим генератор 1 на один цикл для опроса, плата 1.
- 2021-09-22_11-33-16.png (9.46 КБ) 1951 просмотр
Уберём встроенные таймеры с блоков получения, подключим к нашему опросу
- 2021-09-22_11-35-12.png (5.94 КБ) 1951 просмотр
Уберём триггер, добавив новую переменную для инициализации массива адресов датчиков
Сделаем опрос датчиков и присвоение значений по нашему сигналу, автоматически убрав таймеры в блоках
Немного модифицируем плату с потоком
Плату вывода на дисплей разобъём на две - в одной будем после опроса собирать данные, в другой их отображать.
Если ещё посмотреть файл от панели некстион, немного переделать - отправлять данные одним пакетом, а там разбирать, получится ещё шустрее.
Просьба сравнить результат с изначальным - явного прироста не будет, но курочка по зёрнышку клюёт