Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Нужна помощь по RSlogix 5000

SCADA, серверы, АРМ верхнего уровня, диспетчерские

Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 08:42

Здравствуйте, не получается создать таймер в RSlogix 5000. Задача: при включении DI сигнала необходимо чтобы запускался таймер с отображением секунд, минут и часов (так называемая наработка часов), на LD языке, помогите пожалуйста....


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Ryzhij » 10 окт 2015, 10:37

У Rockwell есть библиотека Rockwell Library of Process Objects (добавляемых инструкций и фейсплейтов к ним), в которых имеются:
Run Time and Starts (P_Runtime)
Restart Inhibit for Large Motor (P_ResInh)
Если Вы не захотите их использовать "как есть", то в любом случае можете "подсмотреть" как это делается.

Для скачивания библиотеки требуется регистрация на оф.сайте. Это бесплатно и совсем не больно.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 11:09

А на базе компонента TON это можно сделать?


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Ryzhij » 10 окт 2015, 11:46

Можно, собственно и в библиотечных функциях в основе - таймер.
При реализации на таймере всё зависит от требуемой точности.
Максимальную точность даст ретентивный таймер, но можно и на обычном TON.
Ставите такой таймер, скажем BaseTime, на пол-секунды (по вкусу), и пусть он сам себя перезапускает через /BaseTime.DN , добавляем ему в условия признак работы механизма.
Затем в этой же рутине ставим счётчик, который будет отсчитывать импульсы от таймера BaseTime.DN.
А уж накопленную счётчиком величину превратить в секунды, минуты и часы - это задача на уровне копания ямы.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 11:52

Опишу для чего это я хочу сделать. Имеется счетчик наработки двигателя. Но как то странно он работает, за минуту он теряет одну секунду относительно секундомера, в итоге в сутки теряется час, а в месяц пропадают сутки. Хотел параллельно вывести свой счетчик и сравнить, но так как в этой системе еще не освоился, а проблему надо решить быстро вот и начал кидаться на форумы...
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Ryzhij » 10 окт 2015, 16:19

Вы с секундомером следите за показаниями на экране компьютера, или за дискретным выходом модуля?
Помните, что Windows и все программы под ней живут своей собственной бурной внутренней жизнью.
Пропуск импульсов возможен из-за:
1. Асинхронности расписания запуска задачи со счётчиками. Проверьте её свойства;
2. Из-за того, что RES на счётчик приходит одновременно со счётным фронтом (ну, или не успевает сняться к приходу счётного фронта);
3. Вы считаете не по тому краю импульса. Что собственно у Вас и происходит.

Для начала инвертируйте TIM_sec.DN на входе счётчика COUNT_sec
Если инверсные биты RESET и TIM_sec.DN вставить последовательно в условия для таймера TIM_sec , то нулевой ранг со сбросом таймера можно вообще убрать.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 16:37

Большое спасибо!!!
Я очень сильно извиняюсь, из того что Вы сказали многое не понял, в виду того что только начал изучать эту систему.
По первому пункту это в свойстве контроллера необходимо установить галочку на синхронизации времени да? это я уже сделал, но еще не проверял.
По последнему не совсем понял, инвертировать TIM_sec.DN в смысле сделать его нормально замкнутым контактом? и что убрать?
Если можно объясните поподробней, не на совсем профессиональном языке :)
Заранее огромнейшее спасибо....


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Ryzhij » 10 окт 2015, 16:52

Злюк писал(а):Большое спасибо!!!

Не за что.
Злюк писал(а):По первому пункту это в свойстве контроллера необходимо установить галочку на синхронизации времени да? это я уже сделал, но еще не проверял.
Нет, не в свойствах контроллера (это синхронизация от сервера времени), а в свойствах задачи (программы). Когда и как часто её запускать.
Злюк писал(а):По последнему не совсем понял, инвертировать TIM_sec.DN в смысле сделать его нормально замкнутым контактом?
Да, в строчке со счётчиком.
Злюк писал(а):и что убрать?
Пока ничего. Посмотрите, что получится.
Злюк писал(а):Если можно объясните поподробней, не на совсем профессиональном языке :)
Извините, на компе, с которого я сейчас на форуме нет RSLogix5000, так что по-памяти и без картинок.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр

Аватара пользователя

Looker
осмотрелся
осмотрелся
Сообщения: 192
Зарегистрирован: 09 фев 2011, 11:32
Ф.И.О.: Дитрих Евгений
Откуда: Донецк
Благодарил (а): 22 раза
Поблагодарили: 6 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Looker » 10 окт 2015, 17:08

Такое устроит?
ИзображениеИзображение
Help писал(а):время работы и счетчик пусков.
Вход:
Reset /BOOL/ - сброс показателей работы, после выполнения сбрасывается логикой инструкции
Выходы:
HoursNowOrPrev* /REAL/ - время работы текущего (предыдущего) включения, часы
HoursTotal* /REAL/ - суммарное время работы, часы
StartCount /DINT/ - количество пусков
Running /BOOL/ - Инструкция активна
* - обязательные параметры, остальные доступны через структуру управления командой

Давай e-mail - пришлю в формате для импорта (*.L5X), без доступа к внутреннему коду.


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 17:14

Спасибо!
В свойствах MainTask Whatchdog выставлен на 500мс, тип: continuous
TIM_sec.DN сделал нормально замкнутым контактом.
В понедельник теперь будет возможность проверить, так как двигатель стоит на ремонте...
PS: ниже вышлю скриншоты, надеюсь все правильно понял
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 10 окт 2015, 17:17

Looker писал(а):Давай e-mail - пришлю в формате для импорта (*.L5X), без доступа к внутреннему коду.


Большое спасибо! kalanovo@list.ru


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Ryzhij » 10 окт 2015, 18:56

Злюк писал(а): ниже вышлю скриншоты, надеюсь все правильно понял

Да, все так.

Можно ещё попробовать строку со сбросом счётчика минут переставить выше самого счётчика, добавив в условия сброса передний фронт TIM_sec.DN , а TIM_sec.DN в строке после счётчика копировать в к-либо бит, и уже этот бит-копию считать счётчиком секунд.
Тогда этими внесёнными задержками по циклам выполнения программы мы гарантированно исключим ситуацию с одновременно воздействующим на счётчик сбросом и счётным фронтом.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 06:48

Ryzhij писал(а):
Злюк писал(а): ниже вышлю скриншоты, надеюсь все правильно понял

Да, все так.

Можно ещё попробовать строку со сбросом счётчика минут переставить выше самого счётчика, добавив в условия сброса передний фронт TIM_sec.DN , а TIM_sec.DN в строке после счётчика копировать в к-либо бит, и уже этот бит-копию считать счётчиком секунд.
Тогда этими внесёнными задержками по циклам выполнения программы мы гарантированно исключим ситуацию с одновременно воздействующим на счётчик сбросом и счётным фронтом.



Спасибо, как проверю отпишусь!


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 06:53

Злюк писал(а):
Looker писал(а):Давай e-mail - пришлю в формате для импорта (*.L5X), без доступа к внутреннему коду.


Спасибо получил!


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 07:01

А, еще такой вопрос, на рабочем ПЛК можно как то заливать логику без его останова? Сливать с контроллера можно без проблем, уже пробовал, а когда заливал у меня ПЛК переходил в режим REM, что привело к аварийной остановке агрегата :)...
Может есть какая то возможность залить именно ту часть которую изменил, или другие способы без остановки агрегата?

Аватара пользователя

Looker
осмотрелся
осмотрелся
Сообщения: 192
Зарегистрирован: 09 фев 2011, 11:32
Ф.И.О.: Дитрих Евгений
Откуда: Донецк
Благодарил (а): 22 раза
Поблагодарили: 6 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Looker » 11 окт 2015, 09:03

Злюк писал(а):А, еще такой вопрос, на рабочем ПЛК можно как то заливать логику без его останова? Сливать с контроллера можно без проблем, уже пробовал, а когда заливал у меня ПЛК переходил в режим REM, что привело к аварийной остановке агрегата :)...
Может есть какая то возможность залить именно ту часть которую изменил, или другие способы без остановки агрегата?
Имея два открытых проекта: Online (работающий) и Offline (с изменениями и другим именем) - <CTRL-C> и <CTRL-V> с Offline в Online, с удалением старого кода в Online. Или через экспорт / импорт нового кода.


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 10:13

Ryzhij писал(а):Да, все так.


Так 500мс это нормально, сколько там должно то быть? в настройках MainTask?


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 10:58

Looker писал(а):Имея два открытых проекта: Online (работающий) и Offline (с изменениями и другим именем) - <CTRL-C> и <CTRL-V> с Offline в Online, с удалением старого кода в Online. Или через экспорт / импорт нового кода.


Касаемо <CTRL-C> и <CTRL-V> с Offline в Online, в Online не активно для внесения изменений (нет возможности изменить либо что то удалить)
Касаемо импорта-экспорта, то в онлайне при импорте дает ошибку о одинаковом имени файле и не импортирует

Аватара пользователя

Looker
осмотрелся
осмотрелся
Сообщения: 192
Зарегистрирован: 09 фев 2011, 11:32
Ф.И.О.: Дитрих Евгений
Откуда: Донецк
Благодарил (а): 22 раза
Поблагодарили: 6 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Looker » 11 окт 2015, 15:25

Злюк писал(а):Так 500мс это нормально, сколько там должно то быть? в настройках MainTask?
Твои 500 мс - это "сторожевой таймер", время выполнения см. на вкладке Monitor.
Злюк писал(а):Касаемо <CTRL-C> и <CTRL-V> с Offline в Online, в Online не активно для внесения изменений (нет возможности изменить либо что то удалить)
Ключ процессора в каком положении? Надо Program. AOI в OnLine не редактируются. Внутри SBR-RET удаляй все строки и вставляй все другие и только потом закрывай Online редактирование.
Злюк писал(а):Касаемо импорта-экспорта, то в онлайне при импорте дает ошибку о одинаковом имени файле и не импортирует
Правильно - двух одинаковых имен быть не может - смени имя.
:ext_secret: Через смену имени можно многое в Online. Попробуй в Online удалить тег используемый в SCADA...


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 17:00

[quote="Looker"]Твои 500 мс - это "сторожевой таймер", время выполнения см. на вкладке Monitor.
Во вкладке монитор вот что у меня:
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 17:04

В общем создал имитацию работы двигателя, из выданных советов инвертировал TIM_sec.DN на входе счётчика COUNT_sec вроде работает...
Спасибо за помощь.
Отдельное спасибо Вячеславу!!!


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 17:07

Теперь появился последующий вопрос:)
Хочу подбить правильную наработку часов двигателя, так как до этого считал не правильно, но ничего не получается. Вбиваю необходимые значения а он на них не реагирует. В режиме REM или в Offline разрешение на изменения дает, а как только выхожу в RUN то он вставляет старые значения....


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 17:15

И еще один вопрос, при рабочем агрегате если я контроллер переведу в REM у меня произойдет аварийный останов или нет?

Аватара пользователя

Looker
осмотрелся
осмотрелся
Сообщения: 192
Зарегистрирован: 09 фев 2011, 11:32
Ф.И.О.: Дитрих Евгений
Откуда: Донецк
Благодарил (а): 22 раза
Поблагодарили: 6 раз

Re: Нужна помощь по RSlogix 5000

Сообщение Looker » 11 окт 2015, 17:45

Злюк писал(а):
Looker писал(а):Твои 500 мс - это "сторожевой таймер", время выполнения см. на вкладке Monitor.
Во вкладке монитор вот что у меня:
15 мс выполнения задачи, максимум. Много или мало - судить не берусь (зависит от типа процессора, количества I/O, сложности программы).


Автор темы
Злюк
здесь недавно
здесь недавно
Сообщения: 41
Зарегистрирован: 29 сен 2013, 17:00
Ф.И.О.: Смехов Дмитрий Юрьевич

Re: Нужна помощь по RSlogix 5000

Сообщение Злюк » 11 окт 2015, 18:23

Looker писал(а):
15 мс выполнения задачи, максимум. Много или мало - судить не берусь (зависит от типа процессора, количества I/O, сложности программы).[/quote]

ну у меня не более 15мс вроде!


Вернуться в «Верхний уровень автоматизации»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей