2015 06 21
오늘 부터 자료 조사 시작
어느날 유투브에 올라온 코그모 로봇 영상을 보며
와.... 정말 만들고 싶다는 생각을 많이 했습니다
그래서 기회가 된김에
인텔 경진대회 신청 하였습니다
기간안에 만들수 있을지는 모르겠지만;
2015 06 22
물품들을 고르고 있는데
뭐가 필요한지 모르겠네요
일단 1차로 스텝모터, 인텔 에디슨, 포맥스를 주문하고
몸이 뱀처럼 유선형으로 움직여야하는데
어떻게 연결하지;
최대한 분해 연결이 간단하게… 내푸프레임이 없도록 만들어야 겠습니다
보행 로봇 원리
2015 07 04
장바구니에 담을때가 제일 신나는거 같네요
포맥스는 지마켓으로 구매
드릴날은 포맥스 자르기 위해서 구매하였고
에디슨 패키지는 단품이 없어서 패키지를 사고 확장쉴드를 구매하였습니다.
2015 / 7 / 15 수요일
처음에 크기를 가늠하고자 박스로 만들었으나 박수의 강도가 높지않아 포맥스로 바로 제작을 하였
습니다
사진에 나오는 부분은 종아리와 발 부분인데 연결하는 부분은 추후에 보강을 해야겠습니다.
2015 / 7 / 16 목요일
미니드릴의 회전 토크가 제 힘보다 강해서… 자꾸 직선으로 자르다가 튑니다
그래서 위험하기도 하고 정확한 결과물을 얻기 힘들어 선반을 제작하였습니다
선반치고는..... 많이 허졉하죠 수평이 맞는지도 모르겠네요
드릴 날의 크기가 작아 기울여서 본체랑 부딪히지 않게 하였는데
기울어진만큼 단면을 직각및 대각선으로 제작하기가 어려워 졌습니다
이전보다는 깔끔한 결과물과 안정성을 얻었지만
추후에 날을 다시 구매해야겠습니다
2015 / 7 / 20 월요일
오른 다리 완성하였습니다
허벅지 제외하고...
서보모터를 각도 0도로 셋팅하고
기어부분 각도를 일정하게 맞춰 주었습니다
2015 / 7 / 21 화요일
왼다리까지 완성
분해 가능하게 만들려고 했는데
나사부분이 안빠지네요.... 드릴로 좀더 크게 뚫어야겠습니다
설계할줄 모르다 보니 안맞는곳이 너무 많네요
3D로 설계 할줄알면 참 좋을텐데.... 시간이 없으므로 일단 진행합니다
서보모터를 제어하기 위한 아두이노 나노입니다
다리에 3개씩 총 6개가 들어가고
아두이노에서 쓸수있는 pwm단자가 6개이므로 딱맞습니다
4개이상 꽂으면 나노가 다운되므로 서보모터는 외부전원으로 동작을 시키고
서보모터 외부전원 -극을 나노에 GND에도 물려줘야 서보모터가 정상적으로 동작하게 됩니다
다리에 사용될 서보모터입니다
생각보다 힘도 좋고 스피드도 좋은데.... 크기가 좀 크네요
이건 선물받은 외장배터리입니다
저는 삼성 휴대폰을 쓰는지라 써본적이 없네요 (노트라서 배터리도 크고.... 여분 배터리도 있고...)
이거는 아두이노의 전원으로 쓰일겁니다
단점은 자꾸 절전모드로 들어가네요.... 아두이노가 전원을 많이 안쓰는건가....
LED하나 붙여줘서 해결했습니다
5V에 물리니 LED가 타버려서... 3.3V단자에 물려줬습니다
주요 보드가 될 인텔 에디슨입니다
다른 소형 보드들과는 달리 mcu와 확장쉴드가 분리된다는 사실
지원되는것도 이것저것 많은데 가격이 비싼게 함정
이 보드는 pwm단자가 모자라서 나노로 서보모터 제어를 할겁니다
신호를 받아서 나노를 제어하는 방식으로...
아두이노 스케쳐랑 호환됩니다
코드도 똑같이 짜면 되고요
대신에 라이브러리 설치하는게 좀 복잡했습니다
그냥 이것저것 다 깔다보니 인식 됬더라구요...;;; 어떻게 했는지는 아직도 모릅니다
아두이노 우노입니다
쓸일은 없을거 같네요.. 그냥 가지고만 있습니다
테스트를 위해 연결을 해보았습니다
서보모터를 동시에, 각각 다른 각도로 제어하려고 하니 코드짜기가 어렵네요
총 6개를 개별적으로 제어를 해야하는데 가능할려나 모르겠습니다...
검은색 네모난것은 서보모터를 위한 외부 전원이고 aa건전지 4개가 직렬로 들어가고
1.5*4=5.5v를 직렬로 공급해줍니다
서보모터 동작 v범위 내이므로 문제없이 동작합니다
/* Sweep
by BARRAGAN <http://barraganstudio.com>
This example code is in the public domain.
modified 8 Nov 2013
by Scott Fitzgerald
http://www.arduino.cc/en/Tutorial/Sweep
*/
#include <Servo.h>
Servo myservo1;
Servo myservo2;
Servo myservo3;// create servo object to control a servo
Servo myservo4;
Servo myservo5;
Servo myservo6;// twelve servo objects can be created on most boards
void setup()
{
myservo1.attach(3);
myservo2.attach(5);
myservo3.attach(6);
myservo4.attach(9);
myservo5.attach(10);
myservo6.attach(11);
}
int pos = 130;
int pos1 = 130;
int i=0;
void loop()
{
for ( i = 0; i <= 181; i++)
{
if (i<=90){
pos += 1;
pos1 += 1;
myservo1.write(pos);
myservo2.write(pos1);
delay(5);
}
else if (90 < i < 180){
pos -= 1;
pos1 -= 1;
myservo1.write(pos);
myservo2.write(pos1);
delay(5);
}
else {
i=0;
pos=130;
pos1=130;
}
}
}
loop문이 반복문이라고 생각하고 for문을 없애서 간단하게 하려고 했는데
동작은 하는데 연속적으로 동작하지를 않습니다.....
왜그런지 이유를 모르겠네요
코드가 여러개에 길어지다보니 모터 속도가 느려지네요
딜레이값을 좀 줄여야겠습니다