KR20230075267A - 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스 - Google Patents

복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스 Download PDF

Info

Publication number
KR20230075267A
KR20230075267A KR1020210161711A KR20210161711A KR20230075267A KR 20230075267 A KR20230075267 A KR 20230075267A KR 1020210161711 A KR1020210161711 A KR 1020210161711A KR 20210161711 A KR20210161711 A KR 20210161711A KR 20230075267 A KR20230075267 A KR 20230075267A
Authority
KR
South Korea
Prior art keywords
coding blocks
command
main coding
coding
main
Prior art date
Application number
KR1020210161711A
Other languages
English (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 KR1020210161711A priority Critical patent/KR20230075267A/ko
Publication of KR20230075267A publication Critical patent/KR20230075267A/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • 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
    • G09B23/00Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes
    • G09B23/06Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics
    • G09B23/18Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism
    • G09B23/183Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits
    • G09B23/186Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits for digital electronics; for computers, e.g. microprocessors

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Toys (AREA)

Abstract

일 실시 예에 따라, 복수의 메인 코딩 블록에 대한 순서를 결정하는 단계;
상기 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하는 단계; 상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하는 단계; 상기 순서, 상기 위치 관계 및 상기 컨텐츠 중 적어도 하나에 기초하여 상기 복수의 메인 코딩 블록이 나타내는 커맨드를 획득하는 단계; 및 상기 커맨드에 기초한 동작의 수행을 요청하는 단계;를 포함하고, 상기 위치 관계는 상기 복수의 메인 코딩 블록의 레벨 및 종류에 따라 결정되는, 방법, 디바이스가 개시된다.

Description

복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스{Methods and devices Using obtained commands from a plurality of main coding blocks}
본 개시의 기술 분야는 어린이 코딩학습이 가능한 코딩 로봇 세트에 관한 것으로, 더욱 상세하게는 언플러그드 활동이 가능한 코딩 시스템으로 어린이가 배열한 복수의 코딩 블록으로부터 해당 커맨드를 코딩 로봇이 시행하도록 하여 어린이들을 쉽게 이해시키면서 코딩학습이 가능한 코딩로봇 세트를 제공하는 기술 분야와 관련된다.
코딩이란 주어진 명령을 컴퓨터가 이해할 수 있는 언어로 입력하는 것을 말하는데, 좀 더 넓은 의미에서는 프로그램을 만든다는 뜻의 '프로그래밍'과 동일한 개념으로 사용되기도 한다. 과거에는 프로그래밍 언어를 모두 알아야만 코딩을 할 수 있었지만, 지금은 코딩을 원활하게 도와주는 프로그램이 개발되어 누구든지 손쉽게 배울 수 있으며, 특히 최근에는 어린이들이 코딩을 놀이처럼 쉽게 접근할 수 있도록, 코딩 로봇이 코딩으로 조종되어 움직이는 코딩 로봇 세트가 시판되고 있다.
하지만 이러한 종래 코딩 프로그램은 컴퓨터가 있어야 이용이 가능하다는 문제점이 있으며 어린이들이 직접 코딩을 하여 로봇에게 동작명령을 지시한다는 것을 직관적으로 이해하기 어려운 문제점이 있다. 또한 시각적, 청각적으로 불편함이 있는 특수 장애 어린이들이 이용하기에 어려움이 있으며 코딩 프로그램에 진입 장벽이 높다는 문제점이 있다.
한국등록특허 제 10-2253013 호 (2021.05.11) 어린이 영어학습이 가능한 코딩로봇 세트
본 개시에서 해결하고자 하는 과제는 어린이들이 코딩 사용이 더욱 증가되는 미래 사회에 대비할 수 있도록 코딩 블록을 통해 코딩 하여 로봇이 움직이도록 하여 어린이들에게 쉬운 방식으로 코딩 교육이 가능하도록 하는 소프트웨어 교육 시스템에 더불어 특수 장애 아이들에게도 접해볼 수 있는 기회를 제공하기 위한 것이다.
본 개시에서 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제 1측면에 따른 복수의 메인 코딩 블록에 기초하여 획득되는 커맨드를 이용하는 방법은, 복수의 메인 코딩 블록에 대한 순서를 결정하는 단계; 상기 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하는 단계; 상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하는 단계; 상기 순서, 상기 위치 관계 및 상기 컨텐츠 중 적어도 하나에 기초하여 상기 복수의 메인 코딩 블록이 나타내는 커맨드를 획득하는 단계; 및 상기 커맨드에 기초한 동작의 수행을 요청하는 단계;를 포함하고, 상기 위치 관계는 상기 복수의 메인 코딩 블록의 레벨 및 종류에 따라 결정되는, 방법을 제공할 수 있다.
또한, 상기 복수의 메인 코딩 블록 중 일부 메인 코딩 블록에 하나 이상 부착되는 서브 코딩 블록에 대한 컨텐츠를 결정하는 단계;를 더 포함하고, 상기 커맨드를 획득하는 단계는 상기 서브 코딩 블록에 대한 컨텐츠를 이용하여 상기 커맨드를 결정하고, 서브 코딩 블록에 대한 컨텐츠는 변수에 대한 컨텐츠를 포함할 수 있다.
또한, 상기 레벨은 상기 복수의 메인 코딩 블록간의 명령 체계에 따른 계층을 나타내고, 상기 종류는 시작 그룹, 조건 그룹, 반복 그룹, 실행 그룹 및 함수 그룹 중 적어도 하나에 대한 종류를 포함할 수 있다.
또한, 상기 위치 관계는 상이한 레벨의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고, 동일한 레벨이라도 상이한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고, 동일한 레벨이고 동일한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 동일하도록 결정될 수 있다.
또한, 상기 커맨드에 기초한 동작을 수행하는 단계;를 더 포함하고, 상기 커맨드에 기초한 동작을 수행하는 단계는 상기 커맨드에 기초한 동작을 수행할 때, 상기 복수의 메인 코딩 블록에 포함된 하나 이상의 실행 블록 각각이 실행될 때마다 기설정된 방식으로 소리 신호를 출력할 수 있다.
또한, 디버깅이 필요한 경우 알림을 제공하는 단계;를 더 포함하고, 상기 알림을 제공하는 단계는 알림의 제공 횟수 및 상기 디버깅의 난이도에 따라 결정된 종류의 알림을 제공할 수 있다.
본 개시의 제 2 측면에 따른 복수의 메인 코딩 블록에 기초하여 획득되는 커맨드를 이용하는 디바이스는, 복수의 메인 코딩 블록에 대한 순서를 결정하고, 상기 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하고, 상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하고, 상기 순서, 상기 위치 관계 및 상기 컨텐츠에 기초하여 상기 복수의 메인 코딩 블록이 나타내는 커맨드를 획득하는 프로세서; 및 상기 커맨드에 기초한 동작의 수행을 요청하는 출력부;를 포함하고, 상기 위치 관계는 상기 복수의 메인 코딩 블록의 레벨 및 종류에 따라 결정될 수 있다.
이 외에도 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 개시의 일 실시 예에 따르면, 언 플러그 활동으로 코딩이 가능하여 컴퓨터 없이 사용할 수 있는 커리큘럼을 제공함으로써 코딩에 대한 사용 방법이 단순화되기 때문에 어린이들이 쉽게 학습할 수 있다. 또한, 어린이들이 스스로 코딩 블록의 배열을 완성함으로써, 창의력과 문제해결 능력을 키울 수 있어 학습 효율을 향상시킬 수 있다.
또한, 코딩 블록 배열 및 로봇 이용 시 점자, 소리, 진동 등의 특징을 포함하고 있어 특수 장애 어린이들의 특성에 맞게 개발 된 교구로 사용이 용이할 수 있다. 따라서 특수 장애 아이들에게 진입 장벽이 높은 소프트웨어 교육의 코딩 학습이 가능하도록 하여 소외계층에 대한 특수 교육이 활성화될 수 있다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스의 구성을 개략적으로 도시한 블록도 이다.
도 2는 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스가 동작하는 각 단계를 도시한 흐름도이다.
도 3 은 일 실시 예에 따른 코딩 블록 및 배열의 일 예를 도시한 도면이다.
도 4 는 일 실시 예에 따른 코딩 블록 커맨드를 수행하는 로봇의 일 예를 도시한 도면이다.
본 개시에서 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나, 본 개시는 이하에서 개시되는 실시 예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 개시가 완전 하도록 하고, 해당 기술 분야에 속하는 통상의 기술자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 개시의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 해당 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작 시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.
이하에서는 도면을 참조하여 실시 예들을 상세히 설명한다.
도 1은 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)의 구성을 개략적으로 도시한 블록도 이다.
도면을 참조하면, 코딩 블록 커맨드 이용 디바이스(100)는 프로세서, 출력부를 포함할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)의 프로세서(110)는, 복수의 메인 코딩 블록에 대한 순서를 결정하고 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하고 상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하고 순서, 위치 관계 및 컨텐츠에 기초하여 복수의 메인 코딩 블록이 나타내는 커맨드를 획득할 수 있으며 출력부(120)는, 로봇이 프로세서(110)에서 획득한 커맨드를 수행할 수 있도록 커맨드에 기초한 동작의 수행을 요청할 수 있다.
더하여, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 코딩 블록 커맨드 이용 디바이스(100)에 더 포함될 수 있음을 관련 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다. 예를 들면, 코딩 블록 커맨드 이용 디바이스(100)는 적어도 하나의 코딩을 포함하는 코딩 목록을 저장하는 메모리(미도시)를 더 포함할 수 있다. 또는 다른 실시 예에 따를 경우, 도 1에 도시된 구성요소들 중 일부 구성요소는 생략될 수 있음을 관련 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 언 플러그 방식으로 소프트웨어 및 하드웨어의 실행할 수 있는 기술이지만 본 명세서에 기재되는 발명의 기술은 언 플러그에 제한되지는 않는다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 사용자 또는 작업자에 의해 이용될 수 있고, 휴대폰, 스마트폰, PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), 태블릿 PC 등과 같이 터치 스크린 패널이 구비된 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 연동될 수 있으며, 이 외에도 데스크탑 PC, 태블릿 PC, 랩탑 PC, 셋탑 박스를 포함하는 IPTV와 같이, 애플리케이션을 설치하고 실행할 수 있는 기반이 마련된 장치에 포함되거나 연동될 수 있다.
코딩 블록 커맨드 이용 디바이스(100)는 본 명세서에서 설명되는 기능을 실현시키기 위한 컴퓨터 프로그램을 통해 동작하는 컴퓨터 등의 단말기로 구현될 수도 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 코딩 블록 커맨드 이용 시스템(미도시) 및 관련 서버(미도시)를 포함할 수 있으나, 이에 제한되지 않는다. 일 실시 예에 따른 시스템 및 서버는 코딩 블록 커맨드 이용 서비스 및 이를 지원/제공하는 애플리케이션을 지원할 수 있다.
이하에서는 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)가 독립적으로 코딩 블록 커맨드를 이용하여 로봇이 이를 수행하는 실시 예를 중심으로 서술하도록 하지만, 전술한 것처럼, 서버와의 연동을 통해 수행될 수도 있다. 즉, 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)와 서버는 그 기능의 측면에서 통합 구현될 수 있고, 서버는 생략될 수도 있으며, 어느 하나의 실시 예에 제한되지 않음을 알 수 있다.
일 실시 예에 따른, 코딩 블록 커맨드 이용 디바이스(100)는 코딩블록, 소리블록, 센서블록, 이동블록, 숫자블록 등을 포함할 수 있으며, 이와 연동되는 로봇이 코딩 결과를 수행할 수 있도록 한다. 또한, 여러 기능들을 포함하여 일반 사용자, 특수 장애 사용자 모두 사용이 가능하도록 할 수 있다. 이하에서 더 상세히 기술하도록 한다.
도 2는 일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)가 동작하는 각 단계를 도시한 흐름도이다.
단계 S210에서 코딩 블록 커맨드 이용 디바이스(100)는 복수의 메인 코딩 블록에 대한 순서를 결정할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)에서 복수의 메인 코딩 블록들은 각각 대응되는 레벨 또는 종류가 존재할 수 있다. 복수의 메인 코딩 블록에 대한 순서는 코딩 블록들마다 각각 대응되는 상이한 레벨 또는 종류에 따라 결정될 수 있다. 이 때, 레벨은 복수의 메인 코딩 블록간의 명칭 체계에 따른 계층을 나타낼 수 있다. 예를 들면 '시작' 은 최상의 레벨일 수 있으며 '만약'과 같은 조건을 넣을 수 있도록 하는 것은 그 다음 레벨일 수 있고 '이동하기' 와 같은 실행 동작은 더 하위 레벨일 수 있다. 또한, '종류'는 시작 그룹, 조건 그룹, 반복 그룹, 실행 그룹, 함수 그룹 중 적어도 하나의 종류를 포함할 수 있다. '종류'는 실제로 수행되는 액션의 형태들을 의미할 수 있다. 시작 그룹은 '시작' 또는 '끝'을 의미하는 코딩 블록들을 포함할 수 있다. 조건 그룹은 '만약' '~하면' '아니면' 과 같은 조건을 부여할 수 있는 코딩 블록들을 포함할 수 있다. 반복 그룹은 '반복하기'와 같이 앞에 배열된 코딩 블록들을 반복적으로 수행할 수 있도록 하는 코딩 블록을 포함할 수 있다. 실행 그룹은 '이동하기' 'LED켜기' '소리내기' 등 로봇이 움직이는 동작, 형상으로 보여지는 여러 코딩 블록들을 포함할 수 있다. 함수 그룹은 여러 코딩 블록들이 합쳐진 형태로 존재하는 것을 의미할 수 있다. 예를 들면 '전진하고 우회전하고 LED를 킨 후 소리로 알림' 과 같이 여러 코딩 블록들이 모여 하나의 액션을 이루고 있는 것을 의미한다. 상기와 같이 레벨이 같더라도 수행되는 액션의 형태에 따라 종류는 더 세부적으로 나뉠 수 있다. 따라서 코딩 블록 커맨드 이용 디바이스(100)는 이러한 레벨과 종류를 기초로 하여 복수의 메인 코딩 블록에 대한 순서를 결정할 수 있다.
단계 S220 에서 코딩 블록 커맨드 이용 디바이스(100)는 복수의 메인 코드 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 위치 관계에 따라 복수의 코딩 블록들을 들여쓰기 및 내어 쓰기와 유사한 방식으로 배열이 가능하도록 하여 코딩 블록들이 서로 상이한 위치에 위치하게 해 사용자가 직관적으로 코딩이 어떻게 동작하는지 파악할 수 있도록 할 수 있다. 일 실시 예에서, '들여 놓인' 은 '안쪽으로 들이다' 의 개념으로 이해될 수 있으며 이는 코딩 블록이 더 왼쪽 즉, 더 앞쪽에 위치되는 것을 의미할 수 있다.
본 실시 예에서, 위치 관계는 상이한 레벨의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고 동일한 레벨이라도 상이한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고, 동일한 레벨이고 동일한 종류의 코딩 블록 간에는 서로 들여 놓인 정도가 동일하도록 결정될 수 있다. 도 3의 평면도를 참조하면 이해하기 용이할 수 있다.
예를 들면, 상이한 레벨의 메인 코딩 블록 간에 서로 들여 놓인 정도가 상이하다는 것은 '시작' 과 '전진하기' '만약~하면' 의 코딩 블록이 있다면 최상위 레벨인 '시작'에 해당되는 코딩 블록은 가장 들여 놓인 위치에 위치하도록 하고 그 다음 레벨인 '만약~하면'에 해당되는 코딩 블록이 '시작' 코딩 블록 위치 보다 덜 들여 놓인 위치에 위치하도록 하고 '전진하기' 에 해당되는 코딩 블록은 그 하위 레벨이기 때문에 '만약~하면' 코딩 블록 위치 보다 덜 들여 놓인 위치에 위치하도록 하는 것을 의미할 수 있다. 동일한 레벨이라도 상이한 종류의 메인 코딩 블록 간에 서로 들여 놓인 정도가 상이하다는 것은 '전진하기' '반복하기'의 코딩 블록이 있다면 서로 레벨은 동일할 수 있지만 각각 실행 그룹, 반복 그룹으로 종류가 상이할 수 있다. 따라서 이 때는 배열되어 있는 순서에 기초하여 들여 놓인 정도를 상이하게 할 수 있다. 사용자가 '전진하기' '반복하기'의 순서대로 코딩 블록을 배열하였으면 '전진하기' 코딩 블록을 더 들여 놓인 위치에 위치하도록 하고 '반복하기' 코딩 블록은 그보다는 덜 들여 놓인 위치에 위치하도록 하는 것을 의미할 수 있다. 또한, 상기 두 경우가 아닌 동일한 레벨이면서 동일한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 동일하도록 한다는 것은 '전진하기' 'LED켜기' '회전하기' 의 코딩 블록이 있다면 3개의 코딩 블록은 모두 같은 레벨에 해당되며 실행 그룹에 해당되어 종류도 같다. 따라서 이때는 들여 놓인 정도가 모두 같도록 하여 코딩 블록이 위치하는 시작 지점이 같은 열에 해당되도록 하는 것을 의미할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 상술한 위치 관계가 잘못 설정되었을 경우에 알림 신호를 제공할 수 있다. 코딩 블록은 사용자가 원하는대로 직접 설정하는 것이기 때문에 사용자가 설정한 배열이 잘못되었을 확률이 있기 때문에 이를 알림 신호를 제공함으로써 사용자가 수정할 수 있도록 하여 학습 효율을 높일 수도 있다.
예를 들면, 코딩 블록 커맨드 이용 디바이스(100)는 사용자가 배열한 복수의 메인 코딩 블록들의 위치를 획득하고 획득한 위치를 상기와 같이 레벨과 종류에 기초하여 복수의 메인 코딩 블록들이 각각 대응되게 배열되어야 할 실제 위치와 비교할 수 있다. 비교 결과가 서로 다르다고 판단되었을 경우, 코딩 블록 커맨드 이용 디바이스(100)는 사용자에게 1차적인 알림 신호를 제공하고 배열된 코딩 블록에 대한 수행은 하지 않을 수 있다. 따라서 사용자가 수정할 수 있도록 하고 수정되어 재배열된 코딩 블록들을 기초로 다시 비교 및 판단할 수 있다. 또한, 1차적인 알림 신호 제공 이후 기설정 수 이상 알림 신호를 제공하였으나 반복적으로 잘못된 위치 관계가 해결되지 않는다면, 위치 관계 이외에는 복수의 메인 코딩 블록들이 적절하게 위치 되어 있을 시 대응되는 수행을 진행하되, 잘못된 위치 관계에 대한 오류를 알리는 메시지 출력, 잘못된 위치 관계에 위치한 코딩 블록들의 LED 깜박거림, 진동, 소리 중 적어도 하나의 방식으로 알림을 제공할 수 있다. 또한 반복적으로 잘못된 위치 관계가 해결되지 않았을 경우, '반복적'의 반복 횟수는 들여 놓인 정도의 오류에 있어서 해결 난이도에 따라 다르게 설정될 수 있으며 난이도가 높을수록 반복 횟수를 늘릴 수 있다.
본 실시 예에서, 코딩 블록 커맨드 이용 디바이스(100)는 코딩 블록들이 배열된 상태에 따라 난이도를 상이하게 결정할 수 있다. 예를 들면, 한번에 여러 칸이 들여 놓여진 코딩 블록이 존재하여 잘못된 위치에 배열된 것으로 판단된 경우에 난이도 '하'로 결정할 수 있다. 예를 들면, 복수의 코딩 블록들이 전술한 바와 같이 레벨 및 종류에 기초하여 상관 관계에 대응되도록 배열은 되어있는데 들여 놓인 정도가 너무 많거나 너무 적어서 사용자가 배열한 코딩 블록들의 위치와 배열되어야 할 실제 위치가 서로 다르다고 판단되었을 경우를 의미할 수 있는데 들여 놓인 정도는 물리적인 길이이기 때문에 사용자가 쉽게 헷갈릴 수 있고 학습적인 부분에서도 틀렸다고 할 수 없다는 점에서 난이도 '하' 에 해당되는 경우로 결정할 수 있다. 또한, 서로 레벨이 다른데 들여 놓인 정도가 같은 상태 또는 서로 레벨 및 종류가 같은데 들여 놓인 정도가 다른 상태일 경우는 사용자가 일반적으로 틀릴 수 있는 문제점을 나타내는 경우이므로 난이도 '중'으로 결정할 수 있다. 또한, 복수의 메인 코딩블록들이 들여 놓인 정도가 아예 반대로 되어 있거나 규칙 없이 무작위로 배열되어 있는 경우에는 사용자가 복수의 메인 코딩블록들의 레벨 또는 종류가 다르다면 들여 놓인 정도를 다르게 해야 한다는 것을 인지조차 하지 못한 상태일 수도 있고 코딩 블록들의 레벨 및 종류에 기초하여 들여 놓인 정도를 다르게 해야 한다는 것은 알지만 상황에 따라 들여 놓인 정도를 상이하게 해 어느 블록을 앞쪽에 위치하도록 하고 어느 블록을 뒤쪽에 위치하도록 해야 하는지 판단하는 것은 상대적으로 어려울 수 있기 때문에 난이도 '상'에 해당되는 경우로 결정할 수 있다. 따라서 코딩 블록 커맨드 이용 디바이스(100)는 난이도 '하' '중' '상' 에 대응되는 기설정 횟수(예를 들면, 난이도 '하'의 경우 2번, 난이도 '중'의 경우 5번, 난이도 '상'의 경우 8번)만큼 사용자에게 반복적으로 위치 관계가 잘못되었다는 알림 신호를 제공할 수 있다. 또한, 난이도에 따라 알림 신호의 종류가 다를 수도 있다. 예를 들면 난이도 '하'에 해당되는 경우 소리 신호로 알림을 제공할 수 있고 난이도 '중'의 경우 배열된 코딩 블록 중 몇 개의 위치 관계가 틀렸는지에 대한 정보를 포함하는 소리 신호로 제공할 수도 있고 난이도 '상'의 경우 어려운 문제로 판단된 것이기 때문에 소리 신호와 함께 틀린 위치 관계에 해당되는 코딩블록들에 LED가 깜박거리는 알림을 더 제공할 수도 있다. 이와 같이, 로봇 또한 디버깅이 필요한 경우 알림의 제공 횟수 및 디버깅의 난이도에 따라 결정된 종류의 알림을 제공할 수 있다. 따라서, 난이도에 따라 상이한 방법 및 반복 횟수로 알림을 제공하기 때문에 사용자가 틀린 부분을 다시 고쳐볼 수 있는 기회가 제공될 수 있어 코딩 학습의 효율성을 향상시킬 수 있다.
다른 실시 예에서, 배열된 복수의 코딩 블록에서 잘못된 위치에 배열되었다고 판단되는 개수를 포함하는 오차 정보를 획득하여 이를 기초로 난이도를 상이하게 결정하고 대응되는 반복 횟수의 알림을 제공할 수도 있다. 코딩 블록 커맨드 이용 디바이스(100)는 획득한 오차 정보 개수를 기설정된 개수 값들과 비교할 수 있다. 예를 들면, 획득한 오차 정보가 2개이상 5개 미만이라면 사용자가 코딩 블록들을 실수로 잘못 배열했을 확률이 클 수 있고 코딩을 위한 블록들의 양이 얼마 되지 않아 비교적 간단하다고 판단할 수 있으므로 난이도 '하'로 결정할 수 있다. 또한, 획득한 오차 정보가 5개 이상 10개 미만이라면 사용자의 단순한 실수로 잘못 배열된 것은 아닐 확률이 크고 사용자가 다시 한번 위치 관계에 따른 배열을 다시 고려해서 수정 하는 것이 바람직하다고 판단할 수 있으므로 난이도 '중'으로 결정할 수 있다. 또한 획득한 오차 정보가 10개 이상이라면 코딩 시 사용된 코딩 블록들이 많다는 것을 의미할 수 있고 코딩 해야 할 코딩 블록의 길고 복잡하다고 판단할 수 있어 오차가 10개 이상이라는 것은 사용자가 블록의 위치를 판단하는데 꽤 어려움이 있는 상황일 확률이 높을 수 있으므로 난이도 '상'으로 결정할 수 있다. 따라서 사용자가 잘못 배열한 코딩 블록들의 개수에 따라 상이하게 난이도를 결정함으로써, 사용자의 학습 능력을 좀 더 세부적으로 판단할 수 있고 이에 대응되는 알림을 제공할 수 있어 사용자가 기존에 배열된 코딩 블록의 잘못된 부분 수정을 위해 재배열 할 때 용이하게 할 수 있다. 또한, 오차 정보에 따라 결정된 난이도에 따라 전술한 바와 같이 코딩 블록 커맨드 이용 디바이스(100)는 난이도 '하' '중' '상' 에 대응되는 기설정 횟수(예를 들면, 난이도 '하'의 경우 2번, 난이도 '중'의 경우 5번, 난이도 '상'의 경우 8번)만큼 사용자에게 반복적으로 위치 관계가 잘못되었다는 알림 신호를 제공할 수 있고 난이도에 따라 알림 신호의 종류가 다를 수도 있다. 예를 들면 난이도 '하'에 해당되는 경우 소리 신호로 알림을 제공할 수 있고 난이도 '중'의 경우 배열된 코딩 블록 중 몇 개의 위치 관계가 틀렸는지에 대한 정보를 포함하는 소리 신호로 제공할 수도 있고 난이도 '상'의 경우 어려운 문제로 판단된 것이기 때문에 소리 신호와 함께 틀린 위치 관계에 해당되는 코딩블록들에 LED가 깜박거리는 알림을 더 제공할 수도 있다. 이와 같이, 로봇 또한 디버깅이 필요한 경우 알림의 제공 횟수 및 디버깅의 난이도에 따라 결정된 종류의 알림을 제공할 수 있다.
또한, 코딩 블록 커맨드 이용 디바이스(100)는 일반적으로는 전술한 바와 같은 방법으로 알림 신호를 제공할 수 있으나, 상황에 따라 알림 신호 제공 방법을 별도로 설정할 수도 있다. 예를 들면, 전술한 알림 신호와 같은 소리 신호 또는 LED 깜박거림은 청각적, 시각적인 특징을 갖는 알림 신호 제공 방법이기 때문에 청각, 시각 지체 아이들에게 정확한 전달이 어려울 수 있다. 따라서 이 때 사용자는 코딩 블록 커맨드 이용 디바이스(100)에서 제공되는 알림 신호 제공 방법을 진동 알림 신호로 설정할 수도 있다. 상황 별 다른 알림을 제공하기 위해 진동 알림 신호는 상황에 따라 상이한 패턴의 진동으로 제공될 수 있고 코딩 블록 커맨드 이용 디바이스(100)는 전달하고자 하는 목적 및 내용에 각각 대응되는 기설정된 패턴의 진동으로 상이한 진동 알림 신호를 제공할 수 있다. 따라서, 청각, 시각 지체 아이들이 코딩 블록 커맨드 이용 디바이스(100)를 이용하기 용이할 수 있다.
또한, 사용자가 틀린 코딩 블록 배열을 수정하여 코딩퍼즐블록들의 배열이 최종적으로 체결되었을 때, 코딩 블록 커맨드 이용 디바이스(100)는 배열이 제대로 완료되었다는 의미에 대응되는 기설정된 패턴의 진동을 알림 신호로 제공함으로써, 청각, 시각 지체 아이들에게 코딩퍼즐블록 배열 완료의 의미를 전달할 수 있다.
단계 S230에서 코딩 블록 커맨드 이용 디바이스(100)는 복수의 메인 코딩 블록에 대한 컨텐츠를 결정할 수 있다. 이 때 컨텐츠는 액션, 조건, 시작 등 각각의 블록이 의미하는 바가 무엇인지를 의미할 수 있다.
단계 S240에서 코딩 블록 커맨드 이용 디바이스(100)는 복수의 메인 코딩 블록들의 순서, 위치 관계 및 컨텐츠 중 적어도 하나에 기초하여 복수의 메인 코딩 블록이 나타내는 커맨드를 획득할 수 있다. 이 때 커맨드는 사용자가 배열한 복수의 코딩 블록들을 기초로 하여 로봇을 어떻게 동작시킬 것인가를 의미할 수 있다.
일 실시 예에 따른 코딩 블록 커맨드 이용 디바이스(100)는 서브 코딩 블록을 포함할 수 있다. 서브 코딩 블록은 복수의 메인 코딩 블록 중 일부인 일부 메인 코딩 블록에 하나 이상 부착되는 블록을 말하며 변수로 작용할 수 있는 세부적 특징을 가진 개념이다. 코딩 블록 커맨드 이용 디바이스(100)는 서브 코딩 블록에 대한 컨텐츠도 결정할 수 있다. 이 때, 서브 코딩 블록에 대한 컨텐츠는 숫자, 방향, 온도, 습도 등 세부적으로 수행될 수 있는 특징을 포함할 수 있다. 예를 들면 메인 코딩 블록이 '소리내기' 이고 부착된 서브 코딩 블록이 '2' 라면 2번 소리 내라는 의미일 수 있고, 메인 코딩 블록이 '전진하기' 이고 부착된 서브 코딩 블록이 '→' 라면 오른쪽으로 전진하라는 의미일 수 있다. 따라서, 복수의 메인 코딩 블록에 부가적으로 부착되어 로봇이 더욱 세부적이게 수행 할 수 있도록 도울 수 있고 이는 상황에 따라 단순히 '반복하기' 라는 메인 블록 코딩을 여러 번 배열해 수행되도록 하는 것보다 몇 번 반복 수행 할 것인지에 대하여 서브 코딩 블록을 배열함으로써 한번에 가능하게 되어 사용자들이 더욱 편리하게 이용할 수 있다. 또한, 복수의 코딩 블록 중 일부는 진동, 빛, 온도 및 습도 센서 블록일 수 있다. 따라서 서브 코딩 블록에 대한 컨텐츠 중 온도나 습도 등이 해당되면 센서를 이용하여 현재 온도, 습도, 빛 등의 정보를 획득할 수도 있다. 따라서 이러한 서브 코딩 블록에 대한 컨텐츠까지 이용하여 최종적인 커맨드를 획득할 수 있다.
단계 S250 에서 코딩 블록 커맨드 이용 디바이스(100)는 획득한 커맨드에 기초한 동작의 수행을 로봇에게 요청할 수 있다.
본 실시 예에서, 로봇은 코딩 블록 커맨드 이용 디바이스(100)로부터 요청된 커맨드에 기초한 동작을 수행할 수 있다. 이 때, 복수의 메인 코딩 블록에 포함된 하나 이상의 실행 블록이 각각 실행될 때마다 기 설정된 방식으로 소리 신호를 출력할 수 있다.
예를 들면, 조건, 함수에 해당되는 코딩 블록 커맨드를 수행 시에는 소리 신호가 나타나지 않지만 '전진하기' '회전하기' 등에 해당되는 실행 블록에서는 어떤 수행이 되었는지 알려주기 위한 소리 신호가 나타나도록 할 수 있다. 해당 되는 코딩 블록이 수행될 때 코딩 블록 또는 로봇에서 “전진하였습니다” “회전하였습니다” 등의 알림을 소리 신호로 제공할 수 있다. 이는 눈이 보이지 않아도 청각적으로 로봇의 움직임을 알 수 있도록 하여 시각적으로 불편한 특수 장애 어린이들도 이용이 가능하다는 장점이 있다. 또한 온도, 습도 등에 해당되는 서브 코딩 블록이 수행될 때에도 코딩 블록 또는 로봇에 구비된 센서로부터 측정된 정보를 기반으로 “현재 온도는 20도 입니다.” “오늘의 습도는 50%입니다.” 와 같이 소리 신호를 제공할 수 있다.
도 3 은 일 실시 예에 따른 코딩 블록 및 배열의 일 예를 도시한 도면이다.
본 실시 예에서, 도 3의 <평면도>를 참조하면, 전술한 바와 같이 복수의 메인 코딩 블록들이 각 레벨과 종류에 기초하여 상이하게 배열되어 있는 것을 확인할 수 있다. 또한, 복수의 메인 코딩 블록 중 일부 메인 코딩 블록들에 오른쪽으로 부착되어 있는 서브 코딩 블록들을 확인할 수 있다. 이와 같이 하나의 메인 코딩 블록에는 복수의 서브 코딩 블록들이 부착될 수 있다. 또한, 복수의 코딩 블록들은 퍼즐과 같은 다양한 모양으로 구성되어 있어 사용자가 찾아서 조립하기 쉽고 같이 사용할 수 있는 코딩 블록들(같은 레벨 또는 같은 종류)은 같은 색깔로 구성함으로써 찾기 용이할 수 있다.
또한, 도 3의 <정면도>를 참조하면, 코딩 블록 커맨드 이용 디바이스(100)에 포함된 복수의 코딩 블록들은 점자를 포함할 수 있다. 복수의 코딩 블록들은 의미하는 바를 글씨, 그림을 통해 나타낼 수 있고 이에 해당되는 점자를 더 포함할 수 있다. 따라서 시각적으로 불편한 사용자도 코딩 블록들이 각각 무엇을 의미하는지 바로 알 수 있으며 코딩을 학습하는 데에 무리가 없다. 이 때, 사용자는 점자로 만져보거나 상술한 바와 같이 다양한 모양으로 구성된 복수의 코딩 블록들의 규칙을 생각하여 원하는대로 배열할 수 있다.
도 4 는 일 실시 예에 따른 코딩 블록 커맨드를 수행하는 로봇의 일 예를 도시한 도면이다. 로봇은 앞 뒤를 구분할 수 있도록 눈과 입이 구성되어 있으며 이 또한 눈으로 보는 것 이외에 촉각적으로 느낄 수 있도록 도4의 <우측면도>와 같이 입체적으로 눈과 입 부분이 돌출되도록 구성할 수 있다.
본 실시 예에서, 로봇은 코딩 블록 커맨드 이용 디바이스(100)와 연동되어 있으며 실행 버튼을 누르면(커맨드에 기초한 동작의 수행 요청을 받으면) 사용자가 배열한 코딩 블록에 따른 커맨드를 수행할 수 있다. 또한 코딩 블록들의 커맨드를 수행할 때 소리를 넣어서 수행되고 있는지에 대한 알림을 제공할 수 있고 수행이 마무리 되었을 때에도 별도의 끝났다는 알림을 제공할 수 있다. 또한, 로봇에는 거리센서가 구비될 수 있어 장애물을 감지하거나 길이 끊겼음을 감지해 상황에 따라 수행을 멈출 수 있으며 이에 대한 감지된 정보를 사용자에게 알림으로써 다시 수행될 수 있도록 할 수 있다. 전술한 알림을 제공하는 형태는 소리, 진동, 빛, LED깜박거림 등의 여러 신호일 수 있고 이는 어느 하나의 알림 제공 방법으로 제한되지 않으며 사용자에 의해 설정될 수 있다. 예를 들면 일반적인 사용자의 경우 자신이 원하는 알림 제공 방법으로 기설정 해놓을 수 있으며, 시각 장애를 가진 사용자의 경우 진동이나 소리로 알림을 제공 받는 방법으로 선택하여 기설정 할 수 있고 청각 장애를 가진 사용자의 경우 빛, LED깜박거림으로 알림을 제공 받는 방법으로 선택하여 기설정 할 수 있다.
본 명세서에 전술된 소리, 진동, 빛, 온/습도 등의 센서들을 이용한 기술들은 코딩 블록 커맨드 이용 디바이스(100)와 로봇 중 적어도 어느 하나에 의해 수행될 수 있으며 또는 디바이스, 로봇 모두 센서가 구비되어 수행될 수도 있다.
본 개시에 따르면, 언 플러그 활동으로 코딩이 가능하여 컴퓨터 없이 사용할 수 있는 커리큘럼을 제공함으로써 소프트웨어 교육의 진입 장벽이 해소될 수 있으며 코딩에 대한 사용 방법이 단순화되기 때문에 어린이들이 쉽게 코딩에 접근하고 학습할 수 있다.
또한, 코딩 블록 배열 및 로봇 이용 시 점자, 소리, 진동 등의 특징을 포함하고 있어 특수 장애 어린이들의 특성에 맞게 개발 된 교구로 사용이 용이할 수 있다. 따라서 특수 장애 아이들도 코딩 학습이 가능하도록 하여 소외계층에 대한 특수 교육이 활성화될 수 있으며 어린이들이 스스로 코딩 블록의 배열을 완성함으로써, 창의력과 문제해결 능력을 키울 수 있어 학습 효율을 향상시킬 수 있다.
본 개시의 다양한 실시 예들은 기기(machine)(예를 들어, 디스플레이 장치 또는 컴퓨터)에 의해 읽을 수 있는 저장 매체(storage medium)(예를 들어, 메모리)에 저장된 하나 이상의 인스트럭션들을 포함하는 소프트웨어로서 구현될 수 있다. 예를 들면, 기기의 프로세서(120)(예를 들어, 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 인스트럭션들 중 적어도 하나의 인스트럭션을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 인스트럭션에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 인스트럭션들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 개시에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
본 실시 예와 관련된 기술 분야에서 통상의 지식을 가진 자는 상기된 기재의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 방법들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 코딩 블록 커맨드 이용 디바이스
110: 프로세서 120: 출력부

Claims (7)

  1. 복수의 메인 코딩 블록에 기초하여 획득되는 커맨드 이용 방법에 있어서,
    복수의 메인 코딩 블록에 대한 순서를 결정하는 단계;
    상기 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하는 단계;
    상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하는 단계;
    상기 순서, 상기 위치 관계 및 상기 컨텐츠 중 적어도 하나에 기초하여 상기 복수의 메인 코딩 블록이 나타내는 커맨드를 획득하는 단계; 및
    상기 커맨드에 기초한 동작의 수행을 요청하는 단계;를 포함하고,
    상기 위치 관계는 상기 복수의 메인 코딩 블록의 레벨종류에 따라 결정되는, 방법.
  2. 제 1 항에 있어서,
    상기 복수의 메인 코딩 블록 중 일부 메인 코딩 블록에 하나 이상 부착되는 서브 코딩 블록에 대한 컨텐츠를 결정하는 단계;를 더 포함하고,
    상기 커맨드를 획득하는 단계는 상기 서브 코딩 블록에 대한 컨텐츠를 이용하여 상기 커맨드를 결정하고,
    서브 코딩 블록에 대한 컨텐츠는 변수에 대한 컨텐츠를 포함하는, 방법.
  3. 제 1 항에 있어서
    상기 레벨은 상기 복수의 메인 코딩 블록간의 명령 체계에 따른 계층을 나타내고,
    상기 종류는 시작 그룹, 조건 그룹, 반복 그룹, 실행 그룹 및 함수 그룹 중 적어도 하나에 대한 종류를 포함하는, 방법.
  4. 제 3 항에 있어서,
    상기 위치 관계는
    상이한 레벨의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고,
    동일한 레벨이라도 상이한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 상이하고,
    동일한 레벨이고 동일한 종류의 메인 코딩 블록 간에는 서로 들여 놓인 정도가 동일하도록 결정되는, 방법.
  5. 제 1 항에 있어서,
    상기 커맨드에 기초한 동작을 수행하는 단계;를 더 포함하고,
    상기 커맨드에 기초한 동작을 수행하는 단계는
    상기 커맨드에 기초한 동작을 수행할 때, 상기 복수의 메인 코딩 블록에 포함된 하나 이상의 실행 블록 각각이 실행될 때마다 기설정된 방식으로 소리 신호를 출력하는, 방법.
  6. 제 1 항에 있어서,
    디버깅이 필요한 경우 알림을 제공하는 단계;를 더 포함하고,
    상기 알림을 제공하는 단계는
    알림의 제공 횟수 및 상기 디버깅의 난이도에 따라 결정된 종류의 알림을 제공하는, 방법.
  7. 복수의 메인 코딩 블록에 따른 획득되는 커맨드 이용 디바이스에 있어서,
    복수의 메인 코딩 블록에 대한 순서를 결정하고,
    상기 복수의 메인 코딩 블록에 대해서 들여 놓인 정도를 나타내는 위치 관계를 결정하고,
    상기 복수의 메인 코딩 블록에 대한 컨텐츠를 결정하고,
    상기 순서, 상기 위치 관계 및 상기 컨텐츠에 기초하여 상기 복수의 메인 코딩 블록이 나타내는 커맨드를 획득하는 프로세서; 및
    상기 커맨드에 기초한 동작의 수행을 요청하는 출력부;를 포함하고,
    상기 위치 관계는 상기 복수의 메인 코딩 블록의 레벨 및 종류에 따라 결정되는, 디바이스.
KR1020210161711A 2021-11-22 2021-11-22 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스 KR20230075267A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210161711A KR20230075267A (ko) 2021-11-22 2021-11-22 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210161711A KR20230075267A (ko) 2021-11-22 2021-11-22 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스

Publications (1)

Publication Number Publication Date
KR20230075267A true KR20230075267A (ko) 2023-05-31

Family

ID=86543024

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210161711A KR20230075267A (ko) 2021-11-22 2021-11-22 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스

Country Status (1)

Country Link
KR (1) KR20230075267A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102253013B1 (ko) 2019-10-23 2021-05-14 정 석 윤 어린이 영어학습이 가능한 코딩로봇 세트

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102253013B1 (ko) 2019-10-23 2021-05-14 정 석 윤 어린이 영어학습이 가능한 코딩로봇 세트

Similar Documents

Publication Publication Date Title
JP6405392B2 (ja) ブロックを利用したアルゴリズム教育装置
US10607501B2 (en) Interactive phonics game system and method
AU2019262848B2 (en) Interactive application adapted for use by multiple users via a distributed computer-based system
KR102049030B1 (ko) 학습용 블록 시스템 및 학습용 콘텐츠 제공 방법
JP2017219718A (ja) プログラミング学習装置及びプログラム
TWI619101B (zh) Puzzle learning system
Rocha et al. Accembly at home: Accessible spatial programming for children with visual impairments and their families
US11756449B2 (en) System and method for improving reading skills of users with reading disability symptoms
KR20230075267A (ko) 복수의 메인 코딩 블록으로부터 획득되는 커맨드를 이용하는 방법 및 디바이스
KR102186719B1 (ko) 블록형 무선 코딩 명령어 입력 장치 및 방법
KR20210089872A (ko) 코딩 토이를 이용한 학습 시스템
KR101917830B1 (ko) 학습용 블록 시스템 및 학습용 콘텐츠 제공 방법
US11727819B2 (en) Interactive system for teaching sequencing and programming
JP2019086700A (ja) 英語学習装置、その制御方法、プログラム、及び英語学習玩具
KR20140096017A (ko) 언어학습시스템
Psycharis et al. Teaching Programming Skills to Blind and Visually Impaired Learners
KR102084178B1 (ko) 클라우드 기반 영유아 스팀 교육을 위한 토이 플랫폼 서비스 제공 시스템, 방법 및 이를 기록한 기록매체
KR102042666B1 (ko) 미로 코딩을 이용한 프로그래밍 학습 장치
JP2017211578A (ja) 文字練習装置
KR20180045075A (ko) 블록 인식 장치 및 방법
KR20200071287A (ko) 채색 서비스 플랫폼을 이용한 모바일 장치 및 서버
US20190073915A1 (en) Interactive and instructional interface for learning
KR20190069035A (ko) 알고리즘 생성 장치
Milne Touchscreen-based learning technologies for children with visual impairments
ÇİPİLOĞLU YILDIZ et al. Algo-AR: Development of an Augmented Reality-Supported Tangible Programming Tool to Improve Algorithmic Thinking Skills.

Legal Events

Date Code Title Description
E601 Decision to refuse application