exponenta event banner

Возможности подключения CAN в приложении робототехники

В этом примере показано, как использовать Toolbox™ сети транспортных средств для реализации сети контроллеров (CAN) в удаленном манипуляторе с помощью Simulink ®. Используемые сообщения CAN определяются в файле базы данных CAN ,canDatabaseFor6DofRoboticArm.dbc.

Vehicle Network Toolbox предоставляет блоки Simulink для передачи и приема сообщений в реальном времени через модели Simulink по сетям контроллерных зон (CAN). В этом примере для выполнения передачи данных по шине CAN используются блоки CAN Configuration, CAN Pack, CAN Transmit, CAN Receive и CAN Unpack.

В этом примере используются виртуальные CAN-каналы MathWorks. Можно также подключить модели к другому поддерживаемому оборудованию.

Описание модели

Модель состоит из следующих подсистем: arm system Манипулятор, Inverse kinematics and controller, Joint CAN transmit interface, Joint CAN receive interface, Inverse kinematics and controller CAN transmit interface, а также Inverse kinematics and controller CAN receive interface. Каждое соединение и подсистема обратной кинематики и контроллера образуют узел в шине CAN.

Пользователь вводит координаты положения (X, Y и Z в метрах) и ориентацию (углы крена, тангажа и рыскания в градусах, в последовательности тело-3 2-3-1) конечного эффектора. Подсистема обратной кинематики и контроллера принимает обратную связь от датчиков угла соединения, которые посылаются по шине CAN, и посылает соответствующие команды на каждый двигатель соединения по шине CAN для приведения положения и ориентации концевого эффектора в соответствие с введенными пользователем значениями.

Предполагается, что рука дистанционного манипулятора прикреплена к космическому аппарату на орбите. В результате гравитация игнорируется.

Система манипулятора

Эта подсистема состоит из модели жесткого тела руки удаленного манипулятора, смоделированной с помощью Simscape Multibody 2G. Рука имеет шесть суставов. Каждое соединение приводится в действие двигателем постоянного тока с коробкой передач и моделируется с помощью библиотеки Simscape Foundational Library. Каждое соединение также имеет датчик угла соединения. Данные датчика в посылаются на шину CAN. Каждый двигатель питается от источника управляемого напряжения. Источники напряжения принимают сообщения от шины CAN и прикладывают постоянное напряжение к своим клеммам, соответствующим информации в сообщениях.

Обратная кинематика и контроллер

Подсистема обратной кинематики и контроллера дополнительно реализует обратную кинематику и алгоритм управления. Обратная кинематика вычисляет требуемые углы соединения из требуемого положения (X, Y и Z) и ориентации (углы крена, наклона и рыскания), которые вводятся пользователем. Дискретные ПИД-контроллеры используют значения датчиков угла соединения, которые считываются с шины CAN, для определения постоянного напряжения, которое должно подаваться на каждый двигатель для приведения углов соединения в нужное значение. Значения напряжения постоянного тока посылаются в виде сообщений по шине CAN.

Совместный интерфейс передачи CAN

Эта подсистема состоит из блоков ВНТ, которые необходимы для передачи значений угла соединения от соответствующих датчиков на шину CAN.

Совместный интерфейс приема CAN

Эта подсистема состоит из блоков ВНТ, которые необходимы для приема и распаковки сообщений от шины CAN, содержащих информацию о напряжениях постоянного тока, которые должны подаваться на источники управляемого напряжения, соответствующие каждому двигателю.

Интерфейс передачи обратной кинематики и контроллера CAN

Эта подсистема состоит из блоков ВНТ, которые необходимы для передачи сигналов двигателя (напряжений постоянного тока, которые должны подаваться на источники управляемого напряжения), вычисленных подсистемой обратной кинематики и контроллера, в шину CAN.

Интерфейс приема обратной кинематики и контроллера CAN

Эта подсистема состоит из блоков ВНТ, необходимых для приема сообщений от шины CAN, содержащих информацию об углах соединения, которые посылаются датчиками угла соединения.