전체 프로세스는 조립과 프로그래밍의 두 단계로 구성됩니다. 수집하다 좋은 로봇역학에 대한 지식이 필요합니다. 특정 동작을 위해 로봇을 프로그래밍하려면 이해할 수 있는 언어를 알아야 합니다. 마더보드또는 프로그램 블록. 컴퓨터 과학에 대한 학교 지식으로는 충분하지 않습니다.

재료는 어디서 구하나요?

먼저 로봇을 조립할 방법을 결정해야 합니다. 기성품 키트에서 또는 재료를 직접 선택합니다. 키트의 장점은 부품을 개별적으로 찾을 필요가 없다는 것입니다. 대부분의 경우 한 세트에서 여러 장치를 조립할 수 있습니다.

기성품 세트에서 조립되지 않은 구조를 개방형 시스템. 또한 장점이 있습니다. 로봇은 개별적이며 디자인을 개선할 수 있습니다. 그러나 분명히 더 많은 시간과 노력을 들일 것입니다.

로봇은 무엇으로 만들어졌나요?

하우징 - 금속 또는 플라스틱 "신체", 나머지 부품이 부착됩니다. 각 로봇에는 배터리 또는 축전지와 같은 에너지원이 있습니다. 로봇이 수행할 작업에 따라 센서가 선택됩니다. 센서는 색상과 빛을 감지하고 터치에 반응할 수 있습니다.

로봇을 움직이려면 모터가 필요합니다. "머리"전체 메커니즘 - 마더 보드 또는 프로그램 블록. 그들의 도움으로 로봇은 컴퓨터에 연결하고 일련의 작업을 받습니다.

그에게 무언가를 하게 하는 방법?

로봇이 어떤 동작을 수행하려면 다음을 생성해야 합니다. 컴퓨터 프로그램. 이 단계의 복잡성은 어셈블리에 따라 다릅니다. 레고 마인드스톰이나 mBot 세트로 로봇을 조립하면 아이들도 소프트웨어를 다룰 수 있습니다.

로봇을 직접 만든다면 프로그래밍의 기초와 프로그램을 작성할 언어(예: C++)를 배워야 합니다.

로봇이 프로그램을 실행할 수 없는 이유는 무엇입니까?

새로운 장소에 도착하면 길을 잃고 프로그램을 잘못 실행할 수 있습니다. 로봇이 모든 것을 올바르게 수행하려면 센서를 조정해야 합니다. 예를 들어 너무 밝은 조명은 적절한 색상 인식을 방해할 수 있습니다. 로봇이 움직이는 표면에 따라 모터의 동력이 조절됩니다.

학교에서 조립과 프로그래밍을 배울 수 있습니까?

로봇 공학이 학교 교과 과정에 포함되어 있지 않다는 사실에도 불구하고 물리학 및 컴퓨터 과학 교사는 어린이에게 조립 및 프로그래밍 방법을 가르칠 수 있습니다. 벨고로드의 일부 학교에는 로봇을 만드는 원이 있습니다.

“물리학 및 컴퓨터 공학 교사들과 수업을 마친 후에 우리는 프로그래밍을 배웁니다. 우리는 이미 LegoMindstorms 및 Robolab에서 작업하는 방법을 알고 있습니다( 소프트웨어로봇 - 약. 에드.). 우리는 또한 부품의 3D 도면을 만드는 방법을 배우기도 합니다.”라고 Belgorod Engineering Youth Boarding Lyceum의 학생들과 RoboFest-2018 참가자들이 말했습니다. 안톤 퍼신그리고 드미트리 체르노프.

학교 외에 어디에서 로봇 공학자가 될 수 있습니까?

BelSU의 공과대학에는 로봇을 조립하고 프로그래밍하는 방법을 가르치는 수업이 있습니다. 2017년 Quantorium은 벨고로드에 문을 열었습니다. 이곳에서 학생들은 9살부터 로봇 공학을 배웠습니다.

진정한 로봇 공학자가되기 위해 로봇 공학부에 입학 할 수 있습니다. Belgorod에는 아직 그런 사람들이 없지만 BSTU im. Shukhov에는 기술 사이버네틱스 부서가 있습니다. 그녀의 학생들은 로봇 분야의 모든 러시아 대회에서 상을 받았습니다.

스스로 배울 수 있습니까?

예. 로봇을 구축하고 프로그래밍하는 방법을 배울 수 있는 많은 리소스가 인터넷에 있습니다.

로봇이 유용할까요?

일상적인 작업에 적용할 수 있으며 집안의 조수 역할을 할 수 있습니다. 가정 발명가가 팬케이크를 굽거나 아파트를 청소하기 위한 로봇을 만드는 방법에 대한 많은 예가 인터넷에 있습니다.

로봇 제작 성공을 어떻게 확인합니까?

RoboFest와 같은 대회에 참가하십시오. 연령과 방향에 따라 다양한 후보가 있습니다. 기본적으로 각 유형의 로봇에는 큐브 캡처 또는 선 그리기와 같은 작업을 수행하는 트랙이 있습니다. 심사 위원이 프로젝트의 프레젠테이션과 메커니즘의 작동을 평가하는 정적 시스템도 있습니다.

일반적으로 참가자는 경쟁에 참가합니다. 로봇에 의해 조립그리고 준비 단계에서는 센서를 보정하고 프로그램을 조정하는 데만 시간을 할애합니다.

편집자는 RoboFest-2018 참가자의 자료를 만드는 데 도움을 주셔서 감사합니다. 드미트리 아가포노프, 드미트리 체르노프, 안톤 퍼신그리고 다닐라 미그리나.

나탈리아 말리히나

교사의 임무는 실패에 대한 보장이 아니라 실패로 인한 실망을 방지하는 학생과 함께 이 길을 걷는 것입니다. 가능한 어려움. 아이들이 의미 있는 활동을 통해 스스로 새로운 것을 발견할 수 있도록 수업을 구성하는 것은 매우 중요합니다.
로봇은 컴퓨터 과학을 배우는 데 어떻게 도움이 되나요? 로봇 공학의 기반이 되는 정보학의 몇 가지 주제만 지적하겠습니다.
주제 "파일 및 파일 시스템".
학생은 교육용 키트에서 LEGO®NXT 마이크로컴퓨터를 받았습니다. 레고 마인드스톰 NXT 교육. 제어 파일 시스템표준 명령어로 발생하지만 메모리의 양이 많지 않기 때문에 필요한 것과 불필요한 것에 대한 제어를 지속적으로 모니터링해야 합니다. 로봇의 행동을 말하고, 그림을 표시하고, 작업 프로그램 라이브러리를 보충하려면 파일, 파일 형식, 파일 경로, 메뉴, 폴더와 같은 컴퓨터 과학의 기본 개념으로 작동해야 합니다.
주제 "정보 프로세스", "정보 코딩".
로봇 키트에는 소리, 촉각 및 비디오 정보를 등록하는 센서가 장착되어 있습니다. 디지털화 후 정보를 디스플레이 화면에 표시할 수 있습니다. 마이크로컴퓨터의 특별한 기능은 바로 실행 가능한 프로그램을 사용하여 센서, 모터로 실험할 수 있게 합니다. 센서로 일련의 실험을 수행한 후에는 초음파 거리 센서가 적외선 센서보다 느린 이유, 소리가 디지털 코드로 변환되는 방법 등을 이해하게 됩니다. 정보 프로세스 및 정보 코딩의 원리에 대한 연구는 정보 기술의 본질에 대한 더 깊은 이해를 제공합니다.

주제 "통신 기술".
LEGO®NXT 마이크로컴퓨터 지원 기술 무선 통신. 블루투스 기능을 사용하여 설정할 수 있습니다. 무선 통신 NXT 마이크로컴퓨터와 다른 NXT와 같이 Bluetooth 장치가 있는 다른 장치 사이에 휴대 전화또는 컴퓨터로. 설정하여 블루투스 연결, 아마도: 컴퓨터에서 원격으로 프로그램을 다운로드합니다. NXT를 포함한 다른 장치(컴퓨터가 아님)에서 프로그램 보내기 개별 NXT와 해당 그룹에 프로그램을 보냅니다. 이 기술을 사용하면 휴대폰을 사용하여 로봇을 제어할 수 있습니다.

주제 "알고리즘. 알고리즘 실행자", "프로그래밍 환경".
로봇에 대한 초기 소개를 위해 컴퓨터에 액세스하지 않고 NXT 장치를 직접 프로그래밍할 수 있습니다. 디스플레이 화면에서 직접 5가지 명령의 템플릿에 따라 구성할 수 있습니다. 간단한 프로그램그리고 그것을 루프. 그러나 기본 알고리즘 구조와 프로그래밍 환경 개발에 대한 지식 없이는 할 수 없습니다. 로봇을 다양한 작업을 해결할 수 있는 보편적인 수행자로 만드는 것은 로봇을 프로그래밍하는 능력입니다. 프로그래밍 기술을 마스터하기 시작하려면 시각적 프로그래밍 환경에서 시작해야 하며, 그 다음에는 보다 강력하고 현대적인 이벤트 중심 환경으로 이동해야 합니다.
따라서 로봇은 컴퓨터 과학에 대한 기본 지식이 필요하며 로봇을 "최고"로 만들고자 하는 학생의 지칠 줄 모르는 열망은 그를 새로운 지식을 습득하게 합니다.
로봇이 이상적인 학습 도구라고 할 수 있는 이유는 무엇입니까? 이 도구를 사용하면 또래와 놀고, 만들고, 의사소통하려는 어린이의 자연스러운 열망을 회복하는 학습 환경을 조성할 수 있기 때문입니다. 따라서 교육 수단으로서 로봇의 장점을 강조할 수 있습니다.
. 지식의 동화는 게임 중에 발생합니다.
. 로봇 제작은 창의적인 자유를 제공합니다.
. 자신의 작업을 개선하려는 열망은 대다수의 학생들입니다.

예를 들어, 과외 활동에서 "로봇 프로그래밍" 과정의 일환으로 6학년 학생이 만든 "무료 음식 배달 로봇"의 모델을 제공하고 싶습니다. 이 로봇은 표준 Alfarex 1.0 모델을 사용하여 LEGO MINDSTORMS NXT Education 9797 세트에서 제작되었으며 로봇의 상태를 나타내는 컬러 센서와 간식 트레이로 완성됩니다.
작업의 목적은 사용 가능한 리소스로 가능한 한 인간 보행 모델을 구현하는 것입니다. 각 다리의 움직임은 모터와 기어 및 레버의 기계적 조립으로 제어됩니다. 한 레버는 다리를 위아래로 움직이고 다른 레버는 앞으로 움직입니다. 이 경우 몸체가 지지하는 다리 쪽으로 편향되어 로봇이 균형을 유지합니다. 이 걸음걸이를 "셔플링"이라고 합니다.
별도의 모터가 거리 센서와 터치 센서와 컬러 센서를 고정하는 레버 암을 제어합니다. 간식용 트레이는 움직이지 않고 고정되어 있습니다.
로봇은 다음 행동 알고리즘에 따라 행상인의 역할(예: 무료 간식)을 수행하도록 프로그래밍됩니다. 로봇은 "나는 Alpharex 로봇입니다. 당신을 무료로 대합니다!"라는 문구와 함께 직선으로 움직임을 동반합니다. 로봇과 접촉하려는 사람은 제스처로 로봇을 멈출 수 있습니다. 정지 후 로봇은 "도와주세요 버튼을 눌러주세요!"라는 문구를 말합니다. 사탕을 받으면 감사의 표시로 버튼을 한 번 눌러야합니다. 정지 후 3초 후에 로봇은 계속 움직입니다. 간식이 끝나면(로봇은 트레이에 있는 특정 양의 과자에 대해 프로그래밍됨) 로봇이 작별 인사를 하고 빨간색 표시등이 켜지고 로봇이 멈춥니다.

로봇을 제어하기 위한 프로그램은 NXT 프로그래밍 2.0 환경에서 작성되었습니다.

퍼포머 로봇은 셀로 분할된 직사각형 필드에 존재하며 그 사이에는 벽이 있을 수 있고 하나의 셀에 완전히 들어 맞습니다. 로봇은 현장을 돌아다니고, 세포 위에 페인트를 칠하고, 온도와 방사선을 측정할 수 있습니다. 로봇은 벽을 통과할 수 없지만 옆에 벽이 있는지 확인할 수 있습니다.

"로봇" 수행자의 명령 시스템에는 다음이 포함됩니다.

  • 로봇 동작을 유발하는 5가지 명령(왼쪽, 오른쪽, 위, 아래, 칠하기)
  • 10가지 상태 확인 명령:
  • [좌/우/하/상] [벽/자유]와 같은 8가지 명령
  • 케이지 [shaded/clean]와 같은 2개의 명령
  • 2개의 측정 명령(온도, 복사)

작업 명령

명령 확인

설명
무료로 남겨진 로그 로봇이 왼쪽으로 이동할 수 있으면 yes를 반환하고 그렇지 않으면 no를 반환합니다.
오른쪽 로그인은 무료입니다 로봇이 오른쪽으로 이동할 수 있으면 yes를 반환하고 그렇지 않으면 no를 반환합니다.
무료 로그 로봇이 위로 이동할 수 있으면 yes를 반환하고 그렇지 않으면 no를 반환합니다.
아래에 자유롭게 로그인 로봇이 다운될 수 있으면 yes를 반환하고, 그렇지 않으면 no를 반환합니다.
통나무 왼쪽 벽 로봇 왼쪽에 벽이 있으면 yes를 반환하고, 그렇지 않으면 no를 반환합니다.
통나무 오른쪽 벽 로봇 오른쪽에 벽이 있으면 yes를 반환하고, 그렇지 않으면 no를 반환합니다.
통나무 상단 벽 로봇 위에 벽이 있으면 yes를 반환하고 그렇지 않으면 no를 반환합니다.
통나무 바닥 벽 로봇 아래에 벽이 있으면 yes를 반환하고, 그렇지 않으면 no를 반환합니다.
로그 셀이 음영 처리됨 셀이 채워지면 yes를 반환하고 셀이 채워지지 않으면 no를 반환합니다.
로그 셀 청소 셀이 채워지면 no를 반환하고 셀이 채워지지 않으면 yes를 반환합니다.

측정 명령

벽의 왼쪽에 있는 셀에서 벽의 오른쪽에 있는 셀로 옮겨야 합니다.

알고리즘은 다음과 같습니다.

로봇을 사용
조류 예 1
일찍
. 아래로
. 오른쪽
. 위로
범죄자

로봇을 벽을 통해 인도하려고 하면 실패가 발생합니다. 로봇은 벽에 충돌하고 더 이상 명령을 따를 수 없습니다.


로봇이 A 지점에서 B 지점으로 미로를 통과하는 알고리즘을 작성해 보겠습니다.

로봇을 사용
A에서 B로
일찍
. 오른쪽

. 위로 ; 위로 ; 오른쪽 ; 아래로 ; 아래로 ; 오른쪽
. 위로 ; 위로 ; 오른쪽 ; 아래로 ; 아래로 ; 오른쪽
범죄자

각 섹션을 전달하는 명령은 한 줄로 그룹화할 수 있습니다. 이렇게 하면 알고리즘 기록이 단축되고 이해하기 쉬워집니다. 한 줄에 명령을 작성하려면 세미콜론으로 구분해야 합니다.

그들은 추가 작업을 위해 그것을 설정하는 법을 배웠습니다. 이제 간단한 명령을 사용하여 로봇에 대한 알고리즘을 컴파일하는 과정으로 직접 이동해 보겠습니다.

비디오 자습서 형식의 정보를 선호하는 경우 사이트에 비디오 자습서가 있습니다.

모든 연주자는 명령 시스템( 스키집행자의 명령 시스템). 실행자 명령 시스템- 수행자가 실행할 수 있는 모든 명령의 집합입니다. 예를 들어 훈련된 개를 생각해 보십시오. 그녀는 "앉아", "눕기", "다음" 등과 같은 몇 가지 명령을 실행하는 방법을 알고 있습니다. 이것이 그녀의 명령 시스템입니다.

간단한 로봇 명령

우리 로봇에는 명령 시스템도 있습니다. 오늘 우리가 살펴볼 간단한 로봇 명령. 총 5가지가 있습니다:

  • 위로
  • 왼쪽으로
  • 오른쪽
  • 칠하다

이러한 명령을 실행한 결과는 이름에서 명확합니다.

  1. 위로— 로봇을 한 칸 위로 이동
  2. 아래로— 로봇을 한 셀 아래로 이동
  3. 왼쪽으로— 로봇을 왼쪽으로 한 셀 이동
  4. 오른쪽— 로봇을 오른쪽으로 한 칸 이동
  5. 칠하다— 현재 셀(로봇이 있는 셀) 위에 페인트합니다.

이 명령은 키보드에서 작성하거나 바로 가기 키를 사용할 수 있습니다(키를 누르면 명령이 자동으로 삽입됨).

  • 위쪽 - 탈출, 위쪽(위쪽 화살표)
  • 아래쪽 - 탈출, 아래쪽(아래쪽 화살표)
  • 왼쪽 - 탈출, 왼쪽(왼쪽 화살표)
  • 오른쪽 - 탈출, 오른쪽(오른쪽 화살표)
  • 페인트 위에 - 탈출, 공간 (공간)

원하는 단축키 조합을 눌러야 합니다. 일반적인 방법이 아닙니다!우리는 동시에 키를 누르는 데 익숙하지만 여기에는 필요합니다. 순차적으로 누르다. 예를 들어 위쪽 명령을 입력하려면 Esc 키를 눌렀다가 놓은 다음 위쪽 화살표를 눌러야 합니다. 이것은 기억해야 합니다.

이제 로봇을 위한 첫 번째 알고리즘을 작성할 준비가 되었습니다. 나는 간단한 것으로 시작하는 것을 제안합니다 - 3개의 셀의 측면이 있는 정사각형을 그립니다. 가다!

아이돌, 잇을 런칭합니다. 프로그램 작성을 시작할 수 있습니까? 당연히 아니지! 우리는하지 않습니다! 해보자 나는 이것을 사용하는 것이 좋습니다:

이제 모든 것이 준비되었습니다. 프로그램 작성을 시작해 보겠습니다. 그녀가 이렇게 보이는 한

기호 "|" 삭제 알고리즘을 "Square"라고 부릅니다.

나는 시계 방향으로 움직이는 사각형을 그릴 것을 제안합니다. 먼저 다음 명령을 실행하여 현재 셀 위에 페인트합니다. 칠하다. 그런 다음 오른쪽으로 한 걸음 나아가 다시 셀 위에 페인트를 칠합니다. 그리고 다시 오른쪽으로 가서 페인트칠을 합니다.

프로그램을 실행하고 어떤 일이 일어나는지 봅시다. 눌러 실행 F9또는 도구 모음의 버튼

결과적으로 다음과 같이 표시되어야 합니다.

그러한 로봇 창이 없으면 도구 모음에서 " 로봇 창 표시" 또는 로봇 메뉴에서 " 로봇 창 표시". 우리는 더 계속합니다.

이제 아래로 이동하여 사각형의 오른쪽을 칠합니다.

아래로

칠하다

아래로

칠하다

그런 다음 왼쪽으로 이동하여 사각형의 아래쪽 테두리를 칠합니다.

왼쪽으로

칠하다

왼쪽으로

칠하다

도색되지 않은 셀이 하나 남아 있습니다. 그 위에 칠하자

위로

칠하다

모든 준비가 완료되었습니다! 결과적으로 우리 프로그램은 다음과 같습니다.

로봇을 사용

정사각형

일찍

칠하다

오른쪽

칠하다

오른쪽

칠하다

아래로

칠하다

아래로

칠하다




수행자 로봇에 대한 수행자 로봇 명령 시스템 수행자 로봇 이동 명령: 위, 아래, 왼쪽, 오른쪽 로봇이 한 셀을 위, 아래, 왼쪽, 오른쪽으로 이동합니다. 칠하기 명령 - 로봇이 서 있는 셀 위에 칠합니다. 조건의 유효성 확인: 위쪽이 비어 있음, 아래쪽이 비어 있음, 왼쪽이 비어 있음, 오른쪽이 비어 있음 로봇은 로봇이 위치한 셀에 벽이 없는 상태의 진실을 확인합니다. 형성된 복합 조건의 기록을 사용할 수 있습니다. 논리 연산그리고, 또는, 아닙니다.




Performer Robot 직접 환경 편집 모든 환경 편집 명령은 마우스를 사용하여 수행: 벽 넣기/제거 - 셀 경계선 클릭, 셀 페인트/지우기 - 셀 클릭, 로봇 이동 - 원하는 셀로 마우스 드래그 .


실행 로봇 로봇 메뉴 명령 로봇 표시 필드 로봇 모니터링 창을 표시합니다. 인쇄 환경에서 파일을 생성합니다. PDF 형식, 현재 상황을 컬러 또는 흑백으로 표시합니다. 파일에 환경 저장 텍스트 파일내부 *.fil 형식의 상황 설명과 함께. 이 파일은 나중에 시작 환경(시작 환경 변경 명령)으로 로드하거나 시작 환경을 편집할 때(시작 환경 편집 창 열기 명령) 로드할 수 있습니다. 시작 환경으로 변경 표준 대화 상자를 사용하여 새 시작 환경 파일 이름을 설정하고 새 시작 환경을 로드합니다. 시작 환경으로 돌아가기 시작 환경을 현재로 만듭니다.


수행자 로봇 관찰창의 현재 상황 이미지 현재 상황의 이미지는 로봇 관찰창의 작업 영역에 항상 완전히 배치됩니다. 작업 필드의 배경은 녹색입니다. 음영 처리된 셀은 회색입니다. 세포 사이에 가는 검은색 선이 있습니다. 벽 두꺼운 노란색 선으로 표시됩니다. 관찰 창의 작업 필드 셀에서 로봇은 마름모로 묘사됩니다.


Performer Robot 예제 1. A 지점에서 B 지점으로 로봇을 이동시키기 위해 "Knight's Move"라는 알고리즘을 생성해 보겠습니다(그림 3). 알고리즘의 형식은 다음과 같습니다(그림 4). 실행 후 로봇은 원하는 지점으로 이동합니다(그림 5). 출연자의 언어로 작성된 알고리즘을 프로그램이라고 합니다. 그림3그림4 그림5