KR20210007346A - 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템 - Google Patents

코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템 Download PDF

Info

Publication number
KR20210007346A
KR20210007346A KR1020190083654A KR20190083654A KR20210007346A KR 20210007346 A KR20210007346 A KR 20210007346A KR 1020190083654 A KR1020190083654 A KR 1020190083654A KR 20190083654 A KR20190083654 A KR 20190083654A KR 20210007346 A KR20210007346 A KR 20210007346A
Authority
KR
South Korea
Prior art keywords
driving
coding
information
code
related event
Prior art date
Application number
KR1020190083654A
Other languages
English (en)
Other versions
KR102290934B1 (ko
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 KR1020190083654A priority Critical patent/KR102290934B1/ko
Publication of KR20210007346A publication Critical patent/KR20210007346A/ko
Application granted granted Critical
Publication of KR102290934B1 publication Critical patent/KR102290934B1/ko

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

일 실시예는, 본체; 본체의 밑면에 배치되어 코딩학습용보드부재 상에 표시된 주행안내선을 인식하는 라인인식센서; 코딩학습용보드부재 상에서 주행안내선의 일측 주변에 표시된 주행관련이벤트코드를 인식하기 위해 본체의 밑면에 배치되되, 라인인식센서의 일측에 배치되는 코드인식센서; 두 개 이상의 바퀴 및 본체의 내부에 배치되어 두 개 이상의 바퀴를 구동하는 하나 이상의 모터를 포함한 구동부; 주행관련이벤트정보DB를 저장하는 메모리부; 및 사용자가 소정의 코딩도구를 통해 코딩한 주행알고리즘을 메모리부에 저장하고, 라인인식센서에서 주행안내선의 인식을 시작하면 주행알고리즘에 따라 구동부를 제어하여 본체가 주행안내선을 따라 주행하도록 하며, 본체의 주행시에 코드인식센서에서 어느 하나의 주행관련이벤트코드를 인식하면, 어느 하나의 주행관련이벤트코드를 어느 하나의 주행관련이벤트코드정보로 변환하고, 주행관련이벤트정보DB에서 어느 하나의 주행관련이벤트코드정보에 대응하는 어느 하나의 주행관련이벤트정보를 확인한 후에 주행알고리즘에 주행조건정보가 포함되어 있으면, 주행조건정보에 따라 구동부를 제어하는 제어부를 포함하는 코딩 학습용 장치를 제공한다.

Description

코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템{CODING LEARNING APPARATUS AND CODING LEARNING SYSTEM INCLUDING THE SAME}
본 발명은 유소년을 위한 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템에 관한 것이다.
최근 들어, 빅 데이터 분석, 인공지능, 로봇공학, 사물인터넷 등과 같은 정보통신기술이 급격하게 발전하면서 정보통신기술을 구현하기 위한 소프트웨어를 개발하는 프로그래머가 미래 유망 직업으로 각광받고 있다.
이로 인해, 소프트웨어 개발을 위한 코딩 교육의 중요성이 크게 증가하여 전국 초, 중, 고교에서 코딩교육을 의무화하고 있고, 유소년을 위한 코딩 학습 도구들도 다양하게 출시되고 있다.
이러한 코딩 학습 도구 중에서 가장 대표적인 코딩 학습 도구는 코딩 학습용 주행 로봇일 것이다.
종래에 코딩 학습용 주행 로봇이 사용자의 코딩에 따라 목적지까지 주행하는 방식은 특허문헌 1과 같이 코딩 학습용 주행 로봇이 다수의 타일 각각에 인쇄된 미세 코드인 위치 정보 코드를 인식해서 다수의 타일 상에서 자신의 위치와 주행방향을 파악하여 주행함과 아울러, 다수의 타일 각각에 인쇄된 미세 코드인 작업 지시 코드를 인식하여 작업 지시 코드에 대응하는 작업, 즉 주행과 관련된 이벤트를 수행하는 방식 등이 있다.
여기서, 하나의 타일에서 인식되는 위치 정보 코드들은 인쇄된 위치에 따라 서로 다른 좌표값을 가져야 하기 때문에 하나의 타일에 인쇄되는 위치 정보 코드들의 형상 또는 패턴을 모두 상이하게 설정해야 한다.
그리고 코딩 학습용 주행 로봇이 하나의 타일 내에서도 자신의 위치를 정확하게 확인해야 하기 때문에 위치 정보 코드들이 타일의 표면 전체 면적 또는 대부분의 면적에 인쇄되어야 한다.
따라서, 하나의 타일을 제작할 때에 위치 정보 코드들을 위치별로 각각 상이하게 설정하기 위한 시간이 오래 걸리고, 위치 정보 코드들을 타일 표면에 인쇄하기 위한 비용도 증가하게 된다.
또한, 코딩 학습용 주행 로봇이 다수의 타일에 표시된 주행 경로를 주행할 때, 주행 경로를 이탈하지 않는 주행 방향을 확인하기 위해서는 타일별로 표시된 위치 정보 코드들을 위치 정보인 좌표값으로 변환하기 위한 복잡한 데이터 처리 과정을 연속적으로 수행해야 하기 때문에 코딩 학습용 주행 로봇의 데이터 처리량이 지속적으로 증가하게 된다.
이러한 경우, 코딩 학습용 주행 로봇의 CPU가 고온으로 발열되어 CPU의 수명이 감소하거나 코딩 학습용 주행 로봇의 배터리가 빠르게 방전되는 문제점이 발생할 수 있다.
한국등록특허 제10-1311162호(2013. 09. 11 공고)
이러한 배경에서, 본 실시예의 목적은, 일 측면으로, 사용자가 코딩한 알고리즘에 따라 코딩 학습용 장치가 코딩 학습용 보드 부재 상을 주행할 때, 코딩 학습용 장치의 데이터 처리량을 감소시킬 수 있는 기술을 제공하는 것이다.
전술한 목적을 달성하기 위하여, 일 실시예는, 소정 형상으로 형성된 본체; 상기 본체의 밑면에 배치되어 코딩 학습용 보드 부재 상에 표시된 주행 안내선을 인식하는 라인 인식 센서; 상기 코딩 학습용 보드 부재 상에서 상기 주행 안내선의 일측 주변에 표시된 주행 관련 이벤트 코드 - 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드 - 를 인식하기 위해 상기 본체의 밑면에 배치되되, 상기 라인 인식 센서의 일측에 배치되는 코드 인식 센서; 상기 본체의 하부에 배치된 두 개 이상의 바퀴 및 상기 본체의 내부에 배치되어 상기 두 개 이상의 바퀴를 구동하는 하나 이상의 모터를 포함한 구동부; 상기 본체의 내부에 배치되고, 다수의 주행 관련 이벤트 정보 및 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함한 주행 관련 이벤트 정보 DB(DataBase)를 저장하는 메모리부; 및 상기 본체의 내부에 배치되고, 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 상기 메모리부에 저장하고, 상기 라인 인식 센서에서 상기 주행 안내선의 인식을 시작하면 상기 주행 알고리즘에 따라 상기 구동부를 제어하여 상기 본체가 상기 주행 안내선을 따라 주행하도록 하며, 상기 본체의 주행시에 상기 코드 인식 센서에서 어느 하나의 주행 관련 이벤트 코드를 인식하면, 상기 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환하고, 상기 주행 관련 이벤트 정보 DB에서 상기 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인한 후에 상기 주행 알고리즘에 상기 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인하고, 상기 주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 상기 주행 조건 정보에 따라 상기 구동부를 제어하는 제어부를 포함하는 코딩 학습용 장치를 제공한다.
메모리부는 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 이벤트 안내 정보를 포함한 이벤트 안내 정보 DB를 더 저장할 수 있다.
코딩 학습용 장치는 상기 본체의 내부에 배치되고, 상기 어느 하나의 주행 관련 이벤트 정보에 대응하는 어느 하나의 이벤트 안내 정보를 가청음으로 출력하는 정보 출력부를 더 포함할 수 있다.
소정의 코딩 도구는 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드이고, 상기 코드 인식 센서에서 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 표시된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식하면, 상기 제어부는 상기 코드 인식 센서의 코드 인식 순서에 따라 상기 주행 알고리즘을 생성할 수 있다.
메모리부는 다수의 코딩 명령어 코드 정보 및 상기 다수의 코딩 명령어 코드 정보에 대응하는 다수의 코딩 명령어 정보를 포함한 코딩 명령어 정보 DB를 더 저장하고, 상기 제어부는 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환하고, 상기 다수의 코딩 명령어 정보 중에서 상기 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인 및 상기 코드 인식 순서에 따라 조합하여 상기 주행 알고리즘을 생성하되, 상기 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에서 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 포함되어 있으면 상기 주행 알고리즘의 생성을 중지할 수 있다.
코딩 학습용 장치는 상기 주행 알고리즘의 생성 중지에 대한 안내를 가청음으로 출력하는 정보 출력부를 더 포함하고, 상기 제어부는 상기 소정 규칙에 위반되지 않으면서 상기 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보를 상기 다수의 코딩 명령어 정보 중에서 선택하고, 상기 대체용 코딩 명령어 정보를 상기 사용자에게 추천하기 위한 가청음을 상기 정보 출력부에서 출력하도록 할 수 있다.
코딩 학습용 장치는 코딩 학습용 보드 부재 상에서 상기 주행 안내선의 타측 주변에 표시된 주행 관련 이벤트 코드를 인식하기 위해 상기 라인 인식 센서의 타측에 배치되는 코드 인식 센서를 더 포함할 수 있다.
다른 실시예는 일면에 표시된 도로 영역, 상기 도로 영역 내부에 표시된 주행 안내선 및 상기 도로 영역의 일측에 위치하는 영역으로서, 주행 관련 이벤트 코드 - 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드 - 가 표시되는 영역인 이벤트 코드 표시 영역을 포함한 코딩 학습용 보드 부재; 및 상기 주행 안내선을 인식하기 위한 라인 인식 센서를 밑면에 배치하고, 상기 주행 관련 이벤트 코드를 인식하기 위한 코드 인식 센서를 상기 라인 인식 센서의 일측에 배치하며, 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 저장한 후에 상기 라인 인식 센서를 통해 상기 주행 안내선의 인식을 시작하면 상기 주행 알고리즘에 따른 주행을 시작하되, 상기 주행 안내선의 인식을 통해 주행 방향을 확인하고, 상기 코드 인식 센서를 통해 어느 하나의 주행 관련 이벤트 코드를 인식하면, 상기 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환하고, 다수의 주행 관련 이벤트 정보 및 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함한 주행 관련 이벤트 정보 DB(DataBase)에서 상기 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인한 후에 상기 주행 알고리즘에 상기 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인하고, 상기 주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 현재의 주행 조건을 상기 주행 조건 정보에 따라 변경하는 코딩 학습용 장치를 포함하는 코딩 학습용 시스템을 제공할 수 있다.
소정의 코딩 도구는 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드이고, 상기 코딩 학습용 장치는 상기 코드 인식 센서를 통해 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 표시된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식한 후에 코드 인식 순서에 따라 상기 주행 알고리즘을 생성할 수 있다.
코딩 학습용 장치는 상기 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환하고, 다수의 코딩 명령어 코드 정보 및 상기 다수의 코딩 명령어 코드 정보에 대응하는 다수의 코딩 명령어 정보를 포함한 코딩 명령어 정보 DB에서 상기 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인 및 상기 코드 인식 순서에 따라 조합하여 상기 주행 알고리즘을 생성하되, 상기 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에서 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 포함되어 있으면 상기 주행 알고리즘의 생성을 중지할 수 있다.
코딩 학습용 장치는 상기 주행 알고리즘의 생성 중지에 대한 안내를 가청음으로 출력하고, 상기 소정 규칙에 위반되지 않으면서 상기 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보를 상기 다수의 코딩 명령어 정보 DB에서 선택한 후에 상기 대체용 코딩 명령어 정보를 상기 사용자에게 추천하기 위한 가청음을 출력할 수 있다.
이상에서 설명한 바와 같이 본 실시예에 의하면, 코딩 학습용 장치가 코딩 학습용 보드 부재 상에서 주행할 때에 코딩 학습용 보드 부재 상에 표시된 주행 안내선을 인식 및 추종하는 간단한 데이터 처리 과정을 통해 주행 방향을 확인하고, 코딩 학습용 보드 부재 상에 비연속적으로 표시된 주행 관련 이벤트 코드들을 간헐적으로 인식 및 처리하기 때문에 코딩 학습용 장치의 데이터 처리량을 종래에 비해 감소시킬 수 있다.
도 1은 일 실시예에 따른 코딩 학습용 보드 부재를 예시적으로 나타낸 도면이다.
도 2는 일반적인 닷코드의 구성을 예시적으로 나타낸 도면이다.
도 3은 일 실시예에 따른 코딩 학습용 장치의 밑면을 예시적으로 나타낸 도면이다.
도 4 및 도 5는 일 실시예에 따른 코딩 학습용 장치의 구성도이다.
도 6은 일 실시예에 따른 주행 관련 이벤트 정보 DB를 예시적으로 나타낸 도면이다.
도 7은 일 실시예에 따른 이벤트 안내 정보 DB를 예시적으로 나타낸 도면이다.
도 8은 일 실시예에 따른 코딩 명령어 정보 DB를 예시적으로 나타낸 도면이다.
도 9 내지 도 13는 일 실시예에 따른 코딩 학습용 카드를 예시적으로 나타낸 도면이다.
도 14 및 도 15는 일 실시예에 따른 코딩 학습용 장치의 주행 알고리즘 생성 과정을 설명하기 위한 도면이다.
도 16은 일 실시예에 따른 코딩 학습용 장치에서 주행 알고리즘의 생성을 중지하는 경우를 설명하기 위한 도면이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 일 실시예에 따른 코딩 학습용 보드 부재를 예시적으로 나타낸 도면이다.
도 1을 참조하면, 코딩 학습용 보드 부재(100)는 유소년의 코딩 학습에 사용되기 때문에 유소년의 흥미를 유발하기 위해 맵 형태로 제작될 수 있다.
구체적으로, 코딩 학습용 보드 부재(100)는 도 1과 같이 로봇 형태의 코딩 학습용 장치(300)가 주행할 수 있는 영역인 도로 영역(110)이 표시될 수 있고, 코딩 학습용 장치(300)의 주행과 관련된 이벤트 코드인 주행 관련 이벤트 코드가 표시되는 이벤트 코드 표시 영역(115)이 도로 영역(110)의 일측 또는 양측에 표시될 수 있다. 여기서, 이벤트 코드 표시 영역(115)에 표시되는 다수의 주행 관련 이벤트 코드는 도 1과 같이 상호간에 여백을 두고 표시, 즉 다수의 주행 관련 이벤트 코드가 비연속적으로 표시될 수 있다.
또한, 도로 영역(110) 내부에는 코딩 학습용 장치(300)가 도로 영역(110)으로 주행할 수 있도록 하는 주행 안내선(105)이 표시된다.
일 실시예에서 도로 영역(110)에 표시되는 주행 안내선(105)은 소정 색상의 직선 또는 곡선으로 구현될 수 있고, 이벤트 코드 표시 영역(115)에 표시되는 주행 관련 이벤트 코드는 닷코드 형태로 구현될 수 있다.
여기서, 닷코드란 종이, 플라스틱, 목재와 같이 다양한 재질로 제작된 보드 부재의 표면에 거의 보이지 않는 점으로 인쇄된 코드, 즉 도 2와 같이 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드로써, 주행 관련 이벤트 코드의 종류별로 각각 상이한 도트 패턴으로 구성될 수 있다.
예를 들어, 도로 영역(110) 중에서 비포장 구간을 나타내는 비포장 구간 코드(120), 일방통행 구간을 나타내는 일방통행 구간 코드(125), 서행 구간을 나타내는 서행 구간 코드(130), 사거리 구간을 나타내는 사거리 구간 코드(135), 도로 영역(110)의 교통 신호 중에서 적색 신호등 지점을 나타내는 적색 신호등 코드(140), 녹색 신호등 지점을 나타내는 녹색 신호등 코드(145)는 각각 상이한 도트 패턴의 닷코드로 구성될 수 있다. 도 1에서는 설명의 편의를 위해 위와 같은 주행 관련 이벤트 코드들을 육안으로 확인 가능하게 표시하였지만, 실제로는 위와 같은 주행 관련 이벤트 코드들은 육안으로 확인할 수 없을 정도로 미세하게 인쇄된다.
한편, 코딩 학습용 보드 부재(100)에 하나 이상 표시된 시설 이미지도 주행 관련 이벤트 코드로 나타낼 수 있고, 시설 종류에 따라 각각 상이한 도트 패턴을 가질 수 있다.
예를 들어, 경찰서를 나타내는 경찰서 코드(150)와 빵집을 나타내는 빵집 코드(155)는 각각 상이한 도트 패턴을 가질 수 있다.
코딩 학습용 장치(300)는 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 저장하고, 코딩 학습용 보드 부재(100) 상에서 주행 안내선(105)의 인식을 시작하면 주행 알고리즘에 따른 주행을 시작하되, 주행 안내선(105)의 인식을 통해 주행 방향을 확인할 수 있다. 다시 말해서 주행 안내선(105)을 추종하는 제어를 통해 주행 안내선(105)이 표시된 도로 영역(110)을 주행할 수 있다. 여기서, 코딩 학습용 장치(300)는 도 3과 같이 밑면에 라인 인식 센서(310)를 구비하여 주행 안내선(105)을 인식할 수 있다. 이러한 라인 인식 센서(310)는 적외선 센서, 칼라 센서 등일 수 있다.
코딩 학습용 장치(300)는 도로 영역(110)의 주행시에 이벤트 코드 표시 영역(115)에 비연속적으로 표시된 주행 관련 이벤트 코드들을 간헐적으로 인식할 수 있다. 여기서, 주행 관련 이벤트 코드는 닷코드일 수 있고, 코딩 학습용 장치(300)는 도 3과 같이 라인 인식 센서(310)의 일측 주변 또는 양측 주변에 코드 인식 센서(320)를 구비하여 주행 관련 이벤트 코드를 인식할 수 있다. 이러한 코드 인식 센서(320)는 광학 인식 센서(OID: Optical ID)일 수 있다.
주행 알고리즘에 따라 도로 영역(110)을 주행중인 코딩 학습용 장치(300)가 이벤트 코드 표시 영역(115)에서 어느 하나의 주행 관련 이벤트 코드를 인식한 경우, 코딩 학습용 장치(300)는 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환할 수 있고, 기저장한 주행 관련 이벤트 정보 DB에서 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인할 수 있다. 여기서, 주행 관련 이벤트 정보 DB는 도 6과 같이 다수의 주행 관련 이벤트 정보 및 다수의 주행 관련 이벤트 정보와 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함할 수 있다.
예를 들어, 도 1에서 코딩 학습용 장치(300)가 코딩 학습용 보드 부재(100)의 이벤트 코드 표시 영역(115)에 표시된 적색 신호등 코드(140)를 인식한 경우, 코딩 학습용 장치(300)는 적색 신호등 코드(140)를 도 6과 같이 적색 신호등 코드(140)에 대응하는 적색 신호등 코드 정보인 "13001"로 변환할 수 있다.
이후, 코딩 학습용 장치(300)는 도 6과 같은 주행 관련 이벤트 정보 DB에서 적색 신호등 코드 정보 "13001"에 대응하는 주행 관련 이벤트 정보인 "적색 신호등"을 확인할 수 있다.
위와 같이 어느 하나의 주행 관련 이벤트 정보를 확인한 코딩 학습용 장치(300)는 주행 알고리즘에서 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인할 수 있다.
주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 코딩 학습용 장치(300)는 주행 조건 정보에 따라 주행 조건을 변경할 수 있다.
예를 들어, 주행 알고리즘이 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 일시정지 → 녹색 신호등이면 → 전진 → 사거리이면 → 속도 감소 → 우회전 → 목적지 도착이면 → 정지 → 종료"이고, 코딩 학습용 장치(300)가 주행중에 어느 하나의 주행 관련 이벤트 코드인 적색 신호등 코드(140)를 인식한 경우, 코딩 학습용 장치(300)는 적색 신호등 코드(140)에 해당하는 주행 관련 이벤트 정보인 "적색 신호등"을 주행 관련 이벤트 정보 DB에서 확인할 수 있다.
그리고, 코딩 학습용 장치(300)는 "적색 신호등"에 해당하는 주행 조건 정보인 "적색 신호등이면 → 일시정지"가 주행 알고리즘에 포함된 것을 확인한 후에 주행 정보에 따라 주행 조건을 변경, 즉 일시정지한 후에 다시 주행할 수 있다.
한편, 주행 알고리즘에 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있지 않으면, 코딩 학습용 장치(300)는 현재의 주행 조건을 유지할 수 있다.
일 실시예에서 코딩 학습용 장치(300)는 도 7과 같이 다수의 주행 관련 이벤트 정보 및 다수의 주행 관련 이벤트 정보에 대응하는 다수의 이벤트 안내 정보를 포함한 이벤트 안내 정보 DB를 더 저장할 수 있다.
이를 통해 코딩 학습용 장치(300)가 어느 하나의 주행 관련 이벤트 코드를 이벤트 코드 표시 영역(115)에서 인식했을 때에 어느 하나의 주행 관련 이벤트 코드에 해당하는 어느 하나의 이벤트 안내 정보를 출력할 수 있다. 여기서, 코딩 학습용 장치(300)는 어느 하나의 이벤트 안내 정보를 가청음으로 출력할 수 있다. 또한, 코딩 학습용 장치(300)는 어느 하나의 이벤트 안내 정보를 하나 이상의 색상을 가지는 가시광으로 출력할 수도 있고, 어느 하나의 이벤트 안내 정보를 가청음과 가시광으로 출력할 수도 있다.
한편, 일 실시예에서 사용자가 주행 알고리즘을 코딩하기 위해 사용하는 소정의 코딩 도구는 코딩 학습용 소프트웨어이거나, 닷코드로 구현한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드일 수 있다.
소정의 코딩 도구가 코딩 학습용 소프트웨어인 경우, 코딩 학습용 소프트웨어는 코딩 명령어 블록들을 포함한 GUI(Gaphical User Interface)를 사용자에게 제공한다.
이를 통해, 사용자는 자신이 코딩하고자 하는 주행 알고리즘에 따라 하나 이상의 코딩 명령어 블록을 순차적으로 결합할 수 있다.
코딩 학습용 소프트웨어는 하나 이상의 코딩 명령어 블록에 대응하는 하나 이상의 코딩 명령어를 확인하고, 하나 이상의 코딩 명령어를 블록 결합 순서에 따라 조합하여 주행 알고리즘으로 생성할 수 있다.
한편, 소정의 코딩 도구가 다수의 코딩 학습용 카드인 경우, 다수의 코딩 학습용 카드는 도 9 내지 도 13와 같이 코딩의 시작과 종료를 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드, 목적지를 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드, 다수의 시설 정보를 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드, 다수의 조건문을 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드, 다수의 주행 관련 이벤트를 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드, 다수의 주행 조건을 지시하는 기호와 코딩 명령어 코드가 인쇄된 카드 등을 포함할 수 있다.
사용자는 다수의 코딩 학습용 카드 중에서 자신이 코딩하고자 하는 주행 알고리즘에 따라 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드를 선택하고, 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드를 순차적으로 코딩 학습용 장치(300)의 코드 인식 센서(320)에 근접시킬 수 있다.
코딩 학습용 장치(300)는 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 인쇄된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식하고, 코드 인식 순서에 따라 주행 알고리즘을 생성한다.
구체적으로, 코딩 학습용 장치(300)는 도 8과 같이 다수의 코딩 명령어 정보 및 다수의 코딩 명령어 정보에 대응하는 코딩 명령어 코드 정보를 포함한 코딩 명령어 정보 DB를 저장할 수 있고, 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환한 후에 코딩 명령어 정보 DB에서 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인할 수 있다.
이후, 코딩 학습용 장치(300)는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 코드 인식 순서에 따라 조합한 주행 알고리즘을 생성할 수 있다.
예를 들어, 코딩 학습용 장치(300)는 도 14 및 도 15와 같이 18장의 코딩 학습용 카드, 즉 제 1 코딩 학습용 카드 내지 제 18 코딩 학습용 카드에서 제 1 코딩 명령어 코드 내지 제 18 코딩 명령어 코드를 순차적으로 인식하고, 제 1 코딩 명령어 코드 내지 제 18 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 18 코딩 명령어 코드 정보로 변환할 수 있다.
코딩 학습용 장치(300)는 코딩 명령어 정보 DB에서 제 1 코딩 명령어 코드 정보 내지 제 18 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 18 코딩 명령어 정보를 확인하고, 코드 인식 순서에 따라 제 1 코딩 명령어 정보 내지 제 18 코딩 명령어 정보를 조합하여 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 일시정지 → 녹색 신호등이면 → 전진 → 사거리이면 → 속도 감소 → 우회전 → 목적지 도착이면 → 정지 → 종료"와 같은 주행 알고리즘을 생성할 수 있다. 여기서, 주행 알고리즘을 생성한다는 것은 주행 알고리즘을 컴퓨터 프로그램화한다는 것이다.
일 실시예에서 코딩 학습용 장치(300)는 주행 알고리즘의 생성시에 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에 포함되어 있는 지를 확인할 수 있다.
그리고, 규칙 위반 코딩 명령어 정보가 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에 포함되어 있으면, 주행 알고리즘의 생성을 중지할 수 있다.
예를 들어, 소정 규칙이 교통 법규이고, 코딩 학습용 장치(300)가 도 16과 같은 제 1 코딩 학습용 카드 내지 제 11 코딩 학습용 카드에서 제 1 코딩 명령어 코드 내지 제 11 코딩 명령어 코드를 인식 및 주행 알고리즘을 생성할 때, 코딩 학습용 장치(300)는 제 1 코딩 명령어 코드 내지 제 11 코딩 명령어 코드에 해당하는 제 1 코딩 명령어 코드 정보 내지 제 11 코딩 명령어 코드 정보를 통해 제 1 코딩 명령어 정보 내지 제 11 코딩 명령어 정보를 조합하여 주행 알고리즘을 임시로 생성할 수 있다.
그리고, 코딩 학습용 장치(300)는 임시로 생성한 주행 알고리즘인 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 전진 → 목적지 도착이면 → 정지 → 종료"에서 소정 규칙인 교통 법규에 위반되는 코딩 명령어 정보가 포함되어 있는 지를 확인할 수 있다.
이를 통해, 코딩 학습용 장치(300)는 제 7 코딩 학습용 카드(도 16의 점선 표시 부분)에 해당하는 코딩 명령어 정보인 "전진"이 교통 법규에 위반되는 규칙 위반 코딩 명령어 정보라는 것을 확인할 수 있고, 임시로 생성한 주행 알고리즘을 삭제한 후에 주행 알고리즘의 생성 과정을 종료할 수 있다.
이와 함께 코딩 학습용 장치(300)는 소정 규칙 위반으로 인해 주행 알고리즘의 생성을 중지한 것에 대한 안내 정보를 가청음으로 출력할 수 있다.
또한, 코딩 학습용 장치(300)는 소정 규칙에 위반되지 않으면서, 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보(예를 들어, "정지")를 다수의 코딩 명령어 정보 중에서 선택할 수 있고, 이에 대한 안내 정보를 가청음으로 출력하여 사용자에게 대체용 코딩 명령어 정보를 추천할 수 있다.
일 실시예에서는 위와 같은 구성을 통해 유소년층인 사용자에게 코딩 학습과 함께 교통 법규와 같은 소정 규칙에 대한 준수 교육 정보를 제공할 수 있다.
이하에서는 일 실시예에 따른 코딩 학습용 장치(300)의 구성에 대해 설명하도록 한다.
도 4 및 도 5는 일 실시예에 따른 코딩 학습용 장치의 구성도이다.
코딩 학습용 장치(300)는 라인 인식 센서(310), 코드 인식 센서(320), 구동부(330), 메모리부(340), 제어부(350), 정보 출력부(360), 전원부(370)를 포함할 수 있고, 도 5와 같이 정보 입력부(510)를 더 포함할 수 있다.
라인 인식 센서(310)는 코딩 학습용 장치(300)의 외관을 형성하는 본체의 밑면에 배치되어 코딩 학습용 보드 부재(100) 상에 표시된 주행 안내선(105)을 인식한다. 이러한 라인 인식 센서(310)는 적외선 센서, 칼라 센서 등으로 구현될 수 있고, 본체의 밑면에서 길이 방향으로 이등분되는 위치에 배치될 수 있다.
라인 인식 센서(310)가 적외선 센서로 구현되는 경우, 주행 안내선(105)의 색상은 흑색일 수 있고, 라인 인식 센서(310)는 적외선을 주행 안내선(105) 쪽으로 조사하여 적외선의 반사파를 미수신하면 주행 안내선(105)을 인식한 것으로 판단하고, 적외선의 반사파를 수신하면 주행 안내선(105)을 미인식한 것으로 판단할 수 있다.
라인 인식 센서(310)가 칼라 센서로 구현되는 경우, 주행 안내선(105)의 색상은 소정 색상일 수 있고, 라인 인식 센서(310)는 코딩 학습용 보드 부재(100) 상에서 소정 색상을 인식하면 주행 안내선(105)을 인식한 것으로 판단하고, 소정 색상을 미인식하면 주행 안내선(105)을 미인식한 것으로 판단할 수 있다.
코드 인식 센서(320)는 코딩 학습용 보드 부재(100) 상에서 주행 안내선(105)의 일측 주변 또는 양측 주변에 표시된 닷코드인 주행 관련 이벤트 코드를 인식하기 위해, 본체의 밑면에 배치되되 라인 인식 센서(310)의 일측 주변에 배치되거나 라인 인식 센서(310)의 양측 주변에 배치될 수 있다. 다시 말해서 코드 인식 센서(320)의 개수는 1개 이거나 2개 일 수 있다.
일 실시예에서 사용자가 주행 알고리즘을 코딩하기 위해 사용하는 소정의 코딩 도구가 코딩 학습용 카드인 경우, 코드 인식 센서(320)는 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 표시된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식할 수 있다.
이러한 코드 인식 센서(320)는 광학 인식 센서(OID: Optical ID)일 수 있다.
구동부(330)는 도 3과 같이 본체의 하부에 배치된 두 개 이상의 바퀴 및 본체의 내부에 배치되어 두 개 이상의 바퀴를 구동하는 하나 이상의 모터를 포함한다.
구동부(330)에 포함된 하나 이상의 모터는 후술할 제어부(260)의 제어에 의해 회전 속도를 가변할 수 있는 DC(Direct Current) 모터일 수 있다.
메모리부(340)는 후술할 제어부(350)가 처리하는 데이터를 일시적으로 저장하거나, 코딩 학습용 장치(300)의 기능을 수행하기 위한 프로그램을 저장하고, 코딩 학습용 장치(300)의 작동에 필요한 데이터를 저장한다.
일 실시예에서 메모리부(340)는 본체의 내부에 배치되고, 도 6과 같이 다수의 주행 관련 이벤트 정보 및 다수의 주행 관련 이벤트 정보에 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함한 주행 관련 이벤트 정보 DB를 저장할 수 있다.
그리고, 메모리부(340)는 도 7과 같이 다수의 주행 관련 이벤트 정보에 대응하는 다수의 이벤트 안내 정보를 포함한 이벤트 안내 정보 DB를 더 저장할 수 있고, 도 8과 같이 다수의 코딩 명령어 코드 정보 및 다수의 코딩 명령어 코드 정보에 대응하는 다수의 코딩 명령어 정보를 포함한 코딩 명령어 정보 DB를 더 저장할 수도 있다.
이러한 메모리부(340)는 읽기 전용 메모리인 ROM(Read Only Memory), 읽기/쓰기가 가능한 플래시 메모리(Flash Memory), RAM(Random Access Memory), EEPROM(Electrically Erasable and Programmable Read Only Memory), SD(Secure Digital) 메모리, 마이크로 SD 메모리 중 하나 이상을 포함할 수 있다.
제어부(350)는 본체의 내부에 배치되어 코딩 학습용 장치(300)의 전반적인 동작을 제어한다.
구체적으로 제어부(350)는 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 메모리부(340)에 저장할 수 있고, 라인 인식 센서(310)에서 주행 안내선(105)의 인식을 시작하면, 주행 알고리즘에 따라 구동부(330)를 제어하여 코딩 학습용 장치(300)의 본체가 주행 안내선을 따라 주행하도록 한다.
다시 말해서, 제어부(350)는 라인 인식 센서(310)를 사용하여 주행 안내선(105)을 추종하는 제어를 수행한다.
한편, 본체의 주행시에 코드 인식 센서(320)에서 어느 하나의 주행 관련 이벤트 코드를 인식하면, 제어부(350)는 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환할 수 있다.
그리고, 제어부(350)는 메모리부(340)에 저장된 주행 관련 이벤트 정보 DB에서 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인할 수 있다.
예를 들어, 도 1에서 코드 인식 센서(320)가 코딩 학습용 보드 부재(100)의 이벤트 코드 표시 영역(115)에 표시된 적색 신호등 코드(140)를 인식한 경우, 제어부(350)는 적색 신호등 코드(140)를 도 6과 같이 적색 신호등 코드(140)에 대응하는 적색 신호등 코드 정보인 "13001"로 변환할 수 있다.
이후, 제어부(350)는 도 6과 같은 주행 관련 이벤트 정보 DB에서 적색 신호등 코드 정보 "13001"에 대응하는 주행 관련 이벤트 정보인 "적색 신호등"을 확인한다. 여기서, 제어부(350)는 메모리부(340)에 저장된 이벤트 안내 정보 DB에서 어느 하나의 주행 관련 이벤트 정보에 대응하는 어느 하나의 이벤트 안내 정보를 확인한 후에 후술할 정보 출력부(360)에서 어느 하나의 이벤트 안내 정보를 가청음 및 가시광 중 하나 이상으로 출력하도록 제어할 수 있다.
위와 같이 어느 하나의 주행 관련 이벤트 정보를 확인한 제어부(350)는 주행 알고리즘에서 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인할 수 있다.
주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 제어부(350)는 주행 조건에 따라 구동부(330)를 제어하여 본체의 주행 조건을 변경할 수 있다.
예를 들어, 주행 알고리즘이 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 일시정지 → 녹색 신호등이면 → 전진 → 사거리이면 → 속도 감소 → 우회전 → 목적지 도착이면 → 정지 → 종료"이고, 코드 인식 센서(320)가 어느 하나의 주행 관련 이벤트 코드인 적색 신호등 코드(140)를 인식한 상태에서 제어부(350)는 적색 신호등 코드(140)에 해당하는 주행 관련 이벤트 정보인 "적색 신호등"을 주행 관련 이벤트 정보 DB에서 확인할 수 있다.
그리고, 제어부(350)는 "적색 신호등"에 해당하는 주행 조건 정보인 "적색 신호등이면 → 일시정지"가 주행 알고리즘에 포함된 것을 확인한 후에 주행 정보에 따라 구동부(330)의 구동을 일시적으로 정지시킨 후에 구동부(330)가 다시 구동되도록 제어하여 본체의 주행 조건을 변경, 즉 본체가 일시적으로 정지한 후에 다시 주행하도록 한다.
한편, 주행 알고리즘에 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있지 않으면, 제어부(350)는 본체가 현재의 주행 조건을 유지하기 위한 제어를 수행할 수 있다.
일 실시예에서 사용자가 주행 알고리즘을 코딩하기 위해 사용하는 소정의 코딩 도구는 닷코드로 구현한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드일 수 있다. 여기서, 닷코드는 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드를 의미할 수 있다.
사용자는 다수의 코딩 학습용 카드 중에서 자신이 코딩하고자 하는 주행 알고리즘에 따라 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드를 선택하고, 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드를 순차적으로 코딩 학습용 장치(300)의 코드 인식 센서(320)에 근접시킬 수 있다.
이때, 코드 인식 센서(320)는 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 인쇄된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식할 수 있고, 제어부(350)는 코드 인식 센서(320)의 코드 인식 순서에 따라 주행 알고리즘을 생성할 수 있다.
구체적으로, 제어부(350)는 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환한 후에 메모리부(340)에 저장된 코딩 명령어 정보 DB에서 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인할 수 있다.
이후, 제어부(350)는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 코드 인식 순서에 따라 조합한 주행 알고리즘을 생성할 수 있다.
예를 들어, 코드 인식 센서(320)가 도 14 및 도 15와 같이 18장의 코딩 학습용 카드, 즉 제 1 코딩 학습용 카드 내지 제 18 코딩 학습용 카드에서 제 1 코딩 명령어 코드 내지 제 18 코딩 명령어 코드를 순차적으로 인식하면, 제어부(350)는 제 1 코딩 명령어 코드 내지 제 18 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 18 코딩 명령어 코드 정보로 변환할 수 있다.
그리고, 제어부(350)는 코딩 명령어 정보 DB에서 제 1 코딩 명령어 코드 정보 내지 제 18 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 18 코딩 명령어 정보를 확인하고, 코드 인식 순서에 따라 제 1 코딩 명령어 정보 내지 제 18 코딩 명령어 정보를 조합하여 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 일시정지 → 녹색 신호등이면 → 전진 → 사거리이면 → 속도 감소 → 우회전 → 목적지 도착이면 → 정지 → 종료"와 같은 주행 알고리즘을 생성할 수 있다.
여기서, 제어부(350)는 주행 알고리즘의 생성시에 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에 포함되어 있는 지를 확인할 수 있다.
그리고, 규칙 위반 코딩 명령어 정보가 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에 포함되어 있으면, 주행 알고리즘의 생성을 중지할 수 있다.
예를 들어, 소정 규칙이 교통 법규이고, 제어부(350)가 도 16과 같은 제 1 코딩 학습용 카드 내지 제 11 코딩 학습용 카드에 대한 주행 알고리즘을 생성할 때, 제어부(350)는 제 1 코딩 명령어 코드 내지 제 11 코딩 명령어 코드에 해당하는 제 1 코딩 명령어 코드 정보 내지 제 11 코딩 명령어 코드 정보를 통해 제 1 코딩 명령어 정보 내지 제 11 코딩 명령어 정보를 조합하여 주행 알고리즘을 임시로 생성할 수 있다.
그리고, 코딩 학습용 장치(300)는 임시로 생성한 주행 알고리즘인 "시작 → 전진 → 목적지: 경찰서 → 적색 신호등이면 → 전진 → 목적지 도착이면 → 정지 → 종료"에서 소정 규칙인 교통 법규에 위반되는 코딩 명령어 정보가 포함되어 있는 지를 확인할 수 있다.
이를 통해, 제어부(350)는 제 7 코딩 학습용 카드(도 16의 점선 표시 부분)에 해당하는 코딩 명령어 정보인 "전진"이 교통 법규에 위반되는 규칙 위반 코딩 명령어 정보라는 것을 확인할 수 있고, 임시로 생성한 주행 알고리즘을 삭제한 후에 주행 알고리즘의 생성 과정을 종료할 수 있다.
이와 함께 제어부(350)는 소정 규칙 위반으로 인해 주행 알고리즘의 생성을 중지한 것에 대한 안내 정보를 정보 출력부(360)에서 가청음으로 출력하도록 제어할 수 있다.
또한 제어부(350)는 소정 규칙에 위반되지 않으면서, 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보(예를 들어, "정지")를 코딩 명령어 정보 DB에서 선택할 수 있고, 이에 대한 안내 정보를 정보 출력부(360)에서 가청음으로 출력하도록 제어할 수 있다.
여기서, 소정 규칙에 대한 데이터는 메모리부(340)에 기저장될 수 있다.
정보 출력부(360)는 본체의 내부에 배치되고, 제어부(350)의 제어에 따라 어느 하나의 주행 관련 이벤트 정보에 대응하는 어느 하나의 이벤트 안내 정보를 가청음 및 가시광 중 하나 이상으로 출력할 수 있다.
또한, 정보 출력부(360)는 제어부(350)의 제어에 따라 주행 알고리즘의 생성 중지에 대한 안내를 가청음으로 출력할 수도 있다.
이러한 정보 출력부(360)는 가청음을 출력하는 스피커(미도시) 및 가시광을 출력하는 광원부(미도시)를 포함할 수 있다. 여기서, 광원부(미도시)는 LED(Light-Emitting Diode) 광원일 수 있다.
전원부(370)는 제어부(350) 및 구동부(330) 등에 전원을 공급한다. 이러한 전원부(370)는 충전 및 방전이 가능한 이차 전지, 이차 전지를 충전하는 충전부 및 이차 전지 충전시에 과충전을 방지하는 과충전 방지회로를 포함할 수 있다.
한편, 일 실시예에서 코딩 학습용 장치(300)는 사용자의 음성과 같은 외부 소리를 입력받을 수 있는 마이크(미도시) 및 코딩 학습용 장치(300)의 주변 환경을 촬영하는 카메라(미도시) 중 하나 이상을 포함하는 정보 입력부(510)를 더 포함할 수 있다.
이상에서 설명한 바와 같이 일 실시예에 의하면, 코딩 학습용 장치(300)가 코딩 학습용 보드 부재(100) 상에서 주행할 때에 코딩 학습용 보드 부재(100) 상에 표시된 주행 안내선(105)을 인식 및 추종하는 간단한 데이터 처리 과정을 통해 주행 방향을 확인하고, 코딩 학습용 보드 부재(100) 상에 비연속적으로 표시된 주행 관련 이벤트 코드들을 간헐적으로 인식 및 처리하기 때문에 코딩 학습용 장치의 데이터 처리량을 종래에 비해 감소시킬 수 있다.
이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (11)

  1. 소정 형상으로 형성된 본체;
    상기 본체의 밑면에 배치되어 코딩 학습용 보드 부재 상에 표시된 주행 안내선을 인식하는 라인 인식 센서;
    상기 코딩 학습용 보드 부재 상에서 상기 주행 안내선의 일측 주변에 표시된 주행 관련 이벤트 코드 - 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드 - 를 인식하기 위해 상기 본체의 밑면에 배치되되, 상기 라인 인식 센서의 일측에 배치되는 코드 인식 센서;
    상기 본체의 하부에 배치된 두 개 이상의 바퀴 및 상기 본체의 내부에 배치되어 상기 두 개 이상의 바퀴를 구동하는 하나 이상의 모터를 포함한 구동부;
    상기 본체의 내부에 배치되고, 다수의 주행 관련 이벤트 정보 및 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함한 주행 관련 이벤트 정보 DB(DataBase)를 저장하는 메모리부; 및
    상기 본체의 내부에 배치되고, 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 상기 메모리부에 저장하고, 상기 라인 인식 센서에서 상기 주행 안내선의 인식을 시작하면 상기 주행 알고리즘에 따라 상기 구동부를 제어하여 상기 본체가 상기 주행 안내선을 따라 주행하도록 하며, 상기 본체의 주행시에 상기 코드 인식 센서에서 어느 하나의 주행 관련 이벤트 코드를 인식하면, 상기 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환하고, 상기 주행 관련 이벤트 정보 DB에서 상기 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인한 후에 상기 주행 알고리즘에 상기 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인하고, 상기 주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 상기 주행 조건 정보에 따라 상기 구동부를 제어하는 제어부를 포함하는 코딩 학습용 장치.
  2. 제 1 항에 있어서,
    상기 메모리부는 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 이벤트 안내 정보를 포함한 이벤트 안내 정보 DB를 더 저장하는 코딩 학습용 장치.
  3. 제 2 항에 있어서, 상기 코딩 학습용 장치는
    상기 본체의 내부에 배치되고, 상기 어느 하나의 주행 관련 이벤트 정보에 대응하는 어느 하나의 이벤트 안내 정보를 가청음으로 출력하는 정보 출력부
    를 더 포함하는 코딩 학습용 장치.
  4. 제 1 항에 있어서,
    상기 소정의 코딩 도구는 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드이고, 상기 코드 인식 센서에서 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 표시된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식하면, 상기 제어부는 상기 코드 인식 센서의 코드 인식 순서에 따라 상기 주행 알고리즘을 생성하는 코딩 학습용 장치.
  5. 제 4 항에 있어서,
    상기 메모리부는 다수의 코딩 명령어 코드 정보 및 상기 다수의 코딩 명령어 코드 정보에 대응하는 다수의 코딩 명령어 정보를 포함한 코딩 명령어 정보 DB를 더 저장하고,
    상기 제어부는 상기 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환하고, 상기 다수의 코딩 명령어 정보 중에서 상기 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인 및 상기 코드 인식 순서에 따라 조합하여 상기 주행 알고리즘을 생성하되, 상기 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에서 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 포함되어 있으면 상기 주행 알고리즘의 생성을 중지하는 코딩 학습용 장치.
  6. 제 5 항에 있어서,
    상기 주행 알고리즘의 생성 중지에 대한 안내를 가청음으로 출력하는 정보 출력부를 더 포함하고,
    상기 제어부는 상기 소정 규칙에 위반되지 않으면서 상기 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보를 상기 다수의 코딩 명령어 정보 중에서 선택하고, 상기 대체용 코딩 명령어 정보를 상기 사용자에게 추천하기 위한 가청음을 상기 정보 출력부에서 출력하도록 하는 코딩 학습용 장치.
  7. 제 1 항에 있어서,
    상기 코딩 학습용 보드 부재 상에서 상기 주행 안내선의 타측 주변에 표시된 주행 관련 이벤트 코드를 인식하기 위해 상기 라인 인식 센서의 타측에 배치되는 코드 인식 센서를 더 포함하는 코딩 학습용 장치.
  8. 일면에 표시된 도로 영역, 상기 도로 영역 내부에 표시된 주행 안내선 및 상기 도로 영역의 일측에 위치하는 영역으로서, 주행 관련 이벤트 코드 - 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코드 - 가 표시되는 영역인 이벤트 코드 표시 영역을 포함한 코딩 학습용 보드 부재; 및
    상기 주행 안내선을 인식하기 위한 라인 인식 센서를 밑면에 배치하고, 상기 주행 관련 이벤트 코드를 인식하기 위한 코드 인식 센서를 상기 라인 인식 센서의 일측에 배치하며, 사용자가 소정의 코딩 도구를 통해 코딩한 주행 알고리즘을 저장한 후에 상기 라인 인식 센서를 통해 상기 주행 안내선의 인식을 시작하면 상기 주행 알고리즘에 따른 주행을 시작하되, 상기 주행 안내선의 인식을 통해 주행 방향을 확인하고, 상기 코드 인식 센서를 통해 어느 하나의 주행 관련 이벤트 코드를 인식하면, 상기 어느 하나의 주행 관련 이벤트 코드를 어느 하나의 주행 관련 이벤트 코드 정보로 변환하고, 다수의 주행 관련 이벤트 정보 및 상기 다수의 주행 관련 이벤트 정보에 대응하는 다수의 주행 관련 이벤트 코드 정보를 포함한 주행 관련 이벤트 정보 DB(DataBase)에서 상기 어느 하나의 주행 관련 이벤트 코드 정보에 대응하는 어느 하나의 주행 관련 이벤트 정보를 확인한 후에 상기 주행 알고리즘에 상기 어느 하나의 주행 관련 이벤트 정보에 해당하는 주행 조건 정보가 포함되어 있는 지를 확인하고, 상기 주행 알고리즘에 상기 주행 조건 정보가 포함되어 있으면, 현재의 주행 조건을 상기 주행 조건 정보에 따라 변경하는 코딩 학습용 장치를 포함하는 코딩 학습용 시스템.
  9. 제 8 항에 있어서,
    상기 소정의 코딩 도구는 가시성이 낮은 일정 크기 이하의 도트들로 구성한 코딩 명령어 코드가 인쇄된 다수의 코딩 학습용 카드이고, 상기 코딩 학습용 장치는 상기 코드 인식 센서를 통해 제 1 코딩 학습용 카드 내지 제 N 코딩 학습용 카드에 표시된 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 순차적으로 인식한 후에 코드 인식 순서에 따라 상기 주행 알고리즘을 생성하는 코딩 학습용 시스템.
  10. 제 9 항에 있어서,
    상기 코딩 학습용 장치는 상기 제 1 코딩 명령어 코드 내지 제 N 코딩 명령어 코드를 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보로 변환하고, 다수의 코딩 명령어 코드 정보 및 상기 다수의 코딩 명령어 코드 정보에 대응하는 다수의 코딩 명령어 정보를 포함한 코딩 명령어 정보 DB에서 상기 제 1 코딩 명령어 코드 정보 내지 제 N 코딩 명령어 코드 정보에 대응하는 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보를 확인 및 상기 코드 인식 순서에 따라 조합하여 상기 주행 알고리즘을 생성하되, 상기 제 1 코딩 명령어 정보 내지 제 N 코딩 명령어 정보 중에서 소정 규칙에 위반되는 코딩 명령어 정보인 규칙 위반 코딩 명령어 정보가 포함되어 있으면 상기 주행 알고리즘의 생성을 중지하는 코딩 학습용 시스템.
  11. 제 5 항에 있어서,
    상기 코딩 학습용 장치는 상기 주행 알고리즘의 생성 중지에 대한 안내를 가청음으로 출력하고, 상기 소정 규칙에 위반되지 않으면서 상기 규칙 위반 코딩 명령어 정보를 대체할 수 있는 대체용 코딩 명령어 정보를 상기 다수의 코딩 명령어 정보 DB에서 선택한 후에 상기 대체용 코딩 명령어 정보를 상기 사용자에게 추천하기 위한 가청음을 출력하는 코딩 학습용 시스템.
KR1020190083654A 2019-07-11 2019-07-11 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템 KR102290934B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190083654A KR102290934B1 (ko) 2019-07-11 2019-07-11 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190083654A KR102290934B1 (ko) 2019-07-11 2019-07-11 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템

Publications (2)

Publication Number Publication Date
KR20210007346A true KR20210007346A (ko) 2021-01-20
KR102290934B1 KR102290934B1 (ko) 2021-08-17

Family

ID=74305103

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190083654A KR102290934B1 (ko) 2019-07-11 2019-07-11 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템

Country Status (1)

Country Link
KR (1) KR102290934B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114571482A (zh) * 2022-03-30 2022-06-03 长沙朗源电子科技有限公司 绘本机器人系统和绘本机器人的控制方法
KR20220150715A (ko) * 2021-05-04 2022-11-11 김미래 로봇시스템 및 그에 대한 스마트 코딩방법
KR20220150717A (ko) * 2021-05-04 2022-11-11 김미래 로봇시스템 및 그에 대한 rc카모드 운행제어방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120044961A (ko) * 2012-04-18 2012-05-08 주식회사 로보메이션 로봇용 타일
KR20160076158A (ko) * 2014-12-22 2016-06-30 (주)모션블루 완구, 그를 이용한 게임 제공 방법 및 컴퓨터 프로그램
KR20190043755A (ko) * 2017-10-19 2019-04-29 주식회사 토이트론 로봇의 카드코딩을 이용한 코딩 교육 장치 및 이를 이용한 코딩 교육방법
KR20190043756A (ko) * 2017-10-19 2019-04-29 주식회사 토이트론 로봇의 이동을 이용한 코딩 교육 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120044961A (ko) * 2012-04-18 2012-05-08 주식회사 로보메이션 로봇용 타일
KR101311162B1 (ko) 2012-04-18 2013-09-23 주식회사 로보메이션 로봇용 타일
KR20160076158A (ko) * 2014-12-22 2016-06-30 (주)모션블루 완구, 그를 이용한 게임 제공 방법 및 컴퓨터 프로그램
KR20190043755A (ko) * 2017-10-19 2019-04-29 주식회사 토이트론 로봇의 카드코딩을 이용한 코딩 교육 장치 및 이를 이용한 코딩 교육방법
KR20190043756A (ko) * 2017-10-19 2019-04-29 주식회사 토이트론 로봇의 이동을 이용한 코딩 교육 장치

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220150715A (ko) * 2021-05-04 2022-11-11 김미래 로봇시스템 및 그에 대한 스마트 코딩방법
KR20220150717A (ko) * 2021-05-04 2022-11-11 김미래 로봇시스템 및 그에 대한 rc카모드 운행제어방법
CN114571482A (zh) * 2022-03-30 2022-06-03 长沙朗源电子科技有限公司 绘本机器人系统和绘本机器人的控制方法
CN114571482B (zh) * 2022-03-30 2023-11-03 长沙朗源电子科技有限公司 绘本机器人系统和绘本机器人的控制方法

Also Published As

Publication number Publication date
KR102290934B1 (ko) 2021-08-17

Similar Documents

Publication Publication Date Title
KR102290934B1 (ko) 코딩 학습용 장치 및 이를 포함한 코딩 학습 시스템
CN111617933B (zh) 涂胶轨迹的获取方法及涂胶方法、装置和涂胶轨迹生成系统
US9950271B2 (en) Distributed system of autonomously controlled mobile agents
JP6744679B2 (ja) ヒューマンマシンハイブリッド意思決定方法および装置
US20200133261A1 (en) Method and apparatus for controlling autonomous driving of vehicle, electronic device and storage medium
EP1685920A1 (en) Laser marking device, laser marking method, and object to be marked
CN110462704A (zh) 驾驶支援装置
CN107037810A (zh) 自动行驶装置,自动行驶方法以及服务器
US11126872B2 (en) Communication flow from road user to a vehicle driving an automated manner
CN110489182B (zh) 一种带有自主导航模块的机器人云平台设计方法
Liu et al. Angels girl for blind painters: an efficient painting navigation system validated by multimodal evaluation approach
CN106445153A (zh) 一种用于智能机器人的人机交互方法及装置
JP2018174153A (ja) ワイヤーハーネスの製造方法
Létourneau et al. Autonomous mobile robot that can read
EP4207741A1 (en) Image processing method and related device
Ghimire et al. Lane Change Decision-Making through Deep Reinforcement Learning
KR101937855B1 (ko) 증강현실 기반 로봇 제어 평가 시스템
KR102286781B1 (ko) 교육용 로봇의 블록 프로그래밍 시스템 및 그 방법
KR102042666B1 (ko) 미로 코딩을 이용한 프로그래밍 학습 장치
KR20210048147A (ko) 어린이 영어학습이 가능한 코딩로봇 세트
CN109711303A (zh) 驾驶行为评价方法、装置、存储介质及电子设备
CN109540139A (zh) 一种自动导航系统
KR102168604B1 (ko) 어린이용 코딩 로봇의 동작 프로그래밍 장치
CN214253007U (zh) 一种基于全彩线条的巡线系统
JP2008027253A (ja) 操作装置及び操作システム

Legal Events

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