Подключение, настройка и обновление программного обеспечения отдельных компонентов образовательной ячейки
Все устройства образовательной робототехнической ячейки поставляются с программным обеспечением. При необходимости изменения алгоритмов работы, обновления программного обеспечения, восстановления исходной конфигурации или разработки собственных управляющих программ пользователь может подключаться к каждому устройству отдельно. Для взаимодействия с компонентами ячейки используются два основных канала связи:
- локальная сеть Ethernet на базе стека протоколов TCP/IP;
- последовательная шина DXL, предназначенная для подключения периферийных устройств.
- USB - подключение
В Ethernet-сети применяются различные прикладные и транспортные протоколы. SSH используется для удалённой работы в командной строке, SFTP - для передачи и редактирования файлов, а UDP - для обмена управляющими и телеметрическими сообщениями с отдельными устройствами. UDP представляет собой транспортный протокол без предварительного установления соединения. Он характеризуется небольшими накладными расходами и подходит для оперативного обмена данными, однако не гарантирует доставку и сохранение порядка пакетов. SSH и SFTP, в свою очередь, работают поверх протокола TCP и обеспечивают надёжную передачу данных. Перед изменением параметров сети, IP-адресов или идентификаторов DXL рекомендуется сохранить исходные значения. После изменения адреса или идентификатора соответствующее значение необходимо также изменить во всех управляющих программах и конфигурационных файлах, взаимодействующих с данным устройством.
Установка программного обеспечения на ПК
Для получения актуальной версии программного обеспечения необходимо зайти на сайт
| https://github.com/AppliedRobotics/edu_arm95 |
|---|
Здесь находится официальный репозиторий с последними обновлениями программного обеспечения. Перед началом работы с образовательной ячейкой рекомендуется обновлять данные из репозитория. На ПК выполните: git clone https://github.com/AppliedRobotics/edu\_arm95.git . Точка в конце команды указывает Git на необходимость клонирования содержимого репозитория непосредственно в текущий каталог. Если репозиторий уже был клонирован ранее, для получения обновлений следует использовать:
git status git pull Перед git pull: Сохраните локальные изменения: зафиксируйте их в Git, перенесите в отдельную ветку или временно используйте git stash. Перед выполнением git pull рекомендуется убедиться, что локальные изменения сохранены или зафиксированы в системе контроля версий. Внутри репозитория содержится обновляемый файл README.md, который описывает структуру репозитория. Переда началом работы рекомендуется с ним внимательно ознакомиться. (Если какие-то из пунктов ниже уже были выполнены, то их можно пропустить) Установка инструментов на ПК:
| sudo apt update sudo apt install -y git curl wget python3 tar openssh-client network-manager |
|---|
Формирование комплекта для обновления ПО :(Для корректного скачивания файлов с ресурсов Arduino в отдельных сетях может потребоваться VPN-соединение)
| cd ~/edu_arm95/dxl_iot_flashing chmod +x build_orangepi_arduino_offline_bundle.sh ./build_orangepi_arduino_offline_bundle.sh |
|---|
После завершения должны появиться orangepi-arduino-offline.tar.gz и файл контрольной суммы.
Настройка сетевого подключения в ОС Linux Для подключения персонального компьютера к устройствам образовательной ячейки необходимо назначить его проводному сетевому интерфейсу статический IPv4-адрес из подсети 192.168.2.0/24. Подключите Ethernet-кабель ячейки к сетевому разъёму персонального компьютера, после чего откройте терминал и выполните команду:
| nmtui |
|---|
В открывшемся интерфейсе NetworkManager выполните следующие действия:
- Выберите пункт Edit a connection.
2. Выберите проводное сетевое подключение, соответствующее подключенному Ethernet-интерфейсу. 3. В разделе IPv4 CONFIGURATION установите режим Manual.
4. Выберите пункт Show. 5. В поле адреса укажите, например: 192.168.2.105/24 Эквивалентная маска подсети: 255.255.255.0
Последний октет адреса может быть изменён, однако выбранный IP-адрес не должен совпадать с адресами других устройств сети. Первые три октета должны оставаться равными 192.168.2, поскольку все устройства образовательной ячейки находятся в одной подсети. Если подключение используется только для локального взаимодействия с оборудованием ячейки, поля шлюза и DNS-сервера можно оставить незаполненными. После сохранения параметров активируйте настроенное подключение. Проверить состояние сетевых интерфейсов можно командами:
| nmcli device status ip -4 address |
|---|
Для просмотра параметров конкретного подключения можно использовать:
| nmcli connection show |
|---|
После настройки на выбранном Ethernet-интерфейсе должен отображаться адрес из подсети 192.168.2.0/24, например:
| 192.168.2.105/24 |
|---|
Доступность конкретного устройства можно проверить с помощью команды ping. Например, для контроллера манипулятора:
| ping -c 4 192.168.2.100 |
|---|
Наличие ответа свидетельствует об установлении базового сетевого соединения. При этом отсутствие ответа не всегда означает неисправность: отдельные устройства могут не обрабатывать ICMP-запросы, но оставаться доступными по SSH, UDP или через веб-интерфейс.
Чтобы перевети Ethernet-профиль ПК в режим раздачи интернет-соединения:
| nmcli device status |
|---|
Обычно интерфейс называется enxc….., а профиль - Wired connection 1.
| sudo nmcli connection modify "Проводное подключение 1" connection.autoconnect yes ipv4.method shared ipv4.addresses 192.168.2.105/24 ipv6.method disabled sudo nmcli connection up "Проводное подключение 1" |
|---|
Ethernet-устройства
В таблице приведены сетевые параметры основных устройств образовательной ячейки.
| Устройство: | Сетевой адрес: | Способ подключения: |
|---|---|---|
| Контроллер манипулятора ARM95 | 192.168.2.100 | |
| Модуль программирования и управления периферийными устройствами | 192.168.2.N, где N - номер ячейки | ssh set_*номер ячейки*_2@192.168.2.*номер ячейки* |
| Модуль стереозрения AR-Stereo | 192.168.2.241 | ssh root@192.168.2.3 |
| Сигнальная лампа на стойке терминала управления | 192.168.2.15 |
Подробная информация о сетевом взаимодействии с контроллером манипулятора приведена в карточке манипулятора ARM-IMR-95.