embedded/ROS

8. depth camera(실패)

crab. 2021. 9. 8. 07:16

우선 지난 과정에서 해체, 분해했던 나노는 다시 재조립했다. 

재조립하면서 카메라를 고정시킨모습

그 이유는 우선 내가 젯슨 tx2가 생겼고 그 둘을 동시 병행하긴 힘드며 프로젝트는 젯슨 tx2로 진행하게 됨에 따라 

 

나노는 개인적으로 연습하기 위함으로 정의되었기 때문이다. 따라서 depth camera를 시작한다.(아두이노는 주문해서 시간이 조금 걸린다.)

카메라는 참고 사이트와 동일한 REALSENSE DEPTH CAMERA D435i를 사용하였다.

(하면서 느낀 건데 이 카메라 모델이 유명하긴 한 것 같았다.)

 

https://github.com/IntelRealSense/realsense-ros

 

GitHub - IntelRealSense/realsense-ros: Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera and T265 Tracking Module

Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera and T265 Tracking Module - GitHub - IntelRealSense/realsense-ros: Intel(R) RealSense(TM) ROS Wrapper for D400 series, SR300 Camera a...

github.com

참고 사이트에서 이 페이지가 잘 알려준다 했는데 나중에 다시 말하겠지만 또 많은 것을 느꼈다.

 

설치방법은 두가지였다.

 

명령어로 설치하거나 sdk(Software Development Kit)로 설치하거나 나는 이런 경우 보통 첫 번째로 진행하는데 이번에 피를 좀 봤다...

 

1번 설치방법

https://95mkr.tistory.com/entry/ROS9?category=746766
https://95mkr.tistory.com/entry/ROS9?category=746766

참고 사이트를 그냥 캡처 후 가져왔는데(이 과정은 이 사이트를 그대로 따라가는 중이다.)

 

나는 이렇게 따라 하다가 잘 안되었다. 

topic까지는 나오지만 position transf..과 color transf..가 활성화되지 않는다...

(messenger-libusb.cpp:42) control_transfer returned error, index: 768, error: No data available, number: 61

에러였는데 나중에 강사님을 통해 알게 된 사실이지만 저 libusb는 의존성 문제라고 한다. 즉 무언가 버전이 안 맞는 것이다.

 

아무래도 나는 이 참고사이트의 과정을 1년 뒤에 따라 하고 있으니 그래서 생기는 문제인 것 같다.

 

우선 그래서 구글링을 통해 나와 같은 증상의 사람을 발견했고 그 사람이 문제를 해결하는 것 까지 확인했다.

 

https://github.com/IntelRealSense/realsense-ros/issues/1510

 

(messenger-libusb.cpp:42) control_transfer returned error, index: 768, error: No data available, number: 61 · Issue #1510 · In

Hii I try to combine camera with lidar in one robot I use laserscan_merger and depthimage_to_laserscan. I keep getting the same error like this 19/11 17:18:51,423 WARNING [139747262609152] (messeng...

github.com

여기 있는 과정을 전부 따라 했는데 간단히 요약하면

1. 카메라 실행 명령의 끝에 initial_reset:=true를 붙인다.

2. 실행 명령의 끝에 depth_fps:=6 infra_fps:=6 color_fps:=6 enable_sync:=true를 붙인다.

3. RealSense Viewer와 rs-enumerate-devices를 확인해본다.(나는 둘 다 안 나왔었음 이 사람도 마찬가지)

4. https://github.com/IntelRealSense/realsense-ros#method-2-the-realsense-distribution 의 두 번째 과정을 진행한다.(참고사이트의 두번째 방법의 최신 버전)

5. roslaunch realsense2_camera rs_camera.launch filters:=pointcloud 로 실행해본다.

 

이 과정을 진행하면서 RealSense Viewer와rs-enumerate-devices는 성공했지만 여전히 같은 오류가 나왔다. 

 

결국 우선 tx2에 LiDAR를 구동해봐야 하고 opencv도 오늘 끝내고 싶었기에 포맷을 진행하고 나중에 다시 시도해보기로 결정했다.

 

다음에는 우선 최신 경로의 두 번째 방법을 처음부터 해봐야겠다.

 

'embedded > ROS' 카테고리의 다른 글

9. depth camera(성공)  (0) 2021.09.14
7. GAZEBO  (0) 2021.09.03
6. ROS & opencv (cv_bridge) 실시간 스트리밍...성공!  (1) 2021.09.01
5. ROS & opencv (cv_bridge) 실시간 스트리밍...실패  (0) 2021.09.01
4. pub & sub 메시지 통신  (0) 2021.08.31