Управление скоростью внешним аналоговым сигналом
P0-01 Выбор режима управления
Установить на 4: внешнее аналоговое управление скоростью
P3-01
Установите номинальную скорость.
Например, P3-01 = 5000 указывает на то, что при аналоговом входном напряжении 5,00 В двигатель работает с номинальной скоростью;
P3-01 = 8000 указывает на то, что при аналоговом входном напряжении 8,00 В двигатель работает с номинальной скоростью.
P3-01 = 10000 указывает на то, что при аналоговом входном напряжении 10,00 В двигатель работает с номинальной скоростью.
Изменение скорости и направления вращения серводвигателя.
В этом практическом примере будем использовать уравновешенный мост Уитстоуна.
R1,R2,R3,R4 — плечи моста.
Условие равновесия:
R1*R4 = R2*R3;
При возникновении ситуации когда
R1*R4 > R2*R3 или R1*R4 < R2*R3, на выходе появляется
положительный или отрицательный потенциал.
Если заменить резисторы R1 и R3 потенциометром R, мы получаем следующее:
1. Ползунок потенциометра находится в средней точке:
Потенциал на выходе 0v.
2. Перемещение ползунка в одно из крайних положений.
Потенциал на выходе возрастает до максимального значения.
3. Перемещение ползунка в противоположное крайнее положение.
На выходе возрастает до максимального противоположного значения.
Если данный метод применить для управления серводвигателем, то в результате мы получим при нахождении ползунка в среднем положении ОСТАНОВ, при перемещении ползунка в одно из крайних положений плавное увеличение скорости до номинального значения.
При перемещении ползунка в обратном направлении — плавное уменьшение скорости до ОСТАНОВА в средней точке и далее обратное вращение и плавное увеличение скорости до НОМИНАЛЬНОЙ.
Управление скоростью внешним аналоговым сигналом с контроллера
В данном примере мы будем использовать контроллер XSLH-24A8 и модуль расширения XL-E4AD2DA. Программировать будем в среде CodeSys 3.5 Sp16 patch4.
1. Открываем новый проект. Программировать будем на языке ST(тоже самое можно выполнить и на языке CFC).
Добавляем необходимые ПАПКИ.
Таким образом, в проект добавлены папки POUs (для программ), GLB (для глобальных переменных), VISUs (для визуализации).
Далее добавляем объекты.
Аналогично в паку VISUs добавляем объект ВИЗУАЛИЗАЦИЯ.
Подключаем к контроллеру модуль расширения XL-E4AD2DA.
Выбираем из списка наш модуль.
Модуль добавлен в проект.
Для дальнейшей работы в проект необходимо добавить библиотеку UTIL.
Для активации аналоговых выходов нам понадобится переменная. Создаем глобальную переменную.
VAR_GLOBAL
bEnable :BYTE;
END_VAR
Соотносим ее с каналом Enable. Bit4 нашей переменной отвечает за активацию канала DA1.
PROGRAM PLC_PRG
VAR
LIN_01 :LIN_TRAFO; // Добавляем из библиотеки UTIL экземпляр функционального блока LIN_TRAFO
bIN :REAL; // Переменная пропорционального значения от 0…100
intOUT :INT; // Значение переменной для подачи на выход ЦАП(DA1)
END_VAR
gGlobal.bEnable.4 := TRUE; // Активируем канал DA1
LIN_01(
IN:= bIN ,
IN_MIN:= 0 ,
IN_MAX:= 100,
OUT_MIN:= -2000,
OUT_MAX:= 2000,
OUT=> ,
ERROR=> );
intOUT := REAL_TO_INT(LIN_01.OUT);
Для удобства создаем простую визуализацию.
Соотносим выходную переменную intOUT
Загружаем проект в ПЛК.