SIEMENS, DF&PD

Предыдущее посещение: Пн июл 11, 2016 0:31 Текущее время: Пн июл 11, 2016 0:31

Часовой пояс: UTC + 3 часа




 [ Сообщений: 18 ] 
Автор Сообщение
 Заголовок сообщения: Ошибка при симуляции с помощью PLCSIM
СообщениеДобавлено: Пн фев 11, 2013 15:32 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Добрый день! Недавно начал осваивать программирование сименсовских ПЛК в TIA Portal. Написал программу для контроллера 300-й серии (STL). Не имея пока контроллера и панели оператора, решил потестировать её, используя PLCSIM. Результат оказался... интересным.
В программе моей показания датчиков (аналоговые входы) должны отображаться на панеле оператора. Поначалу, изменяя в PLCSIM значения аналоговых входов, запуская симуляцию видел их изменения на панели в WinCC. Однако затем, при попытке начать симуляцию (Simulation > Start) стало появляться сообщение об ошибке:
PLC_1 Error. Difference in low-level component.

В Diagnostic buffer отображается информация о следующих ошибках:

Area length error when reading
I area, word access, Access address: 256
OB number: 1
Module address: 0
Requested OB: Programming error OB (OB121)
OB not found, or disabled, or cannot be started in the in the current operating mode

STOP caused by programming error (OB not loaded or not possible, or no FRB)
Breakpoint in user program: Cyclic program (OB1)
Priority class: 1
OB number: 1
Module address: 0
Previous operating mode: RUN
Requested operating mode: STOP (internal)

Кроме того, в PLCSIM в одном из входов (как раз-таки IW 256, о котором речь идёт в Area length error when reading) перестали фиксироваться вводимые числа. ну и HMI 'Not reacheble'
Как вы думаете, чем это может быть обусловлено?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн фев 11, 2013 16:15 
Не в сети
Возможно это нечеловек

Зарегистрирован: Пн окт 30, 2006 16:27
Сообщения: 2271
Откуда: Украина, Днепродзержинск
Добавьте блок ОВ121.

Было бы интересно увидеть код, который Вы написали......


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн фев 11, 2013 17:11 
Не в сети
Возможно это нечеловек

Зарегистрирован: Пн авг 15, 2011 9:44
Сообщения: 2260
Поищи по форуму о различиях между IW256 и PIW256
По умолчанию Степ7 относит аналоговые модули за пределы образа процесса в область Р = PIW256.
Поэтому обращение к IW256 воспринимается как попытка чтения несуществующего порта.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:31 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Cerberus, proskun!
Спасибо за советы!
При замене IW256 на PIW256 значения стали отображаться на панели в WinCC. При запуске соответствующие значения отображаются верно. Но ошибка (Simulation > Start "PLC_1 Error. Difference in low-level component.") осталась. При этом при "Go online" происходят эээ... ошибки конфигурирования (?) hardware. При этом в дереве проекта напротив компонентов hardware появляются восклицательные знаки. При подведении курсора к Local modules и к Distributed I/O - "there are conflicts below this level", к PLC_1 - "Errors", к блокам питания - "Diagnostic not possible". Может быть, в этом и кроется причина ошибок "low-level component"? Сталкивался ли кто-нибудь с чем-то подобным?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:33 
Не в сети
Возможно это нечеловек

Зарегистрирован: Пн авг 15, 2011 9:44
Сообщения: 2260
Выкладывай проект и копии экранов - на буковках ничего не понятно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:35 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Скриншот к предыдущему посту:

Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:39 
Не в сети
Возможно это нечеловек

Зарегистрирован: Пн авг 15, 2011 9:44
Сообщения: 2260
Вставка блоков питания в корзину S7-300/ET200 не является обязательным требованием - поэтому попробуй их выкинуть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:41 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср фев 13, 2013 13:43 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
При этом я не понимаю, как они могут быть разными - в оффлайне загрузил hardware, перевёл в online


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 7:39 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Вс янв 25, 2009 22:05
Сообщения: 1915
Откуда: Киров
Nikita_SU писал(а):
При этом я не понимаю, как они могут быть разными - в оффлайне загрузил hardware, перевёл в online

Обратите внимание на заказной номер CPU в PLCSIM. Вы будете удивлены, увидев там 6ES7 841-0CC05-0YA5 вместо сконфигурированного Вами.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 9:04 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
to canada

А это на что-то влияет? Это ведь просто заказной номер PLCSIM
http://old.automation-drives.ru/as/down ... CSim_r.pdf

Он ведь одинаков для всех CPU.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 9:08 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Ср дек 05, 2012 10:52
Сообщения: 1455
Nikita_SU писал(а):
to canada

А это на что-то влияет? Это ведь просто заказной номер PLCSIM
http://old.automation-drives.ru/as/down ... CSim_r.pdf

Он ведь одинаков для всех CPU.
Влияет на невыполнение всех реальных функций реального CPU в полном объёме - согласно документации.

Кстати у блоков питания для S7-300 нет задней шины и информационных портов (кроме двух проводов: 0 и +24В),
поэтому как бы нет смысла их "диагностировать" и вставлять в логическую конфигурацию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 9:20 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
to canada

кстати, посмотрел сюда: http://iadt.siemens.ru/forum/viewtopic. ... 86f7b1bdf7

Вы пишете "уже сам разобрался: :) SF горит из-за неправильной программы пользователя, присутствует ошибка. Исправил - SF потух." У меня тоже горит SF, а при симуляции процессор в TIA Portal очень быстро переходит в режим STOP, загорается ERROR. При этом, в Call hierarchy порядок обращения OB1 > FB1. При кликаньи на него вызывается соответствующий блок, где выделена строка. Выходит, у меня всё-таки ошибки в коде?

P.S. Перевожу в TIA Portal процессор в режим RUN - он считает (в PLCSIM видно, как меняются значения в аккумуляторах и регистрах), и снова в TIA Portal переходит в режим STOP, горит ERROR.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 9:26 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
to Platonov

Вставил блоки питания, так как хотелось видеть весь комплекс в сборе.

- - - - - - - - -

Господа, а нельзя ли как-то в PLCSIM проверить работоспособность кода для HART-модулей?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 9:52 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Ср дек 05, 2012 10:52
Сообщения: 1455
Nikita_SU писал(а):
Выходит, у меня всё-таки ошибки в коде?

P.S. Перевожу в TIA Portal процессор в режим RUN - он считает (в PLCSIM видно, как меняются значения в аккумуляторах и регистрах), и снова в TIA Portal переходит в режим STOP, горит ERROR.
Программу на файлообменник.
Проверить работоспособность кода можно для разнойпериферии - ограничения проверок в документации.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 14:25 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Пересмотрел программу. И решил уточнить пару моментов.

1. По-моему, с логической частью всё в порядке, однако, не смотря на то, что в OnOff и OldSystemFlag нули, программа переходит к функциональному блоку проверки FB_CHK, хотя должна идти по пути m202 > m204
Изображение
Верна ли моя логика - или здесь ошибка?

2. Вопрос по поводу таймеров. Мне надо организовать задержки, наример, замерить температуру через 10 секунд, или подать сигнал открыть вентиль, подождать пока он откроется и подать сигнал на устройство. Я сделал выбор в пользу таймера SP. Правилен ли мой выбор?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт фев 14, 2013 17:02 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
!!!

Как оказалось, во время симуляции переход процессора в TIA Portal в режим STOP и активация флажка ERROR, равно как и активация флажка SF в PLCSIM обусловлены лишь тем, что я в PLCSIM вводил данные не во все PIW ! Когда ввёл все - процессор в TIA Portal перешёл в режим RUN и так там и остался, a в PLCSIM флажок SF не загорался

P.S. под "процессором в TIA Portal" подразумеваю Testing > CPU Operator panel

P.P.S. Господа, мне бы хотелось узнать ваше мнение по поводу таймеров. Мне надо организовать задержки, наример, замерить температуру через 10 секунд, или подать сигнал открыть вентиль, подождать пока он откроется и подать сигнал на устройство. Я сделал выбор в пользу таймера SP. Правилен ли мой выбор?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт фев 15, 2013 10:28 
Не в сети
Новый писатель

Зарегистрирован: Пн фев 11, 2013 14:43
Сообщения: 23
Откуда: St.-Petersburg
Уточнение:

В мануале написано:
"SP <timer> запускает заданный таймер по нарастающему фронту RLO
(переход из "0" в "1"). Таймер продолжает работать в течение заданного
времени пока RLO = 1. Таймер останавливается, если RLO меняется с 1 на 0
до истечения заданного времени. Таймер запускается в соответствии с
временем и временной базой, заданными в младшем слове аккумулятора."

У меня нет I, чтоб по нему запускать таймер. Мне надо организовать задержки, наример, запустиь двигатель через 3 секунды после подачи сигнала на заслонки забора воздуха.

Изображение

Правилен ли такой мой подход?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 18 ] 

Часовой пояс: UTC + 3 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group