Советы по разработке собственного ПО
В этом разделе приводятся рекомендации, что нужно делать, если вы хотите заняться разработкой собственных дополнений к ПО робота.
Мы рекомендуем разрабатывать и выполнять ваше собственное ПО на отдельном компьютере, который подключен к бортовому компьютеру робота через WiFi или Ethernet. Устанавливать дополнительное ПО и менять различные параметры на бортовом компьютере робота стоит только в случае крайней необходимости.
Прежде чем проверить работоспособность своего модуля на аппаратной платформе, сначала испытайте его в симуляторе. Только когда удостоверитесь, что ваш модуль корректно работает на имитационной модели, тогда переходите к отладке на аппаратной платформе
Подробно изучите разделы Электроника, Программное обеспечение и Файловая система прежде чем приступать к работе.
Подключитесь к роботу по ssh, remmina, sftp и настройте vscode
Изучите примеры кода по взаимодействию с роботом
При необходимости перезагрузки или отключения управляющего ROS-контроллера:
отключите Ubuntu-сервис контроллера
запустить файл инициализации двигателей
теперь вы можете запускать ваши ROS-модули или любой другой софт. Если нужен контроллер, который стоит по умолчанию, то используйте команду
roslaunch mors bringup.launch
Если вам нужно подключить к роботу ваше собственное устройство, то делайте это в соотсветствии с разделом Подключение дополнительных устройств
То, что описано в пунктах ниже делайте только в случае крайней необходимости!
Если вы хотите реализовать своё собственное действие (например, сидеть, дать лапу и т.д.), то предлагаем вам, как это уже говорилось выше, сделать отдельный ROS-пакет, который будет выполняться на отдельном компьютере. Если вам действительно нужно это выполнить внутри текущего управляющего контроллера, то вы можете сделать это в пакете locomotion_controller. Перейдите в папку ~/mors_ws/src/locomotion_controller/scripts/actions. В ней лежат файлы actionN.py с номерами от 1 до 8. Все файлы до action6.py включительно уже заняты различными действиями. Вы можете создать своё собственное в файлах action7.py и action8.py. Код предыдущих файлов достаточно прост в понимании, поэтому мы предлагаем их использовать в качестве примера.
При необходимости, вы можете заменить текущие ROS-модули своими собственными, например если вы хотите подключить другой джойстик или использовать свой собственный алгоритм локомоции. Не забывайте, что для взаимодействия с сервоприводами, используется протокол LCM. В качестве пакета для запуска всех компонентов контроллера, выступает пакет mors. В нём содержатся все необходимые launch-файлы. Рекомендуем вам создать собственный launch-файл, если запуск компонентов планируется быть отличным от стандартного.
Last updated