본문 바로가기

Quadruped Robot/Quadruped Robot Hardware

Quadruped 만들고 싶다. #2 BLDC-Motor (회의 내용 ②)

728x90

#INTRO

BLDC-Motor를 사용하는데, 지하에 남아있는 모터를 사용하게 됐다. 

사용하는 모터와 esc의 데이터 시트는 아래와 같다.

http://dl.djicdn.com/downloads/e305/en/E305_User_Manual_v1.00_en.pdf

그림 1. 사용된 장비들

제어 방식에 대한 설명하기 앞서, 꼭 프로펠러를 제거하고 테스트하길 바란다.

아무것도 모르고 조립된 상태로 테스트하면 손가락 잘린다.

이런 고출력 모터를 처음 사용해봐서 잘 몰랐는데, 카카오톡방의 조언을 받아 다치지 않고 안전하게 실험이 가능했다.

 

1. Arduino로 제어하기

배선은 pdf를 참조하였다.

여기에는 9V의 건전지를 사용해서 테스트를 했고, Arduino는 Mega를 사용했다. (Uno도 관계없음)

 

막연하게 파워주고 pwm신호를 흘리면 되겠지 했는데, 드론용 bldc모터에는 esc라는 장비가 추가적으로 필요했다.

그래서 처음에는 막연하게 2312E Motor를 검색해서 열심히 찾아봤으나, 이에 도움 될만한 자료는 몇 개 없었고, 결국 실패했다.

그림 2. 배선

 

그림 3. 실물

모터에 앱솔루트 엔코더도 달린 모습이지만,

이 부분은 나중에 설명하도록 하고

중점적으로 볼 부분은 1,2,3번의 라인이다. 순서대로 설명을 하면,

 

1. esc 420 Lite에서 나온 GND선(검은색)과 PWM신호(노란색)를 받는 부분이다. 

 

2. 위쪽을 보면 편하게 9V를 주기 위해서, 일반적으로 Arudino용으로 사용하는 Battery의 선을 벗겨서

esc의 +,-부분에 납땜을 한 모습이다.

 

3. 이부분이 추후에 해결해야 하는 또 다른 문제인데, 바로 역방향이 안된다는 것이다. 이것도 다른 DC처럼 선만 바꾸면 반대로 돌지 않을까 했는데, 역시나 센터를 제외한 Side의 양쪽선의 위치를 바꾸면 역방향 회전을 하게 된다.

하나의 모터로 양방향 제어를 해야 하는데, 이 부분을 어떻게 해결해야 할지 고민이다.


1.1 Arduino - Calibration

서칭을 하면서 알아낸 점은,
처음에 튜닝이 필요하다는 것. 이에 대한 명칭은 motor calibration이나 tuned라고 부르는 듯하다. 

하지만 지식이 전혀 없는 것과 더불어, 대부분의 영상에서 이 튜닝을 컨트롤러로 직접 한다는 것이다. 

나는 컨트롤러가 없기 때문에... 영상을 곧이곧대로 따라 하니 당연히 될 리가 없었다. 

 

그래서 Arduino로 직접 튜닝 코드를 짜야했는데, esc 420 lite arduino로 검색하니 내가 원하는 정보가 나와

참조하여 테스트가 가능했다.

https://www.youtube.com/watch?v=cUdDNul4ybQ&t=180s 

동영상 1. Control BLDC by Arduino

위 영상에서는 처음 tune 세팅 방법을 알려주고, 자세한 테스트 내용은 직접 코드를 짜서 해결하였다.

esc_pwm.zip
0.00MB

 

그림 4. Arduino Code

간단하게 설명하면 처음 Setup에서 Calibration을 한다. (주석 자막은 관계없는 내용이다. )

특이한 점은 Servo Library를 사용하고, attach의 min=1000, max=2000으로 설정하는 것인데,

이 부분은 각 모터마다 다르게 적용되는 것 같다. 

 

개인적으로 자세히 알아보기 위해 Serial Port 9600에서 1,2,3,4를 넣어  간이적인 테스트를 진행해 보았다.

(단순한 테스트만 해보려고 코드 중간중간에 의미 없는 변수 설정들이 좀 있는데, 모터를 회전시키는 데는 문제가 없다.)

 

140 이상 부근에서 Motor가 이상하게 진동하는 모습을 보였고, -값은 움직이지도 않았다.

이 부분에서 따로 튜닝이 필요한 것 같고 Serial에 1을 넣으면 10 단위로 쪼개서 모터의 속도를 확인할 수 있었다.

그리고 0을 입력해서 멈춘다.

동영상 2. 테스트

오늘은 여기까지 하고 집으로 돌아가려 하는데, 내일은 역방향에 대한 아이디어를 테스트해보고

엔코더 테스트를 위해 추가적인 부품 발주를 할 예정이다. (커넥터가 없네요)

많은 아이디어와 다양한 피드백을 제시해준 아래 로봇공학 톡방 사람들에게 감사하다는 말을 적는다. 

이런 작업물에 관심이 많다면 아래 톡방에서 모르는 부분을 자세하게 질문해 보는 걸 추천한다.

https://open.kakao.com/o/g6aBZeH

 

Robotics (로봇 공학)

#참여코드 (robotics) #humanoid #robotics #로봇 #robot #fira #robocup #ros #로스 #로보틱스

open.kakao.com