본문 바로가기

인턴, 협업/WIM

2023-2 델타 로봇(Delta robot) - #6 (실물 로봇 제작)

반응형

원래는 Gazebo 시뮬레이션을 하는 동시에 실물 제작을 같이 시작해서 시뮬레이션 모델링, 시뮬레이션 결과, 실물이 서로 유기적으로 영향을 주는 방식으로 진행됐었다. 이를 글에 전부 담으려고 하니 시간이 부족하고 크게 중요하지 않은 내용도 많이 들어갈 것 같았다.

 

 

이 글은 최종 확정된 설계를 기준으로 작성되었기에 이전에 올린 최초 설계, Gazebo에 올린 URDF 모델과 일부 다른 부분이 있다. 물론 기구학적, 동역학적 특성이 완전히 바뀔 정도의 설계 변경은 없었다.

 

 

기본적인 부품 제작 및 조립 방법은 이전에 작성한 #3 (설계와 모델링)을 따르고 있지만 이 글에서 다시 한번 각 부품별로 자세하게 관련 내용을 기록하였다.

 

 

#3에서 적용한 3원칙은 아래의 ⓐ~ⓒ와 같았는데 실제 제작 과정에서 아래의 ⓓ원칙을 추가했다.

 

ⓐ재료의 가공 과정이 최대한 적게 되도록 설계 

 

ⓑ가능한 3d프린팅으로 출력이 가능한 부품이 많도록 설계

 

ⓒ3d프린팅으로 불가능한 부품은 가능한 기성품을 사용하도록 설계(CNC이용 최소화) 

 

ⓓ장기간의 사용*으로 인한 파손이 높은 확률로 우려되는 부분은 강도에 특히 신경을 써서 설계

*실전에서의 장기간 사용이 아닌 제작, 테스트 기간 내의 파손 우려

 

 

 

 

 

Base :

●5T의 강철 소재를 사용했으며 외부 업체에 레이저 커팅으로 의뢰하여 제작하였다. 다행히 정지 상태에서는 걱정했던 모터 무게에 의한 displacement가 크지 않았다.

 

 

①추후 platform에 장착될 공압 그리퍼(end effector)의 호스가 지나갈 구멍이다. 사용할 호스의 직경을 몰라서 임의의 크기로 설계했다.

 

 

②로봇 자체만으로는 ①의 구멍이 로봇의 center이지만 사각형 frame에 장착할 때는 center가 아니다. 사각형에 삼각형을 넣을 때 생기는 비대칭성을 생각하면 된다. 이 구멍은 frame에 장착할 때의 center로 frame을 포함한 로봇의 중심이 된다. 물론 작업 환경에서의 center는 ①로 잡아햐 한다.(로봇의 작동이 ①을 기준으로 하므로...)

 

 

③motor_supporter 체결부를 너트를 조이는 것을 까먹고 고려하지 않았다. 다행히 motor_supporter의 구멍을 좁게 만들어 자체적으로 너트 역할을 할 수 있게 했지만 추후에는 motor_supporter를 넓히고 동시에 이 부분도 좌우로 넓혀 모터 바로 밑이 아닌 옆에서 체결이 가능하도록 하는 것이 바람직해 보인다.

 

 

 

 

 

 

Motor_holder :

●3d프린팅으로 제작했으며 너트 체결을 편하게 하기 위한 구멍 이외에는 최초 설계와 변경점이 없다.

 

 

①볼트-너트 체결을 위해 반드시 필요한 구멍이었다. 강도가 매우 중요한 부분이라서 구멍을 최소한의 크기로 설계했다. 다행히 이 구멍에 의한 문제는 발생하지 않았다.

 

 

②3d프린팅으로 제작한 부품의 한계가 드러나는 부분이었다. 꽉 조이면 표면이 버티지 못하고 같이 무너지고, 약간 느슨하게 조이면 로봇 동작시 진동이 발생했다. 물론 사진에는 와셔가 끼워져있지 않지만 와셔를 껴서 했을 때도 유의미한 차이를 보이지는 않았다.

 

 

③감속기와 체결되는 부분으로 이 부분 또한 ②의 문제가 발생했었다. 시간 관계상 이 부분의 와셔 장착 테스트는 하지 못했다. ②,③을 고려했을 때 두께를 키우고, 와셔를 장착하고, infill을 80% 이상으로 주는 것을 테스트해보는 것이 바람직해 보인다. 추후 언급할 supporter의 설계 변경도 적용한 후에도 진동이 잡히지 않는다면 Motor_holder도 철 재질로 바꾸는 것이 좋아 보인다.

 

 

 

 

 

 

Motor_supporter :

●3d프린팅으로 제작했으며 최초 설계 당시에는 없던 부품이다. 감속기의 사용으로 추가된 부품이며 감속기와 모터의 단차를 해결하기 위한 부품이다.

 

 

①base의 ③의 문제가 이 부분을 말하는 것이다. 모터 바로 밑에 구멍이 있어 너트가 들어갈 공간이 없다. 부품에 너트를 파묻는 방법도 고려했는데 너무 얇아져서 포기했었다. 다행히 supporter 역할은 충실히 했다.

 

 

②Base에 붙지 않고 떠있어 상하(z축)으로 진동하는 것은 잘 막아주었지만 좌우로 진동하는 것은 전혀 막지 못했다. 따라서 ㅁ형태로 설계해 모터를 끼워서 진동을 잡는 것도 추후 시도해봄직 하다. 물론 더 길이가 짧은 하모닉 드라이브 감속기를 사용하거나 Motor_holder를 완벽하게 잘 고정하면 이 수정은 필요 없을 가능성이 높다.

 

 

 

 

 

 

Bicep (Bicep_connector + Bicep_tube + Forearm_connector) :

●Bicep_connector와 Forarm_connector는 3d프린팅으로 제작했으며, tube의 경우 적절한 외경과 두께를 선택해서 구매했다. 

 

 

●아래쪽의 사진이 사용한 퀵서트와 볼 스터드다.

 

 

①샤프트와 연결하는 이 부품이 생각보다 많이 무거워서 30:1 감속기를 쓴 토크도 부족할까봐 걱정했지만 일단 테스트 단계 가동에서는 큰 문제가 없었다. 

 

 

②Motor_holder ②와 같은 문제가 발생했었다. 다만 shaft_holder와 결합할 때 볼트-너트 체결 외에도 억지 끼워 맞춤을 적용했기에 흔들림이 있지는 않았다. 그래도 추후에는 더 확실한 방법으로 체결하는 것을 추천한다.

 

 

③최초 설계대로 퀵서트를 사용해서 tube와 부품들을 결합했다. 다만 ball joint 때문에 구입했던 퀵서트를 사용해서 볼트 규격을 통일하지 못했다. 추후에 M4 볼트 퀵서트로 변경해도 전혀 문제가 없을 것이다.

 

 

④Bicep_connector와 Forearm_connector의 축 정렬은 중요한 문제이다. 로봇 완성까지는 이를 Bicep에 구멍을 뚫을 때만 맞추는 것으로 설계했었는데 2차적으로도 정렬을 확인할 필요가 있었다. 그래서 이후 설계에서 각 부품에 M3용 볼트 구멍을 얕게 뚫어뒀다. 추후 구멍에 볼트를 끼우고 실을 연결해 tube와 2개의 connector 사이에 연결된 실의 평행을 확인하는 것으로 정렬을 추가 확인할 수 있을 것이다.

 

 

⑤Ball joint의 간격은 의도한 치수가 있지만 달라진다고 기구학적 계산이 바뀌지는 않는다. 하지만 적어도 팔 3개의 간격은 전부 같아야 한다. 이를 염두에 두고 조립해야 한다. 

+)이 의견은 수학적으로 확인한 부분은 아니다. 그냥 감이다. 물론 살짝 다르다고 큰 문제가 있지는 않을 것이다.

 

 

 

 

 

 

Forearm (Forearm_holder * 2 + Forearm_tube) :

●가장 많은 고민과 시도를 했던 부품이었다. 일단 시제품은 3d프린팅으로 제작했다. 이 부품의 경우 다른 것에 부피 대비받는 힘이 크므로 가장 파손 측면에서 고민을 많이 했다. 그중 하나는 반드시 출력할 때 움푹 파인 부분이 위쪽(z축)을 보게 해야 한다는 것이다.

 

 

①스프링이 이 부품을 어렵게 한 주원인이었다. 최초 설계도 작동 자체에는 문제가 없었지만 forearm이 단단하게 고정되지 않는 문제와, 잦은 탈구 문제 때문에 더 강성이 높은 스프링을 사용하고 싶었다. 하지만 강한 스프링을 사용하면 이 부품이 눈에 띄게 휘어지는 문제가 발생했었다.

 

 

② ①의 문제를 해결하기 위해 여러 시도를 했지만 3d프린팅 부품으로는 현재의 설계가 나오게 되었다. 가장 큰 특징이 바깥쪽에서 잡아주는 부분의 추가, 심(core) 추가였다. 두께도 많이 보강해 줬다. 결과적으로는 만족할 만큼 휘어짐이 개선되었고 강한 스프링을 사용할 수 있었다.

 

+)이 부품의 경우 가장 최선은 철 재질을 가공해서 만드는 것이라고 생각했다. 이와 관련해 업체에 가서 견적을 내봤지만 소량에 여러 공정을 거쳐야 하는 부품이라(+가공이 수월하도록 수정한 도면으로 의뢰를 했었다.) 단가가 높았다. 따라서 이번 로봇은 3d프린팅으로 최대한 시도해 보는 방향으로 진행했었다. 추후 연구용 시제품이 아닌 양산용 시제품을 제작할 때는 가공을 통해 제작하는 것을 고려하는 것이 바람직해 보인다.

 

 

③ ①의 문제를 해결을 위해 또 한 것이 케이블 타이로 묶어주는 것이었다. 이 또한 확실하게 영향이 있었다. 케이블 타이가 밑으로 밀리지 않도록 살짝 파인 부분을 추가했다.

 

 

④ ②에서 추가한 심(core)의 경우 이미 갖고 있던 긴 볼트를 사용했는데 추후 빠지지 않도록 너트 체결을 하려고 했었다. 이 구멍은 너트를 넣는 구멍이었는데 설계 실수로 너무 작았다. 다행히 볼트 구멍을 억지 끼워 맞춤으로 했기에 심이 빠지지는 않았지만 나중에라도 너트를 끼울 수 있도록 변경하는 것이 바람직해 보인다.

 

 

⑤ 스프링 부분은 지속적인 진동과 회전이 있으므로 일반 너트를 사용하면 100% 풀릴 위험이 있었다. 하지만 연구용임을 감안해서 영구적인 방법을 사용할 수는 없었다. 이에 나일론 너트를 적용했다.(사진에는 보이지 않는다.)

 

 

 

 

 

 

Platform : 

●3d프린팅으로 제작했으며 최초 설계에서 크게 바뀐 부분은 없다.

 

 

①Inventor, Gazebo 시뮬레이션에서는 문제가 없었지만 실제 제작 후 조립을 하니 스프링과의 간섭이 발생해서 중앙 부분을 밑으로 살짝 내렸다.

 

+)Inventor, Gazebo에서 스프링을 구현하는 것은 어렵거나 불가능하므로 제외했었다. 

 

 

②추후 end effector를 장착하기 쉽도록 M3 볼트 구멍을 50, 60, 70mm 원 위에 추가했다.

 

 

 

 

 

 

 

 

 

 

 

 

W_delta_prototype

 

 

①임시로 전장반 구성 없이 드라이버와 다른 전자부품을 로봇 위쪽에 간단하게 장착했다. 이는 안전과 안정성을 위해 추후에는 전장반을 만들어 주는 것이 좋아 보인다.

 

 

②Base ②에서도 언급했지만 Frame의 중심과 로봇의 작동 중심은 다르다.

 

 

③기구학상 z축 위치(높이)는 'Base 바닥면에서 Platform 위쪽면까지'가 아닌 'Bicep_connector 3개의 중심축이 포함된 면에서 Platform 중심(z축)면까지'이다.

 

 

 

 

 

이렇게 실물 제작까지 완료했다. 중간중간 개선할 부분이 몇 가지 보였지만 시간 관계상 큰 문제가 아니면 그대로 진행했다. 물론 관련 내용은 전부 기록해 두었다.

 

 

내가 생각했던 것 이상으로 로봇이 잘 나왔다. 이제 간단한 제어를 하는 것만 남았다.

 

 

 

 

 

 

 

 

========================================================================
정확한 정보 전달보단 공부 겸 기록에 초점을 둔 글입니다.
틀린 내용이 있을 수 있습니다.
틀린 내용이나 다른 문제가 있으면 댓글에 남겨주시면 감사하겠습니다.   : )
========================================================================

반응형