PYNQ2.6에 ROS/ROS2 설치
PYNQ는, 공식 지원 보드 그 외, Zynq가 실려 있는 보드라면 대부분 스스로 SD카드를 만들면 움직입니다( 예 ).
그러나 일반 ROS2 설치 절차 에서 PYNQ에 ROS2를 넣으려고하면 잘 작동하지 않으므로 다음 수정이 필요합니다.
ROS2 버전: ros-eloquent-desktop
PYNQ 버전: PYNQ2.5 및 PYNQ2.6(Ubuntu18.04 기반)
덧붙여 : 5개월전에 ROS의 discurse에도 투고했습니다. . . Pynq2.3 및 ROS1도 마찬가지입니다.
htps : // ぢs 이렇게 r세. 로 s. 오 rg/t/인 s 타치 온-오-로 s-로 s2-온-py q/15549? fbc ぃ d = 이와 R3 pfS ぇlt0cssqz8PJ syXlC 정액 x 수 Z Zmm J 제 b5S
수정해야 할 사항은 다음 두 가지입니다.
1. 우분투 버전을 직접 작성
ROS2의 통상 순서라면 다음을 하라고 써 있습니다.
sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'
그러나 PYNQ의 경우 $(lsb_release -cs)로 나오는 것이 bionic이 아니기 때문에 ROS/ROS2의 패키지 취득에 실패합니다.
xilinx@pynq:~$ lsb_release -cs
WFH
따라서 위의 대신 다음을 수행하십시오.
sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu bionic main" > /etc/apt/sources.list.d/ros2-latest.list'
2. apt 소스 목록에 bionic-updates 추가
ROS2가 의존하는 fast-rtps는 libssl1.1 (>=1.1.1)을 필요로 합니다.
그러나 18.04 bionic (armhf or arm64) 버전은 libssl1.1.0g입니다.
따라서/etc/apt/sources.list.d/multistrap-bionic.list에 bionic-updates repository를 추가하십시오.
xilinx@pynq:~$ cat /etc/apt/sources.list.d/multistrap-bionic.list
deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports bionic universe main
deb-src http://ports.ubuntu.com/ubuntu-ports bionic universe main
deb http://ports.ubuntu.com/ubuntu-ports bionic-updates main
([arch=armhf]는 환경에 따라 다를 수 있습니다.)
설치 및 동작 확인
이상의 조작을 실시하면, 무사 PYNQ상에 ROS2가 인스톨 할 수 있을 것입니다.
sudo apt update
sudo apt install ros-eloquent-desktop
두 개의 새로운 창을 열고 Talker와 Listener를 움직여 봅시다.
source /opt/ros/eloquent/setup.bash
ros2 run demo_nodes_cpp talker
그리고,
source /opt/ros/eloquent/setup.bash
ros2 run demo_nodes_py listener
잘 작동했습니까? ROS2에서는 ROS와 같은 마스터 노드(roscore)가 불필요하므로, 망설임이 없어도 좋네요.
Reference
이 문제에 관하여(PYNQ2.6에 ROS/ROS2 설치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ohkawatks/items/e99aaaf2b4a57f840242텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)