|
В начало
Формирование ШИМ-сигнала
При изменении аналогового сигнала с датчика в диапазоне [0; 20] мА необходимо изменять скважность этого сигнала в диапазоне [20; 50] % от исходного, при этом задан период ШИМ-сигнала равный 1 сек. Перед написанием программы на языке CFC необходимо переименовать вход от
датчика как «Vhod», а
дискретный выход как «Vihod». Рис.1. Конфигурирование входов/выходов ПЛК На рабочую область программы нужно
поместить следующие элементы: MUL (умножение), REAL_TO_TIME (преобразование
типа переменной), LIMIT
(ограничение), SUB (вычитание) и BLINK (генератор прямоугольных импульсов). Рис. 2. Программа на CFC для формирования ШИМ-сигнала Программа работает следующим
образом: чтобы добиться соответствия диапазонов входного сигнала и периода
ШИМ-сигнала, нужно отмасштабировать входной сигнал так чтобы при его максимум
соответствовал периоду ШИМ-сигнала, а именно умножить на 50. Это можно
выполнить с помощью элемента MUL.
Далее нужно преобразовать наш аналоговый сигнал, имеющий тип REAL в тип TIME. Таким образом, мы получим сигнал меняющийся в диапазоне [0; 1000] миллисекунд. В условии задания нам нужно менять скважность сигнала только в диапазоне [20; 50] %, поэтому мы ограничиваем сигнал элементом LIMIT, записывая на его входы 200 и 500 мс. Чтобы сгенерировать сигнал нужной длительности и периода необходимо два сигнала: сигнал импульса и время ожидания/паузы. Для этого из периода ШИМ-сигнала нужно вычесть длительность импульса, что легко сделать на элементе SUB. Для визуализации программы нужно создать новый объект на вкладке
«Визуализации», разместить на форме элементы: ползунок, прямоугольник и эллипс
и сконфигурировать эти элементы. Рис.3. Визуализация работы программы Ползунок нужен для эмуляции
изменения входного тока от датчика в диапазоне от [0; 20] мА. Он привязывается к переменной «Vhod» и в нем
устанавливается диапазон изменения [0; 20]. Прямоугольник нужен для вывода числовых значений входного сигнала. В нем конфигурируется категория «Переменные – Вывод текста», т.е. прописываем переменную «Vhod». Кроме того, чтобы переменная выводилась нужно в категории «Текст – Строка» вписать «Вход %3.0f мА». Эллипс служит для индикации лампы,
он связан с переменной «Vihod»
и в нем установлены обычный и тревожные цвета заливки. Во время работы программы, при
изменении ползунком входного сигнала, также будет меняться длительность
импульса и как следствие время свечения лампы. |
|