Skip to content

1 KB

Machine-translated by Robotheca from the original in Chinese (opens in a new tab). License: MIT (opens in a new tab).

Ubuntu/Linux Development Environment Issues (10 points)

Problem Description

Configure an independent robot development environment on Ubuntu 22.04, create a wheelleg user and a group with the same name, and complete the configuration using useradd, groupadd, and usermod. The user should have access to /dev/ttyUSB*, /dev/ttyACM*, /dev/video*, Linux GPIO, and can0/vcan0, and be able to run ROS 2 Humble. For a pure host-only solution, GPIO or USB-CAN access must be verified; for a joint upper-lower computer solution, USB-TTL/serial access to the lower computer must be verified; for a pure lower computer solution, explain why it does not depend on the host computer.

Deliverables

Provide setup/, scripts/, permissions/, and repeatable scripts: user/permission initialization, USB/serial port, camera (can be checked with v4l2-ctl), GPIO, CAN, and ROS 2 checks. Scripts should handle cases where devices do not exist, permissions are insufficient, and virtual CAN is used.

Scoring

ItemScore
wheelleg user and user group2
USB/serial port permissions2
Camera permissions and detection1
GPIO permissions and detection1
CAN permissions and can0/vcan0 detection2
ROS 2 Humble environment and host computer control link2

Acceptance

Perform environment checks as the regular wheelleg user and display the outputs of ros2 --version, ros2 topic list, ros2 node list, ros2 run, and ros2 launch. For pure microcontroller solutions without ROS 2/host computer, up to 1/2 of the points may be awarded based on complete microcontroller control, simulation deployment, permission documentation, and logs. For host-only or combined host-microcontroller solutions, acceptance is based on the integrity of the control chain.

Files by @wusi321, at commit b6b12b0, read from GitHub in your browser. Hardware license: MIT; software license: MIT. Robotheca doesn't review code: read it before running it.