1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Программирование ПЛК прошу совета

Ответить

Автор темы
chegevara
осмотрелся
осмотрелся
Сообщения: 149
Зарегистрирован: 12 фев 2016, 10:53
Имя: Иван Иванович Чернов
Страна: Россия
город/регион: Томск
Благодарил (а): 54 раза
Поблагодарили: 1 раз

Программирование ПЛК прошу совета

Сообщение chegevara »

Здравствуйте.Скоро ну где-то через полтора года по программе будет программирование ПЛК и я хотел бы у аудитории данного форума попросить совета.Хочу спросить с чего следует начать изучать этот вопрос?Какие самые общие советы вы могли бы дать по этому поводу новичку?Какую литература новичку вы посоветуете?Какая литература новичку просто необходима?Ну и прочие напутствия приветствуются.Хочу быть подготовленным к данному курсу,и прошу у вас совета.Спасибо.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

Раз уж я вижу у Вас такую тягу к предмету, что меня лично очень радует, то советую раздобыть возможность работать с реальным железом. Подумать и может купить что-то простенькое, попробоать разные варианты. Например, у меня есть одна задачка к которой я никак не могу приступить в силу разных причин, можно попробовать её реализовать. Правда я для неё планировал что-то вроде ардуино, а это всё-таки не совсем ПЛК - на классическом ПЛК задачку тоже можно решить, но это будет аппаратно дороже. Думайте.

Из литературы, я бы посоветовал сделать упор на теорию графов и теорию конечных автоматов, и... диалектику (да-да, это одно из философских направлений). С помощью этих трёх инструментов можно решить любую задачу логического управления. Вся наша жизнь - сплошная диалектика, без понимания этих вещей всё обучение будет поверхностным и будет походить на зубрёжку. К сожалению, нечасто я вижу чтобы преподаватили давали материал именно так, так что если пойдёте по этому пути то будете однозначно в выигрыше, хотя может и не все оценят (это неважно, зато оцените Вы сами, когда начнёте пользоваться по-настоящему). Соответственно это Гегель и Кант. А по графам и КА литературы много, надо посмотреть. В сети есть не всё, так что многое я добывал в БАНе (Библиотека Академии Наук). - кстати, читалось отлично: в читальном зале и обстановка располагает, и книжку полистать интересно, и прогуляться туда есть смысл - по дороге мысли укладываются.

Важно сразу задать правильное направление.

Я как-то постил тут материалы очень краткого курса логического управления тех.процессом. Могу освежить и разъяснить это с точки зрения трёх основных диалектических законов. Кстати, помните их?

Отправлено спустя 26 минут 20 секунд:
И, кстати, я бы не гнушался и релейными схемами управления - то же логическое. Соответственно литература по синтезу релейных схем управления. Позже могу засесть и попробовать поискать.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Никита
почётный участник форума
почётный участник форума
Сообщения: 3923
Зарегистрирован: 20 янв 2010, 22:23
Имя: Никита
Страна: РФ
город/регион: Мурманск
Благодарил (а): 20 раз
Поблагодарили: 219 раз

Программирование ПЛК прошу совета

Сообщение Никита »

TEB писал(а): Правда я для неё планировал что-то вроде ардуино, а это всё-таки не совсем ПЛК - на классическом ПЛК задачку тоже можно решить, но это будет аппаратно дороже
Есть непроверенная информация о существовании рантайма codesys под raspberry pi. Точнее, информация о существовании проверенная, не проверено как работает и что поддерживается. Может и будет выходом - "и охота, и никаких зверей убивать не нужно" (из м/ф про Простоквашино). Тот же кодесис с мэковскими языками, а убитых зверей уйдет меньше в разы.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

И да. с чего начать. Несмотря на все познания, рекомендую освежить понятия "управление" и "регулирование". путать одно с другим не следует. Очень часто в прикладной литературе и в повседневном общении эти понятия смешиваются так что кажется что это одно и то же. А это не так.
На этот случай помогают толковые словари Даля и Ожегова (они расшарены в сети). У меня с давних пор это настольные книги рядом со справочниками. Разницу между этими двумя понятиями могу пояснить в контексте общего описания структуры управления, если интересно.

Отправлено спустя 1 минуту 27 секунд:
Никита писал(а): Тот же кодесис с мэковскими языками, а убитых зверей уйдет меньше в разы.
Поначалу да, хорошая вещь. До тех пор, пока автор не столкнётся с системами, где применяются средства управления, отличные от ПЛК.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

megavolt86
эксперт
эксперт
Сообщения: 1172
Зарегистрирован: 14 ноя 2013, 20:35
Имя: Анатолий Сергеевич
Страна: Россия
город/регион: Башкортостан
Благодарил (а): 13 раз
Поблагодарили: 68 раз

Программирование ПЛК прошу совета

Сообщение megavolt86 »

chegevara писал(а): общие советы вы могли бы дать по этому поводу новичку?
Не ссать! Ничего сложного нет))))
С делфи вы же знакомы, логические операторы они везде одинаковы, транскрипция только отличается...
Главное по мне это владение навыками работы с нужными операторами.
И еще одно не надо тратиться на железо, тот же кодесис от овна бесплатен и позволяет работать в симуляторе, принципы построения конфигурации плк и выполнения простейшей логики можно сделать и в симуляторе, а моргание лампочками - это вторичное))))
:ext_secret:

rwg
почётный участник форума
почётный участник форума
Сообщения: 1041
Зарегистрирован: 29 апр 2014, 09:57
Имя: Рыбкин Владимир Геннадьевич
Страна: Россия
город/регион: Тверь
Благодарил (а): 55 раз
Поблагодарили: 134 раза

Программирование ПЛК прошу совета

Сообщение rwg »

TEB писал(а): рекомендую освежить понятия "управление" и "регулирование". путать одно с другим не следует.
Ещё не стоит путать русское "Контроль" и английское "Control". Тоже совершенно разные слова.

misha_os
осмотрелся
осмотрелся
Сообщения: 131
Зарегистрирован: 03 фев 2011, 13:54
Имя: Михаил
Страна: Россия
город/регион: Ульяновск
Поблагодарили: 16 раз

Программирование ПЛК прошу совета

Сообщение misha_os »

Если предстоит заниматься программированием ПЛК на языках МЭК, то начните с программируемых реле, на языке LD (LAD у Siemens). Обычно среды разработки и отладки бесплатные. Потом по практикуйтесь на FB и т.д. Очень многое зависит от ПЛК и соответственно среды разработки для данного ПЛК, но это уже нюансы.
По среде от Siemens см литературу от Бергера.
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

megavolt86 писал(а): С делфи вы же знакомы, логические операторы они везде одинаковы
Помнится, в далёкой версии 4.22 от ТрейсМоуд оператор GOTO означал УСЛОВНЫЙ переход, что немало меня удивило. :)

Я бы со своей стороны посоветовал избегать любых переходов и циклов, вообще, включая вызов процедур, библиотек и подпрограмм. А также и вложенных процедур, и операторов деления где делитель - что угодно кроме константы (в своё время для сертификации прикладного ПО с меня потребовали представить доказательства отсутствия всего перечисленного в коде). Вот так и работает классический ПЛК, но, к сожалению, не имея реальной среды разработки ПЛК с рантаймом, это ощутить непросто.

В своё время была предложена т.н.SWITCH-технология, советую ознакомиться для начала здесь, а так и книжка имеется от автора. Это касается т.н. высокоуровневых языков.

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

megavolt86
эксперт
эксперт
Сообщения: 1172
Зарегистрирован: 14 ноя 2013, 20:35
Имя: Анатолий Сергеевич
Страна: Россия
город/регион: Башкортостан
Благодарил (а): 13 раз
Поблагодарили: 68 раз

Программирование ПЛК прошу совета

Сообщение megavolt86 »

TEB писал(а): Я, честно говоря, не понял, почему опыт с реальным железом лишний
Изначально вопрос был с чего начать))))
На первом этапе можно обойтись и без железа, главное усвоить принципы построения программы, затем уже можно и на реальном плк поработать...
И спорить с вами не собирался, оставил комментарий по замечанию :oops:

З.ы.: операторы то может и отличаются (в описании) в различных средах программирования, главное понимать какую функцию они несут, а понять это поможет справка - благо она бесплатная)))
:ext_secret:
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

megavolt86 писал(а): На первом этапе можно обойтись и без железа
Можно обойтись, а можно и не обойтись.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Никита
почётный участник форума
почётный участник форума
Сообщения: 3923
Зарегистрирован: 20 янв 2010, 22:23
Имя: Никита
Страна: РФ
город/регион: Мурманск
Благодарил (а): 20 раз
Поблагодарили: 219 раз

Программирование ПЛК прошу совета

Сообщение Никита »

TEB писал(а): Я бы со своей стороны посоветовал избегать любых переходов и циклов, вообще, включая вызов процедур, библиотек и подпрограмм. А также и вложенных процедур, и операторов деления где делитель - что угодно кроме константы (в своё время для сертификации прикладного ПО с меня потребовали представить доказательства отсутствия всего перечисленного в коде). Вот так и работает классический ПЛК, но, к сожалению, не имея реальной среды разработки ПЛК с рантаймом, это ощутить непросто.
Весьма дельный совет, тем более что ему, как правило, не учат. Более того, "академические" программисты без некоторых подобных вещей "кушать не могут".
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "

Romcheg
SCADA+
SCADA+
Сообщения: 592
Зарегистрирован: 05 ноя 2009, 11:18
Имя: Бузинов Роман Анатольевич
Страна: Россия
город/регион: Москва
Благодарил (а): 8 раз
Поблагодарили: 35 раз

Программирование ПЛК прошу совета

Сообщение Romcheg »

По поводу среды разработки CoDeSys - она вообще изначально бесплатная (ее так производитель позиционирует, так что можно идти и качать), а учитывая, что она включает в себя программный имитатор ПЛК, для отладки на ПК того что "наваял" на МЭКе для ПЛК, считаю ее наиболее подходящей для изучения темы без вложений в железо.
Кстати, в ней и принципы МЭКа достаточно хорошо проработаны и большинство ПО, которое под эти задачи делается другими разработчиками, во многом на Кодесис ориентируется (с них много чего уже скопировано).
SCADA+

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

Romcheg писал(а): ... и принципы МЭКа достаточно хорошо проработаны и большинство ПО, которое под эти задачи делается другими разработчиками, во многом на Кодесис ориентируется (с них много чего уже скопировано).
Чет я после праздников туплю... :o
"С них", это с кого/чего?
С принципов МЭКа?
С задач?
С разработчиков?
С CoDeSys-ов, наконец?
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

Никита писал(а): Весьма дельный совет, тем более что ему, как правило, не учат. Более того, "академические" программисты без некоторых подобных вещей "кушать не могут".
По моему опыту, если создавать алгоритм методом определения а затем решения конечного автомата, то и не получается никаких переходов, циклов и подпрограмм. Максимум что использовал - быстрые задачи для расчёта кое-каких параметров, запускаемые с заданной периодичностью согласно настроек проекта, а не по событию.

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

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

TEB писал(а): По моему опыту, если создавать алгоритм методом определения а затем решения конечного автомата, то и не получается никаких переходов, циклов и подпрограмм.
Сам факт существования такого языка MЭК как SFC, опровергает Ваш тезис, коллега. :ges_hmm:
Ах, если б всё было так, как Вы пишете! :roll:
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

Ryzhij писал(а): Сам факт существования такого языка MЭК как SFC, опровергает Ваш тезис, коллега.
Стоп, я же не говорю что невозможно реализовать. Даже в LD есть операторы перехода. И сам SFC - да, Вы правы совершенно. Я говорю что лично у меня просто не было необходимости использовать.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Никита
почётный участник форума
почётный участник форума
Сообщения: 3923
Зарегистрирован: 20 янв 2010, 22:23
Имя: Никита
Страна: РФ
город/регион: Мурманск
Благодарил (а): 20 раз
Поблагодарили: 219 раз

Программирование ПЛК прошу совета

Сообщение Никита »

TEB писал(а):
По моему опыту, если создавать алгоритм методом определения а затем решения конечного автомата, то и не получается никаких переходов, циклов и подпрограмм. Максимум что использовал - быстрые задачи для расчёта кое-каких параметров, запускаемые с заданной периодичностью согласно настроек проекта, а не по событию.
Это одна из причин, по которой студентам об этом не упоминают.
Однако, иногда возникает сооблазн использовать циклы на обработке нескольких одинаковых агрегатов. С делением бывает еще хуже, особенно в хитрых регуляторах. Ну а избежать вызова библиотечных блоков очень трудоемко)). А системных обработчиков прерываний - в большинстве случаев невозможно.

Тут все относительно, но тем не менее, у Вас первый раз увидел эти требования кратко и четко изложенными.
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "
Аватара пользователя

Jackson
администратор
администратор
Сообщения: 17562
Зарегистрирован: 17 июн 2008, 16:01
Имя: Евгений свет Брониславович
Страна: Россия
город/регион: Санкт-Петербург
Благодарил (а): 820 раз
Поблагодарили: 1648 раз

Программирование ПЛК прошу совета

Сообщение Jackson »

Никита писал(а): Тут все относительно, но тем не менее, у Вас первый раз увидел эти требования кратко и четко изложенными
Нет, тут всё как раз абсолютно.
Эти требования изложены в Правилах Классификации и постройки Морских Судов Норвежского Регистра (DNV), Если не путаю, то глава 4 часть 9 - Требования к вычислительным системам. Могу поискать если интересно.
[+] в частности
Там жёстко сказано, что не должно быть деления на ноль (избежать этого с гарантией можно только если делить на константу), не должно быть циклов с выходом по условию, не должно быть никаких переходов назад, вызываемая подпрограмма должна иметь 100% гарантию завершения и возврата (этому условию удовлетворяют только быстрые задачи с собственным вочдогом в ПЛК) и так далее. Поэтому не все ПЛК одобрены на море. В тогдашнем TSX37 были вочдоги не только на основной цикл ОС, но и на основной цикл программы и на быстрые задачи, это системная функция. Поэтому всё реализовать было довольно легко. И есть жесткое требование представить в составе сопроводительной документации на ПО доказательства выполнения вышеперечисленных требований (помимо философии системы, блок-схем, граф-схем, листинга и прочего). И всё это там похоже смотрели, потому как задали несколько уточняющих вопросов и дали пару толковых замечаний. Надо сказать, что системы, созданные по этим требованиям, безостановочно работают с 2003 года (ттт пусть и дальше работают).
Не вижу ничего плохого в том чтобы применять эти и другие морские требования к общепромышленным и специальным системам (там где нет противоречий с другими нормами) - системы получаются надёжные и живучие, потому что каждое слово этих Правил написано кровью, а не просто так придумано.
По вопросам работы Форума можно обратиться по этим контактам.
Аватара пользователя

Никита
почётный участник форума
почётный участник форума
Сообщения: 3923
Зарегистрирован: 20 янв 2010, 22:23
Имя: Никита
Страна: РФ
город/регион: Мурманск
Благодарил (а): 20 раз
Поблагодарили: 219 раз

Программирование ПЛК прошу совета

Сообщение Никита »

Написано то абсолютно, не спорю. Я к тому, что реализуемо до определенного уровня.
Но это написано для программиста. Процессор же вообще не подозревает о существовании цикла, для него есть только команда условного перехода. Точно так же, как и блок-схему в язык перевести можно по разному, и наоборот.
Тут как-то всплывала тема про молочное производство, когда переход на следующий шаг дозирования осуществлялся после набора в емкость нужного количества молока. А того привезли меньше, чем надо по рецепту и ПЛК смиренно ждал пока привезут остальное.
Так вот, если рисовать блок-схемы по ГОСТу, как в школе на информатике учили, то там как раз цикл с условием будет виден. А если не сильно вникать в подробности, то на SFC его явно не разглядеть, там сама суть языка - даже не переходы, а зацикливание вызываемых подпрограмм с выходом по условию. А то и однократный CALL и дальше NOP с условным прыжком.
Так что тут для полной гарантии надо и бумажные алгоритмы, и исходники смотреть, и еще в голове держать как это примерно в процессоре выполняться будет. Ибо сдуру и при однократном вызове подпрограммы можно ухитриться стек переполнить. :crazy0to:
Опыт - это когда на смену вопросам: "Что? Где? Когда? Как? Почему?" приходит единственный вопрос: "Нахрена? "

Romcheg
SCADA+
SCADA+
Сообщения: 592
Зарегистрирован: 05 ноя 2009, 11:18
Имя: Бузинов Роман Анатольевич
Страна: Россия
город/регион: Москва
Благодарил (а): 8 раз
Поблагодарили: 35 раз

Программирование ПЛК прошу совета

Сообщение Romcheg »

Ryzhij писал(а):
"С них", это с кого/чего?
С принципов МЭКа?
С задач?
С разработчиков?
С CoDeSys-ов, наконец?
С CoDeSys'а конечно же. Есть разработки, которые делались изначально по образу и подобию данной среды разработки.
SCADA+

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

1) Вообще это интересная позиция, запрещать циклы в системах, которые априори работают по циклу.
Родовое отличие PLC и PAC от PC именно в этом и состоит - в PLC и PAC не надо "вручную" наворачивать своих циклов внутри цикла исполнения задачи.
Всё уже зацикленно до нас.
Непонимание этого обстоятельства и есть самая распространенная "ошибка начинающего программиста" систем на базе PLC и/или PAC.

2) С написания модуля обработки ошибок следует начинать, а не заканчивать любой мало-мальски серьёзный проект ("проект" - в программерском смысле)
Последний раз редактировалось Ryzhij 10 янв 2017, 09:40, всего редактировалось 2 раза.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

Romcheg писал(а):С CoDeSys'а конечно же. Есть разработки, которые делались изначально по образу и подобию данной среды разработки.
А-а... Теперь понятно.
Ну, это извечно холиварный вопрос - кто, что, когда и у кого заимствовал.
Курица или яйцо?
Изучение OSCAT-библиотек, существующих как для CoDeSys, так и для Step7 однозначного ответа не даёт.
Оставим это потомкам-историкам.
Для меня взаимо-проникновение идей нормально и очевидно.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Romcheg
SCADA+
SCADA+
Сообщения: 592
Зарегистрирован: 05 ноя 2009, 11:18
Имя: Бузинов Роман Анатольевич
Страна: Россия
город/регион: Москва
Благодарил (а): 8 раз
Поблагодарили: 35 раз

Программирование ПЛК прошу совета

Сообщение Romcheg »

Ryzhij писал(а): А-а... Теперь понятно.
Ну, это извечно холиварный вопрос - кто, что, когда и у кого заимствовал.
Курица или яйцо?
Изучение OSCAT-библиотек, существующих как для CoDeSys, так и для Step7 однозначного ответа не даёт.
Оставим это потомкам-историкам.
Для меня взаимо-проникновение идей нормально и очевидно.
Аааа, видимо Вы не в курсе, что Сименс уже дааавно не делает свой Step7 сам? Они его у 3S заказывают (это те, которые CoDeSys делают). Что-то типа ОЕМ-версии CoDeSys, на которую Сименс вешают бирочку свою.
Просто об это запрещено говорить... Тссс, страшная тайна. :roll: Вся разработка Step7 ведется в 3S.

Отсюда Вам и ответ, почему формат OSCAT в Step7 тоже читается...
SCADA+

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

Никита писал(а): А если не сильно вникать в подробности, то на SFC его явно не разглядеть, там сама суть языка - даже не переходы, а зацикливание вызываемых подпрограмм с выходом по условию. А то и однократный CALL и дальше NOP с условным прыжком.
Коллега, ИМХО Вы несколько неудачно использовали слово "зацикливание".
Ничего подобного там не происходит.
Там, после выполнения условий перехода автомата из одного состояния в другое, происходит смена исполняемых задач ("вызываемых подпрограмм" в Вашей терминологии). Но без всякого "зацикливания". Просто неисполняемые в настоящее время участки кода обходятся.

Вообще, продвигаемый во многих IDE для PLC/PAC объектно-ориентированный подход к программированию, неизбежно и неразрывно связанный с переходами, с вызовом процедур и функций, не зло, а благо.
Это не причина проблем, а эффективное средство их решения.
Тут надо быть элементарно последовательными.
Желаете соблюдать новые стандарты в программировании - соблюдайте их во всём.
[+]
Доводилось слышать рассуждения про опасность "евростандарта" в расположении розеток внизу, у пола.
Мол, опасно для малышей.
На вопрос о применении УЗО по тому же "евростандарту" - недоумённое молчание.
Вот так вот, желаем брать только приглянувшееся. Но, как нельзя быть "немножко беременными", так и в подходах к применению новых нормативов действует принцип "всё или ничего".
Не можешь обеспечить новые нормы безопасности в детской комнате - ставь розетки по "советским" СНИП для дошкольных учреждений, не ниже 1,8 метров от пола.
Последний раз редактировалось Ryzhij 10 янв 2017, 10:26, всего редактировалось 1 раз.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)

Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 5632
Зарегистрирован: 07 окт 2011, 09:12
Имя: Гаско Вячеслав Эриевич
Страна: Россия
город/регион: Рязань
Благодарил (а): 600 раз
Поблагодарили: 756 раз

Программирование ПЛК прошу совета

Сообщение Ryzhij »

Romcheg писал(а):Отсюда Вам и ответ, почему формат OSCAT в Step7 тоже читается...
Во-первых, формат библиотек там разный.
Во-вторых, где OSCAT и где 3S ?!
Это совершенно разные организации. Типа, как "линюксоиды" и "мелкомягкие".
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
Ответить

Вернуться в «Вопросы от студентов»