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

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

 Ответить Ответить Страница  <1 2627282930 53>
Автор
Сообщение
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Средство для программирования контроллера: Си или МЭК 61131?
    Опубликовано: 15 Октябрь 2003 11:29
Не в резервированных словах дело, а в присутствии
возможности...

Может, действительно, и в 2.10 ISaGRAF ST - это
структурный язык. Можно, наверное, и ST a la
ISaGRAF 4.20 назвать структурным.

В чем проблемы, никак не пойму?

Еще раз повторить, что после того, как мне показали
способы создания функция на ST a la IEC, мне стало
понятно, что ST теоретически позволяет использовать
технику структурного программирования?

Ну, повторяю... Абсолютно согласен со всеми, кто
заявляет, что ST a la IEC 61131-3 позволяет использовать
технику структурного программирования в ее самом
ортодоксальном виде.

Надеюсь, Вы удовлетворены.

Уходя немного в сторону: можно заметить, что это
позволяет делать и Си, и Фортран, и куча ассемблеров
разных...

Тоже, кстати, забавный вопрос, почему Паскаль был
включен в МЭК 61131-3, а Си нет?
Самое смешное, никому бы в этом случае не пришло в
голову Паскаль использовать в качестве вспомогательного
языка, как это делается в том же ISaGRAFе.
Первоначально опубликовано VSerg

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

В ISaGRAF 2.10 в ST отсутствовали ключевые слова
FUNCTION и END_FUNCTION.

В принципе, по замыслу МЭК, как я теперь понимаю,
ST предлагался в качестве обычного процедурного языка...
урезанный вариант Паскаля.

В версии 2.10 ISaGRAF этот Паскаль еще больше урезал...
вообще сделав невозможным его автономное использование.

Является ли ST a la ISaGRAF 2.10 структурным языком? Разумеется нет. Та же ситуация, как я Вас понял, и в версии ISaGRAF 4.20 осталась.



Если Вы причисляете ЯП к структурным, только по признаку наличия ключевых слов FUNCTION и END_FUNCTION в среде разработки, то поиск истины в диалоге с Вами становиться бессмысленным.

Так как, на мой взгляд, вы путаете среду программирования с языком программирования. В среде программирования могут быть скрыты любые (по мнению производителя мешающие) атрибуты, вплоть до явного объявления функции в теле файла содержащего функцию. В среде программирования это явное объявление может отсутствовать. Программный код скомпилированный средой будет включать и заголовки функций и их объявление, так как без ЭТОГО просто НЕВОЗМОЖНО вызвать и использовать функцию. Это БЕССПОРНО.

Листинг Программы написанной полностью на ST:

Файл программы:

PROGRAM UNTITLEDSTPR
val := UntitledST1();
END_PROGRAM

Файл функции UntitledST1():

FUNCTION UNTITLEDST1
UntitledST1:=UntitledST2();
END_FUNCTION

Файл функции UntitledST2():

FUNCTION UNTITLEDST2
UntitledST2:=2;
END_FUNCTION

Чтобы понять язык нужно смотреть его исходники, а не среду разработки. Надеюсь после выше приведенных исходников у Вас окончательно отпадут сомнения в структурности ST. Есть у меня подозрение, что и в 2.10 было точно также. :) Посмотрите исходники проекта. :))

О СИ.
Возможность выполнить одну и ту же операцию несколькими способами уменьшает структурированность языка.
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
Guests Смотреть выпадающим
Гость
Гость
Свойства публикации Свойства публикации   Ответить, цитируя автора - Guests Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 11:32

Ничто так не ограничивает полёт мысли программиста, как компилятор :)

Решает на чем писать - не программисту, а как минимум его руководителю. Потому что цель работы программиста: намагнитить быстро вращающиеся металлические пластинки в правильных местах.  :)

Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 11:50
Намагничивать металлические пластинки в правильных
местах - это цель работы кодировщика... :-)

А программисту (если перефразировать другую поговорку)
для правильного программирования компьютер не нужен...
:-)))


Первоначально опубликовано Дмитрий Милосер

Ничто так не ограничивает полёт мысли программиста, как компилятор :)


Решает на чем писать - не программисту, а как минимум его руководителю. Потому что цель работы программиста: намагнитить быстро вращающиеся металлические пластинки в правильных местах.  :)

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


Присоединился: 14 Октябрь 2003
Online Status: Offline
Публикации: 25
Свойства публикации Свойства публикации   Ответить, цитируя автора - VSerg Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 11:56
Первоначально опубликовано Mike_K

<SPAN class=bold>VSerg</SPAN>
<SPAN class=captionl>Процесс разработки ПО и ЯП</SPAN>


Статья мягко говоря не корректная. Автор очень имеет очень смутное представление о С и о программирование вообще. Нельзя просто сравнивать любые языки, необходимо анализировать проекты, и выбирать средства реализации оных. Если программист владеет многими инструментами (языками) он более правильно выберет на чем и что писать, а не будет с пеной у рта кричать ST, МЭК, это круто.


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


 



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

Каждой вещи свое место.
С уважением, VSerg.
Наверх
VSerg Смотреть выпадающим
Новичок
Новичок


Присоединился: 14 Октябрь 2003
Online Status: Offline
Публикации: 25
Свойства публикации Свойства публикации   Ответить, цитируя автора - VSerg Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 12:29
Первоначально опубликовано Владимир Е. Зюбин



Еще раз повторить, что после того, как мне показали
способы создания функция на ST a la IEC, мне стало
понятно, что ST теоретически позволяет использовать
технику структурного программирования?



Вы неисправимы.:) В коде приведенном выше практическое использование. :)


Уходя немного в сторону: можно заметить, что это
позволяет делать и Си, и Фортран, и куча ассемблеров
разных...


Интересно. Назовите хоть один не структурный язык ВУ, т.е. язык не обладающий структурой.


Тоже, кстати, забавный вопрос, почему Паскаль был
включен в МЭК 61131-3, а Си нет?
Самое смешное, никому бы в этом случае не пришло в
голову Паскаль использовать в качестве вспомогательного
языка, как это делается в том же ISaGRAFе.


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

Пора закрывать эту тему. :)
Каждой вещи свое место.
С уважением, VSerg.
Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 13:04
Первоначально опубликовано VSerg

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



[...]

[QUOTE]
Уходя немного в сторону: можно заметить, что это
позволяет делать и Си, и Фортран, и куча ассемблеров
разных...

Интересно. Назовите хоть один не структурный язык ВУ, т.е. язык не обладающий структурой.


Вот и я о том же!

1. Чрезвычайно сложно найти язык не позволяющий
структурно программировать... (разве что ST a la ISaGRAF
2.10 :-)

2. Структурное программирование a la Паскаль
для рассматриваемого класса задач малоактуально.
(Если вспомнить с чего все началось: "Sructured Text (ST) - A high level textual language
that encourages structured programming.")

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


[QUOTE]
Тоже, кстати, забавный вопрос, почему Паскаль был
включен в МЭК 61131-3, а Си нет?
Самое смешное, никому бы в этом случае не пришло в
голову Паскаль использовать в качестве вспомогательного
языка, как это делается в том же ISaGRAFе.
[ / QUOTE]

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

Пора закрывать эту тему. :)


Абсолютно с Вами согласен, Си гораздо более
распространен и популярен в среде автоматизации, чем
Паскаль.

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


Присоединился: 14 Октябрь 2003
Online Status: Offline
Публикации: 25
Свойства публикации Свойства публикации   Ответить, цитируя автора - VSerg Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 13:53
Первоначально опубликовано Владимир Е. Зюбин



Интересно. Назовите хоть один не структурный язык ВУ, т.е. язык не обладающий структурой.

1. Чрезвычайно сложно найти язык не позволяющий
структурно программировать... (разве что ST a la ISaGRAF
2.10 :-)


Все о том же.

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


2. Структурное программирование a la Паскаль
для рассматриваемого класса задач малоактуально.


Прошу объяснить.

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


(Если вспомнить с чего все началось: "Sructured Text (ST) - A high level textual language
that encourages structured programming.")


Вам покажется это странным, но работая с ISaGRAF PRO версий 4.12, 4.20 я с этим полностью утверждением полностью согласен. Даже сказать более чем согласен, так как ISaGRAF принуждает структурно программировать. :)
Мой вам совет, не делайте голословных утверждений и посмотрите последние версии продктов.

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


Абсолютно с Вами согласен, Си гораздо более
распространен и популярен в среде автоматизации, чем
Паскаль.


Главные слова "распространен и популярен". Это не значит лучше. :))

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


Я тут вообще ужасную для Паскаля вещь слышал: говорят, Дельфи на Си++ написан... (!)


Да делфийский компилятор написан на Си, все остальное на Object Pascal. А компилятор на Си написан на Си?
Каждой вещи свое место.
С уважением, VSerg.
Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


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



[...]

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


2. Структурное программирование a la Паскаль
для рассматриваемого класса задач малоактуально.


Прошу объяснить.


Использование в качестве структурных элементов функций
малоэффективно при создании алгоритмов работы сложных
объектов автоматизации. Такой вид структуризации
неадекватен задаче.

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


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


(Если вспомнить с чего все началось: "Sructured Text (ST) - A high level textual language
that encourages structured programming.")


Вам покажется это странным, но работая с ISaGRAF PRO версий 4.12, 4.20 я с этим полностью утверждением полностью согласен. Даже сказать более чем согласен, так как ISaGRAF принуждает структурно программировать. :)
Мой вам совет, не делайте голословных утверждений и посмотрите последние версии продктов.


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

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


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


Абсолютно с Вами согласен, Си гораздо более
распространен и популярен в среде автоматизации, чем
Паскаль.


Главные слова "распространен и популярен". Это не значит лучше. :))


Не значит, что лучше, не значит, что хуже...
"Распространен и популярен" - это качества, которые измеряются... а "лучше/хуже" - это лирика.
Прочувствуйте разницу.

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


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


Я тут вообще ужасную для Паскаля вещь слышал: говорят, Дельфи на Си++ написан... (!)


Да делфийский компилятор написан на Си, все остальное на Object Pascal. А компилятор на Си написан на Си?


Я думаю, многие компиляторы Си написаны на Си. Не
исключаю, что некоторые из них, написаны на Си++. И
уверен, что ни один здравомыслящий человек не станет
делать этого на Паскале... ;-)
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
Guests Смотреть выпадающим
Гость
Гость
Свойства публикации Свойства публикации   Ответить, цитируя автора - Guests Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 16:35


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


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


Я тут вообще ужасную для Паскаля вещь слышал: говорят, Дельфи на Си++ написан... (!)


Да делфийский компилятор написан на Си, все остальное на Object Pascal. А компилятор на Си написан на Си?

Я думаю, многие компиляторы Си написаны на Си. Не
исключаю, что некоторые из них, написаны на Си++. И
уверен, что ни один здравомыслящий человек не станет
делать этого на Паскале... ;-)

 

Ага, вы сейчас договоритесь до того, что кто-то начнет утверждать, что Исаграф на МЭКовских языках написан

Давайте уже придем к менению, что логичнее и производительнее всего писать средства разработки\драйвера\средства визуализации и программирования на Си, а алгоритмы управления тех процессом в большинстве случаев - на МЭК. Тогда и спор сам собой утрясется :)

 

Наверх
Владимир Е. Зюбин Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 09 Сентябрь 2003
Категория: Russian Federation
Online Status: Offline
Публикации: 247
Свойства публикации Свойства публикации   Ответить, цитируя автора - Владимир Е. Зюбин Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Октябрь 2003 17:05
Ну, ну... Паскаль и ST - все же разные вещи...
Раземеется, ни ST, ни какой другой "МЭК-язык"
не позволяет написать транслятор...

Так что, время паниковать еще не пришло... :-)

Но над этим фактом (Дельфи на Си++) есть смысл
хорошенько подумать... ;-) а умные люди (к коим без
ложной скромности я отношу и себя :-) уже давно
над этим фактом размышляют...
и кое-какие выводы уже наклевываются...

Первоначально опубликовано Дмитрий Милосер


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


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


Я тут вообще ужасную для Паскаля вещь слышал: говорят, Дельфи на Си++ написан... (!)

Да делфийский компилятор написан на Си, все остальное на Object Pascal. А компилятор на Си написан на Си?

Я думаю, многие компиляторы Си написаны на Си. Не
исключаю, что некоторые из них, написаны на Си++. И
уверен, что ни один здравомыслящий человек не станет
делать этого на Паскале... ;-)


 


Ага, вы сейчас договоритесь до того, что кто-то начнет утверждать, что Исаграф на МЭКовских языках написан


Давайте уже придем к менению, что логичнее и производительнее всего писать средства разработки\драйвера\средства визуализации и программирования на Си, а алгоритмы управления тех процессом в большинстве случаев - на МЭК. Тогда и спор сам собой утрясется :)


 

Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК
http://reflex-language.narod.ru/
Наверх
 Ответить Ответить Страница  <1 2627282930 53>

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

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