Всем привет.
У меня тут для вас новый курс лекций по программированию ПЛК!
Хватит уже программировать "по наитию" - этот подход называл так мой преподаватель в ВУЗе. "По наитию" - это когда ты буквально лепишь программу, мучаешь её многократным тестированием, пока наконец-то она не получится. Иногда на весь этот процесс уходит очень много времени. При этом ты не уверен, что у тебя всё чётко работает. А ещё страшнее - когда тебя просят внести изменения в код, ты приходишь в ужас, только представив, во что это выльется.
А что так можно было - без этих трудностей??? Ответ - да.
Представляю пошаговое программирование (или иначе программирование с использованием графов) - это программирование пошаговых функциональных диаграмм (Sequential Function Chart - SFC). В СССР и в России триумфом использования подхода явился язык Дракон (сокращённо от "Дружелю́бный ру́сский алгоритми́ческий язы́к, кото́рый обеспе́чивает нагля́дность"), который применялся в космических летательных аппаратах, в частности, в проекте "Буран". В стандарте МЭК 61131-3 описан язык SFC (Sequential Function Chart). Однако в большинстве сред разработок для ПЛК этот язык не поддерживается и нет тенденции появления поддержки в будущем. Simatic Step7 поддерживает язык GRAPH на платной основе и только для старших моделей ПЛК, ранее был ещё асинхронный вариант HiGraph и SFC. Попытки использования этих языков продемонстрировали абсолютную непрактичность реализации. Даже небольшой по существу код стремился занимать избыточный размер памяти, который не мог запуститься без флэш-карты большого размера и повышенной стоимости (в сотни евро).
За 20 лет опыта был отработана методика пошагового программирования без использования всех этих платных специальных средств - вы можете реализовать этот подход даже на программируемом реле Овен!
Основные понятия пошагового программирования:
1. Шаг (Step). Я предпочитаю такие более понятные вещи, но также популярна альтернатива - Состояние (State).
2. Переход (Transition)
3. Условие перехода (Transition condition)
4. Действие (Action)
Найдите на этом изображении:
1. Шаги STEP 1, STEP 2, STEP 3
2. Переходы Transition 1, Transition 2, Transition 3
3. Условия переходов Motor OFF & Start Signal ON, Motor ON & Start Signal ON, Motor OFF
4. Действия Start Motor и Stop Motor
Продолжение курса лекций следует...
Архитектура ПО для ПЛК от Михайло
Архитектура ПО для ПЛК от Михайло
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Re: Архитектура ПО для ПЛК от Михайло
Естественно знакомо и опробовано и работает, но как вы уже заметили, простой алгоритм на GRAPH у Siemens занимает в памяти охулиард кБ... А в принципе - положи его на бок и получишь тот же LAD нетворк, но только гораздо дешевле в кБ.
Вот моя подпись...
Re: Архитектура ПО для ПЛК от Михайло
п.с. ещё и несколько сУпризов при загрузке и выборе настроек instanse DB...
Да - наглядно и читабельно, но всё на этом заканчивается. Но это чисто мои оЧучения.
Да - наглядно и читабельно, но всё на этом заканчивается. Но это чисто мои оЧучения.
Вот моя подпись...
- Автоматизатор
- Профессионал
- Сообщения: 996
- Зарегистрирован: 09 окт 2012, 05:18
- Автоматизатор
- Профессионал
- Сообщения: 996
- Зарегистрирован: 09 окт 2012, 05:18