Scout mini - can 통신 문의

안녕하세요 충북대학교 신찬희 입니다.

저희 연구실에는 SCOUT MINI + PIPER(모바일 매니퓰레이터) 로봇을 총 2대 보유 하고 있습니다.

SCOUT MINI의 각각 CAN 통신 관련하여 문의 드립니다.

  1. Jetson AGX - Scout MINI,
    이 로봇의 경우 기존의 CAN1(PIPER) 통신 연결은 문제 없이 잘 됩니다.
    하지만 CAN0(Scout)의 경우 bash can_acticate.sh 명령어 입력 시 candum can0 했을 때, 아무런 로그값이 출력 되지 않습니다.

이후,
sudo ip link set can0 down
sudo ip link set can0 type can bitrate 1000000
sudo ip link set can0 up
명령어 입력과 scout mini 메뉴얼에 나와 있는 CAN TO USB 점검 및 허브의 다른 여러 포트에 연결 후 바뀐 포트 인자로 can 통신을 시도하여도 같은 문제가 발생합니다.

SCOUT_MINI(1)_Jetson_AGX.mp4.zip (8.2 MB)

  1. Intel NUC - Scout MINI
    이 로봇의 경우 기존의 Jetson의 Isaac ROS 서비스 종료로 Intel NUC PC로 제공 받게 되었습니다.
    마찬가지로 CAN1(PIPER)는 연결 및 제어에는 문제가 없으며, 이 로봇의 경우는 candump can0 했을 때, 통신 로그값이 출력이 됩니다.
    하지만, can0이 연결된 상태에서 ros2 topic을 이용하여 제어를 하면 바로 CAN 통신이 끊어지는 문제가 발생합니다. 이후로는 CAN0 통신이 위의 설명드린 로봇과 같은 상태가 되며, 재부팅 시, CAN 통신이 된 후에 제어가 되지 않습니다.

SCOUT_MINI(2)-1_Intel_NUC.mp4.zip (9.2 MB)

SCOUT_MINI(2)-2_Intel_NUC.mp4.zip (7.8 MB)

SCOUT_MINI(2)-3_Intel_NUC.mp4.zip (3.7 MB)

문제의 원인, 잘 못된 접근이 있을 경우, 알려주시면 감사하겠습니다.

감사합니다.

신찬희 올림.

안녕하십니까, 위고로보틱스입니다.

scout mini + piper에서 scout 쪽 can 통신에 문제가 있는 것을 문의 주신 것으로 판단됩니다.
우선, 해당 문제가 piper를 물리적으로 연결하지 않은 상태에서 scout mini를 단독으로 사용하실 때에도 나타나는지 확인 부탁드립니다.


1번 Jetson AGC - Scout MINI를 사용하여 can_activate.sh 명령어 입력 시 bitrate를 1000000으로 설정하셨는데, 매뉴얼에 나오는 500000으로 하신 상태에서도 확인 부탁드립니다.


2번 intel NUC - Scout MINI를 사용하셨을 때, ros2 launch scout_base scout_mini_base.launch.py 실행 후, 다른 터미널에서 pose_hold.py를 실행하자마자 CAN frame 전송 실패가 나타남을 확인할 수 있습니다.
pose_hold.py의 내용을 확인하기 위해 코드 공유를 부탁드립니다.

pose_hold.py.zip (3.2 KB)

해당 파이썬 파일입니다