lion0634의 등록된 링크

 lion0634로 등록된 네이버 블로그 포스트 수는 32건입니다.

Moveit2란 무엇인가? - 간단설명 [내부링크]

안녕하세요~ ROS2로 로봇팔을 움직이려고 하다보면 처음 만나게 되는게 Moveit2 입니다. Moveit2는 무엇이고, 왜 사용하는 것일까요? https://moveit.picknik.ai/main/index.html 한줄로 요약하면, 로봇팔을 원하는대로 대신 움직여주는 소프트웨어라고 생각하면 됩니다! "모션 플래닝(Motion Planning)" 이라고도 요약할 수 있겠네요! 예를 들어 3차원의 x,y,z 좌표로 로봇팔의 로봇손을 움직이고 싶다고 해봅시다. 각 관절(모터)의 각도값을 정해주어야 할텐데, 이 값을 어떻게 정해야할까요? 이때 등장하는 것이 역기구학(Inverse Kinematics)인데, Moveit2가 자체 엔진으로 이 값을 정해줍니다! 이건 Moveit2의 많은 기능들 중 하나인데, 그럼 Moveit2는 정확히 어떤 프로그램일까요? 자세히 알아보도록 하겠습니다. Fusion360 & ROS2 & Moveit2 MoveIt 2는 로봇을 위한 오픈 소스 소프트웨어로,

Moveit2 적용하기 - Moveit Setup Assistant [내부링크]

Moveit2를 활용하다 보면 이미 Moveit2가 적용되어 있는 로봇들이 많지만, 직접 제작한 로봇에 Moveit2를 붙여보고 싶은 순간이 오게 됩니다. 저 역시 이때문에 상당히 깜깜했었는데, 이때 한줄기 빛이 내려왔으니 바로 Moveit Setup Assistnat Moveit Setup Assistant 입니다! 자세한 내용은 아래 링크를 확인해 보시면 됩니다. MoveIt Setup Assistant — MoveIt Documentation: Rolling documentation Tutorials Examples MoveGroup - ROS Wrappers in C++ Using MoveIt Directly Through the C++ API Using MoveIt Directly Through the Python API Integration with a New Robot MoveIt Setup Assistant Overview Getting Started Step 1: S

MG시리즈 모터 사용법과 후기 - MG4005v2, MG4010E-i10v3, MG4010E-i36v3 등등 [내부링크]

안녕하세요, 연구실에서 로봇을 제작하며 로봇팔용 모터가 많이 필요했는데요, 제가 사용한 모터들은 바로 요즘 핫한 MG 시리즈 모터들입니다. 저는 MG4005v2, MG4005E-i10v3, MG4010E-i10v3, MG4010E-i36v3 를 사용했습니다. 가격은 토크에 따라 10만원대~20만원대로 무게 대비 토크 가격이 아주아주 저렴한 편입니다!! 모터 군단 통신은 시리얼 통신과 CAN 통신 모두 지원합니다!! 로봇팔 제어에 CAN 통신은 아주 효과적이죠. 모터 설정 소프트웨어는 아래 사진과 같이 구성되어 있습니다. https://ko.aliexpress.com/i/1005006188758483.html 위 사진이 모터 설정 & 테스트 소프트웨어 화면입니다. 왼쪽 위가 모터 설정, 오른쪽 위는 인코더 설정, 왼쪽 아래는 제품 정보, 오른쪽 아래는 모터 테스트 입니다! 왼쪽 위의 모터 설정 창을 한번 볼까요? 우선 COM 포트를 잘 설정해주고, ID도 모터에 알맞게 설정한 후 모터

3D 프린팅 방식 - FDM, SLA, SLS [내부링크]

3D 프린팅으로 로봇팔 부품 제작하기 10여년 전부터 핫해진 3D 프린팅은 많은 분야에서 응용되고 있는데요, 이 3D 프린팅은 크게 3가지 방을 주로 사용합니다. FDM, SLA, SLS FDM, SLA, SLS 세 방식은 어떤 방식이고, 어떠한 특징을 가질까요? https://reprap.org/wiki/Fused_filament_fabrication 1. Fused Deposition Modeling (FDM) 또는 Fused Filament Fabrication (FFF): FDM은 열가소성 플라스틱 필라멘트를 녹여 층층이 쌓아 올리는 방식입니다. 프린터의 노즐이 가열되어 필라멘트를 녹인 후, 이를 정확한 위치에 분출하여 물체를 차곡차곡 쌓아 올립니다. 대부분의 보급형, 취미형 3D 프린터들이 이 방식을 사용하고, 보통 3D 프린팅이라 하면 이 방식을 많이들 떠올리죠! FDM 방식입니다 장점은 프린팅이 간단하고 비용이 저렴하며, 다양한 재료(필라멘트)를 사용할 수 있습니다. 단

[모터] 유성기어(Planetary Gear)란? [내부링크]

안녕하세요! 오늘은 유성기어(Planetary Gear) (혹은 Epicyclic system 로도 불림)에 대해 이야기해보려고 합니다. 유성기어는 이름에서 알 수 있듯이, 태양계의 움직임을 모방한 매커니즘으로 구성되어 있는데요, 유성기어는 정확히 무엇이고, 왜 널리 사용되는지 함께 알아볼까요? https://images.app.goo.gl/nEdyEasUYNZd6KFF8 유성기어는 중심에 있는 '태양 기어(sun gear)', 그 주위를 도는 여러 '행성 기어(Planet gear)', 행성 기어들을 연결하고 지지하는 '행성 기어 캐리어(Planet Gear Carrier)' 그리고 이들을 감싸는 '링 기어(Ring gear)'로 구성되어 있습니다. 이 구조가 우주의 태양계를 연상시키기 때문에 이런 이름이 붙었는데, 기어들이 서로 맞물려 돌아가면서 효율적으로 동력을 전달합니다. 특히, 소형 공간에서 높은 전달력이 필요할 때 유성기어가 그 진가를 발휘하죠. https://en.wik

[모터] 하모닉 드라이브(Harmonic Drive)란? [내부링크]

안녕하세요! 오늘은 하모닉 드라이브(Harmonic Drive)에 대해 알아보려고 합니다. 이 기어는 정밀한 움직임이 요구되는 로봇 공학, 항공우주등 다양한 분야에서 널리 사용되고 있어요. 그럼, 하모닉 드라이브가 무엇이며, 왜 이렇게 많은 분야에서 중요한 역할을 하는지 함께 살펴볼까요? https://en.wikipedia.org/wiki/Strain_wave_gearing 하모닉 드라이브는 고정밀 기어 시스템의 일종으로, 주로 고정밀 위치 결정이나, 높은 감속비, 컴팩트한 디자인이 요구되는 곳에 사용됩니다. 하모닉 드라이브의 가장 큰 특징은 그 탁월한 감속 능력과 높은 토크 전달, 그리고 거의 제로에 가까운 백래시(Backlash, 기어가 맞물릴 때 생기는 틈)입니다. 이런 특성 때문에 로봇팔의 관절이나 정밀 기계의 구동 부분 등에서 광범위하게 활용되고 있죠. https://images.app.goo.gl/oEr627vNvfPGihEC6 하모닉 드라이브는 크게 세 부분으로 구성되

[SLAM] SLAM은 무엇인가? - 간단소개 [내부링크]

안녕하세요 여러분, 오늘은 로봇공학과 자율주행 자동차 분야에서 큰 주목을 받고 있는 SLAM(Simultaneous Localization And Mapping) 에 대해 이야기해 보려고 합니다. SLAM은 로봇이나 자율주행 차량이 처음 방문하는 환경에서 자신의 위치를 파악하면서 동시에 그 환경의 지도를 만들어 나가는 기술입니다. 이 복잡해 보이는 과제는 로봇공학에서 오랫동안 연구되어 온 주제 중 하나이며, SLAM은 이 문제에 대한 가장 효과적인 해결책 중 하나로 꼽힙니다. 그럼, SLAM이 왜 중요한지, 그리고 어떻게 작동하는지 함께 알아보겠습니다. 연구실에서 사용한 로봇개가 그린 지도 SLAM의 핵심은 로봇이나 자율주행 차량이 사전에 준비된 지도 없이도, 미지의 환경에서 자신의 위치를 파악하고 그 환경을 매핑할 수 있어야 한다는 것입니다. 이를 위해 SLAM은 다양한 센서로부터 오는 정보를 통합하여, 로봇의 위치와 환경에 대한 지도를 동시에 추정합니다. 이 과정에서 로봇은 카메

AC/DC - 교류(AC) vs 직류(DC) [내부링크]

안녕하세요! 오늘은 전기의 두 가지 형태인 직류(DC)와 교류(AC)에 대해 함께 살펴보도록 하겠습니다. 밴드 이름 참 잘지었어요 직류(DC)와 교류(AC), 이 두 용어는 전기를 다루는 모든 분야에서 굉장히 중요합니다. 직류 vs 교류는 약 100년전 토마스 에디슨(직류파) vs 테슬라(교류파) 의 싸움까지 올라갈 만큼 유서깊은 주제입니다. 하지만, 정확히 어떤 차이가 있는지, 그리고 왜 각각이 중요한지에 대해 궁금해하시는 분들이 많으실 것 같아요. 불쌍한 테슬라 먼저, 직류(DC)란 무엇일까요? 직류는 'Direct Current'의 약자로, 전류가 한 방향으로만 흐르는 형태를 말합니다. 예를 들어, 배터리에서 나오는 전기는 직류입니다. 배터리의 한쪽 극에서 다른 쪽 극으로 전자가 일정한 방향으로 이동하죠. 이런 특성 덕분에 직류는 전자기기, 컴퓨터, LED 조명 등 다양한 곳에서 사용됩니다. 그런데 여기서 의문이 생깁니다. 왜 모든 전기를 직류로만 사용하지 않는 걸까요? 가장

[모터] AC모터 vs DC모터 - 정의와 차이점 [내부링크]

안녕하세요, 오늘은 전기 모터의 두 대표 주자, AC모터와 DC모터에 알아보도록 하겠습니다. 이들 모터는 우리 생활 곳곳에서 다양한 역할을 하고 있지만, 어떤 점에서 차이가 나는지, 각각 어떤 장단점을 가지고 있는지 궁금하신 분들이 많으실 것 같아요. 시작에 앞서 AC(교류)와 DC(직류)에 대해 아래의 글에 설명을 해놓았으니 참고하시면 좋을 것 같네요! AC/DC - 교류(AC) vs 직류(DC) 안녕하세요! 오늘은 전기의 두 가지 형태인 직류(DC)와 교류(AC)에 대해 함께 살펴보도록 하겠습니다. ... blog.naver.com 먼저, AC모터는 어떤 것일까요? https://en.wikipedia.org/wiki/AC_motor AC모터는 교류(AC, Alternating Current) 전기를 사용하여 작동하는 모터입니다. 이 모터는 전기가 주기적으로 방향을 바꾸는 교류의 특성을 활용해 회전력을 발생시킵니다. AC모터는 단순한 구조와 강한 내구성, 높은 효율성 때문에 산업

[모터] 서보모터(Servo Motor)란 무엇일까? [내부링크]

안녕하세요, 오늘은 로봇 공학, 자동화 산업, 그리고 다양한 프로젝트에서 광범위하게 사용되는 중요한 구성 요소인 서보모터(Servo Motor)에 대해 이야기해볼까 합니다. 서보모터는 특정한 각도로 정밀하게 제어할 수 있는 능력 때문에 정밀 제어가 필요한 곳에서 매우 중요한 역할을 합니다. 서보모터는 무엇일까요? 아두이노 단골손님 서보모터 간단히 말해서, 서보모터는 목표 위치나 속도에 대한 피드백 제어 시스템을 내장한 모터입니다. 이 모터는 제어 신호에 따라 정확한 위치로 회전할 수 있으며, 위치, 속도, 가속도등을 정밀하게 제어할 수 있습니다. 서보모터는 크게 AC 서보모터와 DC 서보모터로 분류되며, 각각의 용도와 특성이 다릅니다. 그렇다면 서보모터의 핵심 구성 요소는 무엇일까요? https://images.app.goo.gl/8q4RpfK883qukQ94A 모터 본체: 회전 운동을 생성합니다. 제어 회로: 목표 위치로 모터를 정밀하게 제어합니다. 피드백 시스템: 현재 위치를 감

아두이노 vs 라즈베리파이 - 언제, 왜 써야할까? [내부링크]

안녕하세요! 아두이노와 라즈베리파이는 제가 어렸을 적 선망의 대상이었던 기억이 있네요. 뭔가 멋있어 보이고, 대학 가면 이런걸로 뚝딱뚝딱해서 로봇 만들것 같고 말이에요. 좌 아두이노, 우 라즈베리파이 그런데 이 둘의 이름만 알았지, 각각을 언제, 어떻게 사용해야 하는지는 미지수였습니다. 직접 사용해보기 전까지는 말이죠! 과연 이 둘은 무엇이고 어떤 차이가 있을까요? 우선 간단하게 다음 한줄로 요약할 수 있을 것 같아요! 아두이노는 마이크로컨트롤러 보드 라즈베리파이는 싱글보드 컴퓨터 혹은 "라즈베리파이는 컴퓨터고, 아두이노는 컴퓨터는 아니에요" 라고 할 수 있겠네요! 어떻게 활용해야 할지도 감이 잡히시지 않으시나요? 공작 프로젝트를 진행하다가: "이건 컴퓨터가 필요할거 같은데(GUI, 컴퓨터비전 등등)? -> 라즈베리파이" "이건 컴퓨터까진 필요없겠다(센서, 모터만 활용) -> 아두이노" 물론 상황에 따라 다르고 또 다르겠지만, 대충 이렇게 요약할 수 있을 것 같아요. 그럼 각각에 대

KIST 인턴 후기, 인턴을 마무리하며 [내부링크]

벌써 마지막 출근이 다가왔어요~! 이번 겨울은 눈이 정말 많이 왔어요 보통 이럴땐 첫출근이 엊그제같은데 ... 라고 할테지만 월화수목금 열심히 출근하다 보니 이제 슬슬 다시 학교로 갈때가 된 것 같네요..ㅎㅎ(체력바닥) 그래도 정말 귀하고 유익했던 경험이었던 것 같습니다. KIST에서 현장실습 인턴을 진행하면서 느낀 점이나 여러 팁들을 적어보려고 합니다! 1. 학기중에 하는 것 강추! 만약 꼭! KIST에서 현장실습 인턴을 하고 싶다면, 학기중에 하는걸 강추드립니다~ 어찌저찌하면서 인턴 지원자 수와 경쟁률에 관한 이야기를 들을 수 있었는데, 너무 당연하긴 하지만 학기중 인턴 경쟁률이 방학 인턴 경쟁률보다 훨씬 낮습니다..! 첫 결과였던 서류탈락 (학기중이었다면..) 저희 랩실은 방학기간에는 경쟁률이 꽤 있었는데, 학기중에는 0 : 1 (...) 로 지원자가 없어 후임자를 뽑지 못했습니다아.... 저희 뿐 아니라 다른 랩실들도 0 : 1은 아니어도, 학기중 인턴이 더 합격하기 쉬운걸로

PLA vs ABS vs PETG - 3D 프린팅 필라멘트 [내부링크]

안녕하세요~! 이번 겨울 로봇팔을 제작하면서, 테스팅을 위해 플라스틱으로 부품을 제작했습니다. 이때 3D 프린팅으로 부품들을 제작하면서, 다양한 필라멘트를 접할 수 있었는데요, 좌 PETG, 우 ABS 다양한 재료들 중 무슨 재료를 선택해야 할지 고민이 많았기에, 이 글에 한번 정리해보려고 합니다! PLA, ABS, PETG PLA, ABS, PETG는 가장 많이 사용되는 3D 필라멘트들입니다! 하나하나 알아보도록 하겠습니다! PLA PLA는 폴리락틱산(Polylactic Acid)의 약자로, 옥수수 전분이나 사탕수수와 같은 식물성 자원에서 유래된 생분해성 친환경 소재입니다. 친환경 PLA PLA의 주요 특징은, 우선 저온에서도 잘 인쇄되어, 인쇄 난이도가 상당히 낮습니다! 여기에 냄새도 거의 나지 않고, 표면도 매끄러워 초보자들에게 인기가 많습니다. 여기에 다양한 색상과 광택, 반투명등 다양한 효과도 적용 가능하여, 취미용부터 전문적 모델링까지, 초보자부터 실력자까지 모두의 사랑을

로봇팔 소개영상 [내부링크]

겨울동안 제작한 로봇팔의 소개영상 입니다! 영상으로 보니 뿌듯하네요 ㅎㅎ 유튜브에도 업로드 되었습니다~

을지유니크팩토리 - 무료 3D 프린팅 공간 [내부링크]

안녕하세요! 3D 프린팅에 관심을 가지다보면, 직접 해보고 싶다는 생각을 많이들 하시죠. 혹은 프로젝트나 과제등을 하면서 딱 3D 프린팅 부품이 필요할 때도 있고요. 3D 프린팅으로 제작한 로봇팔 부품들 이럴땐 3D 프린팅 대행 업체에 맡겨 주문을 하는게 일반적이지만, 그정도로 양이 많진 않거나, 저같이 한푼한푼이 소중한 대학생이라면, 이런 무료 3D 프린팅 공간은 정말 정말 소중하더라고요! 을지유니크팩토리 서울특별시 중구 을지로 170 B2층 이 블로그의 체크인 이 장소의 다른 글 을지유니크팩토리 이용 시간: 월~금요일 10:00~18:00 , 점심시간 12:00 ~ 13:00 을지유니크팩토리 을지유니크팩토리는 특화 도심 제조업과 크리에이터 역량을 지원하는 혁신 창업 플랫폼입니다. euf.or.kr 공모전을 하면서 처음 알게 된 곳입니다! 서울시 중구와 동국대학교에서 운영을 해서 무려 무료 로 3D 프린팅을 할 수 있습니다!! 프린터는 총 3대 있습니다! 위치도 을지로4가역에 위

CAN통신이란? - CAN vs 시리얼 통신 [내부링크]

중저가형 모터, 혹은 더 비싼 모터를 쓰다보면, CAN 통신과 시리얼 통신 두 방식이 등장하게 됩니다. 시리얼 통신과 CAN 통신은 무엇이며, 언제 사용하고, 어떤 차이가 있을까요? 가장 큰 차이는 아래 모식도를 통해 한눈에 알 수 있습니다! https://images.app.goo.gl/YD43KD2wUoQrisCv5 시리얼 통신(UART 통신)은 각 객체가 1대1로 통신을 진행하게 됩니다. 하지만 CAN 통신은 하나의 파이프라인을 활용하여 각 객체들이 통신을 진행하게 됩니다! 통신을 해야 하는 객체가 많으면 많을수록, 아무래도 CAN 통신이 유리하겠죠? 단 하나의 선을 길게길게 연결하여 모든 통신을 진행하는 CAN 통신이 새삼 대단하네요 ㅎㅎ 그럼 이 둘에 대해 좀 더 자세히 알아보도록 하겠습니다! 시리얼 통신 시리얼 통신은 데이터를 한 비트씩 순차적으로 전송하는 통신 방식입니다! 컴퓨터, 통신 장비, 네트워크 하드웨어 등 다양한 전자 장비에서 널리 사용됩니다. 시리얼 통신의 특

ROS2 적용 - 로봇팔 관절 각도값 얻어보기 [내부링크]

로봇팔을 위해 실제로 ROS2를 사용해보겠습니다~! Rviz환경으로 로봇을 불러오는데 성공하였다면, 이를 실행함과 동시에 다양한 Topic들이 Publish됩니다. (불러오는 방법은 URDF 항목 참고) URDF 만들기 - urdf exporter 이번에는 직접 내 로봇의 urdf를 만들어 보도록 하겠습니다~~ 우선 로봇 3d 모델링은 Solidworks나 Fusio... blog.naver.com 저는 여기에 moveit2까지 연동한 상태입니다!(여기선 굳이 안해도 됩니다) 자 그럼, Rviz에서 로봇팔을 띄운 상태로 rqt_graph 명령어를 통해 실행중인 노드들을 살펴볼까요? 여기서 저희가 활용할 것은 /joint_states 입니다! 해당 Topic에는 각 Joint(모터)의 각도값이 라디안의 형태로 표현이 됩니다. 우리는 여기서 모터에 필요한 각도정보만 쏙쏙 빼내갈겁니다! 어렵지 않겠죠? Subscribe 하는 방법은 제가 작성했던 아래 글 그대로 받아오면 됩니다! ROS2

[AI] 인공지능, 머신러닝, 딥러닝의 차이점 [내부링크]

AI가 프롬프트 한줄로 만들어준 그림들입니다! 인공지능(AI)은 최근 그야말로 과학 기술 분야에서 트렌드를 선도하는 주제이죠. 최근 발전속도와 투자 규모를 보면, 그 끝은 어디일지 감히 감도 잡히지 않는 어마어마한 분야입니다! 이번 그림은 글자가 살짝 엉성하네요 인공지능(AI), 머신러닝(Machine Learning), 딥러닝(Deep Learning) 이 세 가지 용어는 자주 혼용되곤 하지만, 각각의 개념은 명확히 다르며, 서로를 포함하는 관계에 있습니다. 이 세 용어는 뉴스든 기사든 정말 많이 찾아볼 수 있는데요, 각각이 어떤 뜻이고 어떤 차이가 있는지 알아보도록 하겠습니다! 우선 자세한 설명에 앞서, 전체적인 포함 관계는 다음과 같습니다. 인공지능 ⊃ 머신러닝 ⊃ 딥러닝 AI ⊃ ML ⊃ DL 인공지능 안에 머신러닝이, 머신러닝 안에 딥러닝이! 출처: 위키피디아 한눈에 맥락을 파악할 수 있겠죠? AI의 수많은 분야 중 한 분야가 머신러닝이고, 머신러닝 안에 딥러닝이라는 세부

[AI] 인공지능의 미래, 인류의 미래 - AI 칼럼 [내부링크]

우선 글을 시작하기에 앞서, 이 글은 모두 개인적인 주관이 들어간 글이고 사람마다 다른 직관이나 시선을 가졌기에, 어느정도 가볍게 읽어주셨으면 합니다! 먼저 이 글을 쓰게 된 계기를 살짝 말씀드리겠습니다. 안녕하세요! 저는 서강대학교에서 기계공학 & 컴퓨터공학을 수학하고 그 과정에서 교내 인공지능 랩실, 한국과학기술연구원(KIST) 인공지능연구단에서 연구활동을 하며 인공지능과 밀접하게 지내고 있는 학생입니다. 제가 얌전히 공부하던 2023년에는 인류 역사에 남을 대사건이 있었죠.. 물론 이때는 이게 얼마나 큰 일이었는지 몰랐습니다. ChatGPT 2023년(2022년 말), ChatGPT3.5 & 4.0의 등장은 세계에 어마어마한 충격을 주었습니다. 믿을 수 없는 성능과, 사용자 친화적인 인터페이스로 ChatGPT는 출시 일주일째 100만 사용자, 출시 두달만에 월간 1억 사용자, 그로부터 반년 뒤에는 월간 사용자 15억명을 넘어섰습니다. 출시된지 몇달만에 교내 모든 대학원 연구실에

KIST 인턴 합격 과정,후기 [내부링크]

지도에도 안나오는 미지의 땅 KIST 지난 겨울 KIST(한국과학기술연구원) 학점인정형 현장실습 인턴에 합격하였습니다. 원서는 총 2곳을 썼습니다. 한곳은 KIST 지능로봇연구단, 한곳은 KIST 인공지능연구단으로 쓰게 되었습니다. 첫 인턴, 첫 지원서, 첫 자소서 모든게 어색하더라고요. 내새울거라곤 평균보다 살짝 높은 학점, 학교 수업중에 진행한 이런 저런 프로젝트들이 전부였습니다. 이제 3학년 학부생에게 무슨 스펙이 있을까요.. 그럼에도 열정 하나만큼은 충분하다 생각하여 자신있게 지원을 했고, 매일 결과창을 확인하던 중 드디어 첫 결과가 떴는데..! 탈~락 탈...락 보통 경쟁률이 인공지능연구단은 치열하고, 지능로봇연구단은 덜하다는 말을 들어 많이 슬펐었네요. 그렇게 좌절하고 슬슬 다른 인턴들을 알아보던 중 모르는 번호로 전화가 한통 오게 되었는데... (본인) 누구세요~? (...) 네 KIST ...박사 입니다. (본인) ..? 알고 봤더니 제가 지원하진 않았지만, 어떠한 경

KIST 인공지능연구단 인턴 후기 [내부링크]

아직 한창 출근을 하는 지금, 중간 점검 겸 후기를 써봅니다~ 아무것도 안뜬다.. KIST(한국과학기술연구원)은 서울 성북구, 6호선 라인 월곡역과 상월곡역에 위치합니다. 고려대역 다음 역이 월곡역이고, 산을 끼고 경희대를 마주하니 주변에 대학들이 참 많더라고요! 하지만 이대역 근처에서 출근하는데 약 1시간 20분.... 고대 경희대를 다녔다면 어땠을까..ㅎㅎ 첫 출근은 상월곡역을 거쳐 북문으로 하게 됩니다! 근데 북문에서 한~참을 걸어가야 건물들이 나오더라고요.. 정말 연구원을 요새마냥 지어놓았습니다(취지도 대충 비슷할거에요) KIST 홈페이지 - 찾아오시는 길 그래도 출입증을 받게 되면, 북문으로 갈 필요가 없어 출퇴근 시간이 많이 단축이 됩니다 ㅎㅎ 아싸뵤 겨울의 KIST KIST에서 생활을 하며 느낀 몇가지를 추려보면.. 돈이 많아 보인다 밥 싸고 맛있다 화장실 깨끗하다 건물들 멋있다 분위기가 자유롭다 6. 사람들이 여유가 있다(..?) 확실히 역사도 제일 오래된 정출연이고,

로봇팔을 제작하게 된 계기 [내부링크]

제가 현재 속한 랩실은 한국과학기술연구원(KIST) 인공지능연구단의 xrHuman Lab 입니다! EXTREME REALITY HUMAN LAB https://www.xrhumanlab.net/ xrHuman Lab at KIST Research Objectives Real-time 3D Human Shape and Pose Estimation for Extreme Reality www.xrhumanlab.net 현재 새로운 사이트를 개설중인 것 같은데, 언제쯤 완성될지는 모르겠네요. KIST 인공지능연구단에서 현재 연구단장을 맡고 계신 임화섭 박사님의 랩실입니다. https://www.youtube.com/@HwasupLim Hwasup Lim Head, Center for Artificial Intelligence Korea Institute of Science and Technology Email: [email protected] www.youtube.com 제가 이 랩실에서 맡

로봇팔 제작 개요 요약 [내부링크]

로봇팔 제작을 위해 거치게 된 과정은 다음과 같이 요약할 수 있습니다! 1. 모터 제어 코딩 - 모터 제어를 위한 코드를 작성하고 가속도 모터 설정 등을 해주어야 합니다. 또한 저같은 경우 시리얼 통신이 아닌 CAN 통신을 활용하였는데, 통신 관련 파이썬 코드도 작성했습니다. 직접 제작한 매뉴얼 발췌 2. 로봇팔 모델링(디자인) - 로봇팔을 직접 3d 모델로 그려주었습니다. 3d 프린터로 출력도 병행하여, 디자인을 계속해서 수정해주었습니다. 다양한 로봇팔 디자인들 3. URDF - 3d 모델로부터 URDF를 생성해주었습니다. 이를 통해 직접 그린 로봇팔을 ROS2 환경의 Rviz에 불러올 수 있습니다. 로봇팔을 위한 URDF 작성은 URDF Exporter을 활용했습니다. 학습하면서 만든 미니자동차 4. ROS2 - ROS2를 통해 모터 제어 프로그램과 MoveIt2(Path Planning) 연동을 해주었습니다. 이를 위해 Subscribe을 함과 동시에 Socket 통신을 하는

ROS2는 무엇인가? - 간단 요약 설명 [내부링크]

ROS2가 무엇인지를 이해하는 가장 쉬운 방법은, ROS2를 왜 사용하는가를 이해하는 것입니다. 같이 한번 알아보도록 하죠! ROS2 ROS는 Robot Operating System의 약자입니다. 이름은 OS지만 대학에서 배우는 OS와는 다른 개념입니다. ROS2는 오픈 소스 로봇 소프트웨어 프레임워크입니다. ROS2는 로봇 시스템 개발을 위한 도구와 라이브러리를 제공하여 로봇 개발을 더욱 쉽고 효율적으로 만들어줍니다! 이름에 2가 붙는 이유는 원래 ROS가 있었는데, ROS의 단점들을 개선하여 새로운 버전으로 ROS2가 탄생한 것입니다. 제가 처음 ROS2의 존재에 대해 알게 되었을 때, 가장 먼저 들었던 생각은 왜? 였습니다. 공대생의 친구 아두이노&라즈베리파이 이전까지 사용한 아두이노나 라즈베리파이에서 센서, 모터 등등을 잘만 활용했는데, 굳이 이런, 살면서 처음 들어본 언어(?)를 또 알야 하는가? 라는 의문이 들었습니다. ROS2를 어느정도 사용하는 현재, 이에 대한 해답

ROS2 기초 - 설치 및 환경 세팅 [내부링크]

이전 글에서 ROS2에 대해 알아보았는데요, 직접 해보는 것이야 말로 최고의 학습 방법 같습니다! ROS2를 직접 활용하려면0, 우선 윈도우가 아닌 리눅스(우분투) 환경을 세팅해야 합니다. 윈도우에서 리눅스를 돌리는데는 크게 두 가지의 방법이 있습니다. 가상머신(Virtual Machine), 그리고 WSL 입니다! 대표적 VM인 VirtualBox, 그리고 WSL 각자 장단점이 있는데, 요즘은 대부분 WSL을 사용하더라고요~ 저는 데스크톱에서는 WSL을, 노트북에서는 VM을 사용하고 있습니다. 이들을 설치하는 과정은 유튜브에 잘 나와있습니다! WSL 설치 https://www.youtube.com/watch?v=wjbbl0TTMeo&t=410s VM 설치(영상은 Ubuntu 22.10인데, 전 22.04 버전을 사용중입니다) https://www.youtube.com/watch?v=hYaCCpvjsEY&t=329s 리눅스(우분투) 환경을설정 완료했다면, ROS2를 설치해주어야겠죠?

ROS2 기초 - Work Space 만들기 [내부링크]

원활한 ROS2 작업을 위해서 ROS2 Work Space(작업환경)을 먼저 만들어주도록 하겠습니다! 첫 Work Space 이름은 ros2_ws로 하는것이 규칙 아닌 규칙입니다..ㅎㅎ 터미널 창 on 만들어보도록 하죠! 터미널창을 열고 mkdir ros2_ws cd ros2_ws mkdir src 위 명령어를 통해 ros2_ws, 그리고 그 안에 src라는 폴더를 만들어주겠습니다. 다음으로 현재 디렉토리가 ros2_ws인 상태로 다음 명령어를 입력해줍니다. (위 세 명령어 입력하기만 했을 때 디렉토리는 ros2_ws이겠죠?) colcon build 이를 통해 첫 work space를 만들었습니다! 터미널창에 ls을 쳐보면 다음과 같이 폴더들이 생성된걸 확인할 수 있을겁니다. 그런데 아직입니다! build된 패키지를 사용하려면, source 라는걸 해주어야 합니다. 자세히 설명하면 길지만, 간단히 말해 방금 내가 build 한게 여기있어! 라는걸 컴퓨터에 알려준다고 생각하면 됩니다.

ROS2 기초 - 나만의 ROS2 패키지 만들기 [내부링크]

이번 글과 다음 글에서 해볼 것은 다음과 같습니다. 1. 나만의 ROS2 패키지 생성, 빌드 2. Publisher을 지닌 노드 만들어보기 3. Subscriber을 지닌 노드를 만들어 앞서 만든 Publisher로부터 정보를 받아오기 이 3개만 하면 이미 ROS2를 활용하여 정말 많은 것들을 할 수 있습니다. 내가 사용할 센서를 위한 코드를 작성하여 Topic을 Publish하고(1번, 2번) 해당 토픽을 Subscribe하여(1번, 3번) 모터 제어를 할 수 있으니 말이에요! 그럼 차례차례 해보도록 하겠습니다~! 1. 나만의 ROS2 패키지 생성, 빌드 우선 터미널을 열고 ROS2 패키지를 다음과 같은 명령어로 생성을 해 줍니다. cd ros2_ws/src ros2 pkg create --build-type ament_python my_camera build type은 python으로, 뒤에 오는 my_camera 는 설정하고 싶은 패키지 이름을 넣어주었습니다. 원하는 이름이 있

ROS2 기초 - 나만의 ROS2 노드 만들기(Publisher) [내부링크]

이전 글에 이어서 diy_camera.py 를 작성해보도록 하겠습니다. 이번 글에서는 Publisher을 담는 파이썬 Node를 작성해보겠습니다! 우선 이에 앞서 가장 기본적인 파이썬 코드를 써보았습니다. import time import random messages = ["No obstacles.", "Car ahead!", "Dog ahead!"] while True: print(random.choice(messages)) time.sleep(3) 아주 기본적인 파이썬 프로그램을 입니다! 3초마다 No obstacles./Car ahead!/Dog ahead! 셋 중 하나를 랜덤으로 출력하는 파이썬 프로그램입니다. 이 프로그램을 ROS2 노드로 만들어보도록 하죠! #!/usr/bin/env python3 import rclpy from rclpy.node import class MyCustomNode(Node): # MODIFY NAME def __init__(self): sup

ROS2 기초 - 나만의 ROS2 노드 만들기(Subscriber) [내부링크]

그럼 이번에는 지난 글에서 발행한 Topic을 subscribe하는 노드를 만들어보도록 하겠습니다! ros2_ws/src 디렉토리의 상태에서, ros2 pkg create --build-type ament_python my_subscriber 를 통해 새로운 패키지를 생성해주고, 디렉토리를 ros2_ws 로 옮겨준 후에 colcon build 를 통해 패키지를 빌드해줍니다! 이를 통해 생성된 ros2_ws/src/my_subscriber/my_subscriber 디렉토리에 import rclpy from rclpy.node import Node from std_msgs.msg import String class SubscriberNode(Node): def __init__(self): super().__init__('subscriber_node') self.subscription = self.create_subscription( String, 'topic', self.listener

URDF란 무엇일까? [내부링크]

안녕하세요, 이번 글에서는 URDF에 대한 소개를 해드리도록 하겠습니다~ URDF는 Unified Robot Description Format 의 약자입니다. 사람마다 표현하는 방식이 다를 로봇의 구조와 형태 정보를 최대한 간결하게 정형화하여 담아낸 양식이라고 생각하시면 될 것 같습니다. 왼쪽이 URDF, 오른쪽은 URDF의 내용을 그림으로 표현한 것 URDF는 XML 형식의 파일로, 흔히 보셨을 HTML 파일과 비슷한 형태를 가지고 있습니다. HTML이 익숙하신 분은 금방 친숙해지실 겁니다! URDF는 크게는 link와 joint로 구성이 되어 있습니다. link는 로봇의 각 구성 부품을, joint는 이 구성 부품들이 어떻게 연결이 되는지를 의미합니다! ROS2의 Rviz로 직접 열어본 URDF 예를 들어 제 미니자동차 로봇에는 wheel_link, camera_link, base_link 등이 존재합니다. 이때 base_link는 로봇의 가장 핵심인 부품을 의미하는데, 모든 로

URDF 만들기 - urdf exporter [내부링크]

이번에는 직접 내 로봇의 urdf를 만들어 보도록 하겠습니다~~ Fusion360 vs SOLIDWORKS 우선 로봇 3d 모델링은 Solidworks나 Fusion360를 사용하는 것을 추천드립니다. 이 둘이 urdf exporter가 잘 되어있는 것 같더라고요. 실제로 로봇을 전문적으로 제작하는 랩실들은 Solidworks를 많이 사용을 하던데, 저희 랩실은 로봇이 아닌 인공지능이 주 연구분야인 랩실이라 Solidworks 라이선스가 없었습니다ㅠㅠ 내사랑 inventor 그래서 저는 학교에서 많이 사용했던 Inventor 프로그램을 통해 모델링을 했고, 추후 이를 Fusion360으로 옮겨와 변환을 해주었습니다. (Inventor과 Fusion360 모두 Autodesk 사의 제품이라 연동이 편리합니다) 그럼 제가 활용한 Fusion360 exporter로 한번 URDF를 만들어보도록 하겠습니다! 설치법은 다음과 같습니다! 어렵지 않아요~ https://github.com/dhe