Распределённая система

Gordzei
Сообщения: 86
Зарегистрирован: 23 июн 2015, 09:35
Откуда: Калужская обл. Балабаново

Re: Распределённая система

Сообщение Gordzei »

ещё...регистры CR#2-5 (Выборка для осреднения на СН1-5) ну никак не хочет писаться сразу 4шт. ETHRW, только по одному регистру :shock:
CR#18-21 и CR#24-27 пишет по 4шт...

Gordzei
Сообщения: 86
Зарегистрирован: 23 июн 2015, 09:35
Откуда: Калужская обл. Балабаново

Re: Распределённая система

Сообщение Gordzei »

Здравствуйте!

Тут появилась проблема... в процессе работы иногда, возникает ошибка PLС-горит светодиод error на SE..как узнать причину? в режиме сбоя подключиться к контроллеру не могу...сброс вроде лечит...на время :(

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Распределённая система

Сообщение pkl »

Как вариант попробовать обрабатывать наличие синтаксических ошибок, сторожевого таймера и т. д Может у вас там цикл с большим числом итераций. Х.З. Попробуйте покопать в этом направлении.
Вложения
Снимок.PNG
Снимок.PNG (55.62 КБ) 1895 просмотров

Gordzei
Сообщения: 86
Зарегистрирован: 23 июн 2015, 09:35
Откуда: Калужская обл. Балабаново

Re: Распределённая система

Сообщение Gordzei »

удалось достучатся до SE в ошибке, максимальное время цикла-1639, многова-то.
В программе сделал запись (MOV) по условиям M1008, M1004, M1025, M1067 в энергонезависимые регистры..но они после - все в 0...
так в норме время цикла-2ms.
Сейчас в системе SE+2шт. RTU-EN01 c (16SP11T и 04AD) на борту.
1) сначала идёт инициализация AI, 2 ФБ -по одному для каждой станции EN01. Это 7х2=14 вызовов ETHRW. Однократно..
2) В основной программе в цикле по таймеру вызов 8-ми ETHRW..

Прикрепил программу, если у кого-то будет время посмотреть

Как искать это затык...?
Вложения
Untitled2.zip
(48.83 КБ) 141 скачивание

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Распределённая система

Сообщение pkl »

Попробуйте отслеживать время цикла путем сравнения например значения времени цикла с каким либо значением и инкрементирование по результатам сравнения энергонезависимого слова.
Что то не могу открыть вашу программу. Какая версия ISP Soft?

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Распределённая система

Сообщение pkl »

Попробуйте отслеживать время цикла путем сравнения например значения времени цикла с каким либо значением и инкрементирование по результатам сравнения энергонезависимого слова.
Что то не могу открыть вашу программу. Какая версия ISP Soft?

and909
Сообщения: 858
Зарегистрирован: 28 май 2013, 13:20

Re: Распределённая система

Сообщение and909 »

В инструкции для ETHRW сказано:
The instruction can be used several times. However, if an ETHRW instruction specifies a module, other ETHRW instructions can not send communication commands to the module. The next communication command can not be sent until the reception is complete or the module replies that an error occurs.
Может быть нужно исключить одновременное обращение к одному модулю.

Я в таких случаях, например для MODRW, RS использую шаговые инструкции STL:
Аннотация 2019-11-15 083049.png
Аннотация 2019-11-15 083049.png (30.8 КБ) 1867 просмотров

Gordzei
Сообщения: 86
Зарегистрирован: 23 июн 2015, 09:35
Откуда: Калужская обл. Балабаново

Re: Распределённая система

Сообщение Gordzei »

pkl писал(а):Попробуйте отслеживать время цикла путем сравнения например значения времени цикла с каким либо значением и инкрементирование по результатам сравнения энергонезависимого слова.
Что то не могу открыть вашу программу. Какая версия ISP Soft?
ISPSoft v 3.08 проверил-открывается.
Вот вышенаписанное я не понял..

Gordzei
Сообщения: 86
Зарегистрирован: 23 июн 2015, 09:35
Откуда: Калужская обл. Балабаново

Re: Распределённая система

Сообщение Gordzei »

and909 писал(а):В инструкции для ETHRW сказано:
The instruction can be used several times. However, if an ETHRW instruction specifies a module, other ETHRW instructions can not send communication commands to the module. The next communication command can not be sent until the reception is complete or the module replies that an error occurs.
Может быть нужно исключить одновременное обращение к одному модулю.

Я в таких случаях, например для MODRW, RS использую шаговые инструкции STL:
Аннотация 2019-11-15 083049.png
При включении у меня последовательно:
- таймер на 3сек. для инициализации модулей.
- вызов ETHRW для записи значений в модуль EN01
- вызов следующей ETHRW - по условию B D1395 bit 8, или по таймеру в 300mS
- и так 7 раз...выставления бита, что инициализация прошла (не важно по D1395 или по таймеру)

-вызов следующего ФБ (для иниц. след. EN01) происходит по флагу из предыдущего блока, что он завершен.
- в основной программе цикл происходит, если блоки прошли иниц. (пофиг на ошибки).
- цикл по таймеру в 1сек: последовательно ETHRW на чтение, если D1395 bit8 или D1396 bit8 (ошибка) или таймер в 100mS - переход на след. ETHRW
- если было срабатывание через D1396 или по таймеру: выставляю бит ошибки (что с ними пока делать-не знаю).

Так вот пока..есть 2 станции EN01 по плану - 6шт. Разбросаны по территории, возможны перебои с питанием и пр.

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Распределённая система

Сообщение pkl »

В программе сравниваете текущее время цикла с каким либо заданным значением, заведомо большим нормального времени скана программы.. Если результат истина - идет инкрементирование слова в энергонезависимой памяти. Это поможет понять кроется ли причина остановки во времени цикла ( скана ) программы.

Ответить