2010년 6월 25일 금요일

작업 1

while(1)
while(1)
// 센서값읽고 해상 사항이 맞음 면 break;
end

while(1)
// 로봇 이동하고 break;
end
end

Degree 계산1


Deg_d = 45;
Deg_d += Deg_s;
Deg_s1 = Deg_s;
while(1)
Deg_s = source.object();
if( Deg_d > 360 )
if( Deg_s+1/Deg_s1 == 0 )
if( Deg_s > Deg_d-360)
break; // 45deg complete!!
else
if( Deg_s >= Deg_d )
break; // 45deg complete!!

Deg_d = -45
Deg_d += Deg_s;
Deg_s1 = Deg_s;
if( Deg_s1 == 0 ) Deg_s1++;
while(1)
Deg_s = source.object();
if( Deg_d <= 0 )
if( Deg_s/Deg_s1 > 1)
if( Deg_s <>
break; // -45deg complete!!
else
if( Deg_s <= Deg_d)
break; // -45deg complete!!


2010년 6월 24일 목요일

ubuntu에서 ACE사용

ubuntu에서 sudo apt-get install libACE*로 설치해서 사용하면 라이브러리 dump에러가 발생한다.
꼭 다운로드 후 build/.../configuration 로 설치 하자.


인텔 컴파일러 사용

intel compiler를 구매 했다. 백만원
boost도 이 컴파일러로 해야 navigation를 오프로스 컴포넌트로 사용 할 수 있다.

gazebo 설치하기

navigation 시뮬레이션으로 gazebo를 설치 하려 했지만 3d engine쪽에 문제가 있어
ROS용 gazebo ubuntu 바이너리를 가지고 설치 했다.
하지만 윈도우에서 손쉽게 통신 하기에는 무리가 있어 gazebo도 후보에서 단락됐다.


2010년 5월 26일 수요일

2010 5월 포항 출장

player/stage로 네비게이션을 테스트하려고 했는데 stage사양이 딸린 관계로
새로운 노트북에 다시 설치 해서 테스트 하려고 한다.

ubuntu 10.x는 package의존도가 안맞아 9.04로 다시 설치 한다.

문제는 다시 stage를 설치하고 테스트해본 결과 저사양때와 같이 200~500msec정도 나온다면 다시 원점으로 되돌아 간다.
어느정도 시간이 맞아야 한다. 즉 네비게이션에서 오도메트리 샘플타임인 50msec와 비슷한 시간을 제공해야 한다. 테트라에서는 100msec를 보증 한다.

즉 오도메트리 50msec, sonar 샘플 타임인 1000/4msec가 어느정도 보장 해야 된다.

2010년 5월 19일 수요일

PlayerStage example code = Epuck

http://www-users.cs.york.ac.uk/~jowen/player/playerstage-manual.html

소스를 보면 유용한 정보가 하나 들어 있다.
setDifferentialMotors to SeSpeed 이다.

즉 모터값을( 윈쪽, 오른족 ) 선속도, 가속도 값으로 변환 한다.

http://www.physicsforums.com/showthread.php?t=263149
위의 사이트에서 참고 했다는데
이런사이트도 있구나싶다. !
Some More Example Code에서 cfg, world, inc파일을 참고해서 다른 시뮬에 적용해 보자