Добавил:
все ссылки-вк: vk.com/id326771771 vk.com/a777big vk.com/a.arefyev0 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Pr_9

.docx
Скачиваний:
0
Добавлен:
01.08.2025
Размер:
1.28 Mб
Скачать

Министерство науки и высшего образования Российской Федерации

Федеральное государственное автономное образовательное учреждение высшего образования

«Национальный исследовательский Томский политехнический Университет»

Инженерная школа энергетики

Отделение электроэнергетики и электротехники

Направление: 13.03.02 Электроэнергетика и электротехника

Практическая работа №9

Проектирование программы движения механизма в среде CoDeSys

По дисциплине «Микропроцессорные средства систем автоматики, управления и диагностики»

Выполнили:

:

студент гр. 5А06

Сергеев А.С.

Проверил:

К.т.н, доцент

Гирник А.С.

Томск – 2023

Цель: Освоить принципы программирования процесса реостатного реверсивного запуска двигателя постоянного тока.

  1. Порядок работы

    1. Создать программу управления на базе программных языков CFC, FBD и ST (среда CoDeSys).

    2. Апробация созданной системы в среде CoDeSys.

CoDeSys - это современный инструмент для программирования контроллеров (CoDeSys образуется от слов Controllers Development System) на языках стандарта МЭК 61131-3. Используемые редакторы и отладочные средства базируются на широко известных и хорошо себя зарекомендовавших принципах, знакомых по другим популярным средам профессионального программирования. Для привязки к конкретному ПЛК требуется адаптация, касающаяся низкоуровневых ресурсов распределение памяти, интерфейс связи и драйверы ввода-вывода.

В общей модульной схеме программы следующие переменные:

Переменные кнопочного управления, привязанные к входам контроллера с помощью ключевых операторов «AT %IX0.0…0.2», справа в круглых скобках указано к каким именно входам сделана привязка:

  • start_straight – пуск вперёд;

  • stop – остановка;

  • start_back – пуск в обратном направлении.

Переменные управления контакторами прямого или обратного пуска, которые привязаны к дискретным выходам контроллера через ключевой оператор «AT %QX0.0…0.1»:

  • work_straight;

  • work_back.

Переменные управления контакторами шунтирования секций реостата, которые привязаны к дискретным выходам контроллера через ключевой оператор «AT %QX0.2…0.4»:

  • R_1.

  • R_2.

  • R_3.

Также в общей схеме есть следующие модули:

Модуль пуска двигателя в прямом или обратном направлениях «Start_manager», который использует внутреннюю программу функционального блока «starter».

Модуль переключения ступеней реостата «Switcher», который использует внутреннюю программу функционального блока «reostat».

Общая модульная схема программы приведена на рисунке 1.

Рисунок 1 – Общая модульная схема программы на языке CFC

Дополнительные функциональные блоки:

Функциональный блок запуска двигателя показан на рисунке 2.

У данного функционального блока есть следующие ключевые особенности работы:

Функциональный блок состоит из 2-х похожих ветвей управления, взаимно блокирующих друг друга через выходные переменные «straight_output» и «back_output» на инверсный вход соседней ветви, чтобы исключить одновременный запуск этих двух ветвей.

Реализован само-подхват через обратную связь по переменной straight_output (back_output) для того, чтобы ветвь продолжала быть в активном состоянии после отпускания управляющей кнопки (после пропадания сигнала TRUE на входе straight_input или back_input).

Рисунок 2 – Функциональный блок запуска двигателя

Функциональный блок переключения ступеней реостата. Блок показан на рисунке 3.

У данного функционального блока есть следующие ключевые особенности работы:

  • Данный функциональный блок включает в себя ещё несколько функциональных блоков «delay» 3-го уровня вложенности по отношению к корневой программе PLC_PRG.

  • Внутренний функциональные блоки «delay» с названиями «step1», «step2» и «step3» запускают в активное состояние друг друга по очереди. При этом с выхода каждого из этих блоков по очереди поступают логические сигналы на выходные переменные «reostat_1», «reostat_2» и «reostat_3».

Рисунок 3 – Функциональный блок переключения ступеней реостата

Функциональный блок временной задержки, который показан на рисунке 4.

У данного функционального блока есть следующие ключевые особенности работы:

  • Пока процесс задержки времени ещё не запущен через входную переменную «start_time», текущее время процессора на каждом его рабочем такте записывается в переменную «time1». И далее, после запуска, когда входная переменная «start_time» получила значение TRUE, начинается аналогичная запись текущего времени в переменную «time2», но запись нового времени в «time1» прекращается и здесь останется последнее значение, т.е. как бы «заморозится». Теперь будет происходить вычисление разности между «time2» и «time1», и когда она достигнет минимального значения срабатывания «interval_init», на выход «output» блока задержки будет подано значение TRUE.

  • Переменная «interval_init» является глобальной в проекте и задана в области глобальных переменных.

Рисунок 4 – Функциональный блок временной задержки

Проверка работоспособности показана на рисунках 5, 6, 7.

Рисунок 5 – Проверка работоспособности программы

Рисунок 6 – Проверка работоспособности программы

Рисунок 7 – Проверка работоспособности программы

Вывод: в ходе проделанной работы ознакомились с основой программирования в среде CoDeSys и разработали программный алгоритм управления контакторной схемы электропривода. В ходе проверки в режиме симуляции и на стенде с кнопками была установлена работоспособность созданной программы.

Соседние файлы в предмете Микропроцессорные средства и системы