KR20180013484A - ROBOT SYSTEM for SOFTWARE EDUCATION - Google Patents
ROBOT SYSTEM for SOFTWARE EDUCATION Download PDFInfo
- Publication number
- KR20180013484A KR20180013484A KR1020160097285A KR20160097285A KR20180013484A KR 20180013484 A KR20180013484 A KR 20180013484A KR 1020160097285 A KR1020160097285 A KR 1020160097285A KR 20160097285 A KR20160097285 A KR 20160097285A KR 20180013484 A KR20180013484 A KR 20180013484A
- Authority
- KR
- South Korea
- Prior art keywords
- algorithm
- robot
- user
- die
- input means
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0053—Computers, e.g. programming
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H33/00—Other toys
- A63H33/26—Magnetic or electric toys
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/021—Optical sensing devices
- B25J19/023—Optical sensing devices including video camera means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0069—Engineering, e.g. mechanical, electrical design
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/22—Games, e.g. card games
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63H—TOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
- A63H2200/00—Computerized interactive toys, e.g. dolls
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Educational Administration (AREA)
- Physics & Mathematics (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Toys (AREA)
- Manipulator (AREA)
Abstract
Description
본 발명은 교육 또는 놀이용 로봇에 관한 것으로, 특히, 아동인 사용자가 프로그래밍한 소프트웨어에 의해 규정된 알고리즘에 따른 동작을 수행하는 교육용 로봇 및 모션 입력 수단을 구비한 교육 로봇 시스템에 관한 것이다.In particular, the present invention relates to an educational robot system having an educational robot and motion input means for performing an operation according to an algorithm prescribed by software programmed by a user who is a child.
현재, 산업현장뿐만 아니라, 생활환경에서도 적용가능한 각종 로봇 개발이 활발하게 이루어지고 있고, 이와 같은 추세에 맞추어 학교, 학원, 과학단체 등의 각종 교육기관에서 청소년을 위한 로봇 교육, 로봇 제어를 위한 프로그래밍 교육이 이루어지고 있다.Currently, robots that can be applied not only in the industrial field but also in the living environment are being actively developed. In accordance with this trend, various educational institutions such as schools, academies, and scientific organizations have provided robot education for youth, programming Education is being done.
여기서, 로봇 교육이나 로봇 제어를 위한 프로그래밍 교육에는 교육용으로 개발된 로봇이 사용되는데, 이와 같은 교육용 로봇과 관련한 기술로는 대한민국 등록특허공보 등록번호 제10-0558904호 "걸어다니는 교육용 로봇", 공개특허공보 공개번호 제10-2010-0114169호 "교육용 로봇키트의 로봇 가상 설계방법", 공개번호 제10-2007-0025126호 "교육용 로봇의 프로그램 입력시스템", 등록실용신안공보 등록번호 제20-0353674호 "교육용 로봇장치 프로그램용 핸디키트" 등이 안출되어 있다.Here, robots developed for educational purposes are used for robot education and programming for robot control. Examples of technologies related to such educational robots include Korean Patent Registration No. 10-0558904 entitled " Walking Educational Robot & Publication No. 10-2010-0114169 entitled " Robot Virtual Design Method of Educational Robot Kit ", Publication No. 10-2007-0025126, "Program Input System of Educational Robot ", Registered Utility Model Registration No. 20-0353674 And "Handy Kit for Educational Robot Device Program".
그러나, 상기와 같은 종래의 교육용 로봇의 경우, 로봇 구동을 위한 프로그래밍이 C/C++, 베이직, 어셈블리, 자바와 같은 일반적인 프로그래밍 언어를 통해 수행됨에 따라, 전문적 프로그래밍에 준하는 수준의 지식이 필요하였다. 즉, 이와 같은 교육용 수단들은 최소한 청소년에 대한 준전문가 수준의 프로그래밍 교육에 적합한 수단들이다. 반면, 아동 특히 미취학 아동에 대하여 적합한 소프트웨어에 구현된 알고리즘에 대한 원리 교육의 수단이 되지 못하였다.However, in the case of the above conventional educational robot, since the programming for driving the robot is performed through a general programming language such as C / C ++, BASIC, assembly, and Java, a level of knowledge equivalent to professional programming was required. In other words, these educational tools are at least suitable for semi-professional programming education for adolescents. On the other hand, it has not been a means of principle education for algorithms implemented in appropriate software for children, especially for preschoolers.
특히, 미취학 아동 등 교육자가 어린 경우, 알고리즘 작성 교육에 흥미를 유발하기 어려웠고, 이벤트 발생 등과 같은 관념적인 알고리즘 개념을 직관적으로 이해하기가 어려웠다.Especially, when the educator such as preschooler is young, it is difficult to induce interest in the algorithm writing education, and it is difficult to intuitively understand the concept of the conceptual algorithm such as the event occurrence.
본 발명은 알고리즘 작성 교육에 흥미를 유발할 수 있도록 로봇 알고리즘 생성 실습을 위한 수단을 제공하고자 한다.The present invention aims to provide a means for training the generation of robot algorithms so as to generate interest in algorithm creation education.
또는, 본 발명은 아동이 이벤트 발생 같은 관념적인 알고리즘 개념을 익숙한 객체로 직관적으로 이해할 수 있는 소프트웨어 교육 로봇 시스템을 제공하고자 한다.Alternatively, the present invention aims to provide a software training robot system in which a child can intuitively understand conceptual algorithm concepts such as event generation as familiar objects.
본 발명의 일 측면에 따른 소프트웨어 교육 로봇 시스템은, 소정의 알고리즘에 따라 동작하는 로봇; 가속도를 감지할 수 있는 모션 입력 수단; 및 상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현하며, 상기 모션 입력 수단의 중력 방향에 대한 위치에 따라 알고리즘 생성 과정을 수정하는 알고리즘 생성 수단을 포함할 수 있다. A software training robot system according to an aspect of the present invention includes: a robot operating according to a predetermined algorithm; A motion input means capable of detecting an acceleration; And an algorithm for generating the algorithm by arranging the operation units constituting the algorithm according to a user's intention, wherein each of the operation units and the array process are arranged in an image And an algorithm generation means for modifying the algorithm generation process according to the position of the motion input means with respect to the gravitational direction.
여기서, 상기 모션 입력 수단은, 다면체 형상을 가지고 각 면에 특정되는 정보가 그려지고, 중력 가속도를 감지하여 각 면들 중 윗면 또는 바닥면을 식별하는 주사위 장치일 수 있다. Here, the motion input means may be a dice device having a polyhedron shape and information specific to each surface drawn, and sensing a gravitational acceleration to identify the top or bottom of each of the surfaces.
여기서, 상기 알고리즘 생성 수단은, 상기 주사위 장치의 윗면 또는 바닥면의 식별 값에 따라 사용자에게 과제를 제시할 수 있다. Here, the algorithm generating means may present the task to the user according to the identification value of the top surface or bottom surface of the die apparatus.
여기서, 상기 알고리즘 생성 수단은, 상기 주사위 장치의 윗면 또는 바닥면의 식별 값에 따라 사용자가 이용할 수 있는 상기 로봇에 대한 제어 명령을 디스플레이(제시)할 수 있다. Here, the algorithm generating means may display (present) a control command for the robot usable by the user in accordance with the identification value of the top surface or bottom surface of the die apparatus.
여기서, 상기 로봇은 상기 알고리즘에 따라 동작하다가, 상기 주사위 장치의 윗면 또는 바닥면의 식별 값의 입력을 기다릴 수 있다. Here, the robot may operate according to the algorithm and wait for the input of the identification value of the top surface or the bottom surface of the die apparatus.
여기서, 상기 알고리즘 생성 수단은, 상기 각 동작 단위들 및 배열 과정을 터치스크린으로 조작할 수 있는 이미지로 표현하는 어플리케이션이 설치된 스마트 폰일 수 있다. Here, the algorithm generating means may be a smart phone equipped with an application for representing each of the operation units and the arrangement process as an image manipulable by a touch screen.
여기서, 상기 알고리즘 생성 수단은, 상기 각 동작 단위들 및 배열 과정을 터치스크린으로 조작할 수 있는 이미지로 표시하며, 상기 로봇 상에 부착될 수 있는 디스플레이를 포함할 수 있다.Here, the algorithm generating means may include a display that displays each of the operation units and the arrangement process in an image that can be operated by a touch screen, and may be attached on the robot.
본 발명의 다른 측면에 따른 소프트웨어 교육 로봇 시스템은, 가속도를 감지할 수 있는 모션 입력 수단; 및 소정의 알고리즘에 따라 동작하며, 상기 모션 입력 수단이 감지한 가속도에 따라 동작하는 로봇; 상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현한 알고리즘 생성 수단을 구비하는 제어 수단을 포함할 수 있다. A software training robot system according to another aspect of the present invention includes: a motion input means capable of sensing an acceleration; And a robot operating according to a predetermined algorithm and operating according to the acceleration sensed by the motion input means; Wherein each of the operation units and the arrangement process are represented by an image that can be manipulated by a user so that the operation units constituting the algorithm are arranged according to a user's intention to generate the algorithm, And control means having an algorithm generating means.
여기서, 상기 알고리즘 생성 수단은, 상기 이미지로 표현되는 각 동작 단위들을 상기 모션 입력 수단에 가해진 모션에 따라 선택할 수 있다. Here, the algorithm generating means may select each operation unit represented by the image according to a motion applied to the motion input means.
여기서, 상기 제어 수단은, 상기 모션 입력 수단으로부터 소정의 움직임 패턴이 입력됨을 확인하면 상기 로봇에 대한 상기 알고리즘을 실행할 수 있다. Here, the control means can execute the algorithm for the robot if it is confirmed that a predetermined movement pattern is input from the motion input means.
여기서, 상기 로봇은 상기 제어 수단의 특정 명령 또는 상기 모션 입력 수단에 대한 특정 움직임 패턴이 입력되면, 상기 모션 입력 수단의 움직임에 따라 동작할 수 있다. Here, the robot may operate according to a motion of the motion input means when a specific command of the control means or a specific motion pattern for the motion input means is input.
여기서, 상기 모션 입력 수단은, 다면체 형상을 가지고 각 면에 특정되는 정보가 그려지고, 중력 가속도를 감지하여 각 면들 중 윗면 또는 바닥면을 식별하는 주사위 장치이며, 상기 주사위 장치에 움직임 패턴에 따라, 상기 주사위 장치의 주사위로서의 모드 및 움직임에 따라 상기 로봇을 동작시키는 모드가 선택될 수 있다. Here, the motion input means is a dice device having a polyhedron shape, in which information specified on each face is drawn, and detects a gravitational acceleration to identify the top or bottom of each of the faces, A mode for operating the robot in accordance with a mode and a motion as a die of the die apparatus may be selected.
여기서, 상기 소프트웨어 교육 로봇 시스템은, 상기 주사위 장치에 대한 연속적인 가속도 값들을 분석하여, 상기 주사위 장치가 주사위로서 굴려진 상황 여부를 판단하는 주사위 움직임 분석부를 더 포함할 수 있다. The software training robot system may further include a dice motion analyzer for analyzing successive acceleration values of the dice device and determining whether the dice device is rolled as a dice.
여기서, 상기 로봇은 상기 알고리즘에 따라 동작하다가, 상기 주사위 장치의 움직임에 따라 이동할 수 있다. Here, the robot may operate according to the algorithm, and may move according to the motion of the die apparatus.
상기 구성에 따른 본 발명의 교육용 로봇을 실시하면, 프로그래밍을 위한 별도의 장치나 개발 프로그램을 구비하지 않고, 소프트웨어 제작 실습 환경을 제공할 수 있는 이점이 있다.According to the teaching robot of the present invention having the above configuration, there is an advantage that a software production training environment can be provided without a separate device for programming or a development program.
또는, 상기 구성에 따른 본 발명의 교육 로봇 시스템을 실시하면, 로봇 구동 알고리즘 작성 실습의 흥미를 배가시킬 수 있는 이점이 있다.Or, if the teaching robot system of the present invention according to the above configuration is implemented, there is an advantage that the interest of the robot driving algorithm preparation exercise can be increased.
또는, 상기 구성에 따른 본 발명의 교육 로봇 시스템을 실시하면, 관념적인 알고리즘을 어린 실습자가 직관적으로 이해할 수 있는 이점이 있다. Alternatively, the teaching robot system of the present invention according to the above configuration has an advantage in that an introductory algorithm can be intuitively understood by a child practitioner.
도 1a 및 1b는 본 발명의 일 실시예에 따른 교육용 로봇을 구조를 도시한 개념도.
도 2는 본 발명의 사상에 따른 모션 입력 수단으로서 주사위의 일 실시예를 도시한 사시도.
도 3은 본 발명의 다른 실시예에 따른 교육 로봇 시스템의 구조를 도시한 개념도.
도 4는 본 발명의 또 다른 실시예에 따른 교육 로봇 시스템의 구조를 도시한 개념도.
도 5는 도 3 또는 도 4의 교육 로봇 시스템의 알고리즘 생성 화면.1A and 1B are conceptual diagrams showing a structure of an educational robot according to an embodiment of the present invention.
2 is a perspective view showing an embodiment of a die as a motion input means according to an aspect of the present invention;
3 is a conceptual diagram illustrating the structure of an educational robot system according to another embodiment of the present invention.
4 is a conceptual diagram illustrating the structure of a training robot system according to another embodiment of the present invention.
FIG. 5 is an algorithm generation screen of the training robot system of FIG. 3 or FIG. 4;
이하, 본 발명의 실시를 위한 구체적인 실시예를 첨부된 도면들을 참조하여 설명한다. Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
본 발명을 설명함에 있어서 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되지 않을 수 있다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. In describing the present invention, the terms first, second, etc. may be used to describe various elements, but the elements may not be limited by terms. Terms are for the sole purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
어떤 구성요소가 다른 구성요소에 연결되어 있다거나 접속되어 있다고 언급되는 경우는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해될 수 있다.It is to be understood that when an element is referred to as being connected or connected to another element, it may be directly connected or connected to the other element, but it may be understood that other elements may be present in between .
본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions may include plural expressions unless the context clearly dictates otherwise.
본 명세서에서, 포함하다 또는 구비하다 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것으로서, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해될 수 있다. It is to be understood that the term " comprising, " or " comprising " as used herein is intended to specify the presence of stated features, integers, But do not preclude the presence or addition of steps, operations, elements, components, or combinations thereof.
또한, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.In addition, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.
도 1a 및 1b는 본 발명의 일 실시예에 따른 교육용 로봇을 구조를 도시한다. 로봇의 진행 방향에 대하여, 도 1a는 정면을 도시한 것이며, 도 1b는 후면을 도시한 것이다. FIGS. 1A and 1B show a structure of an educational robot according to an embodiment of the present invention. Fig. 1A shows a front view of the robot, and Fig. 1B shows a rear view.
도시한 교육용 로봇은, 로봇 본체(110); 상기 로봇 본체의 위치 또는 방향을 변경시키는 이동 수단(120); 상기 로봇 본체에 부착되어 사용자의 지시에 따른 작업을 수행하는 작업 수단(140); 시간적 흐름에 따른 상기 이동 수단 또는 작업 수단의 수행 순서들로 이루어진 알고리즘이 저장된 알고리즘 저장부(180); 상기 알고리즘 저장부(180)에 저장된 알고리즘에 따라 상기 이동 수단 및 작업 수단을 제어하는 제어부(160); 상기 로봇 본체의 외면에 부착되며, 사용자의 수동 조작에 따라 상기 알고리즘을 생성하여 상기 알고리즘 저장부(180)에 저장하는 알고리즘 조합 조작 수단(320); 상기 저장되거나 생성되는 알고리즘을 사용자에게 표시하는 알고리즘 표시 수단(340); 및 외부의 모션 입력 장치로서 주사위로부터 데이터를 전달받기 위한 주사위 통신 모듈(170)을 포함할 수 있다.The illustrated educational robot includes a robot
도시한 교육용 로봇과, 가속도 감지 센서가 구비된 모션 입력 수단으로서, 다면체 형상을 가지고 각 면에 특정되는 정보가 그려지고, 중력 가속도를 감지하여 각 면들 중 놓여진 상태의 윗면(또는 바닥면)을 식별하는 주사위와 함께 소프트웨어 교육 로봇 시스템을 구성한다.As the motion input means provided with the education robot and the acceleration sensor shown in the figure, information specified on each surface having a polyhedron shape is drawn, and the upper surface (or the bottom surface) of the state in which the gravity acceleration is placed is identified A software training robot system is constructed with a dice to be played.
즉, 상기 교육 로봇 시스템은, 소정의 알고리즘에 따라 동작하는 로봇(100); 가속도를 감지할 수 있는 모션 입력 수단으로서 주사위(700); 및 상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현하며, 상기 주사위(700)의 중력 방향에 대한 위치(예: 윗면)에 따라 알고리즘 생성 과정을 수정하는 알고리즘 생성 수단(미도시)을 구비하는 것으로 규정할 수 있다.That is, the educational robot system includes: a
도 2는 본 발명의 사상에 따른 모션 입력 수단으로서 주사위의 일 실시예를 도시한다.Fig. 2 shows one embodiment of a die as a motion input means according to the teachings of the present invention.
도시한 상기 주사위(700)는 숫자 또는 기호가 표시된 6개의 외면을 가지는 정육면체 형상의 주사위 본체(701); 상기 주사위 본체에 가해지는 가속도를 감지하기 위한 가속도 센서(720); 및 상기 감지된 가속도 값을 외부로 전달하기 위한 통신 모듈(770)을 포함할 수 있다.The die 700 shown in the figure includes a
정육면체 주사위가 가장 널리 사용되는 형상이므로, 본 실시예에서도 정육면체 형상을 가지지만, 다른 구현에서 주사위 본체(701)는 정팔면체, 정12면체, 축구공 형상 등 다른 다면체 형상을 가질 수 있다. 상기 주사위(700)는 투척되어 정지된 상태에서 윗면을 값을 독출하기 위해 상기 가속도 센서값을 독출함이 일반적이지만, 정사면체 등의 경우 아랫면을 독출할 수도 있다.In this embodiment, the
단순히 상기 주사위(700)가 정지된 상태에서 윗면의 값만을 판정하는 구현의 경우, 상기 가속도 센서(720)는 상기 주사위 본체(701) 내에 설치된 형태의 단순 중력 가속도 감지 수단(예: 가장 저렴한 가속도 센서, 기계식 중력 감지 센서)일 수 있다.The
주사위(700)에 대하여 투척이 행해지는 것을 판단하거나, 주사위(700) 자체에 가해지는 모션을 감지하기 위해, 상기 가속도 센서(720)를 회전도 판단할 수 있는 자이로 센서 기능이 포함된 것으로 구현하거나, 자이로 센서나 회전 감지 센서를 추가로 구비할 수 있다. 이 경우, 상기 로봇(100)은 상기 회전 감지 센싱값을 해석하여 주사위가 투척되었는지 여부를 판정할 수 있다. 다른 구현에서는, 상기 주사위(700)가, 자신에 대한 연속적인 가속도 값들을 분석하여, 자신이 주사위로서 굴려진 상황 여부를 판단하는 주사위 움직임 분석부를 더 포함할 수 있다.A gyro sensor function capable of determining the rotation of the
상기 통신 모듈(770)은 블루투스, 지그비 통신 등 사용자가 로봇의 제어부(160)와 주사위를 동시에 사용하는 방 하나 면적의 공간에서 원할하게 데이터 통신을 수행할 수 있는 무선 통신 모듈로 구현될 수 있다.The
구현에 따라, 상기 주사위(700)는 자신의 상태를 표시하기 위한 표시 수단을 구비할 수 있다. 상기 표시 수단은 가장 저렴하게는 LED들일 수 있다. 예컨대, 상기 주사위는 상기 로봇(100)의 제어부(160)로부터 주사위를 투척할 시점이라는 것을 전달받으면, 투척 대기 상태임을 특정 색상을 발광(점멸)함으로써 사용자에게 알릴 수 있다.Depending on the implementation, the die 700 may have display means for indicating its status. The display means may be the least expensive LEDs. For example, when the dice are received from the
상기 주사위 본체(701)의 외면에는 숫자 정보가 고정적으로 기재됨이 일반적이지만, 다기능을 가지도록 구현한 주사위의 경우, 상기 주사위 본체(701)의 외면에 기재된 정보를 수정할 수 있도록, 외면들 전부 또는 일부를 디스플레이 패널로 구현할 수 있다.However, in the case of a multi-function die, it is preferable that all of the outer surfaces of the
상기 로봇 본체(110)는 상기 다른 구성요소들을 내장하여 보호하고, 상기 알고리즘 조합 조작 수단(320) 및 알고리즘 표시 수단(340)을 외면에 부착시켜 지지하는 역할을 수행할 수 있다.The robot
구현에 따라 외부의 스마트 기기와 데이터 통신을 수행하기 위한 무선 데이터 통신 모듈 및/또는 로봇의 위치를 판단하기 위한 위치 판단 수단을 더 포함할 수 있다. 또는, 상기 제어부(160)가 로봇의 위치를 판단하는 기능을 함께 수행할 수 있다. And may further include a position determiner for determining a position of the robot and / or a wireless data communication module for performing data communication with an external smart device according to an implementation. Alternatively, the
여기서, 상기 위치 판단 수단은, 로봇이 이동하는 영역에 설치된 위치 표시를 인식하기 위한 수단 및/또는 로봇의 이동에 따른 변위를 산정(예측)하는 수단을 포함할 수 있다. 상기 위치 표시로는, NFC 태그, RF 태그, 바코드, QR 코드, 도트 패턴, 인간도 인지 가능한 평면 이미지, 3D 프린터 등으로 제작될 수 있는 3차원 구조물 등이 될 수 있다. 이에 대응하여, 상기 위치 표시를 인식하기 위한 수단으로는, NFC 리더, RF 리더, 바코드 리더, QR 코드 리더, 도트 패턴 리더, 단안/양안 카메라(190) 및 이미지 처리 수단 등이 될 수 있다. Here, the position determining means may include means for recognizing a position display provided in an area where the robot moves, and / or means for estimating (estimating) a displacement caused by the movement of the robot. The position indication may be an NFC tag, an RF tag, a bar code, a QR code, a dot pattern, a planar image which can be recognized by humans, a three-dimensional structure that can be produced by a 3D printer or the like. In response to this, the NFC reader, the RF reader, the barcode reader, the QR code reader, the dot pattern reader, the monocular /
상기 작업 수단(140)은, 일반적인 산업용 로봇과 같은 작업을 위한 팔(arm) 같은 부가적인 기계적 동작을 위한 구조물이 될 수도 있으나, 교육용 목적 달성을 위해 비교적 제어가 단순하면서도 작업 효과를 용이하게 확인할 수 있는 인간이 인지하는 로봇의 외관을 변경할 수 있는 수단일 수 있다. 예컨대, 단순하게는 상기 작업 수단(140)은 발광할 수 있는 라이트이거나, 음향을 출력하는 스피커일 수 있다.The working means 140 may be a structure for additional mechanical operations such as an arm for an operation such as a general industrial robot. However, in order to achieve the educational purpose, the operation means 140 may be relatively simple in control, It can be a means for changing the appearance of a robot recognized by a human being. For example, simply, the working means 140 may be a light that can emit light or a speaker that outputs sound.
상기 이동 수단(120)은 로봇의 위치 변경 뿐만 아니라, 로봇이 지향하는 방향을 변경하는 기능을 함께 수행하거나, 로봇이 지향하는 방향을 변경하는 지향 수단과 별도로 구비될 수 있다. 전자의 경우, 상기 이동 수단(120)은 마이크로마우스 등에 널리 사용되는 방식의 제어 가능한 모터가 연결된 한 쌍의 바퀴들이다.The moving means 120 may be provided separately from the orientation means for changing the orientation of the robot, or for changing the orientation of the robot as well as changing the orientation of the robot. In the former case, the moving means 120 is a pair of wheels connected to a controllable motor in a manner widely used in a micromouse or the like.
상기 알고리즘 저장부(180)는 일반적인 메모리로 구현되거나, 상기 알고리즘 저장부(180) 및 제어부(160)를 단일 칩 프로세서로 구현할 수 있다.The
상기 제어부(160)는, 상기 알고리즘에 따라 상기 이동 수단 및 작업 수단에 대한 제어 신호를 생성하는 연산 처리를 위한 프로세서를 포함할 수 있으며, 구현에 따라, 상기 알고리즘 생성 수단의 알고리즘 생성 기능도 수행할 수 있다.The
본 발명의 사상을 구현하는데 중요한 역할을 수행하는 상기 알고리즘 생성 수단은 상기 제어부(160)의 내부 모듈로 구현되거나, 또는, 별도의 디바이스로 구현될 수 있다. 후자의 경우, 상기 알고리즘 생성 수단은 상기 로봇(100)과 물리적으로 독립된 장치로도 구현가능하지만, 상기 로봇(100)의 내부에 설치되는 것이 유리하다.The algorithm generating means, which plays an important role in implementing the idea of the present invention, may be implemented as an internal module of the
상기 제어부(160)는, 상기 저장된 알고리즘을 각 동작 단위로 리딩하여 순차적으로 실행하는 인터프리터를 포함할 수 있다.The
상기 알고리즘 조합 조작 수단(320)은, 각 입력 항목 마다 독립적으로 할당되는 입력 수단들을 구비할 수 있다. 여기서, 입력 수단은 프로그래밍 분야에서는 컨트롤이라는 명칭으로도 불려지며, 사용자의 손가락 등으로 입력하는 키나, 버튼 등을 포함하는 개념이다. The algorithm combination operation means 320 may include input means independently assigned for each input item. Here, the input means is also referred to as a control in the programming field, and includes a key input by the user's finger, a button, and the like.
상기 알고리즘 조합 조작 수단(320)은, 각 입력 항목 마다 독립적인 물리적인 키(예: 누름 버튼, 터치키)가 할당되는 형태로, 기능키(322), 커서 이동을 위한 방향키(324), 알고리즘 상 동작 단위를 입력하기 위한 동작 단위키(326)를 구비할 수 있다.The algorithm combination operation means 320 includes a
상기 기능키(322)는 사용자의 동작 단위 입력 완료 및/또는 각 동작 단위을 세부 설정의 완료를 지시하는 확인키 및 이전 입력을 취소하는 취소키를 포함할 수 있다.The
상기 방향키(324)는, 상기 동작 단위키(326)로 선택된 각 동작 단위 및 알고리즘 상 위치 지정을 위한 커서를 상하좌우로 움직이기 위한 화살표키들을 포함할 수 있다.The direction key 324 may include arrow keys for moving the cursor for up / down / right / left movement for designating each operation unit and algorithm position selected by the
상기 동작 단위키(326)는, 이동 동작인, 전진, 후진, 좌회전, 우회전, 뒤로 돌기 등에 대한 키들과, 작업 동작인, 라이트 온, 경고음 출력, 음향 출력, 동영상 재생 등에 대한 키들과, 알고리즘 순서도 설정을 위해 사용되는, 루프(반복작업설정), 점프, 조건 판단에 따른 분기 등에 대한 키들을 포함할 수 있다.The
여기서, 상기 작업 동작에 할당된 키들 및 알고리즘 순서도 설정을 위해 사용되는 키들의 개수가 너무 많으면, 물리적으로 로봇의 외면에 배치하기가 곤란하므로, 빈번히 사용되는 키들은 별도의 개별 키를 할당하고, 사용 빈도가 낮은 키들은 상기 기능키 및 방향키 조작에 의해 선택될 수 있도록 구현할 수도 있다. 예컨대, 특수키 입력을 지시하는 키를 입력하면, 해당 특수키들이 상기 알고리즘 표시수단(340)에 디스플레이되고, 상기 방향키(324)를 이용하여 상기 디스플레이된 특수키들중 하나에 커서를 위치시키고, 상기 확인키(322)를 입력하는 과정으로 사용 빈도가 낮은 특수키를 입력할 수 있다. If the number of keys allocated to the task operation and the algorithm flow chart is too large, it is difficult to physically place the keys on the outer surface of the robot. Therefore, frequently used keys are assigned separate private keys, The low frequency keys may be selected by the function key and direction key operation. For example, when a key for inputting a special key is input, the corresponding special keys are displayed on the algorithm display means 340, the cursor is positioned in one of the displayed special keys using the direction key 324, A special key having a low frequency of use can be input in the process of inputting the
상기 각 키는 다른 키들과 시각적으로 구별되도록 고유 이미지가 할당될 수 있다.Each key may be assigned a unique image so as to be visually distinguishable from other keys.
사용자는 상기 키들을 입력하여, 상기 알고리즘을 구성하는 동작 단위들을 사용자의 조작(의도)에 따라 배열하여 상기 알고리즘을 생성하는 과정에 있어서, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정이 상기 알고리즘 표시 수단(340)에 이미지로 표현될 수 있다. 예컨대, 사용자는 필요한 키들을 순차적으로 입력하여 상기 알고리즘 표시 수단(340)의 화면 영역에 시간적으로 연속되어 실행시키려는 동작 단위들을 직선적으로 배열할 수 있다.The user inputs the keys to generate the algorithm by arranging the operation units constituting the algorithm according to the user's intention (intention), and in the process of generating the algorithm, And an arrangement process may be represented by the algorithm display means 340 as an image. For example, the user may sequentially input necessary keys and linearly arrange the operation units to be continuously executed in the screen area of the algorithm display means 340 in a temporal manner.
구현에 따라, 상기 알고리즘 조합 조작 수단(320)은, 상기 화면 영역에 상기 각 동작 단위들을 이미지로 출력하고(즉, 아이콘들 출력), 사용자가 상기 출력된 이미지들(즉, 아이콘들)을 드래그 앤 드롭 방식으로 조작하여 배열하도록 지원할 수 있다. 이 경우, 상기 알고리즘 표시 수단(340)은 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 터치 스크린으로 조작할 수 있는 이미지로 표현하는 터치 스크린일 수 있다.According to the implementation, the algorithm
구현에 따라, 사용자는 알고리즘 화면 영역에 시간적으로 연속되어 실행시키려는 동작 단위들을 직선적으로 배열하되, 아이콘 화면 영역의 각 동작 단위 아이콘을 알고리즘 화면 영역으로 드래그 앤 드롭하여 배열상의 해당 위치에 배치할 수 있다.According to the implementation, the user can linearly arrange the operation units to be executed continuously in the algorithm screen region in a temporally sequential manner, and drag and drop the respective operation unit icons in the icon screen region into the algorithm screen region and arrange them at corresponding positions in the array .
상기 주사위 통신 모듈(170)은 상기 주사위의 통신 모듈(770)과 협력하여 무선 데이터 통신 채널을 형성할 수 있다. 예컨대, 블루투스 통신 모듈 또는 지그비 통신 모듈일 수 있다.The
다음, 상술한 교육 로봇 시스템을 이용한 알고리즘 작성 실습 과정의 일 례들을 설명하겠다. Next, an example of an algorithm preparation exercise process using the above-described educational robot system will be described.
첫째 실습예에서는, 상기 알고리즘 생성 수단이, 목적지를 정한 후 주사위(700)와 로봇(100)을 무선 연결하고, 주사위를 던져 나오는 숫자만큼 로봇의 등에 설치되어 있는 터치 스크린창 또는 디스플레이(340)에 로봇의 동작(앞으로 전진, 뒤로 후진, 우회전, 좌회전 등)을 제어하는 동작 옵션 블록들이 랜덤하게 디스플레이된다. 이후, 사용자(학습자)가 상기 터치스크린 또는 키를 조작하여, 상기 동작 옵션 블록들의 동작 순서를 선택하여 로봇 동작을 위한 알고리즘을 짜도록 할 수 있다. 여러 학습자들이 로봇(100) 및 주사위(700)를 이용하여 상술한 과정으로 각자 알고리즘을 짜고, 각 알고리즘을 수행하였을 때, 로봇이 가장 먼저 목적지에 도달하는 사람이 승리하게 될 수 있다.In the first practical example, the algorithm generating means wirelessly connects the
다음 실습예에서는, 상기 알고리즘 생성 수단이, 상기 주사위(700)의 윗면 값에 따라 사용자에게 과제(알고리즘 짜는 과제)를 제시할 수 있다. 예컨대, 상기 주사위(700)의 윗면 값에 따라 로봇(100)이 목적지까지 감에 있어 경유하여야 하는 경유지를 설정할 수 있다. 또는, 상기 주사위(700)의 윗면 값에 따라 로봇(100)이 목적지까지 가는데 필요한 알고리즘을 생성하는데 있어, 사용 불가 동작 옵션 블록을 설정할 수 있다. 또는 반대로, 상기 주사위(700)의 윗면 값에 따라 사용자가 이용할 수 있는 상기 로봇(100)에 대한 제어 명령(동작 옵션 블록)을 디스플레이(제시)할 수 있다.In the next exercise, the algorithm generating means may present the task (algorithmic task) to the user according to the top value of the
상술한 2 실습예에서는 상기 알고리즘 생성 수단의 동작이 상기 주사위(700)의 윗면 값에 의해 영향을 받는다. 다음 사용예에서는 기 생성된 알고리즘을 수행하는 상기 로봇의 제어부(160)의 동작이 상기 주사위(700)의 윗면 값에 의해 영향을 받는다.In the two practice examples described above, the operation of the algorithm generating means is influenced by the upper surface value of the
이 경우, 상기 로봇(100)은 상술한 과정들로 기 작성되어 알고리즘 저장부(180)에 저장된 알고리즘에 따라 동작하다가, 상기 주사위(700)의 윗면 값의 입력, 즉 주사위 투척을 대기하고, 주사위(700)가 투척되면 투척후 윗면 값에 따른 동작을 수행할 수 있다. 예컨대, 로봇(100)이 별도의 구동 보드의 정해진 경로를 진행하는 경우, 상기 경로상 소정 지점에 정지한 후, 주사위(700) 투척을 대기하고, 투척되어 나온 주사위(700)의 윗면 숫자 값을 상기 주사위(700)로부터 전달받아, 상기 윗면 숫자 값만큼 상기 소정 지점에서 상기 경로를 따라 전진할 수 있다. In this case, the
예컨대, 다수개의 각종 동작 옵션 블록들로 기 구성된 알고리즘에 따라 로봇(100)을 동작시킴에 있어, 로봇(100)의 이동 경로상 특정 장소나 특정 시점, 특정 순서에 도달하는 경우, 또는 랜덤하게 특정 동작 옵션 블록에 대한 작업을 수행함에 있어 주사위 투척을 대기하고, 투척후 주사위(700) 윗면 숫자 값에 따라, 상기 특정 동작 옵션 블록의 동작 회수를 결정하여, 로봇 동작을 제어할 수 있다.(예: 윗면 숫자 값의 회수만큼 칸 전진, 윗면 숫자 값의 회수만큼 90도 좌회전 등)For example, when the
다음, 상기 주사위(700)가 주사위 자체에 가해지는 모션을 감지할 수 있는 자이로 센서 등을 구비한 경우, 모션을 이용한 로봇 알고리즘 생성/실행 과정에 적용하는 구현들을 설명하겠다. 본 실시예도 도 1a, 1b에 도시한 로봇(100) 및 도 2에 도시한 주사위(700)에 의해 수행될 수 있으며, 실시예 1과 중복되는 로봇(100) 및 주사위(700)의 세부 구조 설명은 생략하겠다.Hereinafter, implementations of the present invention applied to a robot algorithm creation / execution process using a motion when the
이 경우, 상기 교육 로봇 시스템은, 가속도를 감지할 수 있는 모션 입력 수단; 소정의 알고리즘에 따라 동작하며, 상기 모션 입력 수단이 감지한 가속도에 따라 동작하는 로봇(100); 및 상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현한 알고리즘 생성 수단을 구비하는 제어 수단을 구비하는 것으로 규정할 수 있다. 여기서, 상기 제어 수단은 도 1의 제어부(160)에 속하거나, 이를 포함할 수 있다.In this case, the educational robot system may include motion input means for sensing an acceleration; A robot (100) operating in accordance with a predetermined algorithm and operating in accordance with the acceleration sensed by the motion input means; And an algorithm for generating the algorithm by arranging the operation units constituting the algorithm according to a user's intention, wherein each of the operation units and the array process are arranged in an image And control means having an algorithm generating means represented therein. Here, the control means may belong to or may include the
다음, 본 실시예의 교육 로봇 시스템을 이용한 알고리즘 작성 실습 과정의 일 례들을 설명하겠다. Next, an example of an algorithm creation exercise process using the training robot system of the present embodiment will be described.
본 실시예의 경우 상기 생성된 알고리즘에 따라 로봇을 동작시킴에 있어, 상기 주사위(700)에 가해지는 움직임 패턴(모션)값에 따라 수정을 가할 수 있다. 이 경우, 상기 주사위(700)에 구비된 가속도 센서(720)는 주사위에 가해지는 다소 복잡한 연속적인 모션을 감지할 수 있는 성능을 가져야 한다.In the present embodiment, in operation of the robot according to the generated algorithm, correction may be performed according to a motion pattern value applied to the
예컨대, 상기 로봇(100)의 알고리즘 생성 수단은, 상기 이미지로 표현되는 각 동작 단위들을 상기 모션 입력 수단에 가해진 모션에 따라, 알고리즘을 짜는데 사용할 동작 단위로 선택할 수 있다.For example, the algorithm generation means of the
예컨대, 상기 로봇(100)의 알고리즘 생성 수단은, 디스플레이창에 나오는 여러 개의 동작에 대해 주사위의 모션(위, 아래, 좌, 우)으로 그 동작의 순서를 선택할 수 있도록 할 수 있다.For example, the algorithm generating means of the
예컨대, 상기 로봇(100)의 제어 수단은, 상기 모션 입력 수단으로부터 소정의 움직임 패턴이 입력됨을 확인하면 상기 로봇에 대한 상기 알고리즘을 실행할 수 있다. 즉, 알고리즘 생성을 위한 동작 단위들에 대한 모든 선택이 종료된 후 스마트로봇의 동작 개시를 주는 신호도 주사위의 특정 모션(원으로 한바퀴 돌리기 등)을 인식하여, 작성된 알고리즘에 따른 동작을 개시하도록 할 수 있다.For example, the control means of the
예컨대, 상기 로봇(100)의 제어 수단은, 상기 주사위(700)에 움직임 패턴(모션)에 따라, 상기 주사위의 주사위로서의 모드(실시예 1에 따른 모드) 및 움직임에 따라 상기 로봇을 동작시키는 모드(실시예 2에 따른 모드)를 선택할 수 있다.For example, the control means of the
예컨대, 상기 로봇(100)의 제어 수단은, 주사위(700)의 윗면 숫자 만큼 스마트 로봇(100)의 동작을 주사위(700)로 직접 제어하는 것도 가능하며, 이때는 주사위(700)의 상하좌우 또는 좌회전 등의 움직임을 인식하여 스마트 로봇(100)이 그 동작대로 움직이게 할 수 있다. 보다, 구체적으로, 투척된 주사위(700)의 윗면 숫자에 비례하는 시간 동안, 상기 주사위에 가해지는 모션에 의해, 상기 로봇(100)이 이동하도록 구현할 수 있다.For example, the control means of the
예컨대, 상기 로봇(100)의 제어 수단은, 상기 주사위(700)의 움직임에 따라 상기 로봇(100)이 움직이도록 제어할 수 있다. 이 경우, 상기 로봇(100)은 특정 명령 또는 상기 주사위(700)에 대한 특정 움직임 패턴(예: 위아래로 2회 흔들기)이 입력되면, 상기 주사위(700)에 가해지는 움직임에 따라 동작하게 된다. 상술한 과정을 로봇(100) 관점에서 살펴보면, 상기 로봇(100)은 상기 알고리즘에 따라 동작하다가, 주사위(700)와 움직임 동기를 뜻하는 명령이 입력된 후, 상기 주사위(700)의 움직임에 따라 이동하게 된다.For example, the control means of the
실시예 1 또는 실시예 2의 교육 로봇 시스템에서는 로봇의 뒷면에 부착된 형태의 알고리즘 조합 조작 수단(320); 알고리즘 표시 수단(340); 및 제어부(180)를 구비하는 구현을 구체적으로 설명하였다. In the educational robot system according to the first or second embodiment, algorithm combination operation means 320 attached to the back surface of the robot; Algorithm display means 340; And a
반면, 본 실시예의 교육 로봇 시스템에서는 실시예 1의 상기 알고리즘 조합 조작 수단(320); 알고리즘 표시 수단(340); 및 제어부(160) 중 하나 이상을 스마트 폰이나 다른 스마트 기기에 설치된 어플리케이션 형태로 구현할 수 있다. 마찬가지로, 실시예 2의 상기 알고리즘 생성 수단; 및 제어부(160)를 동일한 어플리케이션 형태로 구현할 수 있다.On the other hand, in the training robot system of the present embodiment, the algorithm combination operation means 320 of the first embodiment; Algorithm display means 340; And the
이 경우 스마트 폰에서 사용되는 근거리 통신 수단(예: 와이파이, 블루투스 통신 등)을 이용하여 상기 로봇과 데이터 통신을 수행하게 된다.In this case, data communication with the robot is performed using a local communication means (e.g., Wi-Fi, Bluetooth communication, etc.) used in a smart phone.
도 3은 본 실시예의 일 구현예에 따른 교육 로봇 시스템의 구조를 도시하고, 도 4는 본 실시예의 다른 구현예에 따른 교육 로봇 시스템의 구조를 도시한다.FIG. 3 illustrates a structure of an educational robot system according to an embodiment of the present invention, and FIG. 4 illustrates a structure of an educational robot system according to another embodiment of the present invention.
본 실시예의 경우, 예컨대 도 3에 도시한 바와 같이, 상기 알고리즘 생성 수단을, 각 동작 단위들 및 배열 과정을 터치스크린으로 조작할 수 있는 이미지로 표현하는 어플리케이션이 설치된 스마트 폰으로 규정할 수 있다.In the case of this embodiment, for example, as shown in Fig. 3, the algorithm generating means can be defined as a smart phone equipped with an application that expresses each operation unit and an arrangement process as an image that can be operated by a touch screen.
또는, 도 4에 도시한 바와 같이, 상기 교육용 로봇이 로봇 본체의 외면에 부착된 스마트 기기(예: 스마트 폰, 태블릿) 및 상기 스마트 기기에 설치된 본 발명의 사상에 따른 알고리즘 작성을 수행하는 어플리케이션을 구비하는 것으로 규정할 수 있다. 이 경우, 상기 알고리즘 조합 수단 및 알고리즘 표시 수단은 상기 스마트 기기에 구비된 하드웨어/소프트웨어를 엑세스할 수 있는 소프트웨어 모듈로 구현될 수 있다.Alternatively, as shown in FIG. 4, the educational robot may include a smart device (e.g., smart phone, tablet) attached to the outer surface of the robot body and an application for performing algorithm creation according to the idea of the present invention installed in the smart device And the like. In this case, the algorithm combination means and the algorithm display means may be implemented by a software module capable of accessing hardware / software provided in the smart device.
예컨대, 도 1에 도시한 상기 알고리즘 조합 수단을 구성하는 각 키들은 상기 스마트 기기에 구비된 터치스크린상의 소프트웨어 버튼들로 구현될 수 있다. For example, each of the keys constituting the algorithm combination means shown in FIG. 1 may be implemented by software buttons on a touch screen provided in the smart device.
예컨대, 상기 로봇(900) 본체의 전진 방향 기준 뒷면에는 상기 스마트 기기를 부착하기 위한 홀더(970)가 구비될 수 있다. 이 경우, 상기 로봇(900)은 상기 스마트 기기와 근거리 무선 통신(Wifi, 지그비, NFC, 블루투스 등)을 수행하기 위한 유선 또는 무선 데이터 통신 모듈을 더 구비할 수 있다. 유선 데이터 통신을 위해 상기 홀더(970)에 데이터 통신을 위한 접촉부를 구비할 수 있다.For example, a
상기 스마트 기기용 어플리케이션은, 상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 터치 스크린으로 조작할 수 있는 이미지로 표현할 수 있다.The smart device application generates each of the operation units constituting the algorithm according to a user's intention to generate the algorithm, Can be expressed as an image that can be manipulated by the user.
도 5는 도 3 또는 도 4의 교육 로봇 시스템의 알고리즘 생성 화면이다. 즉, 상기 어플리케이션을 이용하여 동작 단위들을 배열하여 하나의 알고리즘을 생성하는 과정을 도시한다. 5 is an algorithm creation screen of the training robot system of FIG. 3 or FIG. 4. FIG. That is, a process of creating an algorithm by arranging operation units using the application is shown.
도시한 바와 같이, 상기 어플리케이션은, 상기 스마트 기기의 화면에 상기 각 동작 단위들을 이미지로 출력하고(즉, 아이콘들 출력), 사용자가 상기 출력된 이미지들(즉, 아이콘들)을 드래그 앤 드롭 방식으로 조작하여 배열하도록 지원할 수 있다.As shown in the figure, the application displays each of the operation units on the screen of the smart device as an image (i.e., outputs icons), and the user can drag and drop the displayed images (i.e., icons) As shown in Fig.
예컨대, 도시한 바와 같이, 좌측 화면(아이콘 영역, IR)에 이용 가능한 동작 단위 아이콘들을 출력하고, 우측 화면(알고리즘 영역, AR)에 생성되는 도중의 알고리즘 배열을 출력할 수 있다.For example, as shown in the drawing, the operation unit icons available in the left screen (icon area IR) can be output, and the algorithm arrangement in the middle of the right screen (algorithm area, AR) can be output.
사용자는 알고리즘 영역(AR)에 시간적으로 연속되어 실행시키려는 동작 단위들을 직선적으로 배열하되, 아이콘 영역(IR)의 각 동작 단위 아이콘을 알고리즘 영역(AR)으로 드래그 앤 드롭하여 배열상의 해당 위치에 배치할 수 있다.The user linearly arranges the operation units to be executed continuously in the algorithm area AR temporally, and arranges the operation unit icons of the icon area IR into the algorithm area AR by dragging and dropping them at corresponding positions on the array .
도시한 알고리즘 영역(AR)에 생성된 알고리즘은, A라고 특정된 지점에 도착할 때까지 로봇을 계속 전진시키고, A라고 특정된 지점에 도달하면, 라이트(도 1의 140)를 턴온시키게 하는 알고리즘이다. The algorithm generated in the illustrated algorithm area AR is an algorithm that keeps the robot moving forward until it reaches the point specified by A and turns on the light (140 in FIG. 1) when it reaches the point specified by A .
상술한 알고리즘 생성 동작을 위해, 상기 어플리케이션은, 상기 스마트 기기의 터치스크린 디스플레이 상에 상술한 알고리즘 배열을 위한 인터페이스 화면을 출력하고, 상기 인터페이스 화면에 출력된 아이콘들에 대한 터치스크린 입력을 접수할 수 있다. For the above algorithm generation operation, the application outputs an interface screen for the above-described algorithm arrangement on the touch screen display of the smart device, and accepts a touch screen input for the icons output on the interface screen have.
살펴본 바와 같이, 통상적인 순서도 상의 알고리즘을 구성하는 각 동작 단위들을 아이콘으로 그래픽화하여 소프트웨어 교육의 효과를 달성할 수 있다. As described above, the effect of the software education can be achieved by graphizing each operation unit constituting the algorithm in the conventional flowchart into an icon.
일반적인 알고리즘에서 널리 사용되는 "조건에 따른 분기"가 적용될 수 있고, 알고리즘에 "조건에 따른 분기"에 대한 아이콘이 추가되는 경우, 전체 알고리즘 형상은 트리 형상을 가질 수 있다.If a "conditional branch" that is widely used in general algorithms can be applied and an icon for "conditional branching" is added to the algorithm, the entire algorithmic shape can have a tree shape.
아동인 사용자가 직관적으로 구별할 수 있도록, 상기 어플리케이션은, 시작, 종료, 이동 동작, 단순 수행 작업, 조건 판단에 따른 분기, 점프(포워드 점프 및 백워드 점프) 등을 포함하는 상기 각 동작 단위에 대하여 서로 다른 동작들이 시각적으로 구별되도록 이미지 블록들(예: 아이콘)을 할당할 수 있다.In order for a user who is a child to intuitively distinguish the application, the application may be configured to perform various operations such as start, end, move operation, simple operation, branching according to condition judgment, jump (forward jump and backward jump) (E.g., icons) so that different actions are visually distinguishable.
실시예 1과 유사하게, 상기 어플리케이션은, IR 영역에 배치된 아이콘들에 따라 상기 로봇(900)을 위한 제어 알고리즘을 생성하는데, 상기 주사위(700) 투척값에 따라 수정을 가하거나, 상기 생성된 알고리즘에 따라 로봇을 동작시킴에 있어, 상기 주사위(700) 투척값에 따라 수정을 가할 수 있다. Similar to embodiment 1, the application generates a control algorithm for the
예컨대, 상기 주사위 투척 대기를 나타내는 아이콘 보다 나중에 배치된 아이콘들 중 투척된 주사위의 윗면 숫자에 해당되는 개수 만큼의 아이콘들만을 상기 알고리즘 생성에 이용하고, 그 뒤 아이콘들은 알고리즘 생성에 이용하지 않을 수 있다. For example, only a number of icons corresponding to the top face number of the thrown dice among the icons arranged later than the icon indicating the die throwing wait time are used for the algorithm creation, and the icons thereafter may not be used for generating the algorithm .
예컨대, 실습자가 투척한 주사위(700)의 윗면 숫자에 따른 회수로 상기 주사위 투척 대기 직전(또는 직후)의 동작 단위에 해당하는 동작을 반복할 수 있다.For example, the operation corresponding to the operation unit immediately before (or immediately after) the waiting for throwing the die may be repeated in accordance with the number of the upper face of the die 700 that the practitioner has thrown.
실시예 2와 유사하게, 상기 어플리케이션은, 생성된 알고리즘에 따라 로봇(90)을 동작시킴에 있어, 상기 주사위(700)에 가해지는 움직임 패턴(모션)값에 따라 수정을 가할 수 있다. 이 경우, 상기 주사위(700)에 구비된 가속도 센서(720)는 주사위에 가해지는 다소 복잡한 연속적인 모션을 감지할 수 있는 성능을 가져야 한다.Similar to the second embodiment, the application may modify the robot 90 according to the generated algorithm according to a motion pattern value applied to the
예컨대, 상기 어플리케이션은, 상기 이미지로 표현되는 각 동작 단위들을 상기 모션 입력 수단에 가해진 모션에 따라, 알고리즘을 짜는데 사용할 동작 단위로 선택할 수 있다.For example, the application may select each operation unit represented by the image as an operation unit to be used for composing the algorithm according to the motion applied to the motion input means.
예컨대, 상기 어플리케이션은, 디스플레이창에 나오는 여러 개의 동작에 대해 주사위의 모션(위, 아래, 좌, 우)으로 그 동작의 순서를 선택할 수 있도록 할 수 있다.For example, the application may be able to select a sequence of actions for a plurality of actions in a display window with motion of the dice (up, down, left, right).
상기한 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술사상의 범위에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.It should be noted that the above-described embodiments are intended to be illustrative, not limiting. In addition, it will be understood by those of ordinary skill in the art that various embodiments are possible within the scope of the technical idea of the present invention.
100 : 로봇 110 : 로봇 본체
120 : 이동 수단 140 : 작업 수단
160 : 제어부 180 : 알고리즘 저장부
700 : 주사위 720 : 가속도 센서100: robot 110: robot body
120: moving means 140: working means
160: control unit 180: algorithm storage unit
700: Dice 720: Acceleration sensor
Claims (8)
가속도를 감지할 수 있는 모션 입력 수단; 및
상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현하며, 상기 모션 입력 수단의 중력 방향에 대한 위치에 따라 알고리즘 생성 과정을 수정하는 알고리즘 생성 수단
을 포함하는 소프트웨어 교육 로봇 시스템.
A robot operating according to a predetermined algorithm;
A motion input means capable of detecting an acceleration; And
Wherein each of the operation units and the arrangement process are arranged in an image that can be manipulated by a user so that the operation units constituting the algorithm are arranged according to a user's intention to generate the algorithm, And an algorithm generation means for modifying an algorithm generation process according to a position of the motion input means with respect to a gravitational direction,
A software training robot system including.
상기 모션 입력 수단은, 다면체 형상을 가지고 각 면에 특정되는 정보가 그려지고, 중력 가속도를 감지하여 각 면들 중 윗면 또는 바닥면을 식별하는 주사위 장치인 소프트웨어 교육 로봇 시스템.
The method according to claim 1,
Wherein the motion input means is a die device that has a polyhedron shape and in which information specified on each face is drawn and which detects a gravitational acceleration and identifies an upper surface or a bottom surface of each surface.
상기 알고리즘 생성 수단은,
상기 주사위 장치의 윗면 또는 바닥면의 식별 값에 따라 사용자에게 과제를 제시하는 소프트웨어 교육 로봇 시스템.
3. The method of claim 2,
Wherein the algorithm generating means comprises:
And presenting the task to the user according to the identification value of the top or bottom surface of the dice device.
상기 알고리즘 생성 수단은,
상기 주사위 장치의 윗면 또는 바닥면의 식별 값에 따라 사용자가 이용할 수 있는 상기 로봇에 대한 제어 명령을 제시하는 소프트웨어 교육 로봇 시스템.
3. The method of claim 2,
Wherein the algorithm generating means comprises:
And presents control commands for the robot that the user can use according to the identification value of the top or bottom surface of the die apparatus.
상기 로봇은 상기 알고리즘에 따라 동작하다가, 상기 주사위 장치의 윗면 또는 바닥면의 식별 값의 입력을 기다리는 소프트웨어 교육 로봇 시스템.
3. The method of claim 2,
Wherein the robot operates in accordance with the algorithm and waits for input of an identification value on the top or bottom of the die apparatus.
소정의 알고리즘에 따라 동작하며, 상기 모션 입력 수단이 감지한 가속도에 따라 동작하는 로봇;
상기 알고리즘을 구성하는 동작 단위들을 사용자의 의도에 따라 배열하여 상기 알고리즘을 생성하되, 상기 각 동작 단위들을 직관적으로 배열할 수 있도록 상기 각 동작 단위들 및 배열 과정을 사용자가 조작할 수 있는 이미지로 표현한 알고리즘 생성 수단을 구비하는 제어 수단;
을 포함하는 소프트웨어 교육 로봇 시스템.
A motion input means capable of detecting an acceleration; And
A robot operating according to a predetermined algorithm and operating in accordance with an acceleration sensed by the motion input means;
Wherein each of the operation units and the arrangement process are represented by an image that can be manipulated by a user so that the operation units constituting the algorithm are arranged according to a user's intention to generate the algorithm, Control means having an algorithm generating means;
A software training robot system including.
상기 알고리즘 생성 수단은, 상기 이미지로 표현되는 각 동작 단위들을 상기 모션 입력 수단에 가해진 모션에 따라 선택하는 소프트웨어 교육 로봇 시스템.
The method according to claim 6,
Wherein the algorithm generating means selects each operation unit represented by the image according to a motion applied to the motion input means.
상기 제어 수단은, 상기 모션 입력 수단으로부터 소정의 움직임 패턴이 입력됨을 확인하면 상기 로봇에 대한 상기 알고리즘을 실행하는 소프트웨어 교육 로봇 시스템.
The method according to claim 6,
Wherein the control means executes the algorithm for the robot when it is confirmed that a predetermined movement pattern is input from the motion input means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160097285A KR20180013484A (en) | 2016-07-29 | 2016-07-29 | ROBOT SYSTEM for SOFTWARE EDUCATION |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160097285A KR20180013484A (en) | 2016-07-29 | 2016-07-29 | ROBOT SYSTEM for SOFTWARE EDUCATION |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180013484A true KR20180013484A (en) | 2018-02-07 |
Family
ID=61204065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160097285A KR20180013484A (en) | 2016-07-29 | 2016-07-29 | ROBOT SYSTEM for SOFTWARE EDUCATION |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20180013484A (en) |
-
2016
- 2016-07-29 KR KR1020160097285A patent/KR20180013484A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20180013487A (en) | ROBOT SYSTEM for SOFTWARE EDUCATION | |
KR20170036308A (en) | ROBOT for SOFTWARE EDUCATION and ROBOT SYSTEM for SOFTWARE EDUCATION | |
JP6401841B1 (en) | Information processing method, computer, and program | |
CN210200069U (en) | Programmable robot | |
JP6877688B2 (en) | Programming device and its control program, programming method | |
US20200376398A1 (en) | Interactive plush character system | |
JP6877689B2 (en) | Programming device and its control program, programming method | |
US10835810B2 (en) | Interactive videogame using a physical object with touchpoints | |
JP2018072992A (en) | Information processing method and equipment and program making computer execute the information processing method | |
US20170087455A1 (en) | Filtering controller input mode | |
US10610777B2 (en) | Interactive videogame using game-related physical objects | |
KR20110044391A (en) | Apparatus and method for input | |
JP6278546B1 (en) | Information processing method, apparatus, and program for causing computer to execute information processing method | |
JP2005319191A (en) | Game system, program, information storage medium, and image generating method | |
KR20180013484A (en) | ROBOT SYSTEM for SOFTWARE EDUCATION | |
JP2017217339A (en) | Game program, information processing device, information processing system, and game processing method | |
US11969664B2 (en) | User configurable interactive toy | |
EP4210850B1 (en) | User configurable interactive toy | |
KR20170036307A (en) | ROBOT SYSTEM for SOFTWARE EDUCATION | |
JP2018190196A (en) | Information processing method, information processing device, program causing computer to execute information processing method | |
JP2018067297A (en) | Information processing method, apparatus, and program for causing computer to implement information processing method | |
EP3437705B1 (en) | Interactive crafting toy system | |
JP2017099608A (en) | Control system and program | |
KR102477531B1 (en) | Virtual reality control system with voice recognition facility | |
KR20200094375A (en) | Programmable toy robot and method for operating the toy robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |