RoboxКомплект из сервопривода и датчика расстояния
V.4Лабораторный стенд Promobot
RRStudioПростое написание алгоритмов
TestDevicesТестирование оборудования и проверка связи
Настройка WSL2Windows Subsystem for Linux
TelegramНаписать в чат технической поддержки
Класс для работы с сервоприводом.
Args:
* master (ModbusRTU): объект посдеовательного порта.
* addr (int): Адрес устройства. 1-250
* init (bool): Начальная инициализация сервопривода
Включение(отключение) питания обмоток двигателя
Args:
* state (int):
0 - отключение питания обмоток двигателя, обмотки замкнуты, двигатель в торможении.
1 - включение питания обмоток двигателя.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Установка ограничения скорости сервопривода, об/мин
Args:
* speed (float): speed limit. от 0.0 до 100.0
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись команды в сервопривод.
Args:
* command (int(hex)): одна из доступных команд.
> Разрешенные комманды: 0xDEAD, 0xAAAA
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Установка задачи. (Положение, скорость, ШИМ в зависимости от режима работы)
Args:
* value (int): Требуемое значение. от -32768 до 32767.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. P в ПИД регулятор по положению.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. I в ПИД регулятор по положению.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. D в ПИД регулятор по положению.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. P в ПИД регулятор по скорости.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. I в ПИД регулятор по скорости.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Запись коэф. D в ПИД регулятор по скорости.
Args:
* value (float): Желаемое значение в диапазоне от 0.0 до 20.0.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Выставление режима работы ПИД регуляторов сервопривода.
Args:
* value (str): Режим работы.
"NORMAL" - каскадный режим ПИД ругялтора по скорости и положению.
"PWM" - отключение всех ПИД регуляторов и прямое управление скважностью ШИМ.
"SPEED" - включение только ПИД регулятора поп сокрости.
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Высталвение режима работы ПИД регуляторов c заданными коэффициентами.
Args:
* mode (str): Режим работы.
| "position" - каскадный режим ПИД ругялтора по скорости и положению.
| "speed" - включение только ПИД регулятора по сокрости.
* val_P - пропорциональный коэффициент
* val_I - интегральный коэффициент
* val_D - дифференциальный коэффициент
Returns:
* True если отправка команды прошла успешно
* False если при отправке команды произошла ошибка
Raises:
None
Чтение данных с сервопривода
Args:
None
Returns:
* Словарь с ключами:
"ID"
"Torque",
"Setpoint"
"Position"
"Speed"
"Command"
"Current"
"Pos_PID_P"
"Pos_PID_I"
"Pos_PID_D"
"Speed_PID_P"
"Speed_PID_I"
"Speed_PID_D"
"Errors"
или пустой, при ошибке
Raises:
None