Skip to main content

로봇 팔 프로그래밍 - C++

교사 도구 상자 아이콘 교사 도구 상자 개요

  • 이 탐구를 통해 학생들은 V5 클로봇의 팔 모터에 대한 기본 프로그래밍을 배우게 됩니다.

  • 팔 모터를 프로그래밍하는 법을 배우면 학생들은 V5 클로봇의 팔 움직임을 올바르게 제어할 수 있습니다. 텍스트 프로그램에서 사용되는 지침에 대한 자세한 내용은도움말 정보를 참조하세요.

V5 클로봇이 도착할 준비가 되었습니다!

이 탐색을 통해 V5 클로봇의 팔을 사용하여 멋진 프로젝트를 만드는 데 필요한 도구를 얻을 수 있습니다.

  • 이 탐색에 사용될 VEXcode V5 명령어:
    • ArmMotor.spinFor(앞으로, 90도);
    • ArmMotor.setPosition(0,도);
    • 대기(2, 초);
  • 해당 지침에 대한 자세한 정보를 알아보려면 도움말 선택한 다음 명령 옆에 있는 물음표 아이콘을 선택하여 자세한 정보를 확인하세요.

    VEXcode V5는 작업 공간에 입력한 명령에 대한 드라이브를 표시하고 해당 명령에 대한 도움말을 오른쪽에 엽니다. 도움말에서는 Drive for를 정의하여 Drivetrain을 지정된 거리만큼 이동시키고 프로젝트에서 명령을 사용하는 방법을 설명합니다.

  • 필요한 하드웨어, 엔지니어링 노트북, 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의 모터 구성이 포함되어 있습니다. 템플릿을 사용하지 않으면 로봇이 프로젝트를 올바르게 실행하지 않습니다.

파일 메뉴가 열려 있고 예제 열기가 빨간색 상자로 강조 표시된 VEXcode V5 도구 모음입니다. 예제 열기는 새 블록 프로젝트, 새 텍스트 프로젝트, 열기 아래의 네 번째 메뉴 항목입니다.

다음 단계를 완료하세요.

  • 파일 메뉴를 엽니다.
  • 선택열기.

텍스트 위에 회색 로봇이 있는 Clawbot과 Advanced TrainingBot이라는 아이콘.

  • Clawbot과 Advanced TrainingBot(Drivetrain 2-motor, No Gyro) 예제 프로젝트를 선택하여 엽니다.
  • 팔을 제어하기 위한 프로그래밍을 하게 되므로 프로젝트 이름을ArmControl바꾸세요.
  • 프로젝트를저장하세요.
  • 프로젝트 이름 ArmControl이 이제 도구 모음 중앙 창에 있는지 확인하세요.

VEXcode V5 도구 모음의 프로젝트 이름 대화 상자에 Arm Control이 표시되고 Slot 1이 선택되었음을 표시합니다.

교사 팁 아이콘 교사 팁

  • 이것은 프로그래밍의 시작 활동이므로 교사는 단계를 모델로 보여준 다음 학생들에게 동일한 동작을 완료하도록 요청해야 합니다. 그런 다음 교사는 학생들이 단계를 올바르게 따르고 있는지 모니터링해야 합니다.

  • 학생들이 파일 메뉴에서 예제 열기를 선택했는지 확인하세요.

  • 학생들이 Clawbot 템플릿(구동계 2모터, 자이로 없음) 예제 프로젝트를 선택했는지 확인하세요.

    학생들에게예제페이지에서 선택할 수 있는 항목이 여러 개 있다는 점을 알려줄 수 있습니다. 학생들이 다른 로봇을 만들고 사용하면서 다양한 템플릿을 사용할 기회를 얻게 됩니다.

  • 학생들에게 프로젝트 이름에 자신의 이니셜이나 그룹 이름을 추가하도록 요청할 수 있습니다. 학생들에게 프로젝트를 제출하도록 요청할 경우, 프로젝트를 구분하는 데 도움이 됩니다.

교사 도구 상자 아이콘 교사 도구 상자 - 멈추고 토론하기

여기서 잠시 멈춰서 학생 그룹이 VEXcode V5에서 새 프로젝트를 시작하기 위해 방금 완료한 단계를 검토해 보는 것이 좋습니다.

3단계: 팔을 위로 올리세요

이제 팔을 들어올리는 동작을 프로그래밍해 보겠습니다!

int main() {
  // 로봇 구성 초기화. 제거하지 마세요!
  vexcodeInit();

  ArmMotor.setPosition(0,도);

}
  • 프로그래밍 영역에 위에 표시된 대로 ArmMotor.setPosition(); 명령을 작성하여 팔의 시작 위치를 설정합니다.
  ArmMotor.setPosition(0, 도);
  ArmMotor.spinFor(전방, 90, 도);
  • 위에 표시된 것과 같이 ArmMotor.setPosition() 명령 아래에 ArmMotor.spinFor(); 명령어를 추가하면 팔을 위로 움직일 수 있습니다. Spin ForSet Position 명령과 맞게 들여쓰기 되었는지 확인하고, 모든 명령이 중괄호 안에 있는지 확인하세요.

프로젝트 이름 옆에 슬롯 선택이 열려 있는 VEXcode V5 도구 모음입니다. 슬롯 1이 선택되어 빨간색 상자로 강조 표시되고 프로젝트 이름은 Arm Control로 표시됩니다.

  • 슬롯 아이콘을 클릭하세요. 로봇 브레인의 사용 가능한 슬롯 중 하나에 프로젝트를 다운로드할 수 있습니다. 슬롯 1을 클릭하세요.

녹색 Brain 아이콘 주위에 빨간색 상자가 있는 VEXcode V5의 도구 모음입니다. 뇌 아이콘은 컨트롤러 아이콘의 오른쪽, 다운로드 버튼의 왼쪽에 있습니다.

  • 로봇을 컴퓨터나 태블릿에 연결합니다. 연결이 성공적으로 이루어지면 도구 모음의 Brain 아이콘이 녹색로 바뀝니다.

다운로드 버튼 주위에 빨간색 상자가 있는 VEXcode V5의 도구 모음입니다. 왼쪽에서 오른쪽으로 표시되는 아이콘은 컨트롤러, 브레인, 다운로드, 실행, 중지입니다.

  • 도구 모음에서다운로드버튼을 클릭하여 Drive 프로젝트를 로봇 브레인에 다운로드합니다.

교사 도구 상자 아이콘 교사 도구 상자 - 텍스트 도움말

  • 학생들이 컴퓨터를 사용하고 있다면, 지금 로봇 브레인에서 USB 케이블을 분리하라고 요청하세요. 프로젝트를 실행하는 동안 로봇을 컴퓨터에 연결하면 로봇이 연결 케이블을 잡아당길 수 있습니다.

V5 Brain 홈 화면은 왼쪽 하단 모서리의 슬롯 1에 Arm Control 프로젝트를 표시합니다. 위쪽 행의 아이콘에는 드라이브, 장치, 설정, VEX가 있습니다.

  • ArmControl 프로젝트가 선택한 슬롯의 Brain에 다운로드되었는지 확인하세요.

교사 도구 상자 아이콘 교사 도구 상자 - 먼저 모델링 옵션

모든 학생이 한꺼번에 시도하기 전에, 먼저 학급 앞에서 프로젝트를 진행하는 모델을 만드세요. 학생들을 한곳에 모으고 클로봇이 팔을 움직일 수 있을 만큼 충분한 공간을 남겨둡니다. 프로젝트를 종료하고 클로봇의 팔을 원래 위치로 되돌리는 방법을 보여줍니다.

학생들에게 이제 그들이 프로젝트를 진행할 차례라고 말하세요. 클로봇의 팔을 안전하게 들어 올릴 수 있을 만큼 충분한 공간이 있는지 확인하세요.

  • Clawbot에서 프로젝트를하려면 프로젝트가 선택되어 있는지 확인한 다음 실행 버튼을 누릅니다. 첫 번째 Claw Arm 프로젝트를 만든 것을 축하드립니다!

4단계: 다음을 시도해 보세요: 팔을 아래로 프로그래밍하세요

이제 팔을 위로 움직이도록 프로그래밍했으므로, 이제는 팔을 낮추거나 아래로 움직이도록 프로그래밍해야 합니다.

팔을 내린 VEXcode V5 Clawbot의 이미지

  • 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단계: 비행 교통 관제사 챌린지 완료

팔을 들어올리고 위아래를 가리키는 빨간색 화살표가 있는 VEXcode V5 Clawbot 이미지비행 교통 관제사 챌린지에서 클로봇은 팔을 90도 동안 위아래로 한 번 움직여야 하고, 3초간 기다린 다음, 팔을 45도 동안 위아래로 두 번 움직여야 하고, 5초간 기다린 다음, 팔을 90도 동안 위아래로 세 번 움직여야 합니다.

클로봇의 동작 목록은 다음과 같습니다.

  • 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
  • 3초간 기다리세요.
  • 팔을 위로, 그리고 아래로 45도 움직입니다.
  • 팔을 위로, 그리고 아래로 45도 움직입니다.
  • 5초간 기다리세요.
  • 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
  • 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.
  • 팔을 위로, 그리고 아래로 90도 각도로 움직입니다.

교사 도구 상자 아이콘 교사 도구 상자 - 솔루션

이 챌린지의 대부분 명령어는 ArmMotor.spinFor();입니다. 팔을 위로 움직이는 지침과 아래로 움직이는 지침을 각각 추가한 후, 두 지침을 강조 표시하고 마우스 오른쪽 버튼을 클릭한 다음 필요한 만큼 복사하여 붙여넣을 수 있습니다. 그런 다음 매개변수를 변경하여 과제를 충족할 수 있으며 wait() 명령어를 그 사이에 추가할 수 있습니다.

작업 공간에서 VEXcode V5 C++ 프로젝트가 표시되고 Arm Motor 위치 설정 명령이 강조 표시되고 상황에 맞는 메뉴가 열려 있습니다. 커서가 상황에 맞는 메뉴에서 복사 명령 위에 놓여 있는데, 이는 목록에서 잘라내기 바로 다음에 있는 열한 번째 명령입니다.

  • 비행 교통 관제사 챌린지 솔루션: 
// 프로젝트 코드
시작 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도);
  
}