Советы по разработке собственного ПО

В этом разделе приводятся рекомендации, что нужно делать, если вы хотите заняться разработкой собственных дополнений к ПО робота.

Мы рекомендуем разрабатывать и выполнять ваше собственное ПО на отдельном компьютере, который подключен к бортовому компьютеру робота через WiFi или Ethernet. Устанавливать дополнительное ПО и менять различные параметры на бортовом компьютере робота стоит только в случае крайней необходимости.

  1. Прежде чем проверить работоспособность своего модуля на аппаратной платформе, сначала испытайте его в симуляторе. Только когда удостоверитесь, что ваш модуль корректно работает на имитационной модели, тогда переходите к отладке на аппаратной платформе

  2. Подробно изучите разделы Электроника, Программное обеспечение и Файловая система прежде чем приступать к работе.

  3. Подключитесь к роботу по ssh, remmina, sftp и настройте vscode

  4. Изучите примеры кода по взаимодействию с роботом

  5. При необходимости перезагрузки или отключения управляющего ROS-контроллера:

  • отключите Ubuntu-сервис контроллера

sudo systemctl stop mors.service
  • запустить файл инициализации двигателей

~/start_offsets.sh
  • теперь вы можете запускать ваши ROS-модули или любой другой софт. Если нужен контроллер, который стоит по умолчанию, то используйте команду roslaunch mors bringup.launch

  1. Если вам нужно подключить к роботу ваше собственное устройство, то делайте это в соотсветствии с разделом Подключение дополнительных устройств

То, что описано в пунктах ниже делайте только в случае крайней необходимости!

  1. Если вы хотите реализовать своё собственное действие (например, сидеть, дать лапу и т.д.), то предлагаем вам, как это уже говорилось выше, сделать отдельный ROS-пакет, который будет выполняться на отдельном компьютере. Если вам действительно нужно это выполнить внутри текущего управляющего контроллера, то вы можете сделать это в пакете locomotion_controller. Перейдите в папку ~/mors_ws/src/locomotion_controller/scripts/actions. В ней лежат файлы actionN.py с номерами от 1 до 8. Все файлы до action6.py включительно уже заняты различными действиями. Вы можете создать своё собственное в файлах action7.py и action8.py. Код предыдущих файлов достаточно прост в понимании, поэтому мы предлагаем их использовать в качестве примера.

  2. При необходимости, вы можете заменить текущие ROS-модули своими собственными, например если вы хотите подключить другой джойстик или использовать свой собственный алгоритм локомоции. Не забывайте, что для взаимодействия с сервоприводами, используется протокол LCM. В качестве пакета для запуска всех компонентов контроллера, выступает пакет mors. В нём содержатся все необходимые launch-файлы. Рекомендуем вам создать собственный launch-файл, если запуск компонентов планируется быть отличным от стандартного.

Last updated