Есть два пути по организации задачи управления моментом сервоусилителя серии AX5000. Первый способ — добавление с помощью
Второй вариант — это решение "в лоб", а именно — обращение к
В обоих изложенных случаях, прежде чем запустить ПЛК-программу, настоятельно рекомендую деактивировать параметр
TwinCAT System Manager параметра Bipolar torque limit value в таблицу MDT привода с последующей линковкой к нему программной переменной типаINT. В этом случае изменять момент можно из ПЛК-программы присваивая значение залинкованной переменной в диапазоне 0..1024.Второй вариант — это решение "в лоб", а именно — обращение к
Bipolar torque limit value с помощью функционального блока fb_SoEWrite из программной библиотеки TcEthercat.lib. Обращение к параметру осуществляется по адресу S-0-0092. В этом случае задание момента возможно в диапазоне 0..1000 (что соответствует масштабу 0..100%). Пример работы с таким блоком описан ниже.(*Объявление функциональных блоков и переменных*)
PROGRAM MAIN
VAR
Axis1: axis_ref;
fbWriteTorque: FB_SoEWrite;
iBipolarTorque: INT := 50;
END_VAR
(*Задание момента, обращение к S-0-0092*)
fbWriteTorque(
NetId := ,
Idn := S_0_IDN + 92,
Element := 16#40,
pSrcBuf := ADR(iBipolarTorque),
BufLen := SIZEOF(iBipolarTorque),
Execute := TRUE,
Timeout := DEFAULT_ADS_TIMEOUT,
Password := ,
Axis := Axis1);
IF NOT(fbWriteTorque.Busy) THEN
fbWriteTorque(Axis := Axis1, Execute := FALSE);
END_IF;В обоих изложенных случаях, прежде чем запустить ПЛК-программу, настоятельно рекомендую деактивировать параметр
Position lag monitoring привода (см. рисунок ниже) во избежание вываливания оси в ошибку при рассогласовании по позиции. А вот значение параметра Kv, отвечающего за жёсткость привода, можно менять по вкусу исходя из поставленной цели. Доступ и к тому, и к другому можно получить не только через конфигуратор, но и из ПЛК-программы. Достаточно знать адрес.

Комментариев нет:
Отправить комментарий