Здравствуйте!
Подскажите, а как сделать в "Импорт CSV" переход на конец файла? Чтоб в "Таблицу отражения данных" вывести последние записи?
Здравствуйте!
Подскажите, а как сделать в "Импорт CSV" переход на конец файла? Чтоб в "Таблицу отражения данных" вывести последние записи?
В принципе это параметр Начальная строка
Захват-1.png
Это константа или значение в регистре
Начиная с этой строки и будут читаться данные(строки) в количестве, заданном на вкладке Данные
Захват-2.png
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
https://www.youtube.com/@%D0%9F%D0%B...BA%D0%BE%D0%B2
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Такой пример я уже выкладывал когда-то
можно поиграться в эмуляторе
сначала создать N строк в файле на диске С:
Захват-2.png
потом можно по одной записи, с разных разных строк читать в панель
Захват-1.png
Только уточните разделитель для csv - у меня стоит ",". Возможно в настройках Вашей системы используется ";"
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
https://www.youtube.com/@%D0%9F%D0%B...BA%D0%BE%D0%B2
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Добрый день.
Что из себя представляет энергонезависимая память панели ПЛК3хх, это Flash или RAM с батарейкой ? Интересует как часто можно писать в энергонезависимую память панели ПЛК3хх.
В руководстве по эксплуатации написано:
Screenshot_1.jpg
Друзья. Прошу методологической помощи.
Панель СП307 - Мастер RTU.
Есть 10 Слейвов. (В принципе хотелось бы не прибивать гвоздями количество слейвов, в PFW хранится количество подключенных слейвов)
В качестве Slaves используется прога ModBus Slave.
Мастер в основном снимает и устанавливает биты. 90% работы - раскидать на слейвы одинаковые значения.
В то-же время, нужно понимать какое событие на каком слейве произошло. (т.е. просто индикации не достаточно)
Например: на каком-то слейве нажали кнопку Stop. Соответственно необходимо раскидать сигнал остановки на все слейвы. Но таких датчиков и кнопок на каждом слейве по 12шт. и по паре внутренних битов, короче расчет на 16 бит.
Через циклы в макросах получаются тормоза и отвалы связи(отвалы могут быть связаны с прогой, т.к. Rx пакеты видны, но ответ прога не генерит).
Замечание, у Слейва, диапазон DI не пересекается с InputRegisters. Пока не вижу способа задавать биты Регистрами.
Подскажите, как правильнее решать такие задачи?
В ходе экспериментов подход определился следующий.
Коллеги возможно добавят, или поправят, но при следующем подходе панель работает хорошо и скорость реакции не падает.
Итак:
Когда есть несколько идентичных Слейвов с которых нужно собирать идентичные сигналы, и на основании сработки хотя бы одного, что-то делать со всеми.
1. Создаем ФО.
2. Включаем "Непрерывно".
3. Во вкладке Функции, выбираем - "Копировать бит"
4. В качестве источника используем физический DI первого, из набора, Слейва.
5. В качестве целевого бита выбираем любой удобный бит в PSB. (Необходимо иметь свободную последовательность PSB-битов. Удобно например использовать начиная с PSB[301] и до PSB[3xx] хх - количество слейвов).
6. После того, как у всех Слейвов скопирован во внутреннюю память значение идентичных DI, Добавляем вызов Макроса.
7. В макросе, в цикле перебираем значения копий во внутренней памяти. И на основании значений копий применяем то или иное действие.
Пример:
есть 10 слейвов. у которых нужно постоянно проверять 0-й бит в DiscretInputs.
Копируем их значения в PSB, начиная с 701 и до 710-го
Создаем ФО. (как описано выше)2019-10-07_14-03-41.png
2019-10-07_14-05-16.png
2019-10-07_14-06-24.png
В макросе пишем нечто типа...
2019-10-08_20-30-36.png
В данном случае вскидывается флаг, который отслеживает некая другая ФО, а можно вызвать функцию в общем, what ever....
Как-то так.
Последний раз редактировалось R2_; 08.10.2019 в 18:34. Причина: Ответ найден.
Друзья. Подскажите пожалуйста, если кто сталкивался.
Есть несколько слейвов. общение по RTU, RS-485, через PLC порт.
Проблема в следующем: когда на экране элементы опрашивающие только один слейв(любой, но только один), связь работает замечательно.
Но как-только с одного экрана идет обращение к нескольким слейвам - начинается торможение именно опроса. вижу это по индикаторам на слейвах.
Создал отдельный проект, в котором ни одного макроса, на первом экране три кнопки с индикацией, опрос - PLC 1, coil 0, PLC 2, coil 0, PLC 2, coil 0,
далее 3 экрана, на каждом по одному coil, (т.е. экран 1 \ кн.индик. PLC1 coil 0,PLC2 coil 0,PLC3 coil 0, экран 2 \ только кн.индик. PLC1 coil 0, экран 3 \ только кн.индик. PLC2 coil 0, экран 4 \ только кн.индик. PLC3 coil 0,) Ситуация не изменна.
На первом экране, где опрос сразу нескольких PLC - тормоза, на любом другом экране, где опрос только одного PLC - все летает.
В чем может быть проблема?
Дополню описание текущей ситуации:
С каждым в отдельности контроллером судя по всему общение идет нормально и по очереди и по кольцу.
Но пауза "на переключение" опроса между каждым следующим наверное около 1 секунд в.
Настройки - (PFW38 = 200), количество повторов =1, Задержка отправки = 20мс (PLC_Port 115200/8/1/no).
Дополнение2:
После того, как удалось компом подключиться к сетке, и просмотреть трафик выяснилось следующее.
Некоторые запросы (абсолютно спорадически) теряются, Мастер получает ошибку по таймауту, от сюда и тормоза.
Но возникает второй вопрос - Почему общаясь с каждым отдельным слейвом все хорошо, а со всеми, возникает ощущение, что пакеты "локтями толкаются"?
Слейвы самодельные на STM32.
Дополнение 3:
Панель была отставлена в сторону, на компе был запущен MODBUS Master. Как писал выше, картина повторилась. При общении с каждым в отдельности все в порядке,
при общении с несколькими спорадически как по функциям, так и по слейвам, то TimeOut, то IllegalData, то CRC_Error.
В иоге, в настройках соединения была увеличена задержка ( на сколько я понимаю между запросами мастера "Delay between Polls"), с 20мс по умолчанию, до 50мс.
Связь компьютера пошла со всеми.
Вопрос к коллегам.
Есть ли в СП3хх какой-нибудь регистр в котором хранится аналогичный параметр?
Последний раз редактировалось R2_; 14.10.2019 в 14:33. Причина: Дополнение2
Добрый день.
В панели есть упомянутый вами параметр "Задержка отправки" - это задержка между ответом на предыдущий запрос и посылкой следующего запроса.
Также этот параметр хранится в системных регистрах PFW25 (для Download-порта) и PFW35 (для PLC-порта).
Ведущий инженер по подготовке кадров компании "ОВЕН"
e-mail: e.sokolova@owen.ru
Добрый день.
Какая-то белиберда с комментариями в макросах. Делаю комментарий на русском, все нормально, закрываю макрос. Открываю макрос, а в комментарии какая-то хрень.
Последний раз редактировалось Newcomer; 16.10.2019 в 11:40.