KR102463835B1 - A coding training system providing mission-solving contents and the method therof - Google Patents

A coding training system providing mission-solving contents and the method therof Download PDF

Info

Publication number
KR102463835B1
KR102463835B1 KR1020200188089A KR20200188089A KR102463835B1 KR 102463835 B1 KR102463835 B1 KR 102463835B1 KR 1020200188089 A KR1020200188089 A KR 1020200188089A KR 20200188089 A KR20200188089 A KR 20200188089A KR 102463835 B1 KR102463835 B1 KR 102463835B1
Authority
KR
South Korea
Prior art keywords
mission
module
modules
information
board game
Prior art date
Application number
KR1020200188089A
Other languages
Korean (ko)
Other versions
KR20220095997A (en
Inventor
태상혁
오유경
이승희
이진주
홍성아
Original Assignee
주식회사 럭스로보
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 럭스로보 filed Critical 주식회사 럭스로보
Priority to KR1020200188089A priority Critical patent/KR102463835B1/en
Publication of KR20220095997A publication Critical patent/KR20220095997A/en
Application granted granted Critical
Publication of KR102463835B1 publication Critical patent/KR102463835B1/en

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B1/00Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways
    • G09B1/32Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways comprising elements to be used without a special support
    • G09B1/325Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways comprising elements to be used without a special support the elements comprising interacting electronic components
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/02Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip

Abstract

본 발명은 RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드가 포함된 미션 브릿지 및 상기 미션 브릿지가 결합되는 복수의 블록이 정렬되어 있는 미션 맵을 포함하는 보드게임 툴; 미션 수행을 위해 상기 미션 맵 상을 이동하는 미션수행모듈; 카메라를 통해 상기 보드게임 툴과 상기 미션수행모듈을 인식하는 인식부; 인식된 상기 보드게임 툴과 상기 미션수행모듈을 AR 이미지로 변환하여 디스플레이에 제공하는 증강현실 그래픽 표시부; 및 상기 미션 맵 상에서 상기 미션수행모듈의 위치에 대응하는 미션수행코드의 미션을 제공하는 미션제공부를 포함하는 서버; 및 상기 보드게임 툴, 상기 미션수행모듈 및 서버와 무선통신망으로 연결되는 스마트 단말을 포함한 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템이다.The present invention is a board game tool comprising a mission bridge including a mission performance code recognizable by RF tagging or camera shooting, and a mission map in which a plurality of blocks to which the mission bridge is coupled are aligned; a mission execution module for moving on the mission map to perform a mission; a recognition unit for recognizing the board game tool and the mission performance module through a camera; an augmented reality graphic display unit for converting the recognized board game tool and the mission performance module into an AR image and providing it to a display; and a server including a mission providing unit providing a mission of a mission execution code corresponding to the location of the mission execution module on the mission map; And it is a coding education system for providing mission-solving content including the board game tool, the mission performance module, and a smart terminal connected to the server and a wireless communication network.

Description

미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템 및 그 방법{A CODING TRAINING SYSTEM PROVIDING MISSION-SOLVING CONTENTS AND THE METHOD THEROF}A system for coding education that provides mission-solving content and a method therefor

본 발명은 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템에 관한 것으로서, 태블릿 PC, 스마트폰 등과 같은 무선 디바이스를 통해 토폴로지(Topology) 인식이 가능한 모듈들을 AR(Augmented Reality)로 결합하여 보드 게임을 수행할 수 있는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템에 관한 것이다.The present invention relates to a coding education system that provides mission-solving content, and is capable of performing a board game by combining modules capable of topology recognition through a wireless device such as a tablet PC or a smartphone into AR (Augmented Reality). It relates to a system for coding education that provides mission-solving content.

최근 교육, 취미, 연구, 생산 등을 목적으로 하는 다양한 모듈 기반 제작 도구들이 제안되고 있다. 이러한 제작 도구들에 포함된 모듈들은 각각 특정한 기능을 수행할 수 있으며, 서로 연결되어 모듈 어셈블리를 형성할 수 있도록 제공된다. 이때, 각각의 모듈은 서로 전기적으로도 연결되어 에너지, 신호, 데이터 등을 송수신할 수 있도록 제공될 수도 있다. Recently, various module-based production tools for education, hobbies, research, production, etc. have been proposed. The modules included in these manufacturing tools can each perform a specific function, and are provided to be connected to each other to form a module assembly. In this case, each module may be provided to be electrically connected to each other to transmit and receive energy, signals, data, and the like.

이러한 모듈 어셈블리들은 소프트웨어 또는 하드웨어의 전문가인 연구원부터 학생, 일반인 등 다양한 사람들이 이용하고 있다. These module assemblies are used by various people such as researchers who are experts in software or hardware, students, and the general public.

그러나, 전문가를 제외한 일반인이나 학생들에게는 각 모듈들이 제대로 동작할 수 있도록 조립하고, 조립된 모듈 어셈블리를 구동시키기에 적합한 소프트웨어를 작성하여 사용하는 것이 어려울 수 있다.However, it may be difficult for the general public or students except for experts to write and use software suitable for assembling each module to operate properly and driving the assembled module assembly.

또한, 언제 어디서나 모듈 조립을 통해 코딩을 학습할 수 있는 코딩 교육용 시스템은 없었기 때문에 보다 활발한 코딩 교육의 활성화를 위해 시간과 장소에 구애받지 않고 코딩을 재미있게 학습할 수 있는 서비스를 제공하는 시스템에 대한 개발이 필요하다. In addition, since there was no system for coding education that could learn coding by assembling modules anytime, anywhere, development of a system that provides a service for learning coding in a fun way regardless of time and place to activate more active coding education I need this.

[관련기술문헌] [Related technical literature]

1. 모듈을 이용한 사용자 참여형 전자책 시스템 및 동작 방법(특허출원번호 제10-2020-0004579호)1. User participatory e-book system and operation method using module (Patent Application No. 10-2020-0004579)

본 발명은 상술한 기술적 문제에 대응하기 위하여 안출된 것으로, 본 발명의 목적은 종래 기술에서의 한계와 단점에 의해 발생하는 다양한 문제점을 실질적으로 보완할 수 있는 것으로, 태블릿 PC로 촬영한 모듈들의 토폴로지를 인식하여 AR(Augmented Reality)로 모듈들을 조립하여 보드 게임을 진행함로써 사용자의 흥미를 극대화시킬 수 있고 모듈 결합에 따라 실시간으로 생성되는 소스 코드를 통해 코딩 교육에 대한 학습효과를 누릴 수 있는 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템을 제공하는데 있다.The present invention has been devised to respond to the above technical problem, and an object of the present invention is to substantially supplement various problems caused by limitations and disadvantages in the prior art, and the topology of modules photographed with a tablet PC A mission that can maximize the user's interest by recognizing and assembling modules with AR (Augmented Reality) to play a board game, and enjoying the learning effect of coding education through the source code generated in real time according to the module combination. It is to provide a system for coding education that provides solution content.

본 발명의 일 실시예에 따른 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템은 RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드가 포함된 미션 브릿지 및 상기 미션 브릿지가 결합되는 복수의 블록이 정렬되어 있는 미션 맵을 포함하는 보드게임 툴; 미션 수행을 위해 상기 미션 맵 상을 이동하는 미션수행모듈; 카메라를 통해 상기 보드게임 툴과 상기 미션수행모듈을 인식하는 인식부; 인식된 상기 보드게임 툴과 상기 미션수행모듈을 AR 이미지로 변환하여 디스플레이에 제공하는 증강현실 그래픽 표시부; 및 상기 미션 맵 상에서 상기 미션수행모듈의 위치에 대응하는 미션수행코드의 미션을 제공하는 미션제공부를 포함하는 서버; 및 상기 보드게임 툴, 상기 미션수행모듈 및 서버와 무선통신망으로 연결되는 스마트 단말을 포함할 수 있다.A system for coding education that provides mission-solving content according to an embodiment of the present invention is a mission bridge including a mission performance code recognizable by RF tagging or camera shooting, and a plurality of blocks to which the mission bridge is coupled are aligned. board game tools including maps; a mission execution module for moving on the mission map to perform a mission; a recognition unit for recognizing the board game tool and the mission performance module through a camera; an augmented reality graphic display unit for converting the recognized board game tool and the mission performance module into an AR image and providing it to a display; and a server including a mission providing unit providing a mission of a mission execution code corresponding to the location of the mission execution module on the mission map; and a smart terminal connected to the board game tool, the mission performance module, and the server through a wireless communication network.

또한, 상기 미션은 상기 미션 맵에 결합된 미션 브릿지의 개수에 대응하는 난이도로 제공되는 코딩 미션일 수 있다.In addition, the mission may be a coding mission provided with a difficulty corresponding to the number of mission bridges coupled to the mission map.

또한, 미션은 상기 미션 브릿지들이 전, 후 미션 브릿지들과 서로 근거리에 뭉쳐 있을수록 서로 근처리에 뭉쳐 있지 않은 미션 브릿지들에 제공되는 미션보다 미션의 난이도가 높아질 수 있다.In addition, as the mission bridges are clustered closer together with the front and rear mission bridges, the difficulty of the mission may be higher than the mission provided to the mission bridges that are not clustered near each other.

또한, 미션수행코드는 상기 미션수행모듈에 의해 스캔될 수 있다.In addition, the mission execution code may be scanned by the mission execution module.

또한, 상기 서버는 제공된 미션을 수행하기 위해 사용자가 상기 디스플레이 상에서 드래그 방식으로 결합한 모듈 정보를 수신하는 모듈 정보 수신부를 포함할 수 있다.In addition, the server may include a module information receiver for receiving module information combined by a user on the display in a drag manner in order to perform the provided mission.

또한, 서버는 상기 모듈 정보에 기초하여 실시간으로 소스 코드를 생성하는 코드 생성부를 포함할 수 있다.In addition, the server may include a code generator that generates a source code in real time based on the module information.

또한, 미션수행코드는 미션 정보가 포함된 QR코드, 바코드, NFC 태그 중 어느 하나의 형태로 형성할 수 있다.In addition, the mission execution code may be formed in any one of a QR code, barcode, and NFC tag including mission information.

또한, 서버는 미션에 따라 결합 가능한 추천 조립 정보를 생성하는 추천 조립 정보 생성부를 더 포함하되, 추천 조립 정보는 사용자가 실제 소지하고 있는 모듈들 중 카메라를 통해 촬영된 모듈들만이 추천 모듈로서 생성되며, 추천 모듈은 모듈 조립영역으로 드래그 앤 드롭되는 방식으로 조립될 수 있다.In addition, the server further comprises a recommended assembly information generating unit for generating recommended assembly information that can be combined according to the mission, the recommended assembly information is generated as a recommended module only the modules photographed through the camera among the modules actually possessed by the user, , the recommended module can be assembled by dragging and dropping it into the module assembly area.

또한, 미션이 복수의 사용자에 의해 수행되는 경우에는 복수의 사용자를 편을 나누어 게임을 진행하되, 같은 편인 사용자들은 같은 편 사용자들에 의해 등록된 모듈들 내에서 추천 모듈을 제공받을 수 있다.In addition, when a mission is performed by a plurality of users, the game is played by dividing the plurality of users into teams, but users on the same side may be provided with a recommended module from among modules registered by users on the same side.

본 발명의 다른 실시예에 미션 해결형 콘텐츠를 제공하는 방법은 RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드가 포함된 미션 브릿지와 상기 미션 브릿지가 결합되는 복수의 블록이 정렬되어 있는 미션 맵으로 구성된 보드게임 툴 및 미션 수행을 위해 상기 블록 상에서 순차적으로 전진하는 미션수행모듈을 스캔하는 단계; 상기 보드게임 툴과 상기 미션수행모듈을 AR 이미지로 변환하여 디스플레이에 표시하는 단계; 및 상기 미션수행모듈의 위치에 대응하는 미션수행코드의 미션을 제공하는 단계;를 포함할 수 있다.In another embodiment of the present invention, a method for providing mission-solving content is a mission bridge including a mission performance code recognizable by RF tagging or camera shooting, and a mission map in which a plurality of blocks to which the mission bridge is coupled are aligned. scanning a board game tool and a mission execution module sequentially advancing on the block to perform a mission; converting the board game tool and the mission performance module into AR images and displaying them on a display; and providing a mission of a mission performance code corresponding to the location of the mission performance module.

본 발명에 따른 과제의 해결수단은 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The solution of the problem according to the present invention is not limited by the contents exemplified above, and more various effects are included in the present specification.

본 발명의 실시예들에 의하면 적어도 다음과 같은 효과가 있다.According to the embodiments of the present invention, there are at least the following effects.

본 발명에 따르면, 카메라 모듈을 포함하는 무선 디바이스를 통해 보드 게임 툴을 인식하여 미션 수행을 위해 AR(Augmented Reality)로 모듈들을 조립함으로써 코딩 교육에 대한 흥미를 극대화할 수 있다.According to the present invention, it is possible to maximize interest in coding education by recognizing a board game tool through a wireless device including a camera module and assembling the modules in AR (Augmented Reality) to perform a mission.

본 발명에 따르면, 미션 수행을 위해 모듈들을 결합함과 동시에 소스코드를 함께 제공해줌으로써 코딩에 대한 사용자의 학습 효과를 높이는데 도움을 줄 수 있다.According to the present invention, it is possible to help increase the learning effect of the user on coding by combining the modules and providing the source code together to perform the mission.

본 발명에 따르면, 모듈 결합을 통해 콘텐츠를 진행함에 있어서 시각 정보, 청각 정보 등을 출력함으로써 콘텐츠에 대한 사용자의 재미와 학습 효과를 동시에 제공할 수 있다.According to the present invention, it is possible to simultaneously provide a user's fun and learning effect for the content by outputting visual information, auditory information, etc. in the process of content through module combination.

본 발명에 따르면, 코딩 교육을 위한 다양한 콘텐츠를 보드게임 형식으로 진행함으로써 코딩에 대한 개념 및 알고리즘을 보다 쉽게 이해할 수 있도록 도움을 줄 수 있다.According to the present invention, various contents for coding education are provided in the form of a board game, thereby helping to more easily understand the concept and algorithm of coding.

본 발명에 따르면, 무선 디바이스와 모듈 키트만으로 코딩 교육을 수행할 수 있게 됨에 따라 언택트 교육을 위한 제품의 활용도를 높일 수 있다.According to the present invention, as coding education can be performed only with a wireless device and a module kit, the utilization of products for untact education can be increased.

본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The effect according to the present invention is not limited by the contents exemplified above, and more various effects are included in the present specification.

도 1은 본 발명의 실시예에 따른 모듈 어셈블리가 조립된 모습을 보여주는 사시도이다.
도 2는 도 1의 모듈 어셈블리 중 일부 모듈의 내부 구조를 보여주는 평면도이다.
도 3은 본 발명의 실시예에 따른 코딩 교육용 시스템의 개략도이다.
도 4는 본 발명의 실시예에 따른 서버를 설명하기 위한 블럭도이다.
도 5는 본 발명의 실시예에 따른 보드게임 툴을 설명하기 위한 예시도이다.
도 6은 본 발명의 실시예에 따른 모듈수행모듈을 설명하기 위한 예시도이다.
도 7은 본 발명의 실시예에 따른 미션해결형 콘텐츠를 실행하기 전 구성들을 인식시키는 것을 설명하기 위한 예시도이다.
도 8 내지 도 10은 본 발명의 실시예에 따른 보드 게임의 미션이 제공되는 화면 예시도이다.
도 11은 본 발명의 실시예에 따른 모듈 정보와 함께 소스 코드가 표시되는 화면 예시도이다.
1 is a perspective view showing a state in which a module assembly according to an embodiment of the present invention is assembled.
FIG. 2 is a plan view showing the internal structure of some modules of the module assembly of FIG. 1 .
3 is a schematic diagram of a system for teaching coding according to an embodiment of the present invention.
4 is a block diagram illustrating a server according to an embodiment of the present invention.
5 is an exemplary view for explaining a board game tool according to an embodiment of the present invention.
6 is an exemplary diagram for explaining a module performing module according to an embodiment of the present invention.
7 is an exemplary diagram for explaining recognizing the configurations before executing the mission-solving content according to an embodiment of the present invention.
8 to 10 are diagrams illustrating screens on which missions of a board game are provided according to an embodiment of the present invention.
11 is an exemplary view of a screen on which a source code is displayed together with module information according to an embodiment of the present invention.

발명의 이점, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages of the invention, and methods of achieving them, will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in a variety of different forms, only these embodiments allow the disclosure of the present invention to be complete, and common knowledge in the technical field to which the present invention belongs It is provided to fully inform the possessor of the scope of the invention, and the present invention is only defined by the scope of the claims.

본 발명의 실시예를 설명하기 위한 도면에 개시된 형상, 크기, 비율, 각도, 개수 등은 예시적인 것이므로 본 발명이 도시된 사항에 한정되는 것은 아니다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다. 본 명세서 상에서 언급된 '포함한다', '갖는다', '이루어진다' 등이 사용되는 경우, '~만'이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성요소를 단수로 표현한 경우에 특별히 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함한다.The shapes, sizes, proportions, angles, numbers, etc. disclosed in the drawings for explaining the embodiments of the present invention are illustrative and the present invention is not limited to the illustrated matters. In addition, in describing the present invention, if it is determined that a detailed description of a related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. When 'including', 'having', 'consisting', etc. mentioned in this specification are used, other parts may be added unless 'only' is used. When a component is expressed in the singular, the case in which the plural is included is included unless otherwise explicitly stated.

구성요소를 해석함에 있어서, 별도의 명시적 기재가 없더라도 오차 범위를 포함하는 것으로 해석한다.In interpreting the components, it is interpreted as including an error range even if there is no separate explicit description.

본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.Each feature of the various embodiments of the present invention may be partially or wholly combined or combined with each other, and as those skilled in the art will fully understand, technically various interlocking and driving are possible, and each embodiment may be independently implemented with respect to each other. It may be possible to implement together in a related relationship.

본 명세서의 해석의 명확함을 위해, 이하에서는 본 명세서에서 사용되는 용어들을 정의하기로 한다.For clarity of interpretation of the present specification, terms used herein will be defined below.

본 명세서에서 사용되는 용어, “사용자”는 본 발명의 코딩 교육용 시스템을 이용하는 사용자로서, 적어도 한 명으로 구성되는 것을 특징으로 한다. 본 명세서에서 사용자는 참여자 또는 플레이어(Player)로 지칭될 수도 있다.As used herein, the term “user” refers to a user who uses the coding education system of the present invention, and is characterized by being composed of at least one person. In this specification, a user may be referred to as a participant or a player.

이하에서는 도 1 내지 도 2를 참조하여 본 발명의 실시예에 따른 코딩 교육용 시스템에서 하드웨어적으로 결합되는 모듈에 대해 설명하기로 한다.Hereinafter, a module that is hardware-coupled in the coding education system according to an embodiment of the present invention will be described with reference to FIGS. 1 to 2 .

도 1은 본 발명의 실시예에 따른 모듈 어셈블리가 조립된 모습을 보여주는 사시도이다. 도 2는 도 1의 모듈 어셈블리 중 일부 모듈의 내부 구조를 보여주는 평면도이다.1 is a perspective view showing a state in which a module assembly according to an embodiment of the present invention is assembled. FIG. 2 is a plan view showing the internal structure of some modules of the module assembly of FIG. 1 .

모듈 어셈블리(300)는 서로 조립 가능한 하나 이상의 모듈들의 집합(10, 20, 30, 40, 50) 또는 이들이 조립된 구조체로 정의될 수도 있으며, 그 목적, 종류, 형태, 모듈의 개수 등에 의해 제한되지 않는다. 예컨대, 모듈 어셈블리(300)는 연구원이 특정 목적을 수행하기 위한 장치를 제작하기 위해 사용되는 연구용 키트의 일부일 수도 있다. The module assembly 300 may be defined as a set (10, 20, 30, 40, 50) of one or more modules that can be assembled with each other or a structure in which they are assembled, and is not limited by the purpose, type, form, number of modules, etc. does not For example, the module assembly 300 may be part of a research kit used by a researcher to fabricate a device for performing a specific purpose.

상기 복수개의 모듈들(10, 20, 30, 40, 50)은 전압 또는 전류의 변화로서 나타내는 신호, 데이터, 또는 전기 에너지(이하, “전기적 신호”라고도 함)를 다른 모듈 또는 외부 장치와 송수신할 수 있도록 구성된 객체로 정의될 수 있다. 이러한 모듈들은 중앙처리장치(CPU), 메모리(316), 전원 등을 구비하거나 또는 다른 모듈의 제어를 받아 작동 가능한 감지(Sensing) 수단, 처리(Processing) 수단 및 구동(Driving) 수단 등을 구비하여 각각 독립적으로 구동 가능할 수 있다.The plurality of modules (10, 20, 30, 40, 50) transmit and receive signals, data, or electrical energy (hereinafter, also referred to as “electrical signals”) represented as changes in voltage or current with other modules or external devices. It can be defined as an object configured to be able to These modules are provided with a central processing unit (CPU), a memory 316, a power supply, or the like, which can be operated under the control of other modules, such as a sensing means, a processing means and a driving means, etc. Each may be independently driven.

또한, 각각의 모듈들(10, 20, 30, 40, 50)은 독립적으로 특정한 기능을 수행하거나, 다른 모듈과의 상호 작용에 의해 특정한 기능을 수행하도록 구성될 수도 있다. 모듈들이 중앙처리장치(CPU)를 구비하는 경우에는 각각의 모듈별로 펌웨어(Firmware)가 설치될 수도 있다. In addition, each of the modules 10 , 20 , 30 , 40 , and 50 may be configured to independently perform a specific function or to perform a specific function by interaction with other modules. When the modules include a central processing unit (CPU), firmware may be installed for each module.

상술한 바에 따라, 각각의 모듈들(10, 20, 30, 40, 50)은 하기 <표 1>과 같이, 크게 입력(Input) 모듈, 출력(Output) 모듈, 셋업(Setup) 모듈로 구분될 수 있다. As described above, each of the modules 10, 20, 30, 40, and 50 is largely divided into an input module, an output module, and a setup module as shown in Table 1 below. can

<표 1><Table 1>

Figure 112020143575494-pat00001
Figure 112020143575494-pat00001

입력 모듈은 리모컨 등으로부터 적외선 신호를 수신할 수 있는 적외선 모듈(IR(Infrared) module), X,Y,Z축 변화 각도와 가속도를 감지할 수 있는 자이로스코프 센서 모듈(Gyroscope module), 모듈 손잡이의 회전을 이용하여 회전 각도 혹은 회전 속도를 측정할 수 있는 다이얼 모듈(Dial module), 버튼의 눌림을 감지하여, 클릭, 더블 클릭, 눌린 상태를 감지하고, 토글(Toggle)을 사용해 온/오프(On/Off) 상태가 유지될 수 있도록 하는 버튼 모듈(Button module), 온도, 습도, 조도 등을 측정할 수 있는 환경 모듈(Environment module), 주변의 소리 세기(dB)와 주파수를 감지할 수 있는 마이크 모듈(Mic module) 및 거리를 감지할 수 있는 초음파 모듈(Ultrasonic module) 등으로 구성될 수 있다.The input module is an infrared module that can receive an infrared signal from a remote control, etc., a gyroscope module that can detect the angle and acceleration of the X, Y, and Z axes, and the handle of the module. Dial module that can measure rotation angle or rotation speed using rotation, detects button press, detects click, double click, and pressed state, and toggles on/off /Off) button module to keep the state, environment module to measure temperature, humidity, illuminance, etc., microphone to detect ambient sound intensity (dB) and frequency It may be composed of a module (Mic module) and an ultrasonic module (Ultrasonic module) capable of sensing a distance.

또한, 출력 모듈은 색 변경에 따른 시각적 표시가 가능한 LED 모듈(LED module), 스피커 모듈(Speaker module), 사용자가 그린 그림이나, 글자 또는 모듈 정보 등을 화면에 표시하는 디스플레이 모듈(Display module), 속도, 각도, 토크(Torque)를 설정하여 전기 신호를 모터 모듈로 보내서 회전 운동을 시켜주는 모터 컨트롤러 모듈(Motor Controller module), 또는 모터 컨트롤러에서 받은 전기적 신호를 회전운동으로 변환할 수 있는 모터 모듈(Motor; MDP-14) 등으로 구성될 수 있다.In addition, the output module includes an LED module, a speaker module, and a display module that displays a picture drawn by a user, characters, or module information on the screen, which can be visually displayed according to color change, A motor controller module that transmits electric signals to the motor module to perform rotational motion by setting speed, angle, and torque, or a motor module that converts electrical signals received from the motor controller into rotational motion ( Motor; MDP-14), etc.

또한, 셋업 모듈은 다른 모듈에 전원을 공급할 때 사용되는 배터리 모듈(Battery module) 및 블루투스(Bluetooth), 와이파이(WiFi) 혹은 USB 연결을 통해 모듈을 PC, 스마트폰 또는 모듈과 연결시킬 수 있는 네트워크 모듈(Network module) 등으로 구성될 수 있다.In addition, the setup module is a battery module used to supply power to other modules and a network module that can connect the module with a PC, smartphone or module through Bluetooth, Wi-Fi or USB connection. (Network module) and the like.

또한, 각각의 모듈들(10, 20, 30, 40, 50)은 외부의 구동 장치(80)와 케이블(70)에 의해 연결될 수도 있다. 이 경우, 모듈 어셈블리(300)는 리모컨 또는 스마트폰의 신호를 수신하여 모터를 선택적으로 작동시키는 장치일 수 있다. 상기와 같은 모듈 어셈블리(300)의 구성은 하나의 예에 불과하며, 각각의 모듈(10, 20, 30, 40, 50)은 독립적으로, 또는 다른 모듈과의 연동을 통해 임의의 기능을 수행할 수 있도록 제공될 수 있다.In addition, each of the modules 10 , 20 , 30 , 40 , and 50 may be connected to an external driving device 80 by a cable 70 . In this case, the module assembly 300 may be a device for selectively operating a motor by receiving a signal from a remote control or a smart phone. The configuration of the module assembly 300 as described above is only one example, and each module 10, 20, 30, 40, 50 can perform any function independently or through interworking with other modules. may be provided for.

모듈들(10, 20, 30, 40, 50)은 이웃하는 다른 모듈과 면 접촉 가능하도록 복수 개의 측면을 갖는 다각형 기둥 형상인 입체일 수 있다. 여기서, 면 접촉은 측면의 모든 면적이 모두 접촉되는 것 만을 의미하는 것은 아니며, 측면의 일부만 접촉되어 어느 하나의 모듈의 측면과 다른 모듈의 측면이 서로 마주보며 일부분이 접촉되는 것을 포함하는 의미로 이해되어야 한다. 도 4를 참조하면, 각각의 모듈들(10, 20, 30, 40, 50)은 정사각형 형상의 평면을 갖는 것을 예로 들어 도시하였다. 즉, 본 실시예에서의 모듈들은 4개의 측면을 갖는 직육면체인 것을 예로 설명한다. 한편, 다른 실시예로서 모듈들(10, 20, 30, 40, 50)은 평면상 정삼각형, 직사각형, 정오각형 등의 다각형 기둥 형상으로 형성될 수도 있고, 특히, 정다각형 형상으로 형성될 수 있다. 일부의 모듈들이 서로 다른 입체적 형상을 가질 수도 있다. 또한, 모듈들 중 일부는 뿔, 다면체 등의 다양한 입체적 형상을 가질 수도 있다.The modules 10 , 20 , 30 , 40 , and 50 may be three-dimensional in the shape of a polygonal column having a plurality of side surfaces to be in surface contact with other neighboring modules. Here, the surface contact does not mean that all areas of the side are all in contact, but only a part of the side is in contact so that the side of one module and the side of the other module face each other and are understood to include a part in contact should be Referring to FIG. 4 , each of the modules 10 , 20 , 30 , 40 , and 50 is illustrated as having a square-shaped plane as an example. That is, the modules in this embodiment will be described as an example of a rectangular parallelepiped having four sides. Meanwhile, as another embodiment, the modules 10 , 20 , 30 , 40 , and 50 may be formed in a polygonal prism shape such as an equilateral triangle, a rectangle, or a regular pentagon in plan view, and in particular, may be formed in a regular polygonal shape. Some modules may have different three-dimensional shapes. In addition, some of the modules may have various three-dimensional shapes such as horns and polyhedrons.

모듈(10)은 외관을 형성하는 하우징(1)과, 상기 하우징(1)의 측면에 노출되어 전기 신호 등을 연결된 다른 모듈에 전달하거나 수신할 수 있는 단자(2)와, 하우징의 외부로 선택적으로 돌출되는 핀(도 1의 (3) 또는 도 2의 (106))이 제공된 핀 설치부(105) 및 다른 모듈의 핀이 삽입되는 핀 수용부(도 1의 (4) 또는 도 2의 (103))를 포함할 수 있다. The module 10 includes a housing 1 forming an external appearance, a terminal 2 exposed on the side surface of the housing 1 to transmit or receive an electric signal to another module connected thereto, and optionally to the outside of the housing. A pin installation part 105 provided with a pin protruding to (3 in FIG. 1 or 106 in FIG. 2) and a pin receiving part (in FIG. 1 (4) or FIG. 2 ( in FIG. 103)) may be included.

한편, 제1 모듈(10)의 일 측면에는 외부 장치와 통신할 수 있는 시리얼 포트(Serial Port)를 포함할 수 있다. 예컨대, 시리얼 포트는 USB(Universal Serial Bus), USB-C type, IEEE 1394, 썬더볼트(Thunderbolt) 등의 유선 시리얼 통신을 할 수 있는 다양한 규격의 포트를 사용할 수 있다.Meanwhile, one side of the first module 10 may include a serial port capable of communicating with an external device. For example, the serial port may use a port of various standards capable of performing wired serial communication, such as Universal Serial Bus (USB), USB-C type, IEEE 1394, and Thunderbolt.

하우징(1)은 평면이 정사각형인 직육면체 형상으로 형성된 케이스로서, 내부의 구성품들을 보호한다. 하우징(1)은 도 1에 도시된 바와 같이 상부 케이스(1a)와 하부 케이스(1b)가 결합되는 형태로 제공될 수 있다. 하우징(1)을 구성하는 방법은 필요에 따라 상부 케이스(1a)와 하부 케이스(1b)가 일체로 형성되거나, 더 많은 부분으로 나뉘어 조립될 수도 있다. 또한, 하부 케이스(1b)는 외형 및 내부 구조를 형성하는 프레임, 프레임의 내측에 제공되는 기판(102) 및 기판(102)에 설치되는 기능 유닛(104)을 더 포함할 수 있다. 보다 상세하게, 기판(102)에는 제1 모듈(10)의 기능을 구현하기 위한 기능 유닛(104)이 실장될 수 있으며, 프레임의 내측 공간 중앙부에 고정 설치될 수 있다. 기능 유닛(104)은 예를 들어 마이크로프로세서(180)를 포함할 수 있으며, 이때 제1 모듈(10)이 독립적인 펌웨어에 의해 구동되면 제1 모듈(10)을 제어하기 위해 제공될 수 있다. The housing 1 is a case formed in a rectangular parallelepiped shape with a square plane, and protects the internal components. The housing 1 may be provided in a form in which the upper case 1a and the lower case 1b are coupled as shown in FIG. 1 . As for the method of configuring the housing 1, the upper case 1a and the lower case 1b may be integrally formed, or may be assembled by being divided into more parts, if necessary. In addition, the lower case 1b may further include a frame forming an external and internal structure, a substrate 102 provided inside the frame, and a functional unit 104 installed on the substrate 102 . In more detail, the functional unit 104 for implementing the function of the first module 10 may be mounted on the substrate 102 , and may be fixedly installed in the center of the inner space of the frame. The functional unit 104 may include, for example, a microprocessor 180 , which may be provided to control the first module 10 if the first module 10 is driven by an independent firmware.

또 다른 예로서, 제1 모듈(10)이 적외선 센서 모듈인 경우, 기능 유닛(104)은 적외선 센서 및 적외선 센서로부터 감지된 값을 처리하는데 필요한 ADC(Analog Digital Converter) 및 다른 모듈 또는 외부 하드웨어와 통신하는 데 필요한 인터페이스 예컨대, I2C 또는 UART, 또는 USB 등의 통신 인터페이스 등 필요한 디바이스들을 포함할 수 있다. 이처럼 본 발명의 모듈(10, 20, 30, 40, 50)은 상술한 기능 유닛(104)의 기능에 따라 모듈의 종류가 정해질 수 있다. As another example, when the first module 10 is an infrared sensor module, the function unit 104 is configured with an analog digital converter (ADC) and other modules or external hardware necessary to process the infrared sensor and values sensed from the infrared sensor. It may include necessary devices such as an interface necessary for communication, for example, a communication interface such as I2C or UART, or USB. As such, in the modules 10 , 20 , 30 , 40 , and 50 of the present invention, the type of the module may be determined according to the function of the above-described functional unit 104 .

또 다른 예로서, 기능 유닛(104)이 후술되는 마이크로프로세서(180) 및 메모리(190)를 포함하고 있으며, 다른 유닛들을 제어할 수 있는 OS 또는 펌웨어를 포함하고 있는 경우에는 메인 모듈이 될 수 있다. As another example, if the functional unit 104 includes a microprocessor 180 and a memory 190 to be described later, and includes an OS or firmware capable of controlling other units, it may be a main module. .

또는, 기능 유닛(104)이 센서의 센싱 값을 다른 모듈 또는 외부 디바이스에 전달할 수 있는 경우에는 센서 모듈이 될 수 있다.Alternatively, when the functional unit 104 can transmit the sensing value of the sensor to another module or an external device, it may be a sensor module.

또는, 기능 유닛(104)이 NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, 케이블 모뎀 등 다양한 유무선 통신 장치를 포함하면서 다른 모듈로부터 전기적 신호를 수신하여 상술한 유무선 통신 장치를 통하여 다른 외부 디바이스에 전기적 신호를 전송할 수 있는 경우에는 통신 모듈이 될 수 있다. Alternatively, the functional unit 104 receives an electrical signal from another module, including various wired and wireless communication devices such as NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, and cable modem, and receives an electrical signal from another external device through the above-described wired/wireless communication device. If it can transmit an electrical signal to the communication module can be.

또는, 기능 유닛(104)이 모터 등의 다양한 액추에이터 및 액추에이터 제어 회로들을 포함하여 구동이 가능하게 하는 경우에는 구동 모듈이 될 수 있다. 기타 본원 발명의 모듈의 더욱 상세한 구조 및 결합에 대해서는 대한민국 등록특허 공보 제10-1761596에 상세하게 기재되어 있으며, 본원 특허 명세서에 참조로서 포함된다.Alternatively, when the functional unit 104 includes various actuators such as a motor and actuator control circuits to enable driving, it may be a driving module. Other more detailed structures and combinations of the module of the present invention are described in detail in Korean Patent No. 10-1761596, which is incorporated by reference in the present patent specification.

단자(2)는 전기 신호 등을 연결된 다른 모듈에 전달하거나 다른 모듈로부터 받을 수 있으며, 일 예로 하우징(1)의 내부에 제공된 기판(102)으로부터 전기 신호 등을 전달받아 단자에 접촉된 다른 모듈의 단자로 전달할 수 있다. 단자(2)는 다수 개의 접촉 점이나 연결 핀을 가질 수 있으며, 이는 전기 신호 등의 전달 방법, 표준화된 규격 등에 따라 다양한 형태를 가질 수 있다. The terminal 2 may transmit an electrical signal or the like to or receive from another module connected thereto. For example, the terminal 2 receives an electrical signal from the board 102 provided in the housing 1 and receives the electrical signal from the other module in contact with the terminal. It can be transmitted through the terminal. The terminal 2 may have a plurality of contact points or connection pins, which may have various shapes according to a method of transmitting an electric signal or the like, a standardized standard, and the like.

이와 같은 단자(2)는 핀(도 1의 (3) 또는 도 2의 (106)), 핀 설치부(105), 핀 수용부(도 1의 (4) 또는 도 2의 (103))와 한 세트를 이루어 하우징(1)의 일 측면에 배치될 수 있다. 구체적으로, 단자(2)는 핀(도 1의 (3) 또는 도 2의 (106))과 핀 수용부(도 1의 (4) 또는 도 2의 (103)) 사이에 배치될 수 있으며, 다른 모듈의 핀과 핀 수용부 사이에 배치된 단자에 접촉될 수 있다. 본 실시예에서는 하우징(1)의 모든 측면에 단자(2)가 제공되는 것을 예로 들었으나, 실시예에 따라서는 단자(2)가 형성되지 않은 측면이 존재할 수도 있다.Such a terminal 2 includes a pin ((3) in FIG. 1 or (106) in FIG. 2), a pin installation part 105, and a pin receiving part ((4) in FIG. 1 or (103) in FIG. 2) and It may be arranged on one side of the housing 1 to form a set. Specifically, the terminal 2 may be disposed between a pin ((3) in FIG. 1 or (106) in FIG. 2) and a pin receiving part ((4) in FIG. 1 or (103) in FIG. 2), It may be in contact with a terminal disposed between the pin of another module and the pin receiving portion. In this embodiment, the terminal 2 is provided on all sides of the housing 1 as an example, but depending on the embodiment, there may be a side on which the terminal 2 is not formed.

프레임은 하우징(1)의 일부 또는 전부를 구성하는 구조물로서, 하우징(1)의 일부 또는 전부의 외형을 형성하고, 내부에 각종 부품이 설치되기 위한 공간과 구조를 제공할 수 있다. 본 실시예에서 프레임은 하우징(1)의 하부 케이스(1b)를 형성하는 것을 예로 들어 설명하나, 본 발명의 권리범위는 이에 한정되지 않는다. 또한, 본 실시예에서 프레임은 사각형 형상으로 형성되며, 4개의 코너(corner)를 갖는다.The frame is a structure constituting a part or all of the housing 1 , and forms an outer shape of a part or all of the housing 1 , and may provide a space and a structure for installing various parts therein. In this embodiment, the frame is described as an example forming the lower case 1b of the housing 1, but the scope of the present invention is not limited thereto. In addition, in this embodiment, the frame is formed in a rectangular shape and has four corners.

이하에서는 도 3 내지 도 4를 참조하여 본 발명의 실시예에 다른 코딩 교육용 시스템(1000) 및 이를 구성하는 서버에 대해 설명하기로 한다.Hereinafter, a system for coding education according to an embodiment of the present invention 1000 and a server constituting the same will be described with reference to FIGS. 3 to 4 .

도 3은 본 발명의 실시예에 따른 코딩 교육용 시스템의 개략도이다. 도 4는 본 발명의 실시예에 따른 서버의 구성을 설명하기 위한 블록도이다.3 is a schematic diagram of a system for teaching coding according to an embodiment of the present invention. 4 is a block diagram for explaining the configuration of a server according to an embodiment of the present invention.

도 3을 참조하면 코딩 교육용 시스템(1000)은 서버(100), 사용자 단말(200) 및 모듈 어셈블리(300)를 포함한다.Referring to FIG. 3 , the coding education system 1000 includes a server 100 , a user terminal 200 , and a module assembly 300 .

코딩 교육용 시스템(1000)은 코딩에 대한 사용자들의 흥미를 극대화하기 위해 카메라가 포함된 무선 디바이스를 통해 촬영한 모듈들의 토폴로지가 인식되면 AR(Augmented Reality)로 모듈들을 조립할 수 있도록 조립가능한 경우의 수를 제공함에 따라 다양한 버전의 콘텐츠를 제공하는 시스템이다. 구체적으로, 코딩 교육용 시스템(1000)은 인터넷, 인트라넷, 또는 광대역 통신망 등의 네트워크(900)를 통해 서버(100) 및 사용자 단말(200)을 연결하는 것을 특징으로 한다. 이때, 서버(100) 또는 사용자 단말(200)은 모듈 어셈블리(300)를 구동시킬 수 있는 프로그램의 소스 코드를 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴을 제공할 수 있다. 이러한 소스 코드의 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴에 대해서는 본 출원인이 이전에 발명한 대한민국 특허출원 제10-2018-0114166호 및 제10-2018-0114171호에 상세하게 기재되어 있으며, 위의 두 특허는 참조로서 포함된다.The system for coding education 1000 is the number of cases that can be assembled so that the modules can be assembled in AR (Augmented Reality) when the topology of the modules photographed through a wireless device including a camera is recognized in order to maximize users' interest in coding. It is a system that provides various versions of content as it is provided. Specifically, the coding education system 1000 is characterized in that the server 100 and the user terminal 200 are connected through a network 900 such as the Internet, an intranet, or a broadband communication network. In this case, the server 100 or the user terminal 200 may provide an authoring tool capable of writing, recommending, and compiling (or interpreting) the source code of a program capable of driving the module assembly 300 . An authoring tool capable of writing, recommending, and compiling (or interpreting) such source code is described in detail in Korean Patent Application Nos. 10-2018-0114166 and 10-2018-0114171 previously invented by the present applicant. and the above two patents are incorporated by reference.

보다 상세하게, 서버(100)는 보드게임 툴 및 보드게임을 수행하기 위해 이동하는 미션수행모듈(MA)을 촬영하여 인식하고 인식된 미션수행코드(MC)에 따라 미션을 제공하는 구성이다. 서버(100)는 도 4에 도시된 바와 같이, 인식부(110), 미션 제공부(120), 추천 조립 정보 생성부(130), 증강현실 그래픽 표시부(140), 코드 In more detail, the server 100 is configured to photograph and recognize the board game tool and the mission execution module (MA) moving to perform the board game, and provide a mission according to the recognized mission execution code (MC). As shown in FIG. 4 , the server 100 includes a recognition unit 110 , a mission providing unit 120 , a recommended assembly information generation unit 130 , an augmented reality graphic display unit 140 , and a code.

생성부(150), 통신 제어부(170), 마이크로프로세서(180) 및 메모리(190)를 포함한다.It includes a generation unit 150 , a communication control unit 170 , a microprocessor 180 , and a memory 190 .

인식부(110)는 카메라를 통해 상기 보드게임 툴과 상기 미션수행모듈(MA)을 인식하는 구성이다. 여기서, 보드게임 툴은 RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드(MC)가 포함된 미션 브릿지(MB) 및 상기 미션 브릿지(MB)가 결합되는 복수의 블록이 정렬되어 있는 미션 맵(MM)을 의미하는 것이다. 인식부는 각각 서로 다른 미션 정보를 포함하고 있는 미션수행코드(MC)를 인식할 수 있다. 미션수행코드(MC)는 카메라에 의해 쉽게 인식되기 위해 미션 브릿지(MB)의 최상단부에 형성되는 것을 특징으로 하며, QR코드, RFID(Radio-Frequency Identification) 태그, 바코드, NFC 태그 등 중 어느 하나의 형태로 형성된다. 다시 말해, 미션수행코드(MC)는 RFID, 바코드, NFC 형태를 태그하여 리딩하는 형태일 수도 있고, 또는 QR 코드와 같은 특정 패턴을 카메라를 통해 촬영하여 리딩하는 형태일 수도 있다.The recognition unit 110 is configured to recognize the board game tool and the mission performance module MA through a camera. Here, the board game tool includes a mission bridge (MB) containing a mission execution code (MC) recognizable by RF tagging or camera shooting, and a mission map (MM) in which a plurality of blocks to which the mission bridge (MB) is coupled are aligned. will mean The recognition unit may recognize the mission performance code (MC) each including different mission information. The mission performance code (MC) is characterized in that it is formed at the top of the mission bridge (MB) in order to be easily recognized by the camera, and any one of a QR code, an RFID (Radio-Frequency Identification) tag, a barcode, an NFC tag, etc. is formed in the form of In other words, the mission execution code (MC) may be in the form of reading by tagging RFID, barcode, or NFC, or may be in the form of reading by photographing a specific pattern such as a QR code through a camera.

보드게임 툴을 구성하는 미션 브릿지(MB)는 미션 맵(MM)의 블록 상에 선택적으로 결합될 수 있다. 이에, 미션 제공부는 결합되는 미션 브릿지(MB)의 개수에 따라 서로 다른 난이도의 미션을 제공할 수 있다.The mission bridge MB constituting the board game tool may be selectively coupled on the block of the mission map MM. Accordingly, the mission providing unit may provide missions of different difficulty levels according to the number of the mission bridges MB to be coupled.

미션수행모듈(MA)은 미션을 수행하기 위해 복수의 블록으로 구성된 미션 맵(MM) 상에서 전진 또는 후퇴하는 구성이다. 미션수행모듈(MA)은 도 6에 도시된 바와 같이, 미션 수행을 위해 조립 미션이 요구되는 구성인 것을 기본으로 하지만, 조립 미션이 요구되지 않는 별도의 모듈일 수 있다. 미션수행모듈(MA)이 미션 수행을 위해 조립을 먼저 진행해야하는 경우에는 조립가이드(AG)가 디스플레이에 표시될 수 있다. 또한, 미션수행모듈(MA)은 앞서 인식한(이하, '스캔한'이라고도함) 미션 브릿지(MB)의 종류에 따라 미션수행모듈(MA)을 조립하는 조립 난이도가 결정될 수도 있다. 이에, 사용자는 난이도 선택 버튼(601)을 통해 난이도를 결정할 수 있다. 한편, 다른 실시예에 따르면, 미션 브릿지(MB)들 중 전, 후 미션 브릿지(MB)들과 서로 근거리에 뭉쳐있을 수록 전, 후 미션 브릿지(MB)들과 뭉쳐있지 않은 미션 브릿지(MB)들에 제공되는 미션 보다 상대적으로 높은 난이도의 미션이 제공되는 것을 특징으로 한다. 또한, 인식부(110)는 모듈을 조립하기 전 사용자가 가지고 있는 모듈들에 대한 정보를 수신할 수 있다. 예를 들어, 모듈들에 대한 정보(이하, '모듈 정보'라고도 함)는 모듈 ID, 바디 메시지(Body message), 모듈 카테고리, 기능 정보 및 메타 정보 중 적어도 하나를 포함한다. 여기서, 모듈 ID는 UUID(Universally Unique identifier)와 같은 모듈 고유의 식별자이거나 메인 모듈에서 결합 시 부여하는 임시 ID일 수 있다. 또한, 모듈 ID는 본 발명의 모듈 간의 패킷을 확인함으로써 모듈의 동작 상태를 확인하기 위한 수단일 수 있다. 예를 들어, 본 발명의 모듈들은 메세지를 보내는 모듈 및 메시지를 수신하는 모듈이 있기 때문에, 모듈 ID에는 메시지를 보내는 메시지 전송 모듈의 정보를 담은 고유번호(Source module information(for sender)) 및 메시지를 수신하는 메시지 수신 모듈의 정보를 담은 고유번호(Target module information(for receiver))로 구성될 수 있다.The mission execution module (MA) is a configuration that moves forward or backward on a mission map (MM) composed of a plurality of blocks to perform a mission. The mission performance module (MA) is based on a configuration that requires an assembly mission to perform the mission, as shown in FIG. 6 , but may be a separate module that does not require an assembly mission. When the mission performance module MA needs to be assembled first to perform the mission, the assembly guide AG may be displayed on the display. In addition, the mission performance module (MA) may be determined by the assembly difficulty of assembling the mission performance module (MA) according to the type of the mission bridge (MB) previously recognized (hereinafter also referred to as 'scanned'). Accordingly, the user may determine the difficulty level through the difficulty selection button 601 . On the other hand, according to another embodiment, the mission bridges (MB) before and after the mission bridges (MB) of the mission bridges (MB) and the mission bridges (MB) that are not clustered together with the front and rear mission bridges (MB) as they are clustered in a shorter distance from each other. It is characterized in that a mission of relatively higher difficulty is provided than the mission provided in the . In addition, the recognition unit 110 may receive information about the modules that the user has before assembling the modules. For example, information on modules (hereinafter, also referred to as 'module information') includes at least one of a module ID, a body message, a module category, function information, and meta information. Here, the module ID may be a module-specific identifier such as a universally unique identifier (UUID) or a temporary ID given when combining by the main module. In addition, the module ID may be a means for confirming the operation state of the module by checking the packet between the modules of the present invention. For example, since the modules of the present invention have a module for sending a message and a module for receiving a message, the module ID includes a unique number (Source module information (for sender)) containing information of the message sending module that sends a message and a message. It may be composed of a unique number (Target module information (for receiver)) containing information of the receiving message receiving module.

또한, 모듈 카테고리는 치환 가능한 모듈들을 찾는 것을 보조하기 위하여 복수의 모듈을 수행 기능을 중심으로 유사한 기능을 가진 모듈들을 상위 개념으로 분류하는 개념이다. 예컨대, 센서, 키, 마이크 등 전기 신호를 입력하는 모듈들은 '입력', 액추에이터, 디스플레이, LED 등은 '출력', 또는 마이크로프로세서(180)를 포함하며, 사용자가 포팅한 프로그램을 실행시킬 수 있는 모듈, 네트워크 모듈, 배터리 모듈 또는 가중치 표시 모듈은 '셋업' 등이 모듈 카테고리의 예가 될 수 있다. In addition, the module category is a concept of classifying modules having similar functions into a higher level concept based on a function of performing a plurality of modules in order to assist in finding replaceable modules. For example, modules for inputting electrical signals such as sensors, keys, and microphones include 'inputs', actuators, displays, LEDs, etc. are 'outputs', or microprocessors 180, which can execute programs ported by the user. For a module, a network module, a battery module, or a weight display module, 'setup' may be an example of a module category.

또한, 기능 정보는 모듈의 상세 기능을 표시한 것으로, 예를 들어, 컨트롤 모듈, 적외선 센서 모듈, 스위치 모듈, 전원 모듈 및 네트워크 모듈 등이 상세 기능이 될 수 있다. 이 경우, 모듈의 기능은 각 모듈 내의 기능 유닛(104)의 구성에 따라 달라질 수 있다. In addition, the function information indicates detailed functions of the module, and for example, a control module, an infrared sensor module, a switch module, a power module, and a network module may be detailed functions. In this case, the function of the module may vary according to the configuration of the functional unit 104 in each module.

또한, 메타 정보는 모듈의 기타 정보로서, 예를 들어, '선풍기' 등의 구체적인 기기 명이 될 수도 있고, '바람', 또는 '시원' 등과 같은 선풍기와 연관된 연관 검색어들이 될 수 있다. In addition, the meta information is other information of the module, and for example, may be a specific device name such as 'fan', or may be related search words related to a fan such as 'wind' or 'shiwon'.

또한, 구동 정보는 각 모듈을 구동하기 위한 드라이버(Driver)이다. 이러한 구동 정보는 해당 모듈이 저장하고 있다가 모듈 연결 시에 컨트롤 모듈에 제공하거나 또는 컨트롤 모듈이 모듈 정보를 사용자 단말(200)에 제공하는 경우, 사용자 단말(200)로부터 다운로드 받을 수 있다. 또한, 펌웨어는 모듈 어셈블리(300)를 동작시키기 위한 소프트웨어로서, 사용자 단말(200)을 통해 소스 코드를 작성하여 컴파일 후 실행파일로 생성할 수 있다. 또는 컨트롤 모듈이 조립 정보를 사용자 단말(200)에게 제공하는 경우, 사용자 단말(200)로부터 소스 코드를 추천받고, 추천받은 소스 코드를 컴파일한 실행파일(펌웨어)을 사용자 단말(200)로부터 다운로드 받을 수 있다.In addition, the driving information is a driver for driving each module. Such driving information may be stored by the corresponding module and provided to the control module when the module is connected, or may be downloaded from the user terminal 200 when the control module provides module information to the user terminal 200 . In addition, the firmware is software for operating the module assembly 300 , and may be created as an executable file after compiling by writing a source code through the user terminal 200 . Alternatively, when the control module provides assembly information to the user terminal 200 , a source code is recommended from the user terminal 200 , and an executable file (firmware) obtained by compiling the recommended source code is downloaded from the user terminal 200 . can

미션 제공부(120)는 상술한 바와 같이 결합되는 미션 브릿지(MB)의 개수에 따라 서로 다른 난이도의 미션을 제공하는 구성이다. 여기서, 제공되는 미션은 보드 게임과 결합된 코딩 미션인 것으로 이해되는 것이 바람직하다. 미션 제공부(120)는 도 8 내지 도 9에 도시된 바와 같이 사용자 단말(200)의 디스플레이에 미션수행모듈(MA)의 위치에 대응하는 미션수행코드(MC)의 미션을 제공할 수 있다. 미션을 수행하는 과정은 도 8 내지 도 9를 참조하여 후술한다.The mission providing unit 120 is configured to provide missions of different difficulty levels according to the number of mission bridges MB that are coupled as described above. Here, the provided mission is preferably understood to be a coding mission combined with a board game. The mission providing unit 120 may provide a mission of the mission performance code (MC) corresponding to the location of the mission performance module (MA) on the display of the user terminal 200 as shown in FIGS. 8 to 9 . The process of performing the mission will be described later with reference to FIGS. 8 to 9 .

추천 조립 정보 생성부(130)는 제공되는 미션에 따라 결합가능한 추천 조립 정보를 생성하는 구성이다. 추천 조립 정보는 결합 가능한 모듈들이 UI형태로 제공되되 사용자로부터 미리 등록된(사용자가 소지하고 있다고 사전에 설정한) 모듈들 중에서 카메라를 통해 촬영된 모듈들만이 추천 모듈로서 생성되는 것을 특징으로 한다. 단, 실시예에 따라서 사용자로부터 미리 등록된 모듈에 포함되지 않는 모듈이 추천 조립 정보로 제공될 수 있는데 이는 새로운 모듈에 대한 구매가 요구될 수 있고 이를 통해 보다 다양한 모듈 결합을 수행함으로써 사용자의 흥미를 고취시킬 수 있는 효과가 있다. 이때, 미리 등록된 모듈에 포함되지 않은 추천 모듈은 인앱(In-app) 결제를 통해 구매할 경우 제공받을 수 있다. The recommended assembly information generating unit 130 is configured to generate combinable recommended assembly information according to a provided mission. The recommended assembly information is characterized in that the modules that can be combined are provided in the form of a UI, but only modules photographed through a camera among modules registered in advance by the user (pre-set that the user possesses) are generated as recommended modules. However, according to an embodiment, a module not included in the module registered in advance by the user may be provided as recommended assembly information, which may require the purchase of a new module, thereby increasing the interest of the user by performing more various module combinations. It has an uplifting effect. In this case, the recommended module not included in the pre-registered module may be provided when purchasing through in-app payment.

또한, 추천 조립 정보 생성부(130)는 복수의 사용자가 편을 나누어 게임을 진행하는 경우에 같은 편인 사용자들에게는 같은 편 사용자들에 의해 등록된 모듈들 내에서 추천 모듈을 제공하는 것을 특징으로 한다. In addition, the recommended assembly information generating unit 130 is characterized in that when a plurality of users divide the game to proceed with the game, the recommended module is provided to users who are on the same side in modules registered by the users on the same side. .

이처럼 미션이 팀 플레이(Team play) 방식으로 수행되는 경우에는 미션수행모듈(MA)이 복수 개(단, 팀의 수의 비례)이고, 각자의 편에서 1명씩 번갈아 가면서 한 턴(turn) 씩 플레이를 하는 것으로 이해될 수 있다. 이때, 미션 브릿지(MB)로 가는 경로가 복수 개라서 하나의 경로를 상대편의 미션수행모듈(MA)이 점유하고 있는 경우에는, 다른 경로를 선택하여 해당 미션 브릿지(MB)에 접근할 수 있도록 게임이 진행될 수 있다. In this way, when the mission is performed in a team play method, there are a plurality of mission execution modules (MA) (however, proportional to the number of teams), and one person from each side takes turns playing one turn at a time. can be understood as doing At this time, if there are multiple paths to the mission bridge (MB) and one path is occupied by the other side's mission execution module (MA), select another path to access the mission bridge (MB). This can proceed.

또한, 상대편의 미션수행모듈(MA)이 어떤 미션 브릿지(MB)를 점유하고 있는 경우에는 해당 미션 브릿지(MB)를 건너뛰어서 다음 미션브릿지(MB)로 넘어가서 진행해야 하고, 모든 미션브릿지를 지나온 경우에는 각 편마다 클리어(Clear)한 미션의 개수를 비교하여 승자를 결정할 수도 있다. 이때, 사용자가 건너뛴 미션 브릿지(MB)의 개수에 따라서 그 다음 미션의 난이도가 누적으로 상향 조정되는 것을 특징으로 한다.In addition, if the mission execution module (MA) of the other side occupies a certain mission bridge (MB), it must skip the corresponding mission bridge (MB) and move on to the next mission bridge (MB) and proceed through all mission bridges. In this case, the winner may be determined by comparing the number of cleared missions for each side. At this time, it is characterized in that the difficulty of the next mission is cumulatively adjusted upward according to the number of mission bridges (MB) skipped by the user.

또한, 추천 조립 정보 생성부(130)는 제공되는 미션에 따라 결합 가능한 모듈들을 2D 또는 3D 형태로 제공할 수 있다. In addition, the recommended assembly information generating unit 130 may provide modules that can be combined in a 2D or 3D form according to a provided mission.

증강현실 그래픽 표시부(130)는 인식된 보드게임 툴과 미션수행모듈(MA)에 대한 2차원 이미지를 AR(Augmented Reality) 변환하여 3차원 이미지로 표시하는 구성이다. 뿐만 아니라, 증강현실 그래픽 표시부(130)는 미션수행을 수행을 위해 제공되되는 추천 조립 정보를 AR 그래픽으로 변환하여 표시할 수도 있다. The augmented reality graphic display unit 130 is configured to convert a two-dimensional image for the recognized board game tool and the mission performance module (MA) to AR (Augmented Reality) and display it as a three-dimensional image. In addition, the augmented reality graphic display unit 130 may convert and display the recommended assembly information provided for performing the mission into AR graphic.

코드 생성부(140)는 제공된 미션을 수행하기 위해 추천 조립 정보를 기초로 조립된 모듈 정보에 대응하는 소스 코드를 생성하는 구성이다. 보다 상세하게, 코드 생성부(140)는 서버(100)에 기 저장된 토폴로지에 해당하는 소스 코드를 생성하는 구성이다. 다시 말해, 코드 생성부(140)는 서버(100)의 메모리(190)에 기 저장된 소스 코드를 기초로 모듈 조립 시 모듈들에 대한 소스 코드를 생성하는 것이다. 이때, 코드 생성부(140)는 조립 가능한 모듈에 대한 소스 코드까지 동시에 생성할 수 있다. 이에 따라서, 사용자는 추천 조립 정보 생성부(130)에 의해 재공되는 모듈들을 조립하는 여러가지 경우의 수에 따른 소스 코드를 제공받음으로써 코딩 학습 효과를 극대화할 수 있다.The code generator 140 is configured to generate a source code corresponding to the assembled module information based on the recommended assembly information to perform the provided mission. In more detail, the code generator 140 is configured to generate a source code corresponding to a topology pre-stored in the server 100 . In other words, the code generator 140 generates source codes for the modules when assembling the modules based on the source codes pre-stored in the memory 190 of the server 100 . In this case, the code generator 140 may simultaneously generate source codes for assemblable modules. Accordingly, the user can maximize the coding learning effect by receiving the source code according to the number of various cases of assembling the modules provided by the recommended assembly information generating unit 130 .

또한, 서버(100)는 미션에 따라 조립된 모듈들의 동작 여부에 따라 오류 여부를 판단할 수 있다. 구체적으로, 에러 체킹(checking) 방법을 통해 추천 조립 정보 생성부(130)에 의해 생성되는 추천 조립 정보 중 사용자로부터 선택된 조립 정보에 대응하는 모듈의 동작 여부를 학습시킬 수 있다. 이에 따라, 서버(100)는 패킷 데이터(packet data)를 검사함으로써 발생한 에러의 종류를 분석하여 에러의 원인을 파악할 수 있고, 이를 학습함으로써 에러의 발생을 최소화시킬 수 있다. 여기서, 패킷 데이터를 검사하는 방법은 보내는 자(sender)와 받는 자(receiver) 간의 메시지를 주고받는 본 발명의 통신 패킷 구조를 이용한 방법이다. 예컨대, sender의 메세지를 recevier가 정상 수신한 경우, recevier가 다시 sender에게 정상 수신을 했다는 답변을 보냄으로써 정상 동작 여부를 확인할 수 있다. 이때, sender는 입력 모듈을, receiver는 출력 모듈을 의미하는 것일 수 있다. 다시 말해, 본 발명의 통신 패킷 구조는 sender가 메시지를 전송하면 전송된 메시지에 대해 답변이 반드시 오는 구조로 되어 있기 때문에 모듈 간의 패킷을 확인함으로써 동작이 정상 수행되고 있는지 확인할 수 있다. 이에 따라, 서버는 결합된 모듈들의 상태 불량을 탐지할 수 있다.In addition, the server 100 may determine whether there is an error according to whether the modules assembled according to the mission operate. Specifically, it is possible to learn whether a module corresponding to the assembly information selected by the user from among the recommended assembly information generated by the recommended assembly information generating unit 130 operates through an error checking method. Accordingly, the server 100 can determine the cause of the error by analyzing the type of error generated by examining the packet data, and can minimize the occurrence of the error by learning this. Here, the method of inspecting packet data is a method using the communication packet structure of the present invention in which a message is exchanged between a sender and a receiver. For example, if the recevier normally receives the sender's message, it is possible to check whether the recevier is operating normally by sending a reply that the recevier has successfully received the sender again. In this case, the sender may mean an input module and the receiver may mean an output module. In other words, since the communication packet structure of the present invention has a structure in which a reply to the transmitted message is always provided when the sender transmits a message, it is possible to check whether the operation is being performed normally by checking the packet between modules. Accordingly, the server may detect a bad state of the combined modules.

타겟 토폴로지 제어부(160)는 디스플레이 상에서 서로 결합된 모듈의 토폴로지(Topology)를 감지할 수 있는 하드웨어 및/또는 소프트웨어의 구성요소로서, 토폴로지를 감지하는 프로토콜을 실행하여 여러가지 경우의 수로 타겟 토폴로지를 결정하는 기능을 수행한다. 보다 상세하게, 타겟 토폴로지 제어부는 모듈의 고유 정보, 하위 연결 모듈 정보, 모듈 카테고리 정보 및 단계 정보를 포함하는 모듈 토폴로지 정보에 기초하여 토폴로지를 결정할 수 있다. The target topology control unit 160 is a component of hardware and/or software capable of detecting the topology of modules coupled to each other on the display. perform the function In more detail, the target topology controller may determine the topology based on module topology information including module-specific information, lower connection module information, module category information, and step information.

여기서, 모듈 고유 정보는 모듈 어셈블리에 포함되고 연결되는 기능 모듈들의 모듈 ID를 나타낸다. 이 경우, 모듈 ID는 UUID(Universally Unique IDentifier)와 같은 모듈 고유의 식별자 일 수 있으며, 컨트롤 모듈에서 연결 시 부여하는 임시 ID일 수도 있다. Here, the module-specific information indicates module IDs of functional modules included in and connected to the module assembly. In this case, the module ID may be an identifier unique to the module, such as a Universally Unique IDentifier (UUID), or a temporary ID given by the control module when connecting.

하위 연결 모듈 정보는 해당 모듈보다 단계가 낮은 모듈에 대한 모듈 고유 정보를 나타낸다. 기본적으로 각 모듈은 해당 모듈과 연결된 모듈들의 정보를 저장하고 메인 모듈에 연결될 때 하위로 연결된 모듈의 정보를 메인 모듈에게 제공할 수 있다.The sub-connected module information indicates module-specific information about a module with a lower level than the corresponding module. Basically, each module stores information on modules connected to the corresponding module, and when connected to the main module, can provide the main module with information on the lower connected modules.

모듈 카테고리 정보는 모듈의 기능에 따라 모듈을 분류한 정보이다. 예를 들어, 입력 모듈은 입력되는 전기 신호를 수집하는 모듈로서, 마이크로폰, 온도 센서, 자이로스코프 센서, 적외선 센서, 초음파 센서 등의 각종 센서와 다이얼, 버튼, 키보드 등의 키 입력을 포함한다. 출력 모듈은 모터 등의 액추에이터, 발광다이오드(LED), 액정 디스플레이 장치, 스피커를 포함한다. 통신 모듈은 LTE, Bluetooth 등의 네트워크 모듈을 포함한다. 메인 모듈은 사용자 단말(200)에서 프로그래밍한 애플리케이션을 실행할 수 있는 모듈로서, 마이크로프로세서를 포함한다. 이러한 카테고리 정보에 기초하여 서버에서는 모듈 추천 시 치환 가능한 모듈인지, 추가 가능한 모듈인지 여부를 판단할 수 있다.The module category information is information that classifies the module according to the function of the module. For example, the input module is a module for collecting input electrical signals, and includes various sensors such as a microphone, a temperature sensor, a gyroscope sensor, an infrared sensor, and an ultrasonic sensor, and key input such as a dial, a button, and a keyboard. The output module includes an actuator such as a motor, a light emitting diode (LED), a liquid crystal display device, and a speaker. The communication module includes a network module such as LTE and Bluetooth. The main module is a module capable of executing an application programmed in the user terminal 200 and includes a microprocessor. Based on such category information, the server may determine whether a module is a replaceable module or an addable module when recommending a module.

단계 정보는 메인 모듈과의 거리를 의미하며, 메인 모듈로부터 해당 모듈까지 최단 경로 상으로 연결된 모듈을 카운팅함으로써 결정될 수 있다.The step information means a distance from the main module, and may be determined by counting modules connected on the shortest path from the main module to the corresponding module.

또한, 타겟 토폴로지 제어부(120)는 감지된 토폴로지에 따라 모듈의 연결 토폴로지를 결정하여 메모리(190)에 기입할 수 있다. 한편, 타겟 토폴로지 제어부(120)의 모듈 토폴로지 정보에 기초하여 토폴로지를 감지하고 결정하는 방법에 대해서는 본 출원인이 이전에 발명한 대한민국 특허출원 제10-2018-0114171호에 상세하게 기재되어 있으며, 위 특허를 참조로서 포함한다.In addition, the target topology control unit 120 may determine the connection topology of the module according to the sensed topology and write it to the memory 190 . On the other hand, a method for detecting and determining a topology based on the module topology information of the target topology control unit 120 is described in detail in Korean Patent Application No. 10-2018-0114171 previously invented by the present applicant, and the above patent is incorporated by reference.

통신 제어부(170)는 무선 통신을 통하여 모듈(300)과 서버(100) 또는 사용자 단말(200)이 서로 통신할 때 통신을 제어하는 역할을 수행한다. 구체적으로, 통신 제어부(315)는 외부 기기와의 통신 및 모듈 사이의 통신을 제어할 수 있다. 외부 기기와의 통신은 NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, 케이블 모뎀 등 다양한 유무선 통신을 포함할 수 있다. 한편, 모듈 사이의 통신은 UART, I2C, LIN, CAN 등 다양한 내부 통신 수단을 이용하여 모듈 간 통신을 수행할 수 있다. 통신 제어부(315) 내에는 상술한 다양한 유무선 통신 수단 또는 모듈 사이의 통신 수단을 포함할 수도 있고, 별도의 네트워크 모듈과 연결될 때 별도의 네트워크 모듈을 제어하는 방식으로 통신할 수도 있다.The communication control unit 170 serves to control communication when the module 300 and the server 100 or the user terminal 200 communicate with each other through wireless communication. Specifically, the communication control unit 315 may control communication with an external device and communication between modules. Communication with an external device may include various wired/wireless communications such as NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, and cable modem. Meanwhile, communication between modules may be performed using various internal communication means such as UART, I2C, LIN, and CAN. The communication control unit 315 may include the above-described various wired/wireless communication means or communication means between modules, or may communicate in a manner that controls the separate network module when connected to a separate network module.

마이크로프로세서(180)는 모듈 정보 수신부(110), 타겟 토폴로지 제어부(120), 추천 조립 정보 생성부(130), 증강현실 그래픽 표시부(140), 코드 생성부(150) 및 학습부(160) 중 적어도 일부가 소프트웨어 모듈로 구현되는 경우에, 그 소프트웨어 모듈을 실행하게 한다. The microprocessor 180 includes a module information receiving unit 110 , a target topology control unit 120 , a recommended assembly information generation unit 130 , an augmented reality graphic display unit 140 , a code generation unit 150 , and a learning unit 160 . When at least a part is implemented as a software module, it causes the software module to run.

메모리(190)는 마이크로프로세서(180)에서 실행될 수 있는 소프트웨어 모듈과 모듈 어셈블리(300)의 동작에 필요한 각종 정보 및 연결된 모듈의 조립 정보에 관한 각종 정보들을 포함하며, 예를 들어, 메모리(190)는 모듈 정보, 구동 정보, 조립 정보 및 펌웨어를 포함할 수 있다. 또한, 메모리(190)는 모듈 어셈블리를 구성하는 모듈들에 대한 소스 코드를 저장할 수 있다. 또한, 메모리(190)는 사용자 단말(200)에 표시되는 콘텐츠의 장르, 콘텐츠의 저자 정보, 키워드, 컨텐츠 정보, 등을 저장할 수 있다.The memory 190 includes a software module that can be executed in the microprocessor 180 and various types of information necessary for the operation of the module assembly 300 and various pieces of information related to assembly information of a connected module, for example, the memory 190 . may include module information, driving information, assembly information, and firmware. Also, the memory 190 may store source codes for modules constituting the module assembly. Also, the memory 190 may store a genre of content displayed on the user terminal 200 , author information of the content, keywords, content information, and the like.

한편, 본 발명에서 사용자 단말(200)의 화면은 디스플레이부라고도 지칭할 수 있으며, 디스플레이부는 콘텐츠 정보, 퀘스트 수행 정보, 이벤트 요소 등을 태블릿 PC, 스마트폰 등과 연결하여 이미지, 영상 등 다양한 형태로의 출력을 수행하는 구성이다. Meanwhile, in the present invention, the screen of the user terminal 200 may also be referred to as a display unit, and the display unit connects content information, quest performance information, event elements, etc. It is a configuration that performs output.

도 3을 참조하면, 사용자 단말(200)은 서버(100)로부터 수신한 콘텐츠, 콘텐츠에 포함된 난이도 별 미션, 상기 미션에 따라 사용자가 선택할 수 있는 추천 조립 정보를 표시하는 구성이다. 구체적으로, 사용자 단말(200)은 네트워크를 통해 연결된 보드게임 툴을 기초로 미션수행코드 별로 기 저장된 미션을 제공하는 것을 특징으로 한다. 사용자 단말(200)은 복수개인 것으로 도시되었지만 사용자들의 플레이모드(예: 플레이어가(Player)가 1명인 경우, 2명인 경우, 그 이상인 경우)에 따라 사용자 단말(200)은 하나일 수도 있고, 그 이상일 수도 있다. 본 발명에서는 플레이어가 한명일 수도 있고, 두 명 또는 그 이상일 수도 있다. Referring to FIG. 3 , the user terminal 200 is configured to display content received from the server 100 , a mission for each difficulty included in the content, and recommended assembly information that a user can select according to the mission. Specifically, the user terminal 200 is characterized in that it provides a pre-stored mission for each mission execution code based on a board game tool connected through a network. Although the user terminals 200 are shown as being plural, there may be one user terminal 200 depending on the user's play mode (eg, if there is one player, if there are two players, or more). It may be more than In the present invention, there may be one player, two or more players.

또한, 사용자 단말(200)은 모듈 어셈블리(300)를 구동시킬 수 있는 프로그램의 소스 코드를 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴을 제공할 수 있다. 이러한 소스 코드의 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴에 대해서는 본 출원인이 이전에 발명한 대한민국 특허출원 제10-2018-0114166호 및 제10-2018-0114171호에 상세하게 기재되어 있으며, 위의 두 특허는 참조로서 포함된다.In addition, the user terminal 200 may provide an authoring tool capable of writing, recommending, and compiling (or interpreting) the source code of a program capable of driving the module assembly 300 . An authoring tool capable of writing, recommending, and compiling (or interpreting) such source code is described in detail in Korean Patent Application Nos. 10-2018-0114166 and 10-2018-0114171 previously invented by the present applicant. and the above two patents are incorporated by reference.

모듈 어셈블리(300)는 학생, 선생님 등의 사용자가 모듈들을 조립하면서 보다 흥미롭게 전자 장치의 작동 원리를 이해할 수 있는 교육용 키트로서, 사용자 단말(200)과 유무선으로 연결되는 구성이다. 모듈 어셈블리(300)는 사용자 단말(200)과 유/무선으로 연결되어 인터넷, 인트라넷, 또는 광대역 통신망 등의 네트워크를 통해 사용자 단말(200)과 연결될 수 있다. 또는 유무선 통신 특히, 시리얼 포트 연결을 통하여 사용자 단말(200)과 연결될 수 있다. 아울러, 네트워크는 USB, RS-222 및 IEEE1394 등의 유선 근거리 통신 수단, WiFi 및 Bluetooth 등의 무선 근거리 통신 수단 및 인터넷 연결 등을 포함할 수 있다.The module assembly 300 is an educational kit that allows users, such as students and teachers, to understand the operating principle of an electronic device more interestingly while assembling the modules, and is configured to be connected to the user terminal 200 by wire or wireless. The module assembly 300 may be connected to the user terminal 200 by wire/wireless and may be connected to the user terminal 200 through a network such as the Internet, an intranet, or a broadband communication network. Alternatively, it may be connected to the user terminal 200 through wired/wireless communication, in particular, a serial port connection. In addition, the network may include wired short-range communication means such as USB, RS-222 and IEEE1394, wireless short-range communication means such as WiFi and Bluetooth, and Internet connection.

이하에서는 도 5 내지 도 11을 참조하여 본 발명의 실시예에 따른 코딩 교육 시스템의 동작 과정을 설명하기로 한다.Hereinafter, an operation process of the coding education system according to an embodiment of the present invention will be described with reference to FIGS. 5 to 11 .

도 5는 본 발명의 실시예에 따른 보드게임 툴을 설명하기 위한 예시도이다. 도 6은 본 발명의 실시예에 따른 모듈수행모듈을 설명하기 위한 예시도이다. 도 7은 본 발명의 실시예에 따른 미션해결형 콘텐츠를 실행하기 전 구성들을 인식시키는 것을 설명하기 위한 예시도이다. 도 8 내지 도 10은 본 발명의 실시예에 따른 보드 게임의 미션이 제공되는 화면 예시도이다. 도 11은 본 발명의 실시예에 따른 모듈 정보와 함께 소스 코드가 표시되는 화면 예시도이다. 도 5 내지 도 11에서의 각 구성은 앞서 상술한 구성들과 역할이 동일하므로 중복 설명은 생략하기로 한다.5 is an exemplary view for explaining a board game tool according to an embodiment of the present invention. 6 is an exemplary diagram for explaining a module performing module according to an embodiment of the present invention. 7 is an exemplary diagram for explaining recognizing the configurations before executing the mission-solving content according to an embodiment of the present invention. 8 to 10 are diagrams illustrating screens on which missions of a board game are provided according to an embodiment of the present invention. 11 is an exemplary view of a screen on which a source code is displayed together with module information according to an embodiment of the present invention. Each configuration in FIGS. 5 to 11 has the same role as the configuration described above, and thus a redundant description thereof will be omitted.

서버(100)의 인식부(110)는 사용자 단말(200)의 카메라로부터 촬영된 보드게임 툴과 미션수행모듈을 수신한다. 도 8을 참조하면, 사용자가 사용자 단말(200)의 디스플레이부에 표시된 카메라 버튼을 클릭하여 후면에 장착된 카메라를 통해 미션 맵(MM)에 결합된 복수의 미션 브릿지들(MB1~6)을 촬영하면, 디스플레이부에는 보드게임 툴에 대한 이미지와 함께 미션들이 제공되는 것을 특징으로 한다. 도 8에서 미션 브릿지들(MB1~6)의 위치는 임의로 설정한 것이며 사용자에 의해 변경 가능하다. 또한, 미션 브릿지들(MB1~6)의 개수는 사용자가 원하는 난이도에 따라 조절하여 결합할 수 있다.The recognition unit 110 of the server 100 receives the board game tool and the mission performance module photographed from the camera of the user terminal 200 . Referring to FIG. 8 , the user clicks the camera button displayed on the display unit of the user terminal 200 to photograph a plurality of mission bridges MB1 to 6 coupled to the mission map MM through a camera mounted on the rear side. Then, the display unit is characterized in that the missions are provided together with an image of the board game tool. In FIG. 8 , the positions of the mission bridges MB1 to 6 are arbitrarily set and can be changed by the user. In addition, the number of mission bridges MB1 to 6 may be combined by adjusting according to the difficulty desired by the user.

이때, 서버(100)의 증강현실 그래픽 표시부(130)를 이용하여 인식한 보드게임 툴 및 미션수행모듈(MA)을 AR 이미지로 변환하여 표시할 수 있다. In this case, the board game tool and the mission performance module (MA) recognized using the augmented reality graphic display unit 130 of the server 100 may be converted into AR images and displayed.

또한, 서버(100)의 미션 제공부(120)는 미션 맵(MM) 상의 미션수행모듈(MA)의 위치에 따라 서로 상이한 미션을 제공한다. 도 9을 참조하면 미션수행모듈(MA)이 첫 번째 미션 브릿지(MB1)에 도착하여 '마법 지팡이 획득하기'의 미션(M1)이 제공된 것을 알 수 있다. 이때, 사용자는 마법 지팡이 획득하기 미션을 수행하기 위해 사용자 단말(200)의 디스플레이에 제공된 추천 조립 정보인 추천 모듈(801) 중 원하는 모듈을 모듈 조립 영역으로 드래그 앤 드롭(Drag and Drop)하여 모듈 정보(802)를 생성할 수 있다. 이때, 생성되는 모듈 정보(802)는 2D인 것처럼 도시되었으나, 모두 AR로 변환된 3D 이미지(3-Dimensional image)로 표시되는 것으로 이해되는 것이 바람직하다. 도 9에 표시된 모듈 정보(802)는 버튼을 누르는 그림이 표시된 모듈, 스피커 온(ON) 모듈, 음소거 모듈, 반복 모듈이 결합된 것을 알 수 있으며, 이는 버튼을 눌렀을 때 '미(E)'에 해당하는 음높이를 가지는 소리가 1초 간격으로 나는 것이라는 의미를 갖을 수 있다. 한편, 도 9의 모듈 정보(802)는 예시적으로 도시한 것으로 주어진 미션을 수행하기 위한 실제 모듈 결합과는 무관한 것으로 이해되는 것이 바람직하다. In addition, the mission providing unit 120 of the server 100 provides different missions depending on the location of the mission performing module (MA) on the mission map (MM). Referring to FIG. 9 , it can be seen that the mission performance module MA arrives at the first mission bridge MB1 and the mission M1 of 'acquiring the magic wand' is provided. In this case, the user drags and drops a desired module from among the recommended modules 801 that is the recommended assembly information provided on the display of the user terminal 200 to the module assembly area in order to perform the mission of acquiring the magic wand to provide module information 802 may be created. At this time, although the generated module information 802 is illustrated as being 2D, it is preferable to be understood as being displayed as a 3D image (3-dimensional image) converted into AR. It can be seen that the module information 802 shown in FIG. 9 is a combination of a module with a picture of pressing a button, a speaker on (ON) module, a mute module, and a repeat module, which is in 'E' when the button is pressed. It may mean that a sound having a corresponding pitch is produced at 1-second intervals. On the other hand, the module information 802 of FIG. 9 is illustrated as an example, and it is preferable to be understood as irrelevant to the actual module combination for performing a given mission.

이후, 도 10에 도시된 바와 같이, 미션수행모듈(MA)이 첫 번째 미션 브릿지(MB1)의 미션 수행을 완료한 후에는 두 번째 미션 브릿지(MB2)로 이동하여 '동굴 지나가기' 미션(M2)을 수행할 수 있다. 이에 따라, 사용자는 미션 1(M1)을 수행하기 위해 제공된 추천 모듈(801)과는 다른 추천 모듈(901)을 제공받을 수 있다. 도 10에 도시된 모듈 정보(902)는 두번째 미션(M2)에서 추가적으로 생성된 부가미션(M2-1)을 수행하기 위해 결합한 모듈 결합이다. 예컨대, 모듈 정보(902)는 적외선 모듈, 디스플레이 모듈, 반복 모듈, 왼쪽으로 회전 모듈, 오른쪽으로 회전 모듈이 결합된 것을 알 수 있으며, 이는 적외선에 물체가 감지되면 디스플레이 스마일이 표시되고 모터가 왼쪽, 오른쪽으로 90도씩 세번 움직인다는 의미를 갖을 수 있다. 한편, 도 10의 모듈 정보(902)는 예시적으로 도시한 것으로 주어진 미션을 수행하기 위한 실제 모듈 결합과는 무관한 것으로 이해되는 것이 바람직하다. Thereafter, as shown in FIG. 10 , after the mission performance module MA completes the mission performance of the first mission bridge MB1, it moves to the second mission bridge MB2 and 'passes through the cave' mission M2. ) can be done. Accordingly, the user may be provided with a recommendation module 901 different from the recommendation module 801 provided to perform the mission 1 (M1). The module information 902 shown in FIG. 10 is a combination of modules combined to perform the additional mission M2-1 additionally generated in the second mission M2. For example, the module information 902 shows that the infrared module, the display module, the repeat module, the left turn module, and the right turn module are combined, which means that when an object is detected in the infrared, a display smile is displayed and the motor moves to the left, It can mean moving three times to the right 90 degrees each. On the other hand, the module information 902 of FIG. 10 is illustrated as an example, and it is preferable to be understood as irrelevant to the actual module combination for performing a given mission.

이때, 서버(100)의 코드 생성부(150)는 타겟 토폴로지에 매칭되는 기 저장 소스 코드를 동시에 제공하되, 연결순위 정보를 참조하여 소스 코드를 생성한다. 도 11을 참조하면, 사용자 단말(200)에는 사용자가 결합한 모듈 정보에 기초한 소스 정보(1001)가 표시되는 것을 알 수 있다. 이때, 소스 정보(1001)에는 특정 모듈에 대한 소스 정보(1001)가 하이라이트되어 더 표시될 수 있으며, 이에 따라 사용자는 실시간으로 결합되는 모듈에 해당하는 소스 코드를 실시간으로 확인함으로써 코딩에 대한 학습 효과를 극대화할 수 있다. At this time, the code generator 150 of the server 100 simultaneously provides the stored source code matching the target topology, but generates the source code by referring to the connection priority information. Referring to FIG. 11 , it can be seen that the source information 1001 based on module information combined by the user is displayed on the user terminal 200 . In this case, the source information 1001 for a specific module may be further displayed with the source information 1001 highlighted, and accordingly, the user can check the source code corresponding to the module to be combined in real time, thereby learning effect on coding. can be maximized.

이와 같이 본 발명은 카메라 모듈을 포함하는 무선 디바이스를 통해 보드 게임 툴을 인식하여 미션 수행을 위해 AR(Augmented Reality)로 모듈들을 조립함으로써 코딩 교육에 대한 흥미를 극대화할 수 있다.As such, the present invention can maximize interest in coding education by recognizing a board game tool through a wireless device including a camera module and assembling the modules in AR (Augmented Reality) to perform a mission.

본 발명에 따르면, 미션 수행을 위해 모듈들을 결합함과 동시에 소스코드를 함께 제공해줌으로써 코딩에 대한 사용자의 학습 효과를 높이는데 도움을 줄 수 있다.According to the present invention, it is possible to help increase the learning effect of the user on coding by combining the modules and providing the source code together to perform the mission.

본 발명에 따르면, 모듈 결합을 통해 콘텐츠를 진행함에 있어서 시각 정보, 청각 정보 등을 출력함으로써 콘텐츠에 대한 사용자의 재미와 학습 효과를 동시에 제공할 수 있다.According to the present invention, it is possible to simultaneously provide a user's fun and learning effect for the content by outputting visual information, auditory information, etc. in the process of content through module combination.

본 발명에 따르면, 코딩 교육을 위한 다양한 콘텐츠를 보드게임 형식으로 진행함으로써 코딩에 대한 개념 및 알고리즘을 보다 쉽게 이해할 수 있도록 도움을 줄 수 있다.According to the present invention, various contents for coding education are provided in the form of a board game, thereby helping to more easily understand the concept and algorithm of coding.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 펌웨어(firmware), 소프트웨어(software) 또는 하드웨어(hardware)로 구성된다. 알고리즘 또는 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 알고리즘 또는 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 디지털 신호 처리 디바이스(Digital Signal Processing Device)의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다.Each block in the accompanying block diagram and combinations of each step in the flowchart are composed of firmware, software or hardware. may be performed by an algorithm or computer program instructions. These algorithms or computer program instructions may be embodied in the processor of a general purpose computer, special purpose computer, or other programmable digital signal processing device, such that the instructions are executed by the processor of the computer or other programmable data processing equipment. These will create a means for performing the functions described in each block of the block diagram or each step of the flowchart.

이들 알고리즘 또는 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리(316)에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리(316)에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.These algorithms or computer program instructions may also be stored in a computer-usable or computer-readable memory 316, which may direct a computer or other programmable data processing equipment to implement a function in a particular manner, and thus may be computer-usable. Alternatively, the instructions stored in the computer readable memory 316 may produce an article of manufacture containing instruction means for performing a function described in each block in the block diagram or in each step in the flowchart. The computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to create a computer or other programmable data processing equipment. It is also possible that instructions for performing the processing equipment provide steps for performing the functions described in each block of the block diagram and each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Further, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function(s). It should also be noted that it is also possible for the functions recited in blocks or steps to occur out of order in some alternative embodiments. For example, it is possible that two blocks or steps shown one after another may in fact be performed substantially simultaneously, or that the blocks or steps may sometimes be performed in the reverse order according to the corresponding function.

또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽힐 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 상기 컴퓨터가 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등) 및 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.In addition, the system according to the present invention can be implemented as computer-readable codes on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored. The computer-readable recording medium includes a magnetic storage medium (eg, a ROM, a floppy disk, a hard disk, etc.) and an optical readable medium (eg, a CD-ROM, a DVD, etc.). In addition, the computer-readable recording medium is distributed in a network-connected computer system so that the computer-readable code can be stored and executed in a distributed manner.

1: 하우징 2: 단자
3, 106: 핀 4, 103: 핀 수용부
101: 코너 102: 기판
104: 기능 유닛 105: 핀 설치부
1000: 코딩 교육용 시스템
100: 서버 200: 사용자 단말
300: 모듈 어셈블리
1: Housing 2: Terminal
3, 106: pin 4, 103: pin receiving part
101: corner 102: board
104: function unit 105: pin mounting part
1000: system for teaching coding
100: server 200: user terminal
300: module assembly

Claims (10)

RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드가 포함된 미션 브릿지 및 상기 미션 브릿지가 결합되는 복수의 블록이 정렬되어 있는 미션 맵을 포함하는 보드게임 툴;
미션 수행을 위해 상기 미션 맵 상을 이동하는 미션수행모듈;
카메라를 통해 상기 보드게임 툴과 상기 미션수행모듈을 인식하는 인식부; 인식된 상기 보드게임 툴과 상기 미션수행모듈을 AR 이미지로 변환하여 디스플레이에 제공하는 증강현실 그래픽 표시부; 및 상기 미션 맵 상에서 상기 미션수행모듈의 위치에 대응하는 미션수행코드의 미션을 제공하는 미션제공부를 포함하는 서버; 및
상기 보드게임 툴, 상기 미션수행모듈 및 서버와 무선통신망으로 연결되는 스마트 단말을 포함하고,
상기 미션은 상기 미션 맵에 결합된 상기 미션 브릿지의 개수에 대응하는 난이도로 제공되는 코딩 미션이며, 상기 미션은 상기 미션 브릿지들이 전, 후 미션 브릿지들과 서로 근거리에 뭉쳐 있을수록 서로 근처리에 뭉쳐 있지 않은 미션 브릿지들에 제공되는 미션보다 미션의 난이도가 높아지는, 미션 해결형 콘텐츠가 포함된 보드게임을 제공하는 코딩 교육용 시스템.
A board game tool including a mission bridge including a mission performance code recognizable by RF tagging or camera shooting, and a mission map in which a plurality of blocks to which the mission bridge is coupled are aligned;
a mission execution module for moving on the mission map to perform a mission;
a recognition unit for recognizing the board game tool and the mission performance module through a camera; an augmented reality graphic display unit for converting the recognized board game tool and the mission performance module into an AR image and providing it to a display; and a server including a mission providing unit providing a mission of a mission execution code corresponding to the location of the mission execution module on the mission map; and
It includes a smart terminal connected to the board game tool, the mission performance module, and the server and a wireless communication network,
The mission is a coding mission that is provided with a difficulty corresponding to the number of the mission bridges coupled to the mission map, and the mission is the mission bridges before and after the mission bridges and the closer to each other, the closer they are to each other. A coding education system that provides a board game with mission-solving content that increases the difficulty of missions than missions provided to mission bridges that are not.
삭제delete 삭제delete 제1항에 있어서,
상기 미션수행코드는 상기 미션수행모듈에 의해 스캔되는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.
The method of claim 1,
The mission performance code is scanned by the mission performance module, a coding education system for providing mission-solving content.
제1항에 있어서,
상기 서버는 제공된 미션을 수행하기 위해 사용자가 상기 디스플레이 상에서 드래그 방식으로 결합한 모듈 정보를 수신하는 모듈 정보 수신부를 포함하는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.
The method of claim 1,
The server is a coding education system for providing mission-solving content, including a module information receiver for receiving module information combined by a user on the display in a drag manner to perform the provided mission.
제5항에 있어서,
상기 서버는 상기 모듈 정보에 기초하여 실시간으로 소스 코드를 생성하는 코드 생성부를 포함하는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.
6. The method of claim 5,
The server is a coding education system for providing mission-solving content, including a code generator for generating a source code in real time based on the module information.
제4항에 있어서,
상기 미션수행코드는 미션 정보가 포함된 QR코드, 바코드, NFC 태그 중 어느 하나의 형태로 형성되는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.
5. The method of claim 4,
The mission performance code is formed in the form of any one of a QR code, barcode, NFC tag containing mission information, a coding education system for providing mission-solving content.
제1항에 있어서,
상기 서버는 미션에 따라 결합 가능한 추천 조립 정보를 생성하는 추천 조립 정보 생성부를 더 포함하되,
상기 추천 조립 정보는 사용자가 실제 소지하고 있는 모듈들 중 상기 카메라를 통해 촬영된 모듈들만이 추천 모듈로서 생성되며, 상기 추천 모듈은 모듈 조립영역으로 드래그 앤 드롭되는 방식으로 조립되는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.
The method of claim 1,
The server further comprises a recommended assembly information generation unit for generating the recommended assembly information that can be combined according to the mission,
In the recommended assembly information, only modules photographed through the camera among the modules actually possessed by the user are generated as recommended modules, and the recommended modules are assembled by dragging and dropping to the module assembly area. A coding education system that provides
제8항에 있어서, 상기 미션이 복수의 사용자에 의해 수행되는 경우에는 상기 복수의 사용자를 편을 나누어 게임을 진행하되, 같은 편인 사용자들은 같은 편 사용자들에 의해 등록된 모듈들 내에서 상기 추천 모듈을 제공받는, 미션 해결형 콘텐츠를 제공하는 코딩 교육용 시스템.The method of claim 8, wherein when the mission is performed by a plurality of users, the plurality of users are divided to play a game, and users on the same side are selected from among modules registered by users on the same side. A system for coding education that provides mission-solving content. RF 태깅 또는 카메라 촬영으로 인식 가능한 미션수행코드가 포함된 미션 브릿지와 상기 미션 브릿지가 결합되는 복수의 블록이 정렬되어 있는 미션 맵으로 구성된 보드게임 툴 및 미션 수행을 위해 상기 블록 상에서 순차적으로 전진하는 미션수행모듈을 스캔하는 단계;
상기 보드게임 툴과 상기 미션수행모듈을 AR 이미지로 변환하여 디스플레이에 표시하는 단계; 및
상기 미션수행모듈의 위치에 대응하는 미션수행코드의 미션을 제공하는 단계;를 포함하고,
상기 미션은 상기 미션 맵에 결합된 상기 미션 브릿지의 개수에 대응하는 난이도로 제공되는 코딩 미션이며, 상기 미션은 상기 미션 브릿지들이 전, 후 미션 브릿지들과 서로 근거리에 뭉쳐 있을수록 서로 근처리에 뭉쳐 있지 않은 미션 브릿지들에 제공되는 미션보다 미션의 난이도가 높아지는, 미션 해결형 콘텐츠를 제공하는 방법.
A board game tool consisting of a mission bridge including a mission performance code recognizable by RF tagging or camera shooting, and a mission map in which a plurality of blocks to which the mission bridge is coupled are aligned, and a mission that sequentially advances on the block to perform the mission scanning the execution module;
converting the board game tool and the mission performance module into AR images and displaying them on a display; and
Including; providing a mission of the mission performance code corresponding to the location of the mission performance module;
The mission is a coding mission that is provided with a difficulty corresponding to the number of the mission bridges coupled to the mission map, and the mission is the mission bridges before and after the mission bridges and the closer to each other, the closer they are to each other. A method of providing mission-solving content, in which the difficulty of the mission is higher than that provided to mission bridges that are not mission bridges.
KR1020200188089A 2020-12-30 2020-12-30 A coding training system providing mission-solving contents and the method therof KR102463835B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200188089A KR102463835B1 (en) 2020-12-30 2020-12-30 A coding training system providing mission-solving contents and the method therof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200188089A KR102463835B1 (en) 2020-12-30 2020-12-30 A coding training system providing mission-solving contents and the method therof

Publications (2)

Publication Number Publication Date
KR20220095997A KR20220095997A (en) 2022-07-07
KR102463835B1 true KR102463835B1 (en) 2022-11-04

Family

ID=82397982

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200188089A KR102463835B1 (en) 2020-12-30 2020-12-30 A coding training system providing mission-solving contents and the method therof

Country Status (1)

Country Link
KR (1) KR102463835B1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150093584A (en) * 2014-12-18 2015-08-18 (주)모션블루 Method and apparatus for providing educational board game
KR20190080307A (en) * 2017-12-28 2019-07-08 주식회사 인솔엠앤티 Method for teaching coding using coding block
KR102121113B1 (en) * 2018-07-31 2020-06-17 권영선 System of convergence phonics education with IT and robot and phonics education method therefor and computer-readable recording medium having program therefor
KR102211422B1 (en) * 2019-01-10 2021-02-03 주식회사 럭스로보 A Programable Module Assembly And Executable Code Producing System Therefore
KR102370502B1 (en) * 2019-01-24 2022-03-04 홍익대학교세종캠퍼스산학협력단 Coding learning system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
공개특허공보 제10-2015-0093584호(2015.8.18. 공개) 1부.*
공개특허공보 제10-2020-0086834호(2020.7.20. 공개) 1부.*
공개특허공보 제10-2020-0092247호(2020.8.3. 공개) 1부.*

Also Published As

Publication number Publication date
KR20220095997A (en) 2022-07-07

Similar Documents

Publication Publication Date Title
US11911709B2 (en) Toy construction system for augmented reality
US10293268B2 (en) Block, block system, information processing apparatus, display method, and information processing method
CN108027653B (en) Haptic interaction in virtual environments
JP6900575B2 (en) How and system to generate detailed datasets of the environment through gameplay
CN103657087B (en) Formula narration environment on the spot in person
EP1899939B1 (en) Manipulable interactive devices
CN103930182A (en) Baseplate assembly for use with toy pieces
US11769306B2 (en) User-exhibit distance based collaborative interaction method and system for augmented reality museum
EP3154029A1 (en) Image processing device, image processing method, and image processng program
CN110163956A (en) Three-dimensional house type drawing generating method, device, equipment and storage medium
Krestanova et al. Development and technical design of tangible user interfaces in wide-field areas of application
US11229841B2 (en) Reader participation type electronic book system using module and operation method
KR102463835B1 (en) A coding training system providing mission-solving contents and the method therof
KR102301027B1 (en) A system and method for constructing a reader participation type electronic book using module
KR102479950B1 (en) A coding training system enables module assembly through augmented reality
US11455147B2 (en) System for coding without compilation and a module assembly
KR102084178B1 (en) System and method for providing toy platform service for infants in science-technology-engineering-arts-mathmatics based on cloud service, and storeage medium which program for executing method is recorded
KR102450665B1 (en) A system for providing quest solving e-book services using play module
US11392392B2 (en) Plug and play module assembly and plug and play system
WO2021044851A1 (en) Information processing device and information processing method
KR20230126187A (en) Device and method for providing contents based on augmented reality
CN116503550A (en) Method, device, storage medium and system for generating three-dimensional virtual scene

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant