Для быстрых входов нужно использовать модули ввода/вывода, сами ПЛК "ТЛ" не поддерживают режима для DI счетчик импульсов.
Вложение 46171
Вид для печати
Для быстрых входов нужно использовать модули ввода/вывода, сами ПЛК "ТЛ" не поддерживают режима для DI счетчик импульсов.
Вложение 46171
Возможно ли объект "Аналоговый ввод" или любой объект из палитры "Управление" сделать и на чтение и на запись переменной? Дело в том что мой проект управляется с Openhab и из телемеханики, в случае ввода данных из визуализации телемеханники openhab и энлоджик корректно воспринимают значение переменной, в случае же ввода значения из Openhab по шине modbas энлоджик воспринимает значение переменной нормально, а визуализация не изменяет ее значение потому как настроена только на чтение. Наверняка как то предусмотрели данный вопрос, подскажите как реализовать. Спасибо
Название группы "управление" подразумевает, что мы обращаемся к переменным (в нашем случае, по протоколу modbus-RTU) с целью изменения значения, соответственно мы пишем в переменную то или иное значение, - отправляем пакет в определенном формате (формате modbus), чтобы получить состояние этой переменной мы должны отправить еще одну команду определенного формата по нужному адресу. Для получения состояния нужно использовать элемент визуализации, который привязывается к сигналам для чтения состояния, например из группы стандартные - "значение параметра" или "семисегментный индикатор".
Добрый день.
Вопрос по работе модуля Отчеты.
Создан проект, база данных в "Истории", в которую занесены некоторые параметры. Открываю модуль Отчеты, перехожу в Режим настройки, а элемент Добавить неактивен. В чем может быть проблема? На форуме не нашел порядка работы с данным модулем.
запустите модуль "отчеты", включите режим редактирования F6, затем откройте "дерево рапортов" - F3, создайте новый рапорт Вложение 46418
Сергей, добрый день.
Вопрос по работе проекта по сети.
Создан проект, организовано сетевое взаимодействие сервера и клиента, как описано в Ваших инструкциях.
Версия Телемеханики на сервере и на клиентском компьютере не лицензирована. В каком виде должна работать визуализация на удаленном рабочем месте или не будет работать вообще? И достаточно ли будет установить бесплатный программный ключ на удаленное рабочее место, чтобы сетевое взаимодействие заработало, при этом, используя, Телемеханику на сервере без лицензии. Времени работы сервера 2 часа достаточно, проект создан для демонстрационных и учебных целей. И как можно получить программный ключ на 50 каналов?
С уважением, Денис.
На сервере должна быть регистрация хотя бы 50 бесплатных сигналов для Телемеханики ЛАЙТ, удаленное рабочее место должно иметь ключ аппаратной защиты SCADA-ARM, по-другому никак работать не будет. чтобы получить регистрацию на 50 сигналов нужно оставить заявку на странице программного обеспечения: https://owen.ru/product/scada_sistem...egistraciyu_PO
Добрый день!
Снова подниму тему про управление "Выключателем" так как в последней версии 1.1.8 нет "описание ФБ можно ознакомиться в справочной системе "Телемеханики Лайт" и не проще уже было необходимые настройки перенести в новое меню телеуправления? Если уж ПЛК-323 позиционируется как "для энергетики" то и работать должно по общепринятым канонам телеуправления без костылей и скриптов. Сейчас запускаю РЭС, у меня 80 устройств ПЛК-323 и к ним в среднем по 3-4 МУ110-16Р и прочего подключено(с разными наборами данных), смонтировано и прошито другими спецами. ПЛК-323 в поле на расстоянии от 500м. до 300км. от меня. GPRS тот еще живчик и чтение конфигурации в среднем 3-5 мин. с кучей ошибок и повторов. Теперь выходит нужно выкачивать все конфиги, делать кучу скриптов для каждого ТУ и заливать обратно. Или есть альтернатива?
UPD. При анализе файла справки выявлено множество недостающих файлов, так что вот как-то так :( .
Нашел живое РЭ, там на странице 180:
4.10.2 Управление выключателем
Префикс ФБ: УпрВыкл
Полное название: Управление выключателем
Код: 164
Мультиканальность: нет
Назначение: Функциональный блок предназначен для формирования сигноалов управле-
ния выключателем
Описание: Команды управления формируются в виде импульсов на выходах № 01 «Вклю-
чение» и 02 «Выключение» в зависилости от состояния входа № 01 «Команда». Импульсы
формируются 1 раз после прехода из одного состояния в другое на входе № 01 «Команда».
Длительность импульса задается входом 03 «ДлитИмпульса», если ее задать равной 0, то
длительность импульса будет равна периоду выполнения задачи пользователя. Длительность
импульса всегда кратен периоду задачи, и меньше него быть не может. ФБ детектирует не
само значение на входе 01 «Команда», а пеход из одного состояния в другое, и в зависимо-
сти от типа значения на входе генерирует импульс на соответствующем выходе.
Назначение входов-выходов функционального блока «Управление выключателем» при-
ведено в таблице 94.
Вложение 46910
http://kaskad-asu.com/images/files/klogic/KLogicRP.pdf
UPD. Добавил ФБ.
Вопрос: Как теперь ему подсунуть:
1. На вход - адрес из МЭК-104 по которому прилетает ТУ
2. На выход - адреса реле на разных МУ.
Заранее благодарен :)
В общем как настроить разобрался, только для этого необходимо куча лишнего времени и мой пламенный привет наладчикам и всем к этому безобразию причастным лицам.
На сим, откланиваюсь - работы вагон и маленькая тележка.
Привязка параметров к функциональным блокам осуществляется методом drag-n-drop (перетаскиванием нужного параметры из левой части - конфигурации ПЛК на "вход"/"выход" ПЛК.
https://owen.ru/product/scada_sistem...ika_lajt/video занятие №1, видео №2, время - 3:50
Доброе утро! Вопрос на засыпку, ПЛК-323-ТЛ в связке с МУ110-16Р при отсутствии связи с МУ отвечает на комманду ТУ положительной квитанцией, хотя переключение не выполненно. Это "нормально" или есть какие то скрытые настройки направленные на пресечение данной ситуации? Та же ситуация с блокировками переключений, они отрабатывают - но квитанция все рано положительная.
В конфигурации ПЛК нужно оставить 2 группы сигналов:
Вложение 46951
Добрый день! В общем выкладываю обобщенный конфиг одного из многих устройств.
Это выключатель на столбе который управляет автоматами запитывающими потребителей.
Логика простая, есть модули МВ-110-224-16Д которые отслеживают положение и состояние(защит и блокировок) автоматов. Эти данные поступают в СКАДУ. Диспетчер производит оперативное управление со схем по средствам отправки команд ТУ МЭК-104 кадром 45 через GPRS канал на ПЛК-323-ТЛ в котором есть задачи управления выключателями по средствам МУ110-224-16Р, вот тут и начинается история.
Изначально настраивал не я, команды ТУ сразу поступали на выходы реле, которые так и оставались замкнутыми и палили автоматы пытаясь друг друга пересилить..
Я добавил блок ФБ(164) Управление выключателем, вроде как заработало - но тут начались другого характера проблемы.
ПЛК-323-ТЛ бодро рапортует положительной квитанцией в любой ситуации, кроме когда соответсвенно с ним нет связи.
1. Не зависимо есть связь с исполнительными МУ110-224-16Р или ее нет, все хорошо по его мнению.
2. Даже если связь есть, много случаев когда команды теряются.
3. Иногда после пары тройки безуспешных попыток по управлять - ПЛК начинает щелкать как угорелый разом пытаясь их все выполнить.
4. Довольно часто дела заканчиваются отвалом от 2 до 10-ти минут после серии неудачных ТУ, даже пинг не проходит.
5. Если сигнал на блокировки есть - переключение не происходит, но квитанция все равно положительная.
В целом так и не нашел решения, придется писать громоздкую задачу, но боюсь что не зависимо от реализации - ПЛК-323-ТЛ продолжит отвечать так и не поняв - чего от него хотят.
Здравствуйте.
посмотрел вашу программу, в режиме эмуляции ФБ все вроде бы отрабатывают. Но это только режим эмуляции. С ПЛК вы по 104 протоколу общаетесь (управляя со SCADA), а сам ПЛК по своему СОМ4 по прежнему работает с приборами по протоколу modbus-RTU, а значит опрашивает приборы по очереди и возможно, что установленная вами длинна импульса в 1000мс заканчивается быстрее чем происходит управление модулем МУ110-16Р, попробуйте увеличить для начала длинну импульса до 5-7 секунд, чтобы просто подтвердить теорию, затем уже придется подбирать оптимальный таймаут.
ПС, попробуйте обновить прошивку для ПЛК, ссылку на последнюю прошивку для ПЛК323 вы найдете у меня в подписи.
Прошивка последняя, импульс попробую - но опасно, так как по паспорту на выключатель безопасно не больше 0,1 сек. держать привод.
Для принятия решения руководством о модернизации системы учета и контроля электроэнергии на предприятии и соответственно покупки оборудования и программного обеспечения, решил скачать демо-версию Интегратор Телемеханика лайт, создать проект из 20 счетчиков в режиме симуляции, продемонстрировать работу данной системы. Столкнулся с несколькими проблемами. Во вложении проект с одним счетчиком.
- как создать точки учета в «Справочники»
- как создать отчет
- где смотреть затраты электроэнергии за определенный период.
у нас есть демонстрационный проект https://energy.owen.ru/note
система технического учета на предприятии, можете его скачать и посмотреть, он в рабочем состоянии с описанием и сопроводительной запиской по запуску.
так же есть пример с работой в "Справочниках" видео урок - Занятие №3 https://owen.ru/product/scada_sistem...ika_lajt/video
Эмулятор выдает ошибку. Как устранить?Вложение 48490
При работе через МЭК 60870-5-104 ОРС-сервер. не приходит квитанция о выполнении команды о управлении ВН, и реле в МУ110-224_16Р постоянно включено. Как это устранить. Контроллер ПЛК100
так сказать, нереально, присылайте нам на почту tml@owen.ru ваш проект с конифгурацией на ПЛК100, - будем смотреть как у вас настроен протокол МЭК-104.
так же не понятно причем здесь OPC сервер. Опишите как у вас построена система, что опрашивает ПЛК100, по какому интерфейсу и куда передает (в другую скаду, в нашу скаду, другому мастеру).
Попал в руки ПЛК323-ТЛ. При первом же написании скрипта появились вопросы. Для примера простейший скрипт:
var i,j,k:byte;
begin
j:=0;
//k:=5 mod 3;
for i:=1 to 10 do
begin
j:=j+1;
end;
WriteInteger('var_1',i);
WriteInteger('var_2',j);
end.
1.При запуске в редакторе скрипта получаем желаемые результаты в var_1 и var_2 = 10. При запуске в эмуляторе и реальном контроллере var_1 и var_2 = 9. То есть цикл делает на одну итерацию меньше?
2.Если раскомментировать строчку k:=5 mod 3 в редакторе опять все Ok. Ну а на эмуляторе и контроллере var_1 и var_2 вообще неопределены.
Кажется скрипт даже не доходит до WriteInteger. При компиляции никаких ошибок нет. Тот-же эффект при использовании div вместо mod.
Обойдусь думаю без FOR и DIV/MOD, и напишу-ка скрипт считающий количество дней с 01.01.1980 до 01,01,2020:
var y,d,DinY:word;
r1,r2:real;
begin
y:=1980;
d:=0;
while y<2020 do
begin
if round(y/4)=(y/4) then DinY:=366 else DinY:=365;
d:=d+DinY;
//********
r1:=round(y/4);
r2:=y/4;
//********
y:=y+1;
end;
WriteInteger('var_d',d);
WriteInteger('var_y',y);
WriteFloat('var_r1',r1);
WriteFloat('var_r2',r2);
end.
В редакторе скрипта опять всё замечательно получил нужные 14610 дней, а при запуске в эмуляторе получается уже 14640 дней.
Для поиска косяка добавлены переменные r1 и r2, так как все года вдруг стали високосными.
Редактор скриптов:
var_r1=505
var_r2=504.75
Эмулятор:
var_r1=504.00
var_r2=504.00
Откуда 504.00???? это же итерация для 504*4=2016!!!!!! года, т.е. пред,пред,пред последняя.
Что происходит с локальными переменными в циклах? Возможно я что-то не понимаю, но кажется скрипты абсолютно не работоспособны. Как будто два различных компилятора. Один правильный для редактора кода и отладки а второй- кривой в эмуляторе и контроллере.
Тогда уж и про проблемы с операторами DIV/MOD и циклом FOR (предыдущий пост) передайте пожалуйста.
И если можно предложение: Запускать скрипт из окна редактора скрипта в отдельном потоке отличном от GUI. В случае ошибочного бесконечного цикла вешается наглухо всё приложение "Контроллеры" с последующей потерей данных. И кнопочку в этом случае нужно добавить "Остановить". Красный квадратик после зеленого треугольника в панели инструментов к примеру.
Добрый день.
Спасибо за примеры и подробные комментарии.
Исполнители скрипта действительно разные в режиме отладки и в режиме работы.
Указанные проблемы подтверждаем, будем исправлять:
1) r2 := y/4;
если y - целочисленная переменная, то производится целочисленное деление; используйте пока вещественную переменную
2) k:=5 mod 3;
операция mod приводит к неработоспособности скрипта (и div тоже)
3) for i:=1 to 10 do
цикл for выполняется на одну итерацию меньше, чем должен; используйте пока циклы while или repeat-until
Добрый день
У None-target (с запуском Enlogic эмулятором) есть ограничение по количеству входов/выходов при использовании опроса по протоколу modbus?
Столкнулся с ограничением в 3 параметра или это ограничение бесплатной версии?
Добрый день.
Ограничение на количество переменных в демо-версии нет. Только время работы.
Какой прибор вы опрашиваете? из библиотеки поддержанных устройств? или прибор для которого самостоятельно написали карту адресов? если карту писали самостоятельно, то у вас в ней ошибка, не правильно выбран тип данных, функция и т.д. отсюда будут либо недостоверные значения, либо "-" в режиме опроса виртуального контроллера.
Доброго времени суток.
2 вопроса по телемеханике лайт.
Первый: в контроллере создаю строковую переменную, как её можно изменить из визуализации?
Вложение 50316
Второй: есть скрипт, который в зависимости от настройки делит переменную на 1, 10 или 100. Переменная - ток, читается из прибора БЗП-01. При отладке скрипта выходная переменная нормально делится и отображаются все знаки после запятой. Но в таблице "Входы/выходы функционального блока" после запятой нули. Например, получили переменную 1234, в окне отладки скрипта при делении на 100 получим 12,34, а в таблице "Входы/выходы функционального блока" будет только 12,00. В чем проблема?
Программа для одного канала:
var Inom, ain, bin, cin: integer;
var aout, bout, cout: real;
{---------- main program -----------}
begin
ReadInteger('Inom',Inom);
ReadInteger('Iain',ain);
if Inom < 31 then begin
aout := ain / 100;
end
else begin
if Inom < 301 then begin
aout := ain / 10;
end;
end;
if Inom > 300 then begin
aout := ain;
end;
WriteFloat('Iaout', aout);
end.
Типы переменных:
Вложение 50315
Как вариант, можно изменить скрипт следующим образом - и он будет работать уже правильно:
var Inom, ain, bin, cin: integer;
var aout, bout, cout, temp: real;
{---------- main program -----------}
begin
ReadInteger('Inom',Inom);
ReadInteger('Iain',ain);
temp:=ain;
if Inom < 31 then begin
aout := temp / 100;
end
else begin
if Inom < 301 then begin
aout := ain / 10;
end;
end;
if Inom > 300 then begin
aout := ain;
end;
WriteFloat('Iaout', aout);
end.
Вложение 50347
Спасибо, помогло
нет, не планируется ( на данный момент и в ближайшее время точно нет)
Здравствуйте,Ж возможно вопрос и глупый. Подскажите работает ли программа с виртуальным ПЛК в полном объеме или все же для решения задач необходима покупка полноценного ПЛК? Должна ли работать система с внешними приборами?
Добрый день.
Возможно ли определить состояние определенного бита переменной в стрипте?
Добрый день. Приобрели регистратор электрических параметров РПМ-416. Есть ли возможность подключить его к Телемеханика ЛАЙТ.
Здравствуйте. Если у этого прибора протокол modbus (чистый), то по стандартной схеме, через xls табличку. как в видео уроке занятие №2, видео №3 https://owen.ru/product/scada_sistem...ika_lajt/video
Здравствуйте. Опрашиваю Овен323тл по Modbus (ethernet) в качестве слейва. Всё работает замечательно. Но недолго. Бывает несколько дней, а может и несколько недель проработать нормально. Далее при соединении сокета на 502 порт, происходит мгновенный дисконект со стороны Овена . Естественно данные уже не передаются. Помогает только ребут контроллера. Может как-то можно перезапустить только сам модбас-слейв? Что посоветуете?