본문 바로가기

전체 글

(14)
ur10e-moveit_setup_assistant 설정 및 demo 지난번에 2f85 그리퍼를 장착한 ur로 moveit세팅을 해보겠다.moveit 공식 페이지에서 humble부터 지원하길래 22.04로 업데이트하고 ros도 foxy에서 humble로 재설치하였다. assistant 사용 방법은 자료가 많으므로 굳이 기록하지 않겠다. setup완료 후 build & source.demo.launch.py 실행 후 오류 발생.[ERROR] [launch]: Caught exception in launch (see debug for traceback): 'capabilities' src/moveit2/moveit_configs_utils/moveit_configs_utils/launches.py 런치 파일에서 capabilities 파라미터 설정으로 인해 오류가 발생했다. ..
ur10e - 2f85(robotiq) 지난번에 spawn에 성공한 ur10e에 그리퍼를 달아보겠다.그리퍼 종류는 연구실에서 사용 중인 robotiq의 2f85를 사용하겠다. 그리퍼의 urdf와 mesh파일은 여기서 찾았다.https://github.com/a-price/robotiq_arg85_description GitHub - a-price/robotiq_arg85_description: URDF model of Robotiq 2-Finger Adaptive Robot Gripper 85URDF model of Robotiq 2-Finger Adaptive Robot Gripper 85 - a-price/robotiq_arg85_descriptiongithub.com  mesh파일들은 저장해서 ur10e mesh파일이 있는 meshes폴..
ur10e - gazebo ros2, moveit으로 ur10e를 gazebo에서 제어해보고자 한다.    ur이야 워낙 자료가 많으니 별 어려움 없을 줄 알았지만 꽤나 접근이 힘들었다. 우선 처음 시작한 것은 urdf랑 mesh파일 구하기.https://github.com/Daniella1/urdf_files_dataset GitHub - Daniella1/urdf_files_datasetContribute to Daniella1/urdf_files_dataset development by creating an account on GitHub.github.com위 자료는 금방 찾았지만 urdf주석을 읽어보니 xacro파일을 이용하라는 말이 있다.    NOTE: this is NOT a URDF. It cannot directl..
Opencv 객체 인식 - Gazebo 객체 소환 동기화 저번엔 수동으로 했던 객체소환을 이번엔 자동으로 실시간 동기화되도록 하겠다.블렌더 사용 방법을 배운 김에 간단하게 맵을 다시 제작했다. 좌표변환현실 세계와 가상 환경의 전체적인 맵을 비교한 것이다. 여기서 테이블의 위치를 통해 각 환경에서의 좌표를 증가시켜야 하는 값을 확인할 수 있으며, 원점이 y축을 기준으로 대칭 관계에 있음을 확인할 수 있다. 가상 환경을 확대하여 (Xr,Yr)과​ (Xg​,Yg)​를 나타내고 있다.Xg=Xr / 100 +1.8현실 좌표 Xr은 cm 단위이므로 이를 m 단위로 변환하기 위해 100으로 나눈다. 이 값에 가상 환경에서의 x축 시작 위치를 더한다. 현실 환경에서 Xr=0일 때, 가상 환경에서의 위치는 1.8m이다. Yg=0.4 - Yr/100 +2.3현실 좌표 Yr은 c..
Gazebo에 객체 수동으로 불러오기 인식에 사용한 객체 모델링을 gazebo에 불러올 차례 stl파일을 블렌더에 import 해서 dae로 저장한다.블렌더에서 모델의 중심점을 정하면 편하다. 처음엔 origin을 객체의 중심에 맞추면 되는 줄 알았는데, blender 월드 중심에 맞추고 ctrl+a로 변환을 해주어야 바뀐다. 객체 색상 또한 블렌더에서 바꾸면 편하다.stl파일도 바로 사용은 가능하지만 색상 정보가 없다고 한다.폴더 아래 처럼 구성~/. gazebo/models/Cir_50x20    |-- model.config    |-- model.sdf    |-- meshes        |-- Cir_50x20.daeconfig파일과 sdf파일을 작성한다model.config Cir_50x20 1.0 model.s..
Gazebo-ROS-UR5 환경 세팅 인식 객체를 불러오기 전에 환경을 먼저 세팅했다.Map 제작객체 인식에 사용되는 검정 배경에 맞춰 0.4x0.4x0.3 [m] 직육면체를 제작하고 바닥을 생성했다. 기록용 sdf model://sun true 2 2 0.05 0 0 0 4 4 0.1 4 4 0.1 1 1 1 1 1 1 1 1 0.1 0.1 0...
NVIDIA드라이버 재설치 작업하다가 자리 비우느라 절전모드를 켰다(처음 켜봄)다시 돌아와서 작업하려고 보니 먹통이 되어 있어 무심코 강제종료 후 부팅하니 문제 발생1. 듀얼 모니터 인식 문제증상: 바로 알아챈 이유는 듀얼 모니터가 인식되지 않음.원인 추정: NVIDIA 드라이버의 문제로 인한 것으로 추정. 2. nvidia-smi 명령어 실패명령어:nvidia-smi오류 메시지:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.해결 시도 방법: NVIDIA 드라이버 재설치 시도. 3. modprobe 명령어실패 명령어:sudo..
객체 검출 및 형태 분석 opencv를 활용해 작성한 객체 검출 코드 중 일부분들을 정리하려고 한다.이미지 전 처리 과정 imgGray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) imgBlur = cv2.GaussianBlur(imgGray, (5,5), 1) imgCanny = cv2.Canny(imgBlur, 100, 250) kernel = np.ones((5, 5)) imgDial = cv2.dilate(imgCanny, kernel, iterations=4) imgThre = cv2.erode(imgDial, kernel, iterations=3) Original: 원본 이미지를 준비한다. 이 이미지는 컬러로 되어 있으며, 처리하기 전에 가장 기본이 되는 데이터이다.Gray scale: 컬러..