ЖУРНАЛ СТА №2/2023

Программа (Задача) DIO_AIO вызыва- ется периодически с интервалом 1000 мс (рис. 17). В каждом цикле, инвертируя значение булевой переменной DO0, программа с периодом 2 с зажигает или гасит светодиод HL1, подключённый к выходу 1 модуля GC2018 (рис. 10). К входу № 3 модуля GC1018 подклю- чён переключатель SA1. С его помощью можно переключать сигнал, подавае- мый на вход модуля. Состояние входа программно передаётся на дискретный выход № 3 модуля GC2018. Состояние входов и выходов модулей можно про- контролировать по свечению свето- диодов, размещённых в корпусах моду- лей GC1018 GC2018 (рис. 22). Для демонстрации работы модулей аналогового вывода (ЦАП) GC4662 и аналогового ввода (АЦП) GC3624 соеди- нены перемычками соответствующие выходы и входы этих модулей (рис. 10). В каждом цикле задачи DIO_AIO про- граммно наращивается напряжение на выходе GC4662, примерно на 0,1 В. Ког- да регистр ЦАП переполняется, напря- жение на выходе ЦАП сбрасывается, и процесс повторяется с периодом око- ло одной минуты. Для контроля работы считывается код АЦП модуля GC3624 и пересчитывается по формуле в на- пряжение в вольтах (рис. 23) Средства отладки OpenPCS Компилирование и загрузка кода в контроллер Чтобы начать отладку приложения, нужно сначала откомпилировать его и загрузить код в контроллер. Для компи- ляции необходимо выбрать пункт меню “PLC” , “Build Active Resource” в строке меню. В окне Output мы увидим отчёт о результатах компиляции (рис. 24). После успешного завершения ком- пиляции код должен быть передан контроллеру. Теперь выбираем “PLC” “Online” для подключения к ресурсу. OpenPCS обнаружит, что приложение необходимо загрузить в контроллер, и запросит разрешение на это (рис. 25). Если возникает проблема, OpenPCS печатает сообщение об ошибке в томже окне. Руководство по OpenPCS даёт пол- ный обзор всех ошибок и предоставляет пользователю возможные решения. Выбрав «да», можно увидеть индика- тор выполнения во время передачи ко- да, но для этого небольшого примера он должен быть завершён очень быстро. Когда загрузка завершится, вы увиди- те, что OpenPCS автоматически откры- ла окно одного из своих инструментов: “Test and Commissioning”. Это свиде- тельствует о том, что OpenPCS находит- ся в связи с контроллером (рис. 26). Выбрав пункт меню “PLC” , “Coldstart” (или нажав красную стрелку на панели инструментов (рис. 27)), можно начать выполнение кода контроллером. Test and Commissioning поддерживают три различных способа запуска прило- жения: “Coldstart” сбрасывает все пере- менные к их начальным значениям, “Hotstart” не сбрасывает никакие пере- менные, в то время как “Warmstart” по- вторно инициализирует только те пере- менные, которые не заявлены RETAIN. СТА 2/2023 26 www.cta.ru ОБ ЗОРЫ Рис. 22. Индикация светодиодов, размещённых в корпусах модулей GC1018 GC2018 DO0:= not DO0; (* Мерцаем светодиодом на канале 1 GC2018 с частотой 2 Гц*) DO2:= DI2; (* Передаём состояние переключателя с дискретного входа №3 GC1018 на дискретный выходод №3 GC2018*) AO0 := AO0+ 1000; (*Изменяем код на первом канале AO GC4662 с периодом около минуты. Напряжение с GC4662 перемычками подаётся на вход 1 AI GC3624*) V_AO0 := 5.0*UINT_TO_REAL(AO0)/65535.0; (* Напряжение задаваемое на первом канале GC4662 в вольтах*) V_AI0:= INT_TO_REAL(AI0)/3276.70; (* Измеренное напряжение на первом канале GC3624 в вольтах*) Рис. 23. Исходный код программы DIO_AIO Рис. 24. Отчёт о компиляции программы DIO_AIO Рис. 25. Диалог загрузки исполняемого кода DIO_AIO в контроллер Рис. 26. Отчёт о загрузке исполняемого кода DIO_AIO в контроллер

RkJQdWJsaXNoZXIy MTQ4NjUy