교사 도구 상자 - 활동 개요
-
이 탐구에서는 학생들에게 기계적 동작 범위의 개념과 팔과 발톱을 사용하여 이를 탐색하는 방법을 소개합니다.
-
또한 학생들은 팔과 발톱을 안전하게 프로그래밍하는 데 사용할 수 있는 다양한 블록을 탐색합니다.
가동범위를 살펴보자!
이 탐색을 통해 팔과 발톱이 확장될 수 있는 최소 및 최대 각도를 확인할 수 있습니다.
- 필요한 하드웨어와 엔지니어링 노트북이 있는지 확인하세요.
수량 | 필요한 재료 |
---|---|
1 |
VEX IQ 슈퍼 키트 |
1 |
VEX코드 IQ |
1 |
엔지니어링 노트북 |
교사 팁
학생들을 위한 각 문제 해결 단계를 모델링합니다.
1단계: 탐사 준비
활동을 시작하기 전에 이러한 각 항목이 준비되어 있습니까? 빌더는 다음을 각각 확인해야 합니다.
-
모든 모터와 센서가 올바른 포트에 연결되어 있습니까?
-
스마트 케이블 이 모든 모터 및 센서에 완전히 삽입되었습니까?
-
Brain 이 켜져 있습니까?
-
배터리 이 충전되었습니까?
-
로봇브레인에 무선이되어 있나요?
교사 팁
-
이는 VEX IQ 두뇌 탐색을 통한 시작 활동이므로 교사는 단계를 모델링한 다음 학생들에게 동일한 작업을 완료하도록 요청해야 합니다. 그런 다음 교사는 학생들이 단계를 올바르게 따르고 있는지 모니터링해야 합니다.
-
설정 메뉴에서 장치 정보를 선택하기 전에 학생들이 손가락으로 발톱을 조심스럽게 완전히 열었는지 확인하십시오. 이렇게 하면 클로가 가장 많이 열린 지점을 0도로 설정합니다.
2단계: 장치 메뉴
로봇 두뇌 버튼을 선택하여 설정 메뉴로 이동합니다.
손가락을 사용하여 Clawbot의 발톱을 완전히 엽니다.
설정 메뉴가 열리면 브레인의 위, 아래 버튼을 사용해 장치 정보를 선택하여 장치 메뉴를 엽니다.
장치 메뉴 화면에는 해당 포트에 연결된 장치에 대한 정보가 표시됩니다. IQ Brain에는 12개의 포트가 있습니다.
화살표를 사용하여 Claw 모터인 포트 11 모터로 이동합니다.
-
포트 11 모터: 클로 모터.
-
속도: 모터가 회전하는 속도(분당 회전 수)를 표시합니다.
-
각도: 모터의 현재 위치를 각도 단위로 표시합니다.
-
회전수: 모터가 회전한 회전수를 표시합니다.
-
확인 버튼을 눌러 모터를 시작하고 정지합니다. Claw는 수동으로 열고 닫을 수도 있습니다.
교사 도구 상자 - 단계 검토
이는 일시 중지하고 학생들이 장치 메뉴 화면으로 이동하기 위해 방금 완료한 단계를 검토하도록 하는 것이 좋습니다.
3단계: 클로와 팔의 움직임 탐색
-
장치 메뉴를 열기 전에 클로를 완전히 열면 클로 모터는 장치 메뉴에 표시된 대로 완전히 열린 위치를 0도로 간주합니다.
엔지니어링 노트에서 측면을 가볍게 밀어서 클로를 닫을 때 포트 11 모터(클로 모터)의 값이 어떻게 될지 예측하세요. 클로가 닫혀 있을 때 각도 값(도)은 어떻게 됩니까?
-
힌트: 보고된 값은 아래 이미지에 표시된 값과 동일하지 않습니다.
-
-
클로를 부드럽게 밀어 닫아 예측을 테스트해 보세요. 클로 모터의 장치 메뉴에 이제 어떤 각도가 표시됩니까?
교사 도구 상자 - 예상 값
학생들이 장치 메뉴를 열기 전에 Clawbot의 발톱을 완전히 열었다면 완전히 열린 위치는 0도입니다. 클로를 밀어 닫은 후 클로 모터의 각도는 약 70도가 되어야 합니다.
- 각도가 변하는 것을 볼 수 있도록 계속 손을 사용하여 집게발을 부드럽게 열고 닫으십시오.
-
클로 모터의 각도 범위(도)에서 무엇을 알 수 있나요? 각도 값이 계속 증가합니까, 아니면 제한이 있습니까?
-
클로 모터의 각도 값 범위를 기록합니다. 완전히 열렸을 때 각도 값부터 완전히 닫혔을 때 각도 값까지입니다.
-
클로가 열려 있을 때의 각도 값은 항상 동일합니까? 클로가 닫혀 있을 때의 각도 값은 항상 동일합니까? 왜 그렇다고 생각하시나요?
교사 도구 상자 - 예상 답변
-
팔 모터는 동작 범위가 더 넓으므로 모터 각도 값의 각도 범위도 더 넓습니다.
-
Device Menu를 선택했을 때 팔이 완전히 아래로 내려진 상태일 가능성이 높기 때문에 시작 각도를 0도로 설정했습니다. 팔은 Clawbot의 뒤쪽까지 완전히 회전할 수 있기 때문에 범위는 0에서 시작하여 360도를 두 번 이상 통과합니다. 표시된 각도 값은 360도를 초과하여 계속 증가하지 않고 대신 0에서 다시 시작됩니다. 결과적으로 회전 값은 Arm 모터가 회전한 각도를 파악하는 데에도 중요합니다. 예를 들어 표시된 각도 값은 45도일 수 있지만 회전 값은 3.12입니다. 이는 Arm 모터가 완전히 3번 회전했거나 1080도에 45도를 더해 총 1125도 회전했다는 의미입니다. 이는 Claw Motor의 범위보다 훨씬 더 넓습니다.
교사 도구 상자 - 멈추고 토론하세요
학생들이 팔과 클로 모터에서 무엇을 관찰했는지에 대한 토론을 진행하세요. 다음과 같은 질문을 해보세요:
-
발톱과 팔의 움직임 범위는 어떠했습니까? 그들은 항상 같았나요?
-
프로그래밍할 때 이것이 왜 도움이 될까요?
클로 모터 각도에 대해 보고된 값 범위가 항상 동일하지는 않았습니다. 범위는 0도에서 약 70도까지였지만 종종 몇도 정도 차이가 났습니다. 팔 모터 각도에 대해 보고된 값 범위도 동일하지 않았습니다. 팔을 손으로 올렸다 내렸다 했을 때의 범위는 0도에서 대략 1125도 사이였지만, 매번 몇도씩 증가하거나 감소하기도 했습니다.
프로그래머는 모터가 한계에 도달할 때까지 모터가 얼마나 안전하게 회전할 수 있는지 알아야 하기 때문에 프로그래밍할 때 유용합니다. 그 한계를 넘어서면 전원을 공급하는 부품에 과도한 힘이 가해질 수 있습니다. 손상을 방지하기 위해 모터 각도를 설정하거나 모터 회전을 제한하는 방법이 있기 때문에 프로그래머가 이를 아는 것이 중요합니다. 다음 강의에서는 이러한 방법 중 일부를 검토하겠습니다.
4단계: 동작 범위를 사용한 프로그래밍
발톱이나 팔과 같은 하위 시스템은 일반적으로 동작 범위가 제한되어 있어 지속적으로 회전할 수 없습니다. 발톱은 기계적 한계에 도달하기 전까지만 열리거나 닫힐 수 있습니다. 마찬가지로 팔의 동작 범위는 종종 로봇 자체의 지면이나 본체에 의해 제한됩니다. 동작 범위가 제한된 하위 시스템으로 작업할 때는 로봇을 원격으로 제어하든 자율적으로 움직이도록 프로그래밍하든 상관없이 해당 범위 내에 머무르는 것이 매우 중요합니다. 하위 시스템이 한계에 도달한 후에도 계속해서 모터에 전원을 공급하면 모터 및 연결된 모든 구성 요소에 불필요한 스트레스가 발생합니다.
교사 팁
3단계에서는 발톱과 팔의 제한된 동작 범위를 테스트하고 경험하게 되었다는 점을 학생들에게 지적합니다. 발톱의 동작 범위는 Clawbot의 다른 부분에 의해 열리는 것으로 제한되며, 발톱의 양쪽이 서로 미는 지점에 의해 닫히는 것으로 제한됩니다. 팔의 동작 범위는 낮추어졌을 때 지면에 의해 제한되고, 완전히 올려졌을 때는 로봇 뒷면 상단에 의해 제한됩니다.
발톱과 팔의 제한된 동작 범위를 조정하는 방법을 배우기 전에 발톱과 팔을 프로그래밍하는 데 사용되는 블록을 살펴보겠습니다.
VEXcode IQ에는 팔을 올리고 내리고 클로를 특정 위치로 열고 닫는 데 사용할 수 있는 두 개의 블록이 있습니다.
[Spin for] 블록과 [Spin to position] 블록.
-
[Spin for] 블록은 현재 위치에서 선택한 거리만큼 선택한 방향으로 모터를 회전시킵니다.
-
[Spin to position] 블록은 모터의 현재 위치를 기준으로 모터를 선택한 위치로 회전시킵니다. [Spin to position] 블록은 해당 위치에 도달하기 위해 회전할 최적의 방향을 결정합니다.
이 블록은 언제 사용됩니까? 팔을 올리거나 내리도록 프로그래밍했는데 팔이 내려갔을 때 팔이 시작 위치인 0도까지 완전히 내려가지 않는다고 상상해 보세요. 대신 15도까지 낮아집니다. 그런 다음 [Spin for] 블록을 사용하여 90도 올리면 팔이 현재 위치에서 90도 올라가고 실제로는 105도까지 올라갑니다.
그러나 같은 상황에서 팔이 15도에 있고 [Spin to position] 블록을 사용하여 90도까지 올리면 팔은 75도 올라가서 원하는 위치인 90도에 도달하게 됩니다.
[Spin for] 블록을 사용하고 팔이 완전히 내려가지 않거나 클로가 완전히 닫히지 않으면 팔이나 클로가 움직일 수 있는 한계에 도달할 수 있기 때문에 이를 이해하는 것이 중요합니다.
로봇을 보다 정확하게 프로그래밍하는 데 도움이 되는 [Spin for] 및 [Spin to position] 블록과 함께 사용할 블록을 살펴보겠습니다.
-
[모터 타임아웃 설정] 블록은 해당 위치에 도달하지 못하는 모션 블록이 스택의 다른 블록 실행을 방해하는 것을 방지하는 데 사용됩니다. 모터가 해당 위치에 도달하지 못하는 예로는 기계적 한계에 도달하여 동작을 완료할 수 없는 팔이나 발톱이 있습니다.
-
[Spin for] 블록을 사용하고 발톱이나 팔이 동작 범위의 한계에 도달하면 어떻게 되나요? 팔이나 발톱이 더 이상 움직일 수 없기 때문에 프로젝트가 중단됩니까?
블록이 작업을 완료할 때까지 프로젝트는 중단되지 않습니다. 클로가 100도 열려고 하지만 50도에서 시작하여 동작 범위를 넘어서 회전하려고 하면 클로는 열 수 없더라도 계속해서 열려고 시도합니다. 이는 부품에 부담을 주고 배터리를 소모시킬 수 있으므로 좋은 상황이 아닙니다.
이 경우 [모터 타임아웃 설정] 블록 사용할 수 있습니다. 이 블록은 모터가 기계적 한계에 도달하면 일정 시간이 지난 후 나머지 프로젝트를 계속 진행할 수 있도록 안전 장치 역할을 합니다.
다음 예에서는 클로가 200도 완전히 열리거나 3초의 시간 초과에 도달한 후 로봇이 앞으로 이동합니다.
-
[모터 위치 설정] 블록은 모터의 각도 값(위치)을 선택한 값으로 설정하는 데 사용됩니다. 모터 위치를 재설정하기 위해 0도로 설정할 수도 있습니다.
-
현재 모터의 각도를 알면 [Spin to position] 블록을 프로그래밍하기가 더 쉽습니다. 그러나 때로는 팔을 실제로 몇도 올렸을 때 완전히 아래로 내려간 것처럼 보일 수도 있습니다.
[모터 위치 설정] 블록 사용하면 모터의 각도를 원하는 각도로 설정할 수 있습니다. 이는 모터 위치를 0도로 재설정하는 데 매우 유용합니다.
다음 예에서는 로봇의 팔 모터가 360도 위치로 회전하고 앞으로 주행하기 전에 현재 위치에 관계없이 0도로 재설정됩니다.
교사 도구 상자 - [모터 시간 초과 설정] 및 [모터 위치 설정] 블록
[Spin for] 및 [Spin to position] 블록을 사용하여 암 및 클로 모터를 프로그래밍할 때 [Set motor timeout] 및 [Set motor position] 블록이 항상 필요한 것은 아닙니다. 그러나 프로젝트 내에 모션 블록이 많을수록 모터의 각도 값(위치)에 약간의 드리프트가 발생할 가능성이 높아집니다. 팔과 클로는 0도로 돌아가지 않을 수 있으며 [Spin for] 또는 [Spin to position] 블록은 팔이나 클로의 기계적 한계에 부딪힐 위험이 있습니다. 프로젝트 시작 시 [Set motor timeout] 블록을 설정하거나 [Spin to position] 블록 전에 [Set motor position] 블록을 사용하면 프로젝트가 계속 실행되는 것을 방지할 수 있는 유용한 안전 조치가 될 수 있습니다. 기계적 한계에 도달하면 모터가 작동합니다.
학습을 확장하세요
장치 메뉴는 IQ Clawbot에 연결된 모든 장치에 대한 값을 보고합니다. 시간이 허락한다면 학생들에게 다른 모터 및 장치에 대해 보고된 값을 탐색할 수 있게 하십시오. 예를 들어, 포트 2의 터치 LED는 눌렸는지 해제되었는지, LED가 켜져 있는지 꺼져 있는지, 현재 LED 색상이 무엇인지 보고합니다. 이는 모두 프로젝트 프로그래밍 중에 사용할 수 있는 센서 판독값입니다.
학생들에게 각 장치의 상태를 변경하여 이러한 값을 탐색하고 조작하도록 요청하십시오. 예를 들어, 터치 LED를 반복해서 누르면 터치 LED가 언제 눌렸는지, LED가 켜져 있는지, 현재 LED가 어떤 색상으로 켜져 있는지 보고됩니다.