webots 자습 노트 (6) 실 용 컨트롤 러 함수 보충
Webots 소프트웨어 로 로봇 시 뮬 레이 션 을 할 때 자신의 컨트롤 러 를 편집 할 수 있 고 유연성 이 있 으 며 현실 에서 싱글 칩 마이크로컴퓨터 를 태 우 는 과정 과 더욱 가 깝 습 니 다. 이번 에는 비교적 자주 사용 하 는 함 수 를 소개 합 니 다.
1. 로봇 을 할 때 손잡이 나 다른 장치 로 로봇 을 제어 하여 서로 다른 명령 을 완성 하도록 한다. webots 시 뮬 레이 션 에서 키보드 입력 으로 로봇 을 제어 할 수 있다.(이 코드 의 예 는 GhostDog 입 니 다) 다음 과 같 습 니 다.
// , “ ,_ clliu” http://www.cnblogs.com/clliu/,
//
new_key = wb_robot_keyboard_get_key();
//
if (new_key != prev_key) {
switch (new_key) {
case WB_ROBOT_KEYBOARD_UP:
printf("UP pressed
");
//
break;
case WB_ROBOT_KEYBOARD_DOWN:
printf("DOWN pressed
");
//
break;
case WB_ROBOT_KEYBOARD_LEFT:
printf("LEFT pressed
");
//
break;
case WB_ROBOT_KEYBOARD_RIGHT:
printf("RIGHT pressed
");
//
break;
case 'A':
printf("A pressed
");
//
break;
default: break;
}
prev_key = new_key;
2. 지연 (대기) 함수
한 가지 일 을 끝 내 려 면 몇 밀리초 가 걸 릴 때 가 있 습 니 다. 어떤 싱글 칩 마이크로컴퓨터 에 서 는 Delay () 로 표시 되 고, 어떤 부분 은 Thread. sleep () 로 표시 되 며, 어떤 함수 든 webots 에 서 는 어떤 것 을 사용 합 니까?
wb_robot_step();
webots 에서 이 함 수 를 사용 하면 컨트롤 러 가 지연 되 고 모 의 세계 가 계속 실행 되 는 상황 을 모 의 할 수 있 습 니 다.싱글 칩 마이크로컴퓨터 와 시간 차 가 많 지 않다 는 뜻.
이 함수 로 주의해 야 할 것 은 webots 의 컨트롤 러 는 가장 빠 른 속도 로 코드 를 계속 순환 하 는 것 이 아니 라 basic TimeStep (World Info 의 속성) 시간 간격 으로 한 번 실행 하 는 것 입 니 다. 단 위 는 ms 입 니 다.가정 하 다 basic TimeStep = 32, 우 리 는 매번 순환 지연 100 ms, 순환 에 wb 를 써 야 합 니 다.robot_step(68);지 정 된 효과 에 도달 할 수 있다.만약 당신 의 지연 시간 이 비교적 짧다 면, basic TimeStep 를 줄 여 라.
다음으로 전송:https://www.cnblogs.com/clliu/p/6645746.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.