로봇 팔 프로그래밍 - C++
교사 도구 상자
개요
-
이 탐구를 통해 학생들은 V5 클로봇의 팔 모터에 대한 기본 프로그래밍을 배우게 됩니다.
-
팔 모터를 프로그래밍하는 법을 배우면 학생들은 V5 클로봇의 팔 움직임을 올바르게 제어할 수 있습니다. 텍스트 프로그램에서 사용되는 지침에 대한 자세한 내용은도움말 정보를 참조하세요.
V5 클로봇이 도착할 준비가 되었습니다!
이 탐색을 통해 V5 클로봇의 팔을 사용하여 멋진 프로젝트를 만드는 데 필요한 도구를 얻을 수 있습니다.
- 이 탐색에 사용될 VEXcode V5 명령어:
- ArmMotor.spinFor(앞으로, 90도);
- ArmMotor.setPosition(0,도);
- 대기(2, 초);
-
해당 지침에 대한 자세한 정보를 알아보려면 도움말 선택한 다음 명령 옆에 있는 물음표 아이콘을 선택하여 자세한 정보를 확인하세요.

- 필요한 하드웨어, 엔지니어링 노트북, VEXcode V5를 다운로드하여 준비하세요.
| 수량 | 필요한 재료 |
|---|---|
| 1 |
VEX V5 교실 스타터 키트(최신 펌웨어 포함) |
| 1 |
VEX코드 V5 |
| 1 |
엔지니어링 노트북 |
| 1 |
Clawbot 및 Advanced TrainingBot(드라이브트레인 2모터, 자이로 없음) 예제 프로젝트 |
1단계: 탐색 준비
활동을 시작하기 전에 다음 항목을 모두 준비하셨나요? 다음 각 항목을 확인하세요.
-
모터가 올바른 포트에 연결되어 있습니까?
-
스마트 케이블모든 모터에 완전히되어 있습니까?
-
배터리충전되어 있나요?
교사 팁
학생들에게 각 문제 해결 단계를 모델로 보여줍니다.
2단계: 새 프로젝트 시작
프로젝트를 시작하기 전에 올바른 템플릿 프로젝트를 선택하세요. Clawbot과 Advanced TrainingBot(Drivetrain 2-motor, No Gyro) 예제 프로젝트에는 Clawbot의 모터 구성이 포함되어 있습니다. 템플릿을 사용하지 않으면 로봇이 프로젝트를 올바르게 실행하지 않습니다.
다음 단계를 완료하세요.
- 파일 메뉴를 엽니다.
- 선택열기예.
- Clawbot과 Advanced TrainingBot(Drivetrain 2-motor, No Gyro) 예제 프로젝트를 선택하여 엽니다.
- 팔을 제어하기 위한 프로그래밍을 하게 되므로 프로젝트 이름을ArmControl바꾸세요.
- 프로젝트를저장하세요.
- 프로젝트 이름 ArmControl이 이제 도구 모음 중앙 창에 있는지 확인하세요.

교사 팁
-
이것은 프로그래밍의 시작 활동이므로 교사는 단계를 모델로 보여준 다음 학생들에게 동일한 동작을 완료하도록 요청해야 합니다. 그런 다음 교사는 학생들이 단계를 올바르게 따르고 있는지 모니터링해야 합니다.
-
학생들이 파일 메뉴에서 예제 열기를 선택했는지 확인하세요.
-
학생들이 Clawbot 템플릿(구동계 2모터, 자이로 없음) 예제 프로젝트를 선택했는지 확인하세요.
학생들에게예제페이지에서 선택할 수 있는 항목이 여러 개 있다는 점을 알려줄 수 있습니다. 학생들이 다른 로봇을 만들고 사용하면서 다양한 템플릿을 사용할 기회를 얻게 됩니다.
-
학생들에게 프로젝트 이름에 자신의 이니셜이나 그룹 이름을 추가하도록 요청할 수 있습니다. 학생들에게 프로젝트를 제출하도록 요청할 경우, 프로젝트를 구분하는 데 도움이 됩니다.
교사 도구 상자
-
프로젝트 저장
-
VEXcode V5를 처음 열었을 때 창에 MyProject1이라는 라벨이 붙어 있었다는 점을 지적하세요. VEXcode V5를 처음 열면 MyProject1이 기본 프로젝트 이름이 됩니다. 프로젝트 이름을 Drive로 변경하고 저장한 후 디스플레이가 업데이트되어 새 프로젝트 이름이 표시되었습니다. 도구 모음의 이 창을 사용하면 학생들이 올바른 프로젝트를 사용하고 있는지 쉽게 확인할 수 있습니다.
-
학생들에게 이제 첫 번째 프로젝트를 시작할 준비가 되었다고 말하세요. 학생들에게 몇 가지 간단한 단계만 따르면 클로봇의 팔을 올리고 내리는 프로젝트를 만들고 실행할 수 있다고 설명하세요.
-
학생들에게 작업하는 동안 프로젝트를 저장하도록 상기시켜 주세요. VEX 로봇 기술 자료의 이 문서에서는 VEXcode V5의 저장 방법을 설명합니다.
교사 도구 상자
-
멈추고 토론하기
여기서 잠시 멈춰서 학생 그룹이 VEXcode V5에서 새 프로젝트를 시작하기 위해 방금 완료한 단계를 검토해 보는 것이 좋습니다.
3단계: 팔을 위로 올리세요
이제 팔을 들어올리는 동작을 프로그래밍해 보겠습니다!
int main() {
// 로봇 구성 초기화. 제거하지 마세요!
vexcodeInit();
ArmMotor.setPosition(0,도);
}- 프로그래밍 영역에 위에 표시된 대로 ArmMotor.setPosition(); 명령을 작성하여 팔의 시작 위치를 설정합니다.
ArmMotor.setPosition(0, 도);
ArmMotor.spinFor(전방, 90, 도);- 위에 표시된 것과 같이 ArmMotor.setPosition() 명령 아래에 ArmMotor.spinFor(); 명령어를 추가하면 팔을 위로 움직일 수 있습니다. Spin For 이 Set Position 명령과 맞게 들여쓰기 되었는지 확인하고, 모든 명령이 중괄호 안에 있는지 확인하세요.
- 슬롯 아이콘을 클릭하세요. 로봇 브레인의 사용 가능한 슬롯 중 하나에 프로젝트를 다운로드할 수 있습니다. 슬롯 1을 클릭하세요.
- 로봇을 컴퓨터나 태블릿에 연결합니다. 연결이 성공적으로 이루어지면 도구 모음의 Brain 아이콘이 녹색로 바뀝니다.
- 도구 모음에서다운로드버튼을 클릭하여 Drive 프로젝트를 로봇 브레인에 다운로드합니다.
교사 도구 상자
-
텍스트 도움말
-
학생들이 컴퓨터를 사용하고 있다면, 지금 로봇 브레인에서 USB 케이블을 분리하라고 요청하세요. 프로젝트를 실행하는 동안 로봇을 컴퓨터에 연결하면 로봇이 연결 케이블을 잡아당길 수 있습니다.

- ArmControl 프로젝트가 선택한 슬롯의 Brain에 다운로드되었는지 확인하세요.
교사 도구 상자
-
먼저 모델링 옵션
모든 학생이 한꺼번에 시도하기 전에, 먼저 학급 앞에서 프로젝트를 진행하는 모델을 만드세요. 학생들을 한곳에 모으고 클로봇이 팔을 움직일 수 있을 만큼 충분한 공간을 남겨둡니다. 프로젝트를 종료하고 클로봇의 팔을 원래 위치로 되돌리는 방법을 보여줍니다.
학생들에게 이제 그들이 프로젝트를 진행할 차례라고 말하세요. 클로봇의 팔을 안전하게 들어 올릴 수 있을 만큼 충분한 공간이 있는지 확인하세요.
- Clawbot에서 프로젝트를하려면 프로젝트가 선택되어 있는지 확인한 다음 실행 버튼을 누릅니다. 첫 번째 Claw Arm 프로젝트를 만든 것을 축하드립니다!
4단계: 다음을 시도해 보세요: 팔을 아래로 프로그래밍하세요
이제 팔을 위로 움직이도록 프로그래밍했으므로, 이제는 팔을 낮추거나 아래로 움직이도록 프로그래밍해야 합니다.

- ArmControl 프로젝트에 두 번째 ArmMotor.spinFor(); 명령어를 추가하여 팔이 90도까지 올라가고 2초간 기다린 다음 다시 내려가도록 합니다.
- 힌트:지침 내에서 방향을 변경해야 합니다.
- wait명령이 실행되는 동안 팔이 위치를 유지하는 것을 확인하세요. 모터는 배터리에서 전력을 얻어 중력에 맞서 팔을 들어올립니다. 모터를 멈추는 기본 설정이보류설정이기 때문입니다. 정지를 위한 다른 설정은 두 가지가 있습니다.브레이크및코스팅. 이에 대해서는 다른 연구실에서 배우게 될 겁니다.
교사 도구 상자
-
솔루션
이 과제에 대한 해결책은 아래와 같습니다. 팔을 내리려면 학생들은 추가된 ArmMotor.spinFor(); 명령어에서 "forward" 매개변수를 "reverse"로 변경해야 했습니다.
// 프로젝트 코드
시작 int main() {
// 로봇 구성 초기화. 제거하지 마세요!
vexcodeInit();
ArmMotor.setPosition(0, 도);
ArmMotor.spinFor(전진, 90, 도);
wait(2, 초);
ArmMotor.spinFor(후진, 90, 도);
}
5단계: 비행 교통 관제사 챌린지 완료

비행 교통 관제사 챌린지에서 클로봇은 팔을 90도 동안 위아래로 한 번 움직여야 하고, 3초간 기다린 다음, 팔을 45도 동안 위아래로 두 번 움직여야 하고, 5초간 기다린 다음, 팔을 90도 동안 위아래로 세 번 움직여야 합니다.
클로봇의 동작 목록은 다음과 같습니다.
- 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
- 3초간 기다리세요.
- 팔을 위로, 그리고 아래로 45도 움직입니다.
- 팔을 위로, 그리고 아래로 45도 움직입니다.
- 5초간 기다리세요.
- 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
- 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
- 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
교사 도구 상자
-
솔루션
이 챌린지의 대부분 명령어는 ArmMotor.spinFor();입니다. 팔을 위로 움직이는 지침과 아래로 움직이는 지침을 각각 추가한 후, 두 지침을 강조 표시하고 마우스 오른쪽 버튼을 클릭한 다음 필요한 만큼 복사하여 붙여넣을 수 있습니다. 그런 다음 매개변수를 변경하여 과제를 충족할 수 있으며 wait() 명령어를 그 사이에 추가할 수 있습니다.
- 비행 교통 관제사 챌린지 솔루션:
// 프로젝트 코드
시작 int main() {
// 로봇 구성 초기화. 제거하지 마세요!
vexcodeInit();
ArmMotor.setPosition(0,도);
ArmMotor.spinFor(전진, 90,도);
ArmMotor.spinFor(후진, 90,도);
wait(3,초)
ArmMotor.spinFor(전진, 45,도);
ArmMotor.spinFor(후진, 45,도);
ArmMotor.spinFor(전진, 45,도);
ArmMotor.spinFor(후진, 45,도);
wait(5,초)
ArmMotor.spinFor(전진, 90,도);
ArmMotor.spinFor(후진, 90,도);
ArmMotor.spinFor(전진, 90,도);
ArmMotor.spinFor(후진, 90,도);
ArmMotor.spinFor(전방, 90도);
ArmMotor.spinFor(후방, 90도);
}- 프로그래밍 루브릭 (Google Doc / .docx / .pdf)