[TIA Portal] Какой язык программирования вы предпочитаете?
[TIA Portal] Какой язык программирования вы предпочитаете?
Здравствуйте, товарищи.
Возник вопрос о целесообразности использования SCL в контроллерах 1500 серии и стало интересно, а кто на чем пишет.
В опросе - основной язык, в комментариях совершенно не возбраняется рассказать о предпочтениях в решении каких-то задач на других языках.
Возник вопрос о целесообразности использования SCL в контроллерах 1500 серии и стало интересно, а кто на чем пишет.
В опросе - основной язык, в комментариях совершенно не возбраняется рассказать о предпочтениях в решении каких-то задач на других языках.
Re: [TIA Portal] Какой язык программирования вы предпочитает
А можно поинтересоваться у любителя LAD, почему предпочтение отдаётся именно ему. Ну и совсем здорово - какой-нибудь пример кода.
- Автоматизатор
- Профессионал
- Сообщения: 993
- Зарегистрирован: 09 окт 2012, 05:18
Re: [TIA Portal] Какой язык программирования вы предпочитает
Если надо использовать косвенную адресацию, то по крайней мере в S7-1200 SCL - это единственный вариант, т.к. STL нет.Strohmann писал(а):Возник вопрос о целесообразности использования SCL в контроллерах 1500 серии и стало интересно, а кто на чем пишет.
Вот пример использования, без SCL было долго и нудно. Например, обнулить блок статистики:
Код: Выделить всё
IF #fCycle THEN
FOR #i := 0 TO 800 BY 1
DO
#POINT[#i].n := 0.0;
#POINT[#i].Npvo := 0;
#POINT[#i].Vppo := 0;
#POINT[#i].H_ACT := 0;
#POINT[#i].H_NEW := 0;
#POINT[#i].PVO_ActPos := 0;
#POINT[#i].V_Sync := 0;
#POINT[#i].E_1 := 0;
END_FOR;
END_IF;
Если идет битовая логика, то зеленые цепочки очень наглядны при отладке. Для человека с опытом разработки релейных схем - все просто и понятно. Не надо только всякие SET / RESET использовать.Strohmann писал(а):А можно поинтересоваться у любителя LAD, почему предпочтение отдаётся именно ему.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Примеры кода нет смысла приводить, так как неподготовленного они просто смутят.Strohmann писал(а):А можно поинтересоваться у любителя LAD, почему предпочтение отдаётся именно ему. Ну и совсем здорово - какой-нибудь пример кода.
Есть чисто теоретическое объяснение (не личное субъективное!), почему LD лучше по сравнению с FBD.
Тонкость заключается в изображении логических элементов AND и OR. В FBD для обозначения этих элементов применяются знаки "&" и ">=1" в прямоугольниках. Фактически разница между элементами очень важная, однако изображения очень похожи. Еще элемент NOT тоже похож и все они легко путаются. Это очень неудобно. В LD с этим получше: AND - это параллельное соединение цепочек, OR - последовательное соединение. В LD очень легко видеть, где логическое "И", а где логическое "ИЛИ". Это удобно.
Почему любят FBD неспециалисты по автоматизации? Потому что FBD более близок к словесному описанию алгоритма. Однако после нескольких месяцев тренировок с языком LD или релейно-контакторными схемами это преимущество языка FBD становится ничтожным.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Тут дело не столько в отладке, в своей программе уж как-нибудь разберётесь, сколько в облегчении поиска неисправности.Автоматизатор писал(а):Если идет битовая логика, то зеленые цепочки очень наглядны при отладке. Для человека с опытом разработки релейных схем - все просто и понятно. Не надо только всякие SET / RESET использовать.
Иногда вызывают на линию где-нибудь за полночь (что-нибудь не запускается), заходишь в онлайн, а там одни буковки и циферки,
Сразу хочется удавить этого писателя.
Не уловил, а чем плохи SET/RESET? Я их обычно в соседних нетворках пишу, всё очень наглядно получается.
Re: [TIA Portal] Какой язык программирования вы предпочитает
SET/RESET не позволяют увидеть текущее состояние тэга.dimon64 писал(а):Не уловил, а чем плохи SET/RESET? Я их обычно в соседних нетворках пишу, всё очень наглядно получается.
Вариант в) онлайн получается нагляднее, т.к. видим текущее состояние тэга К1.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Очень даже позволяют: Кто что использует - дело привычки, я пользую и SET/RESET и "самоподхват".Михайло писал(а):SET/RESET не позволяют увидеть текущее состояние тэга
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Автоматизатор
- Профессионал
- Сообщения: 993
- Зарегистрирован: 09 окт 2012, 05:18
Re: [TIA Portal] Какой язык программирования вы предпочитает
Михайло писал(а):SET/RESET не позволяют увидеть текущее состояние тэга.
Видно плохо. А если еще навтыкать несколько ресетов в разных концах программы, то еще и искать придется.dimon64 писал(а):Очень даже позволяют:
Я и говорю про наглядность отладки. Собралась цепочка или нет. Одним взглядом пробежался - сразу видно.dimon64 писал(а):Тут дело не столько в отладке, в своей программе уж как-нибудь разберётесь, сколько в облегчении поиска неисправности.
Иногда вызывают на линию где-нибудь за полночь (что-нибудь не запускается), заходишь в онлайн, а там одни буковки и циферки,
Сразу хочется удавить этого писателя.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Точно.dimon64 писал(а):Очень даже позволяют:
Но все равно как-то непривычно, неестественно.
- Автоматизатор
- Профессионал
- Сообщения: 993
- Зарегистрирован: 09 окт 2012, 05:18
Re: [TIA Portal] Какой язык программирования вы предпочитает
В ладе еще плохо смотрится инверсия. Это очень не наглядно.
Re: [TIA Portal] Какой язык программирования вы предпочитает
На безвременно почившем форуме Сименса примерно раз в год кто-нибудь начинал вот такой холивар.
-
- Дилетант
- Сообщения: 7
- Зарегистрирован: 26 июл 2016, 23:12
Re: [TIA Portal] Какой язык программирования вы предпочитает
Не, ну если вы предпочитаете всё писать "в лоб и руками", то, конечно, можете не использовать. Мне таки лень, я использую.Strohmann писал(а):Возник вопрос о целесообразности использования SCL в контроллерах 1500 серии
Re: [TIA Portal] Какой язык программирования вы предпочитает
SCL отличный язык для обработки массивов данных (array of). Однозначно использовать, но это довольно редкий случай.
Re: [TIA Portal] Какой язык программирования вы предпочитает
ладдер, STL, FBD. SCL очень редко. Мне на STL написать проще, чем на SCL
Одна из причин, почему удобен ладдер - заказчики часто желают получить исходники. Даже не для того, чтобы ковыряться, а чтоб мониторить в непонятных ситуациях. Мониторят, ессно, электрики. Лучше ладдера тут ничего не придумаешь. FBD лучше тем, что в нём есть инструкция XOR (в отличие от ладдера - там нет). Требуется редко, но метко.
STL хорош, когда надо написать что-либо, что на ладдере в удобоваримом виде сделать просто нереально.
Вся троица предпочтительна потому, что при аплоаде получается, в целом, исходная программа. А не фарш после компилятора.
Ещё люблю CFC - в сущности, продвинутый ладдер. Но проекты с PCS большая редкость.
Одна из причин, почему удобен ладдер - заказчики часто желают получить исходники. Даже не для того, чтобы ковыряться, а чтоб мониторить в непонятных ситуациях. Мониторят, ессно, электрики. Лучше ладдера тут ничего не придумаешь. FBD лучше тем, что в нём есть инструкция XOR (в отличие от ладдера - там нет). Требуется редко, но метко.
STL хорош, когда надо написать что-либо, что на ладдере в удобоваримом виде сделать просто нереально.
Вся троица предпочтительна потому, что при аплоаде получается, в целом, исходная программа. А не фарш после компилятора.
Ещё люблю CFC - в сущности, продвинутый ладдер. Но проекты с PCS большая редкость.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Странноватый опрос) "Все профессии нужны, все профессии важны") Сравнивать можно, например FBD и LAD. В универе на лабах почему-то больше любил FBD (названия функций привычные, а эти "релейные диаграммы" были как темный лес), а в реальной работе увидел насколько LAD прост и понятен и позволяет по сути "оцифровать" реальную релейную схему, в проектах использую именно его.
SCL позволяет наглядно и гибко писать блоки для работы с коммуникациями, работой с данными и массивами. Собственно, на нем реализовал часть протокола IMPI over LAN, управляющий включением и выключением сервера по сети. Не говоря уж о всяких математических алгоритмах (к слову, вроде бы пресловутый FB41 имеет первоначальную реализацию именно на SCL).
SCL позволяет наглядно и гибко писать блоки для работы с коммуникациями, работой с данными и массивами. Собственно, на нем реализовал часть протокола IMPI over LAN, управляющий включением и выключением сервера по сети. Не говоря уж о всяких математических алгоритмах (к слову, вроде бы пресловутый FB41 имеет первоначальную реализацию именно на SCL).
Re: [TIA Portal] Какой язык программирования вы предпочитает
Не, CFC - это родственник FBD. Посмотри еще раз.Muzzy писал(а):Ещё люблю CFC - в сущности, продвинутый ладдер. Но проекты с PCS большая редкость.
Re: [TIA Portal] Какой язык программирования вы предпочитает
Согласен, ошибся.Михайло писал(а):Не, CFC - это родственник FBD. Посмотри еще раз.
-
- Любитель
- Сообщения: 70
- Зарегистрирован: 10 янв 2016, 00:35
Re: [TIA Portal] Какой язык программирования вы предпочитает
Предпочитаю писать на LAD. То, что нельзя написать на LAD, пишу в STL. SCL использую для работы с косвенной адресацией, обменом данными, математикой и т.д.
-
- Профан
- Сообщения: 1
- Зарегистрирован: 09 дек 2016, 16:44
Re: [TIA Portal] Какой язык программирования вы предпочитает
Подтяните начинающего! Что конкретно нельзя на LAD написать. Какие преимущества у STL по сравнению с LAD?Andrey.wys писал(а):Предпочитаю писать на LAD. То, что нельзя написать на LAD, пишу в STL. SCL использую для работы с косвенной адресацией, обменом данными, математикой и т.д.
-
- Любитель
- Сообщения: 70
- Зарегистрирован: 10 янв 2016, 00:35
Re: [TIA Portal] Какой язык программирования вы предпочитает
Преимущество у STL по сравнению с LAD - на нем можно написать все. Недостаток - неудобно. Как ассемблер на PC.