Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Архив
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Средство для программирования контроллера: Си или МЭК 61131?

 Ответить Ответить Страница  <1 23456 53>
Автор
Сообщение
Сергей Гусев Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 16 Апрель 2003
Online Status: Offline
Публикации: 126
Свойства публикации Свойства публикации   Ответить, цитируя автора - Сергей Гусев Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Средство для программирования контроллера: Си или МЭК 61131?
    Опубликовано: 10 Сентябрь 2003 11:45
Первоначально опубликовано KST

UL - это Ultralogik надо полагать? Можно ли в нем сформировать выборку значений из АЦП, и как с ней работать ?

Легко. Можно либо просто создать нужное число отдельных переменных, наполнять их отсчетами, а далее ледать по ним хоть статистику, коть Фурье.

А можно использоавть механизм "массивов". Это тоже предусмотрено. Кроме этого есть библиотечные элементы для работы с различными тапами "среднего". если это нужно.

С уважением,

Сергей Гусев
"Первая Миля", Authorized ICONICS Systems Integrator
Наверх
Сергей Гусев Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 16 Апрель 2003
Online Status: Offline
Публикации: 126
Свойства публикации Свойства публикации   Ответить, цитируя автора - Сергей Гусев Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 12:36

Первоначально опубликовано Владимир Е. Зюбин

Кстати, поясните пожалуйста, почему Си-код, вставленный
в UL, дает неадекватный результат... приводит к замедлению
работы системы? Вы случаем, не сами ль с Си разбираетесь?
или это загадочные издержки архитектуры UL? По мне, так
"си"-шный sqrt завсегда должен быть быстрее sqrt на FBD...
не говоря уже о странном предложении sqrt на FBD писать...

Потому что тянет за собой большие математические библиотеки. UL не "разбирается" с С самостоятельно, а пользуется готовым исполняемым кодом из С, просто прилинковывая его к "себе".

Разнича только в том, что UL компилирует ПРЯМО в Ассемблер, поэтому вычмсление, например, того же корня превлащается в ЛИНЕЙНЫЙ алгоритм сложений и умножений.

С++, на самом деле также вычисляет ЛЮБУЮ функцию с помощью разложения в ряд, но только делает это гораждо более "обстоятельно", добавляя в код целый набор библиотек, основная часть который для данной задачи не нужна. 

Да Вы можете просто дизассемблировать программу, написанную на С++ из одного оператора SQRT(от чего- либо), и Вы все поймете сами:)

И для сравнения - можете сделать тоже самое с программой вычисления корня методом полинома на UL.

Обещаю - Вы почувствуете разницу! UL, при всех его недостатках - в первую очередь ОДИН ИХ САМЫХ ОПТИМАЛЬНЫХ компиляторов , которые я когда либо встречал. Причем, тут как раз не важно, из какого язака, их МЭК или из "скриптового". Можно относиться к UL по-разному, но этого у него не отнять...

Кстати, в новой версии UL по "просьбам трудящихся" будет добавлен-таки компилятор с "нормальнго" язака. Правда не с С, а с Паскаля.

С уважением,

Сергей Гусев
"Первая Миля", Authorized ICONICS Systems Integrator
Наверх
Sergey Sorokin Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 27 Март 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 240
Свойства публикации Свойства публикации   Ответить, цитируя автора - Sergey Sorokin Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 13:28

Первоначально опубликовано TO: Владимир Е. Зюбин


1. Так и я говорю, что стандарт слаб как инженерный проект,
что там много политики. ПРИЧЕМ, не национальных
комитетов стандартизации, а ТРАНС-национальных компаний,
лоббирующих свои интересы...

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Для того и существует процедура периодического пересмотра стандартов, что бы улучщать их качество. Голосуют именно национальные комитеты (почитайте документы IEC). Если в каких то странах национальные комитеты по стандартизации ходят под каблуком транснациональных компаний, то это их проблемы. К чему эта теория заговора? Скажем я участвую в формировании голоса России по стандартам 65 комитета МЭК, наряду с представителями Госстандарта и других, в том числе государственных, организаций. Выходит все мы чьи то агенты? Как то очень просто получается (в стиле 37 года).



2. PLCOpen неверно интерпретирует цели стандарта.
А попросту говоря, PLCopen пытается заработать на
стандарте... домысливает какие-то уровни соответствия,
навязывает сертификацию. Все это противоречит
написанному в самом стандарте. Если они при этом говорят,
что они поддерживают стандарт, то это ложь. Они этот
стандарт самым бессовестным образом нарушают.

>>>>>>>>>>>>>>>>>>>>>>>>

Нарушать стандарт могут производители ПО. PLCOpen таковым не является (кстати никто не обязывает и производителей ПО стандарт соблюдать). PLCOpen добровольная организация и ее зарабатывание денег полностью зависит от доброй воли ее членов. Сетификация так же добровольна. Как только компании участники перестанут платить членские взносы, PLCOpen тихо умрет (как умерла скажем организация STDbus, после того как  эта технология стала для рынка неинтересной). Ваши фантазии насчет неверной интерпретации опять же основаны на Вашем неверном понимании взаимоотношений между некоммерческими объединениями типа PLCOpen и международными организациями по стандартизации.


1. Сергей, процесс стандартизации активно используется в
конкурентной борьбе. Могу порекомендовать хорошую
статью по теме:
Д. Арнольд. Смысл графических стандартов: коммерческая
выгода и риск // Программирование 1996 ?5 с 52-63.
Уверен, Вы ее с интересом прочтете.

>>>>>>>>>>>>>>>>>>>>>>

У меня нет времени искать эту статью. Нет ничего особенного в том, что компании хотят защитить свои капиталовложения в ту или иную технологию путем ее признания в том или ином стандарте. Для них наиболее важно, что бы как можно большее число производителей признавали эту технологию, для чего как правило внутренних стандартов таких клубов по интересам как PLCOpen или PICMG вполне достаточно. Родоначальники технологий, ради их широкого  признания рынком, готовы бесплатно передавть свои патенты такого рода некоммерческим организациям. Даже мощные корпорации не учитывающие реалии рынка терпят поражения (вспомним хотя бы IBM с их MicroChannel). Проблемы начинаются если кто то хочет использовать стандарты в конкурентной борьбе. Скажем когда в Европе приняли решение об обязательности использования на госпредприятиях стандарта CENELEC по филдбасам (туда входили Profibus, worlFIP и еще какой то никому не извествный филдбас, названия которого я не помню), то американцы попытались обойти такие ограничения на свою шину FF, через ее стандартизацию в МЭК (который по статусу выше CENELEC). В результате всей этой драчки в стандарт МЭК 61158 вошло сразу 7 разных филдбасов. Не было бы этих протекционистских решений обязывающих применять только европейские филдбасы на госпредприятиях, то никто бы особенно и не дергался. А частные предприятия вольны применять те стандартные или нестандартные решения которые им нравятся и в конце концов рынок определит какая технология выживет, а какая нет.




 
Я читаю прямо с их сайта: "users can move between
different brands and types of control with very
little training and can exchange applications with
a minimum of effort. To reach this goal, the
members of PLCopen are committed to supply and/or
use IEC 61131-3 compliant products."

 

Я не думаю, что люди, писавшие эту отсебятину
про кросс-платформенную переносимость и
независимость от производителя, не читали стандарт
и не знают текущего положения с _полной_
несовместимостью продуктов на базе МЭК 61131-3...
>>>>>>>>>>>>>>>>>>>>

Вы просто читайте внимательнее. Здесь написано, что «ПОЛЬЗОВАТЕЛИ могут переходить на инструментальное ПО других брэндов ... с очень небольшим  переобучением». Здесь ничего нет про открытость внутренних форматов систем разработки  или про переносимость проектных данных на уровне двоичных кодов.


Какой вывод? А вывод такой - а) цели PLC Open с
МЭК 61131-3 не совпадают, б) PLC Open дает
неверную информацию о стандарте...

>>>>>>>>>>>>>>>>>>>>>>>

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



Вы меня не поняли, Вы говорите о МЭК 61131-3,
а я о стандарте, который целям PLC Open
соответствует...

>>>>>>>>>>>>>>>>>>>>>>>>>>

Вы просто неверно перевели с английского цели PLCOpen.

С Уважением,

 

Сергей Сорокин

 

Наверх
evgen Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 08 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 178
Свойства публикации Свойства публикации   Ответить, цитируя автора - evgen Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 13:34
Первоначально опубликовано Maxym


...gcc-подобные есть для ряда pic'ов...
[/QUOTE]


А подробнее об этом можно?


Где, например, взять? Скачать.


Примеры и пр.

[/QUOTE]
Гугль вам в руки и форум на сайте телесистем (http://www.telesys.ru/wwwboards/dsp/index.shtml ) с конфененцией фидонета на шею.
Сам я таким не пользуюсь, но на глаза попадалось что-то...
Прямо сейчас - вижу
tavrasm-os2-1_19-rus.zip
Short Description: Assembler for AVR-microcontrollers (russian version)
Long Description: This is freeware (released under GPL) macroassembler for AVR-series of microcontrollers. Russian version.
SY,
EK
Наверх
evgen Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 08 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 178
Свойства публикации Свойства публикации   Ответить, цитируя автора - evgen Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 13:51
Первоначально опубликовано Сергей Гусев

Первоначально опубликовано evgen


от себя добавлю что на сях достаточно спокойно обращаюсь с микросекундами на PC и микросекундами и десятыми микросекунды в 16битнных DSP. И согласен с предыдущим оратором что никакая скада такого не обеспечит.


Типичный цикл управления на UL завсит от процессора и составляет, например, порядка 1/1500с для х188-40 и порядка 1/75000 для Р-233 (NationalGeode) для типовой задачи одного ПИД регулятора (2 аналоговых входа, один аналоговый выход, два дискретных входа, два дискретных выхода, три аналоговых сетевых уставки (P,I,D), одна аналоговая сетевая уставка).


Т.е. время реакции контроллера, построенного напроимер на CPU686 от Фаствела, и запрограммированного на UL на любое входное возмущение составляет 1,3 мкс (!!!). На CPU-188 - порядка 70 мкс.


Я не утвержнаю, что это рекорд. На С, (особенно если писать не для ДОС, а под RT-Kernel) можно получить время реакции порядка 700 нан.


Но для большинства реалых задач - вполне нормально.


Более того, можно произвести о обратные расчеты: если требования к системе предполагают (как это обычно бывает) время реакции порядка 10 мс, но на CPU868 можно написать в UltraLogik алгоритм, состоящий в совокупности из 7700 (!) "приведенных" ПИД-регуляторов. И этот аггоритм будет крутиться с периодом 10мс . А это довольно приличное быстродействие...




Упомянутые микросекунды на PC связаны с принципиальным ограничением: скоростью работы inp/outp.
SY,
EK
Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 15:23
Сергей Гусев на вопрос о причинах неадекватном
замедлении работы системы UL при включении взятия корня
квадратного на Си (sqrt):
Потому что тянет за собой большие математические
библиотеки. UL не "разбирается" с С самостоятельно, а
пользуется готовым исполняемым кодом из С, просто
прилинковывая его к "себе".


Извините, не хочу обвинять Вас в непрофессионализме, но
Вы, по-видимому, какие-то не те Си-библиотеки вставляете...

Это же просто проверяется... сейчас я опытным путем
получил, что один миллион операций взятия квадрата
из плавающей переменной равной двум занимает 100 секунд,
при затратах на организацию цикла в десять секунд...
(Борланд 3.5, 1ГГц Пентиум)... т.е. одна операция
взятия квадрата на Си занимает всего 90 нс...
всего в девять раз длиннее накладных расходов по
организации цикла
for (long i =0; i < 1000000000; i++) {...}

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

ЧТО ПРОЩЕ-ТО?!

А поскольку Вы все-таки профессионал, то
думаю, что-то там у Вас не в порядке с библиотеками...
Возьмите библиотеки от более ранних версий Си,
не надо Дот-Нет ставить...
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 16:24
Очень хорошо, что Вы согласны с тем, что МЭК 61131-3
не идеален...

Также, зная Ваш профессионализм, рад, что Вы принимаете
участие в процессе стандартизации...

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

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

Sergey Sorokin
переводит фразу "users can move between
different brands and types of control with very
little training and can exchange applications with
a minimum of effort. To reach this goal, the
members of PLCopen are committed to supply and/or
use IEC 61131-3 compliant products." :
Вы просто читайте внимательнее. Здесь написано, что
«ПОЛЬЗОВАТЕЛИ могут переходить на инструментальное ПО
других брэндов ... с очень небольшим переобучением».


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

Кстати, и вся деятельность PLC Open (по крайней мере,
в момент написания статьи в 1997 г) - это попытки
достичь этой переносимости... В статье об этом куча фактографии...
Допускаю, что за прошедшие пять лет PLC Open поумнели
и прекратили этот идиотизм... В чем мог бы усмотреть
и свой скромный вклад.. :-)

Sergey Sorokin (далее):
Здесь ничего нет про открытость внутренних
форматов систем разработки или про переносимость
проектных данных на уровне двоичных кодов.


Сергей!!! Так ведь и я об этом не говорю ни слова!!! 8-)

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

Но и Вы, пардон, поступаете не вполне корректно,
критикуя смысл, который я туда и не вкладывал...
это не конструктивно. Особенно после того, как я
уточнил смысл сказанного - межплатформенная
переносимость и независимость от производителя...
Давайте все-таки пытаться хотя бы искать общий язык.

А прежде, чем критиковать, может имеет смысл
сначала вопрос уточняющий задать... типа, что
там имеется ввиду под словом "открытый" и почему
оно в кавычках дается... и т.д.
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
bessonov Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 07 Август 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 108
Свойства публикации Свойства публикации   Ответить, цитируя автора - bessonov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 16:55
Первоначально опубликовано Владимир Е. Зюбин

Сергей Гусев:

И вообще:
На мой взгляд, разработчики UL более правильно
используют стандарт IEC 61131-3, чем в ISaGRAF
CJ International... или как там они сейчас называются...


"или как там они сейчас называются...":
http://www.icstriplex.ca/

интересный термин Вы применили:
"более правильно используют стандарт IEC 61131-3".
C UK не знаком, но знаком с Step 7, SIMATIC S7-200,300.
Не понятны Ваши претензии.
Что конкретно можете сказать по критике ISaGRAF?
С уважением,
Бессонов Ян.
Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 18:02
bessonov:
Что конкретно можете сказать по критике ISaGRAF?

То, что они стандарт неверно интерпретируют...

Стандарт описывает синтаксис пяти языков
программирования, стандартизует внешнее представление,
с целью минимизации существующих "клонов" этих языков.
Каждый из этих языков - суть самостоятельный язык. И
предполагалось, что производитель выпускает продукт
только на одно языковое средство (или на два, типа,
ST + SFC).

А ISaGRAF - это вавилонская башня... мультиязыковое
программирование, снижение надежности ПО, избыточная
функциональность, стоимость и т.п.
Ну, и по мелочам... тот же самый IL... если называть
вещи своими именами, то просто идиотизм
под интерпретатором IL (суть - ассемблер какого-то
сименовского процессора) пускать... а так, нормальный
продукт... простенькие проекты на нем можно ляпать...
наверное, в каких-то выделенных случаях можно даже
экономически оправдать его закупку...

в статье, может еще что-то есть, не помню...
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
Sergey Sorokin Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 27 Март 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 240
Свойства публикации Свойства публикации   Ответить, цитируя автора - Sergey Sorokin Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 10 Сентябрь 2003 20:46

Первоначально опубликовано TO: Владимир Е. Зюбин

[/QUOTE]

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

>>>>>>>>>>>>>>>>>

Я это лично наблюдал на сессии МЭК всвязи со стандартом 61158 по филдбасам, но это не значит, что каждый стандарт – это чье то оружие в конкурентной борьбе. По крайней мере в МЭК такая ситуация скорее исключение чем правило.


Sergey Sorokin
переводит фразу
"users can move between
different brands and types of control with very
little training and can exchange applications with
a minimum of effort. To reach this goal, the
members of PLCopen are committed to supply and/or
use IEC 61131-3 compliant products." :
Вы просто читайте внимательнее.
Здесь написано, что

<ПОЛЬЗОВАТЕЛИ могут переходить на инструментальное ПО
других брэндов ... с очень небольшим переобучением>.


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

>>>>>>>>>>>>>>>>>>>>>

Я перевел абзац частично что бы подчеркнуть, что не программы переходят на другой брэнд, а пользователи. Слово exchange - это все таки не переносимость. Написано, что «пользователи... могут обменивать приложения с минимальными усилиями». Слов типа interoperability и platform я не заметил. То есть PLCOpen ставил перед собой вполне земные задачи – что бы программист использовавший систему проектирования Сименс, мог легко перейти на систему проектирования скажем ABB. На первом этапе нужно было хотя бы договориться об общих «правилах языкознания» (синтаксис, семантика и т.п.). С текстовыми языками особых проблем по переносу обычно не возникает  К вопросам же переносимости проектов включая графические языки на уровне единого формата импорта/экспорта проектных данных, реально подбираются только сейчас. Вы кстати можете как частное лицо вступить в PLCOpen и принять участие в решении проблем переносимости.

 



Кстати, и вся деятельность PLC Open (по крайней мере,
в момент написания статьи в 1997 г) - это попытки
достичь этой переносимости...

>>>>>>>>>>>>>>>>>>>

Я бы так не сказал. По крайней мере сейчас из шести технических комитетов PLCOpen вопросами переносимости занимается только один. Хотя вопрос конечно важный. Опять же проекты на текстовых языках вроде бы должны переносится автоматически, если все придерживаются единых правил. Но Вы сами наверное знаете, что и в более устоявшейся сфере языков С/С++  здесь не все в порядке (у одних int - 16 бит, у других - 32, символы то ASCII, то Unicode и т.п.).

 



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

>>>>>>>>>>>>>>>>>>>

Я думаю Ваша статья висит в рамочке над рабочим столом у всех членов PLCOpen J

 

С Уважением

 

Сергей Сорокин

 

Наверх
 Ответить Ответить Страница  <1 23456 53>

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz