plcforum.uz.ua

International PLC Forum
It is currently Mon Dec 11, 2017 7:53 pm

All times are UTC + 3 hours


Forum rules


Please click here to view the forum rules



Post new topic Reply to topic  [ 5 posts ] 
Author Message
PostPosted: Thu Dec 07, 2017 12:22 pm 

Joined: Wed Mar 27, 2013 5:37 pm
Posts: 24
Здравствуйте.

Сделал и отладил свою большезную программу в CodeSys с целью дальнейшего использования в контроллере Simenes S7-1200. Перевел эту программу в TIA-portal путем копирования.

Отлаживаю ее, а она не хочет работать нормально. А именно один из ее функциональных блоков, который находится третьим функциональным блоком по счету вызова блока из блока программы Main. То есть, идет такой вызов: Main > FB1 > FB2 > xFBx.
Если этот функциональный блок запустить в программе main, то работает нормально. Все переменные Static.

Эту неработоспособность я понимаю в том плане, что переменная после ее инициализации не записывается в память (или не успевает записаться) и при втором повторении цикла, программа "проскакивает" нужный элемент IF-кода.
Может где-то нужно поставить какую-то галочку в настройках функциональных блоков? Меня просто убивает то, что у TIA Portal отсутствует режим Ofline симуляции и функция Debug без которого я не могу определить как думает программа и где она запутывается. Программа стоит просто сумасшедших денег, а в функциональности наладки значительно уступает бесплатной CodeSys.


Top
 Profile  
 
PostPosted: Thu Dec 07, 2017 2:10 pm 
Site Admin

Joined: Mon Aug 15, 2011 5:27 pm
Posts: 122
Нелогичное описание проблемы - одни эмоции (boom)
Quote:
Main > FB1 > FB2 > xFBx.......> zFBz

и далее такой же сумбур вымыслов
Quote:
Меня просто убивает то, что у TIA Portal отсутствует режим Ofline симуляции
у твоего Портала имеется Online симуляция ? :haha:
PLCSIM v14 поддерживает симуляцию S7-1200 v4.*
Quote:
Программа стоит просто сумасшедших денег, а в функциональности наладки значительно уступает бесплатной CodeSys.
Васькин Портал для S7-1200 стоит сумасшедших 300 евро... хотя можно скачать условно-бесплатный Триал.


Top
 Profile  
 
PostPosted: Thu Dec 07, 2017 4:41 pm 

Joined: Wed Mar 27, 2013 5:37 pm
Posts: 24
Ну как-бы уже третий день отлаживаю маленький участок своей программы... поэтому и не удивительно, что переполняют эмоции. (h)
Я отлаживаю свою программу на реальном ПЛК с подключенными к нему механизмами и дело не в симуляции а в необходимости остановки программы в определенном месте и последующего прохода программы построчно, аналогично другим средам программирования. Но это не касается сути вопроса.

Если коротко, то вопрос вот в чем:
Имеется функциональный блок (FBx), помещенный внутри FB2, который в свою очередь помещен внутри FB1. И FB1 помещено внутри программы main. Этот функциональный блок FBx sp@@m отказывается работать так как положено. Он работает но в определенном месте не видя изменения координаты переходит в другой режим. Программа построена таким образом, что каждый цикл программы важный и не записав значение в первом цикле, во втором - "поезду уйдет". Хотелось мне сделать эту программу по-проще и по-надежнее, но ничего умнее как-то не придумал.

Но вот главный вопрос, если я этот FBx помещаю в программу main, то все работает как надо. Почему??!
Повторюсь, начинал я писать программу в CodeSys и там все работало как часы.


Top
 Profile  
 
PostPosted: Thu Dec 07, 2017 4:50 pm 
Site Admin

Joined: Mon Aug 15, 2011 5:27 pm
Posts: 122
Как и в обычном Степе для контроля прохождения программы использую:
- вспомогательные триггеры, взводимые событием дохода до этой ветки - либо битом, либо фронтом по взводу или спаду бита
- счётчики - показывающие количество раз прохода до этой ветки
- команду MOVE для скидывания контрольного слова, в основное меркерное поле, сообщающее о прохождении данной ветки.
Quote:
Image

Image

У каждого контрллера могут быть свои особенности ограничения - в том числе и по вложенности вызовов блоков.
На какой версии Портала и на каком языке написана программа ?
В Портале 14 можно в одном блоке использовать написание веток на разных языках через изменение свойств блока.
Quote:
Но вот главный вопрос, если я этот FBx помещаю в программу main, то все работает как надо. Почему??!
Повторюсь, начинал я писать программу в CodeSys и там все работало как часы.
Без анализа твоего творения невозможно дать ответ.
Я написал программу для STM32... не понимаю почему она не загружается в S7-1200 ? ... Ведь в Дисковери она работает как надо !!!


Top
 Profile  
 
PostPosted: Mon Dec 11, 2017 6:07 pm 

Joined: Wed Mar 27, 2013 5:37 pm
Posts: 24
Спасибо за ответ, DiVan. Удалось наладить свою программу. Нашел в чем была проблема. Проблема не зависела от вложенности блоков, но от внутренних переменных.
Использую Портал 14.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by International PLCforum® Forum Software © PLCforum
Mobile version