3 вопроса ,соответствие типа данных, считать бит меркера,

Промышленные Логические Контроллеры SIMATIC S7-200/300/400
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

3 вопроса ,соответствие типа данных, считать бит меркера,

Post by Oll Bell »

три вопроса
1. TIA портал для визуализации и step 7 для контроллера
имеется пневмопривод сипарт от сименса, 4-20 mA управление
от задатчика привод прекрасно позиционируется, а вот от аналогового выхода нет.
в панели задается открытие в процентах,
переменная в контроллере тип DW, такая же в TIA, если задать 99 с панели(отображение на панели выбрал 99), два числа всего,то клапан открывается полностью пневмоприводом.
чуть меньше задать, например, 98, клапан полностью закрывается.
я так понял,что неверный тип данных и задал тип данных в панели и контроллере "Word"
теперь вообще не реагирует привод на ввод данных
в он лайн прекрасно видно, что переменная с панели изменяется и в порт уходит число,
но клапан остается закрытым.
при применении двойного слова, напомню, или открыт при 99 или закрыт если заданная величина менее 99.
scrennshot с онлайн
http://radikall.com/images/2015/07/02/MEZWz.png
это симулятор, в онлайн нулей нет, с панели задается величина в DB29.DBD10
W#16#0000 такой тип на выход нужно отсылать. 16 бит но както не получается. word применяю,вообще привод не шевелится


2. имеется маркер слово MW6, например, имеется ли способ проверить каждый бит мaркера?
Или данные в DB записать? далее мне ясно что уже делать


3. не могу найти в степе условие "если равно" или "если не равно", подскажите название
==I такое в STL имеется, а другие варианты?

следующий вопрос по HMI и он здесь.
viewtopic.php?f=10&t=22913
sania
Site Admin
Posts: 1387
Joined: Sat Aug 13, 2005 6:15 am

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by sania »

зачем людей путать? это не портал
1) dbd10 в дата блоке не существует (нижняя строчка блока не с номером 14.0 а меньше )

2) м6.0 = бит 8
.............
м6.7 = бит 15
м7.0 = бит 0
..........
м7.7 = бит 7
в mw6

3) из каталога в разъделе интежеров взять нужный компаратор...
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Oll Bell »

3. нужный, я спрашивал название блока.
сижу в лесу, интернета нет, установка в эксплуатации, время допуска к установке огнаничено, спрашивал, что бы быстро вставить код.
на ходу корректироавать программу получается, но иногда контроллер перегружается, что недопустимо. поэтому приходится паузы ждать.
1. в TIA организовано поле IN Out в которое угол открытия вводится.
на скриншоте программа контроллера и панель отключена, это смулятор.
нет панели нет переменной.
с отсутсвием переменной не понял куда смотреть,
как бы dbd 20 db 10 в обоих случаях наблюдается, подскажите еще конкретнее, пожалуйста.

и еще повторюсь, если панель подключена, то в контроллере наблюдается изменение dbd20 db 10, но клапан только может полностью открытым быть или закрытым.

где то с типом данных ошибка?

элементарный код, а не получается задавать угол открытия задвижки через панель.
была бы возможность посидеть с панелью и контроллером, методом тыка бы нашел,
но пока никаках допуста к телу установки нет.

2. как бы такой способ обращения известен, но в моем случае не сработал, не стал разбиратьсч, с помощью MOVE закинул в базу и там разобрал на биты

спасибо, sania
almaz78
Posts: 108
Joined: Tue Dec 16, 2008 7:36 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by almaz78 »

1. почему вы не хотите исползовать стандартные функции scale, unscale (FC105, FC106 если не ошибаусь) ети функции для того и созданы чтобы читать писать аналоговие сигналы.
здесь ппримеры:
https://cache.industry.siemens.com/dl/f ... values.pdf

2. насколько я понял из вашего кода вы пытаетесь писать значение от 0 до 32768 в PQW если мне не исменяет память то аналоговие сигналы в Siemens scaled as 0-100%= 0- 27648

посмотрите здесь:

https://support.industry.siemens.com/tf ... ageSize=10
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Oll Bell »

спасибо, almaz78, стандартная библиотека на выходе REAL выдает, 105 я, например. для переферии Word нужен, поэтому спрашиваю, где ошибка может быть.
когда тип переменных DW был, то задвижка хоть на 99 процентов реагировала.
Понимаю, что вопрос начального уровня, но на объекте интернета нет, в оттеле нет, урывками к хостпоту удается подключиться. В сименс позвонил, указал на конфликт типа данных, тот же стандартный камень скалирование предлагают. Был бы интернет, то порылся бы и просветился.

Досконально степ не знаю, но для решения задач достаточно , а в данный момент все уже в работе и доступа практичеки нет, поэтому готовое решение спрашивал.

спасибо за ссылки, теория ясна от я до а, не хватает практики. Вот ее и нарабатываю
almaz78
Posts: 108
Joined: Tue Dec 16, 2008 7:36 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by almaz78 »

fc105 выдает реал потому что используется для скалирования analog INPUTS.
вам нужна fc106 которая unscale она выдает integer на выходе и используется для analog OUTPUTS.

смотри описание здесь:

http://radikall.com/image/Qs45

и да FC106 ето готовое решение
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Oll Bell »

спасибо, попробую готовое решение, хотя проще мне свое применинять, всего вопрос присвоить данные поля панели переменной в контроллере.

хотелось бы свою ошибку в своем варианте увидеть, возможно сам выходной модуль неверно сконфигурирован

модуль 332-5HB01-0AB0, 4-20 mA выход, контакты 3 и 6. порт 368.
максимально разрешенный порт в контроллере для ввода вывода как процесс Image -374.
и опять же, в он лайн вижу на pqw368 изменяющееся число, видел, когда все переменные были типа DW, но клапан, повторюсь, умел быть закрытым или открытым.
Сейчас в панели тип переменной W и в он лайн нули.
про отсутствие в DB переменной не понял, об 14 ом бите или адресе..
screenshot
Image


задумывалось все в SCL реализовать, но пока так же непонятные ситуации, отсутствие опыта работы со степом, компилируется код без ошибок, в программе наблюдается неожидаемое поведение модулей, не соответствующие логике описанной в них.
в режиме симуляции или он лайн нет возможности проследить поведение SCL, так как отладочный модуль не создан.
Без понятия как его создавать, редактор SCL не знаю. Поэтому приходится стандартные функции применять, о которых вообще только общие сведения.
А пока обычный код типа

Code: Select all

REAL_TO_INT(Variable)
не желает работать... но это лирика, без возможности просмотра кода SCL в онлайн лучше не связываться с ним

вопрос еще из трех вопросов ))
как работает MOVE,

-какой тип переменной подается на вход тот же тип и перемещается?
- или конвертирует перемещаемые данные в зависимости от типа переменной которой присваивается перемещаемое значение?
-полный аналог Transfer?

спасибо за поддержку.
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Oll Bell »

использовал FC106, под рукой только симулятор, как то возможно отследить, что выдается на порт 368?
screenshot
Image
возможно вновь не верно сделал

с панели в DB20.DBD10 REAL записывается, диапазон 0-100.
CoMod
Site Admin
Posts: 3992
Joined: Thu Feb 16, 2006 3:25 pm
Location: Russia

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by CoMod »

Oll Bell wrote:использовал FC106, под рукой только симулятор, как то возможно отследить, что выдается на порт 368?
В симуляторе выведи панельку с адресом PQW368
Image
Oll Bell
Posts: 118
Joined: Sun Apr 17, 2011 9:49 pm

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Oll Bell »

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

в следующий раз нужно будет онлайн в конфиге на модуль поглядеть.
не знал, вычитал недавно.

поэтому как то на симулятор и не вспомнил, хотя с него данные задаю.
Тяжелые времена настали, но интересные.
Yury
Posts: 65
Joined: Thu Nov 01, 2007 9:41 pm
Location: Belarus

Re: 3 вопроса ,соответствие типа данных, считать бит меркера

Post by Yury »

В вашей самоделке
1. отсутствует преобразование с real в int (word),
2. значение для шкалы всё же лучше брать не 32768 а 27648 - в документации на аналоговые модули указаны рабочие диапазоны (-27648 ...)...0...27648 .