KR102491389B1 - 코딩 학습용 로봇 제어 시스템 - Google Patents

코딩 학습용 로봇 제어 시스템 Download PDF

Info

Publication number
KR102491389B1
KR102491389B1 KR1020200188998A KR20200188998A KR102491389B1 KR 102491389 B1 KR102491389 B1 KR 102491389B1 KR 1020200188998 A KR1020200188998 A KR 1020200188998A KR 20200188998 A KR20200188998 A KR 20200188998A KR 102491389 B1 KR102491389 B1 KR 102491389B1
Authority
KR
South Korea
Prior art keywords
block
robot
tangible
line
control system
Prior art date
Application number
KR1020200188998A
Other languages
English (en)
Other versions
KR20220096503A (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 KR1020200188998A priority Critical patent/KR102491389B1/ko
Priority to US17/567,096 priority patent/US20220223065A1/en
Publication of KR20220096503A publication Critical patent/KR20220096503A/ko
Application granted granted Critical
Publication of KR102491389B1 publication Critical patent/KR102491389B1/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • B25J9/126Rotary actuators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • 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)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Theoretical Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Toys (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 발명은 코딩 학습용 로봇 제어 시스템에 관한 것으로, 보다 상세하게는 라인을 감지할 수 있는 라인감지부를 통해 코딩 학습용 로봇을 정확하게 제어함으로써 코딩 교구 시장에서의 로봇의 활용도를 증진시킬 수 있는 로봇 제어 시스템에 관한 것이다.
본 발명에 따른 코딩 학습용 로봇 제어 시스템은, 명령어를 포함하는 텐져블 블록에 따라 움직이되, 내부에 복수의 모터를 포함하는 로봇, 그리고 상기 복수의 모터를 각각 독립적으로 컨트롤하는 컨트롤부, 그리고 상기 로봇이 이동하는 공간에 해당하는 타일보드를 포함하되, 상기 컨트롤부는, 상기 로봇이 상기 텐져블 블록에 따라 움직이는지 여부를 확인하기 위해 상기 타일보드의 라인을 감지하는 라인감지부를 포함하고, 상기 라인감지부는 상기 라인이 상기 라인감지부의 감지 반경 내에 존재하는지 여부에 따라 상이하게 구성되는 라인정보를 포함하고, 상기 텐져블 블록의 순서 정보는 블록인식알고리즘에 의해 판독되되, 상기 블록인식알고리즘은 3차원 공간상에 배치된 상기 텐쳐블 블록을 2차원 공간으로 매핑하도록 구성된다.

Description

코딩 학습용 로봇 제어 시스템{ROBOT CONTROL SYSTEM FOR CODING EDUCATION}
본 발명은 코딩 학습용 로봇 제어 시스템에 관한 것으로, 보다 상세하게는 라인을 감지할 수 있는 라인감지부를 통해 코딩 학습용 로봇을 정확하게 제어함으로써 코딩 교구 시장에서의 로봇의 활용도를 증진시킬 수 있는 로봇 제어 시스템에 관한 것이다.
4차 산업혁명 시대에 코딩 교육의 중요성이 강조되고 있으며, 유치원생들과 및 초등학교 3학년 이하의 저연령의 학생들에게 컴퓨팅적 사고 발달을 유도할 수 있고, 가정에서 게임을 하듯이 코딩 학습이 가능한 학습 교구가 필요하다.
이와 관련된 선행기술로서 대한민국 등록특허 10-1843831가 존재하는데, 상기 등록특허에 따른 쪼물락 코딩 블록은, 고유아이디를 내장하고, 적어도 하나의 커넥터를 구비하며, 실제 코드의 생성 역할을 하는 적어도 하나의 리얼코딩블록; 고유아이디를 내장하고 상기 리얼 코딩 블록과 접속되며, 숫자값을 입력하기 위한 적어도 하나의 넘버링 블록; 고유 아이디를 내장하고, 상기 리얼 코딩 블록과 접속되며, 변수값을 입력하기 위한 적어도 하나의 변수 블록; 상기 리얼코딩블록과 접속되어 상기 리얼코딩블록에서 수신되는 아이디에 대응되는 코드를 순차적으로 실행하는 메인 블록을 포함한다. 실시예에서는 실제 코딩문(제어문, 변수, 이벤트, 디버깅 등)과 유사한 구조의 블록을 제공할 수 있고, 이로부터 흥미 유발과 코딩 개념의 학습뿐만 아니라 실제 코딩문과의 연계를 강화할 수 있다.
그러나 상기 메인 블록의 제어신호에 따라 소정 동작을 실행하는 실행 장치(500)의 제어 시스템에 대해서는 구체적으로 개시하고 있지 않기 때문에, 제어 대상에 대한 부정확한 움직임이 왕왕 발생하거나 부정확한 움직임이 발생하였을 때, 이를 제어할 수 없는 수단이 없어 코딩 교육 본질에 벗어나 그저 장난감으로서만 사용되는 문제점이 존재하였다.
본 발명은 상기 문제점을 해결하기 위해 안출된 것으로, 로봇(명령 대상)의 전진 이동, 회전 이동을 보정하는 방안이 구비됨으로써 로봇에 부정확한 움직임이 발생하였을 때 이를 정확하게 제어시킴으로써 저연령을 대상으로 코딩교육을 효과적으로 시킬 수 있는 코딩 학습용 로봇 제어 시스템을 제공하는 것을 목적으로 한다.
명령어를 포함하는 텐져블 블록의 인식률을 높임으로써 모바일 앱 운용환경에서 각 종 교육 등을 수행하기에 무리가 없는 코딩 학습용 로봇 제어 시스템을 제공하는 것을 목적으로 한다.
상기 과제의 해결을 목적으로 하는 본 발명에 따른 코딩 학습용 로봇 제어 시스템은, 명령어를 포함하는 텐져블 블록에 따라 움직이되, 내부에 복수의 모터를 포함하는 로봇, 그리고 상기 복수의 모터를 각각 독립적으로 컨트롤하는 컨트롤부;
상기 로봇이 이동하는 공간에 해당하는 타일보드, 그리고 상기 텐져블 블록을 인식하여 상기 명령어를 추출하는 블록 인식부를 포함하되, 상기 블록 인식부에는 상기 텐져블 블록이 배치되는 순서 정보를 판독하는 블록인식알고리즘이 탑재되고, 상기 블록인식알고리즘은 3차원 공간상에 배치된 상기 텐져블 블록을 2차원 공간으로 매핑하도록 구성된다.
또한 상기 블록인식알고리즘은, 상기 텐져블 블록의 이미지를 획득하는 이미지 획득 단계, 상기 획득 단계로부터 획득한 상기 이미지를 저장하는 저장 단계, 저장된 상기 이미지의 2차원 정보를 추출하는 2차원 정보 추출 단계, 기준 좌표를 설정하고 상기 기준 좌표를 바탕으로 상기 2차원 정보에 좌표를 설정하는 좌표 설정 단계, 설정된 상기 좌표에 따라 상기 순서 정보를 획득하는 순서 정보 획득 단계 및 상기 순서 정보에 따라 상기 텐져블 블록을 증강현실 상에 배치시키는 배치 단계를 포함한다.
또한 상기 블록인식알고리즘은 배치되지 못한 미배치 블록이 존재하는 경우에는 상기 배치 단계 이후에 상기 미배치 블록을 배정하는 배정 단계를 더 포함한다.
또한 상기 배정 단계는, 상기 텐져블 블록의 평균 높이를 계산하는 평균 높이 계산 과정 및 상기 미배치 블록 중에서 상기 평균 높이보다 작은 높이를 갖는 미달 블록들을 정렬시키는 정렬 과정을 포함한다.
또한 상기 명령 블록은 상면에 openCV 기반의 마커를 구비하되, 상기 블록 인식부는 상기 마커의 코너를 인식하는 코너 인식 모듈을 포함한다.
또한 상기 컨트롤부는, 상기 로봇이 상기 텐져블 블록에 따라 움직이는지 여부를 확인하기 위해 상기 타일보드의 라인을 감지하는 라인감지부를 포함하고, 상기 라인감지부는 상기 라인이 상기 라인감지부의 감지 반경 내에 존재하는지 여부에 따라 상이하게 구성되는 라인정보를 포함한다.
또한 상기 로봇의 전진 이동 및 회전 이동의 오차 허용 범위는 각각 하기의 수학식, Ed = 라인감지부의 길이 x 2, 그리고 Eθ = arctan(
Figure 112020143931939-pat00001
)를 만족하되, 여기에서 Ed는 전진 이동의 오차 허용 범위, Eθ: 회전 이동의 오차 허용 범위에 해당하는 것으로 구성된다.
상기 구성 및 특징을 갖는 본 발명은 로봇(명령 대상)의 전진 이동, 회전 이동을 보정하는 방안이 구비됨으로써 로봇에 부정확한 움직임이 발생하였을 때 이를 정확하게 제어시킴으로써 저연령을 대상으로 코딩교육을 효과적으로 시킬 수 있다는 장점을 갖는다.
또한 명령어를 포함하는 텐져블 블록의 인식률을 높임으로써 모바일 앱 운용환경에서 각 종 교육 등을 원활하게 수행하기에 무리가 없다는 장점을 갖는다.
도 1은 본 발명에 따른 코딩 학습용 로봇 제어 시스템에 사용되는 로봇, 타일보드 및 명령어 보드를 나타낸 도면.
도 2는 명령어 보드 및 명령어 칩을 나타낸 도면.
도 3은 라인감지부 및 라인 센서를 나타낸 도면.
도 4 및 5는 라인정보를 나타낸 도면.
도 6은 회전 이동 시에 변화하는 라인정보를 나타낸 도면.
도 7은 마커를 인식하는 과정을 나타낸 도면.
도 8은 타일보드를 나타낸 도면.
도 9는 픽토그램화된 마커를 나타낸 도면.
도 10은 소프트웨어스택의 구조를 나타낸 블록도.
도 11은 VR 연동 유저 인터페이스에 배치되는 배경화면을 나타낸 도면.
도 12는 로봇의 움직임을 나타낸 도면.
도 13은 텐져블 블록을 나타낸 도면.
도 14는 직진 및 회전 이동에 대한 오차범위를 나타낸 도면.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 구현예(態樣, aspect)(또는 실시예)들을 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 구현예(태양, 態樣, aspect)(또는 실시예)를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, ~포함하다~ 또는 ~이루어진다~ 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 명세서에서 기재한 ~제1~, ~제2~ 등은 서로 다른 구성 요소들임을 구분하기 위해서 지칭할 것일 뿐, 제조된 순서에 구애받지 않는 것이며, 발명의 상세한 설명과 청구범위에서 그 명칭이 일치하지 않을 수 있다.
본 발명은 코딩 학습용 로봇 제어 시스템에 관한 것으로, 보다 상세하게는 라인을 감지할 수 있는 라인감지부를 통해 코딩 학습용 로봇을 정확하게 제어함으로써 코딩 교구 시장에서의 로봇의 활용도를 증진시킬 수 있는 로봇 제어 시스템에 관한 것이다.
먼저 명령어를 포함하는 텐져블 블록에 포함된 명령어에 따라 움직이되, 내부에 복수의 모터를 포함하는 로봇을 포함한다.
먼저 도 1에 도시된 바와 같이 로봇에 대해 살펴보면, 하드웨어인 아두이노 로봇은 보드위에서 게임 말과 같이 동작한다. 로봇은 타일 선상을 따라 전진 이동, 회전 이동 기능을 수행한다. 로봇은 로봇 구성물을 담는 베이스 프레임과 베이스 프레임에 덮여질 외형 프레임부로 구성되어 있으며 외형 프레임부에는 다양한 로봇 모형을 3D 프린터를 이용하여 출력하고 해당 요소들을 베이스 프레임에 담을 수 있도록 설계되어 있다. 로봇의 전체 크기는 보드게임 타일 크기의 1/2 정도이다. 그리고 외부 전원 없이 구동할 수 있도록 충전가능하며, 소형화에 용이한 리튬배터리가 채택되었다. 그리고 현재 많이 사용되고 있는 아두이노 로봇은 아두이노 우노(Arduino Uno)를 기본 베이스 모델로 사용하고 있으며 이동 기능을 위해 모터를 구비한 바퀴 2개가 가운데 위치하고 보조바퀴가 상기 바퀴의 전면에 구비되어 있다.
그리고 도 2에 도시된 바와 같이, 여기서 명령어는 직진 명령, 우회전 명령, 좌회전 명령, 점프 명령, 액션 명령 다섯 가지로 구성될 수 있는데, 직진 명령은 로봇의 현재 시점을 기준으로 타일위에서 한 칸 앞으로 이동하는 것이다. 그리고 두 개의 회전 명령은 좌측, 우측으로 회전하는 명령을 말한다. 그리고 액션 명령은 로봇이 바라보고 있는 방향의 전방 타일이 오염 타일이거나 현재 위치하고 있는 타일이 워프 타일일 경우에 오염 타일을 정화시키거나 워프 타일을 이용하여 미션을 클리어 내지는 순간 이동을 시킬 수 있게 된다. 아울러 주어진 미션 클리어 시에 이를 알려주는 기능으로 비프음 소리를 추가하여 들리게 구성시킬 수도 있다. 그리고 점프 명령은 로봇을 점프시키는 명령을 말하는 것이다.
그리고 이외에도 그룹 명령도 존재하는데 명령어를 입력시키는 명령어 보드 하단에 배치한 명령어를 그룹 명령어의 개수만큼 실행할 수 있는 것이다.
여기서 명령어 보드는, 명령어 보드 상단과 하단으로 구성되는데, 명령어 보드 상단과 하단은 명령어 보드 중앙 측에 위치한 경계를 기준으로 나뉘는 것이다. 아울러, 전술한 바와 같이, 명령어 보드 하단에는 그룹 명령으로 사용될 명령어를 입력하는 공간에 해당한다.
그리고 상기 명령어는 상기한 명령 이외에도, 자주 사용되는 명령어는 함수 형태로 저장시켜 꺼내 쓸 수 있는 함수 명령도 포함시킬 수 있다.
그리고 이러한 명령어는 컨트롤부에서 사용자가 명령어 입력 큐에 명령어를 입력하게 되면 명령이 로봇에 하달될 수 있게 된다.
그리고 상기한 로봇은 안정적인 움직임을 제공하는 아두이노 기반으로 구성되어, 상기한 명령어 집합은 주어진 미션 등을 클리어하기 위해 복수의 명령어를 명령어 큐를 담아 놓아 이를 순차적으로 아두이노 기기의 통신부와 통신하여 전송해 상기 로봇을 제어하게 된다. 그리하여 명령어 스케줄러는 입력된 명령어 큐에서 하나씩 명령어를 꺼내 로봇에게 송신부를 구비한 무선 통신부를 통해 명령어를 전달하여 각 종 명령어에 따른 동작을 수행을 지시하고 명령어 수행이 완료되면 명령어 큐에 명시된 다음 명령어들을 순차적으로 가져와 큐에 있는 모든 명령어들을 소진 시키는 역할을 담당한다.
그리고 본 발명에 따른 로봇 제어 시스템은 코딩교육용 모바일앱 상에서 구현될 수 있으며, 아울러 Unity3D 게임플랫폼을 기반으로 하고 있다.
명령어 스케줄러와 로봇은 무선망을 통해 클라이언트/서버 방식으로 동작하며 명령어 스케줄러는 클라이언트 역할을 수행한다. 실제 하나의 명령어 수행을 위해 아두이노 기기가 복수개의 센서를 제어하기 때문에 이것을 조율하기 위해 무선 통신부를 통한 클라이언트/서버 모델로 실시되는 것이다.
본 발명에서는 다양한 통신 방법 중에서 적은 소비 전력으로 제한된 실내 공간에서 활용이 용이한 블루투스를 채택하였다. 대표적인 모바일환경(iOS와 안드로이드)에 모두 대응할 수 있도록 블루투스 4.0이상 버전이 사용될 수 있다.
아울러 서버역할을 수행하는 아두이노 블루투스 수신부 모듈은 시리얼 연결 방식으로 명령어들을 전송받으며, 그리고 동기 방식으로 명령어를 하나씩 수행하고 수행 결과를 송신부에 반환하는 방식으로 구현된다.
서버역할을 수행하는 아두이노 블루투스 수신부 모듈은 시리얼 연결 방식으로 명령어들을 전송받으며, 동기 방식으로 명령어를 하나씩 수행하고 수행 결과를 송신부에 반환하는 방식으로 구현되어 있다.
그리고 상기 컨트롤부는 상기 모터를 각각 독립적으로 제어함으로써 회전 이동, 후진 이동 또는 상기 로봇의 움직임에 대한 보정을 수행할 수 있게 된다.
구체적으로 살펴보면, 도 12에 도시된 바와 같이, 만약 상기 로봇을 왼쪽 방향으로 회전시키고자 하는 경우에는 왼쪽 바퀴의 회전 속도를 낮추고, 오른쪽 바퀴의 회전 속도를 높임으로써 실현시키게 되고, 오른쪽 방향으로 회전시키고자 하는 경우에는 왼쪽 바퀴의 회전 속도를 높이고, 오른쪽 바퀴의 회전 속도를 낮춤으로써 실현시키게 된다. 후진 이동의 경우에도 마찬가지로 상기 바퀴의 속도 제어를 통하여 실현될 수 있게 되며, 로봇 움직임에 대한 보정 시에는 구체적으로 왼쪽으로 편향되어 이동하는 경우에는 왼쪽 바퀴의 회전 속도를 오른쪽 바퀴의 회전 속도보다 더 높이어 정방향으로 보정시키게 되는 것이고, 오른쪽으로 편향되어 이동하게 되는 경우에는 오른쪽 바퀴의 회전 속도를 왼쪽 바퀴의 회전 속도보다 더 높이어 정방향으로 보정시키게 되는 것이다.
모터 제어는 Pulse Width Modulation(PWM)[14]을 통해 아두이노 기본 전압인 5V를 듀티 사이클(duty cycle)을 이용하여 정수 출력 값(0~255)으로 선형 사상하여 개별 모터의 움직임을 제어는 방식을 사용한다.
그리고 상기 모터의 정회전 혹은 역회전을 위해 하드웨어적으로 전류 방향을 바꾸는 H-Bridge회로를 사용하고 있으며 신호 설정에 따라 전진, 후진, 좌/우회전 움직임을 제어한다.
그리고 이동시 생기는 현상들의 발생 요인 탐색 및 검증을 위해 다음과 같은 방식을 사용할 수 있다.
먼저 로봇에는 엔코더 장치, 광학 센서를 부착하여 실시간으로 모터의 회전수를 측정하고, 아울러 상기 타일보드의 라인을 감지하는 라인감지부를 포함하여, 타일보드의 라인을 따라 정확하게 이동하는지 감지할 수 있게 되는 것이다. 여기서 상기 라인감지부의 구체적인 실시예로 적외선 라인 추적 센서(이하 간략히 라인센서로 칭함)가 사용될 수 있다.
그리고 이중 라인센서는 바닥에 적외선을 발사하여 반사된 명암의 세기에 따른 결과 값이 일정 수치 이상이면 라인의 존재로 판단하고, 그 이하이면 라인의 부존재로 판단함으로써 이동 경로상 존재하는 라인 존재 여부를 확인한다.
그리고 도 3에서 도시된 바와 같이 한 타일에서 다른 타일로 이동하는 전진 이동시 라인 경로가 교차하는 지점을 인식할 수 있도록 로봇의 중앙에 배치되는 중앙부 라임감지부가 3개의 라인센서를 포함하고, 회전 이동시 90도 마다 측정 가능한 라인 유무를 감지하기 위해 추가적으로 로봇의 전면에 배치되는 전면부 라인감지부가 3개의 라인센서를 포함한다.
그리고 3개 단위로 묶인 라인센서들은 도 4에 도시된 바와 같이 총 8개의 상태 정보를 가지고 있으며 로봇의 이동 상황 및 현재 진행 현황을 추정하는데 사용된다. 예를 들어, 중앙에 위치한 3개의 라인센서가 111이라면 현재 타일이 다른 타일로 옮기기 바로 직전 상태로 타일 교차점에 위치한 것으로 판정할 수 있다.
즉, 상기 라인감지부는 상기 라인이 상기 라인감지부의 감지 반경 내에 존재하는지 여부에 따라 상이하게 구성되는 라인정보를 포함하게 되는 것이며, 그리고 여기서의 감지 반경은 적외선 센서가 통상적으로 갖는 감지 반경을 갖게 된다.
그리고 상기 로봇을 전진 이동시키는 전진 명령은 상기 중앙부 라인감지부에 의해 감지된 상기 라인정보에 근거하여 수행되고, 상기 로봇을 회전 이동시키는 회전 명령은 상기 전면부 라인감지부에 의해 감지된 상기 라인정보에 근거하여 수행된다.
이러한 라인 정보는 도 4에 도시된 바와 같이, 라인이 감지되지 않는 경우에는 제1라인정보(000), 오른쪽에서만 라인이 감지되는 경우에는 제2라인정보(001), 중앙에서만 라인이 감지되는 경우에는 제3라인정보(010), 중앙 및 오른쪽에서 라인이 감지되는 경우에는 제4라인정보(011), 왼쪽에서만 라인이 감지되는 경우에는 제5라인정보(100), 왼쪽 및 오른쪽에서 라인이 감지되는 경우에는 제6라인정보(101), 왼쪽 및 중앙에서 라인이 감지되는 경우에는 제7라인정보(110), 왼쪽, 중앙 및 오른쪽 모두에서 라인이 감지되는 경우에는 제8라인정보(111)를 포함한다.
이에 대해 구체적인 실시예를 살펴보면, 총 50회의 전진 이동을 시키는 동안 도 5에서 확인되는 바와 같이, 라인센서 정보가 111, 011, 001로 변화하고 있으며 이는 로봇이 기준위치에서 왼쪽으로 서서히 벗어나고 있음을 보여준다.
그리고 여기서 유령상태(Phantom State)인 제3라인정보(010)는 센서 잡음에 의해 나타나는 것으로 해석되며, 해당 상태가 나타난 모든 경우에 대한 분석을 통해 제3라인정보(010)는 그 이전상태와 동일한 상태로 판정해도 전혀 무방함을 확인하였다.
회전 이동의 경우에는 도 6에 도시된 바와 같이, 중앙에 위치한 3개의 라인센서로는 회전 상태를 평가할 수 없기 때문에 전면부에 라인센서가 3개의 라인센서가 구비되는 것이다.
그리고 도 14에 도시된 바와 같이, 상기 로봇의 전진 이동 및 회전 이동의 오차 허용 범위는 각각 하기의 수학식, Ed = 라인감지부의 길이 x 2, 그리고 Eθ = arctan(
Figure 112020143931939-pat00002
)를 만족하는데, 여기서 Ed는 전진 이동의 오차 허용 범위를 말하는 것이고, Eθ는 회전 이동의 오차 허용 범위를 말한다.
그리고 이하에서는 상기 텐져블 블록을 인식하는 블록 인식부에 대해서 상세하게 살펴보기로 한다.
상기 블록 인식부는 상기 텐져블 블록을 증강현실 상에 증강시킬 수 있도록 상기 텐져블 블록을 인식하는 구성으로, 구체적인 실시예로는 Open CV를 활용한 인식 시스템을 들 수 있겠다. 그러나 상기 Open CV에서는 상기 텐져블 블록의 입력 순서까지는 인식을 시키지 못하기 때문에 본 발명에서는 독자적인 블록인식알고리즘을 통하여, 상기 텐져블 블록의 순서 정보를 획득할 수 있게 되는 것이다.
그리고 여기서 Open CV를 활용한 인식 시스템은 Template Matching 및 Image Recognition 기법을 활용하여 마커를 인식하는 방법을 사용한 시스템을 말한다.
즉, 상기 블록인식알고리즘은 상기 텐져블 블록의 순서 정보를 획득하기 위한 알고리즘이며, 더욱 구체적으로는 상기 텐져블 블록 상면에 부착된 마커가 포함하는 명령어들의 순서 정보를 획득함으로써 명령어들이 입력된 순서대로 로봇에게 명령을 하달할 수 있게 되는 것이다.
그리고 상기한 명령어는 전술한 바와 같은 명령어들을 의미하며, 통신 방법 또한 전술한 바와 같이 수행될 수 있다.
상기 블록인식알고리즘은, 상기 텐져블 블록의 이미지를 획득하는 이미지 획득 단계, 그리고 상기 획득 단계로부터 획득한 상기 이미지를 저장하는 저장 단계, 그리고 저장된 상기 이미지의 2차원 정보를 추출하는 2차원 정보 추출 단계, 그리고 기준 좌표를 설정하고 상기 기준 좌표를 바탕으로 상기 2차원 정보에 좌표를 설정하는 좌표 설정 단계, 그리고 설정된 상기 좌표에 따라 상기 순서 정보를 획득하는 순서 정보 획득 단계, 그리고 상기 순서 정보에 따라 상기 텐져블 블록을 증강현실 상에 배치시키는 배치 단계를 포함한다.
여기서 특징적인 점은 2차원 정보를 추출하기 위해서 상기 마커에 저장되어 있는 3차원 정보를 매핑하여 수행한다는 것이다. 이 또한 상기한 Open CV를 활용하여 수행될 수 있겠다. 그리고 기준 좌표를 설정한다는 의미는 모바일 기기의 경우, 가로화면(landscape), 세로화면(portrait), 가로반전화면(landscape(flipped)), 세로반전화면(portrait(flipped))과 같이 4개의 상이한 방향 내지는 기준(orientation)이 존재하기 때문에 방향 내지는 기준 (orientation)별로 상이한 좌표 값이 나타난다. 따라서 동일한 알고리즘이 적용될 수 있도록 가로화면(landscape)을 기준으로 DirectX에서 차용한 좌상귀(좌측 상부 귀퉁이)를 스크린 원점(0,0)으로 하는 2차원 좌표계로 변환하는 것을 의미한다.
상기 블록인식알고리즘은 배치되지 못한 미배치 블록이 존재하는 경우에는 상기 배치 단계 이후에 상기 미배치 블록을 배정하는 배정 단계를 더 포함한다. 여기서 상기 배정 단계는, 상기 텐져블 블록의 평균 높이를 계산하는 평균 높이 계산 과정 및 상기 미배치 블록 중에서 상기 평균 높이보다 작은 높이를 갖는 미달 블록들을 정렬시키는 정렬 과정을 포함한다.
그리하여 미달 블록들을 모두 x값 오름차순으로 정렬한 결과를 결과 리스트에 저장하여 남아 있는 마커들이 없을 때까지 이 과정을 반복함으로써 모든 마커의 배치를 완료하게 되는 것이다.
탠저블 블록은 3D 프린터로 출력된 정사각형 플라스틱 모형으로 구성되고, 그 상면에 스티커 형태로 부착 가능한 ArUco 마커들이 부착된다. 상기 마커는 전술한 명령어를 포함하고 있다.
상기 마커는 내부에 이진 패턴이나 모양을 갖고 있고, 3차원 좌표를 알고 있는 코너를 가지고 있기 때문에 간단한 영상처리로 쉽게 객체를 인식할 수 있다.
그리고 블록 인식 소프트웨어는 Unity 환경에서 Open CV for Unity 라이브러리에서 개발된 인식테스트 프로그램에 해당한다. 도 7에서는 측정 전에 테스트하려는 텐져블 블록들을 인식 카메라의 수직 방향으로 배치하고 인식 중 현재 인식된 명령어들을 확인한 후 그 결과를 화면에 배치 순서대로 인식한 마커를 아이콘 형태로 표현한 결과를 보여준다.
그 다음으로, 상기 로봇이 이동하는 공간에 해당하는 타일보드에 대해 살펴보면, 상기 타일보드는 도 8에 도시된 바와 같이, 상기 타일보드는 아무런 기능 없이 로봇이 지나갈 수 있는 기본 타일에 해당하는 일반 타일, 높이가 존재하여 점프 명령으로 이동이 가능한 장애물 타일, 오염되어 밟을 수 없는 타일로서 이를 지나가기 위해서는 상기 로봇이 오염된 타일을 정면으로 바라본 상태에서 액션 명령을 사용하여 일반 타일로 정화시켜야 이동이 가능한 오염 타일 및 액션 명령 사용 시 게임을 종료시키거나 순간 이동이 가능한 워프 타일을 포함한다.
그 다음으로, 상기 명령어와 3차원 위치가 입력되어 있는 마커를 포함하는 텐져블 블록에 대해 살펴보기로 한다.
상기 텐져블 블록은 실제로 학습자가 상기 텐져블 블록을 배치시켰을 때, 블록 인식부의 인식을 통해 증강현실 상에 객체들(텐져블 블록들)이 증강되고, 이에 대한 정보들을 로봇에 전달하여 명령어의 내용과 입력 순대로 로봇이 제어될 수 있게 되는 것이다. 그리고 명령어가 전송되고 수신되는 방식에 대해서는 자세하게 전술하였다. 그리고 상기 텐져블 블록에 대해 도 13을 참조할 수 있다.
그리고 도 9에 도시된 바와 같이, 상기 텐져블 블록은 명도가 높은 흰색 배경과 명도가 낮은 픽토그램의 색상 바리에이션으로 구성되어 있어 명도를 통한 패턴 인식을 강화시켜 인식률이 높다는 장점을 갖는다.
따라서 비교적 저연령의 학습자들을 대상으로 한 로봇을 활용한 코딩 교구로서 사용될 수 있는 것이다. 그리고 본 발명에 따른 로봇 제어 시스템은 로봇을 정확하게 제어시킴으로써 코딩 교육 교구로서 매우 적극적으로 활용될 수 있는 장점이 존재한다.
그 다음으로, 상기한 블록 인식 시스템을 이용하여 VR연동을 위해서는 개발 플랫폼마다 별도의 연동용 소프트웨어스택이 요구되는데, 본 발명에서는 구글 VR 연동 앱 구현을 위한 VR 소프트웨어스택, Vuforia 연동 앱 구현을 위한 VR 소프트웨어스택, Open CV 연동 앱 구현을 위한 VR 소프트웨어스택이 포함된다.
그리고 도 10에 도시된 바와 같이, AR/VR 기기들을 활용할 수 있는 형태로 구성되어 Unity 엔진에서 사용할 수 있는 Prefab 형태로 구축된다. 그리고 이러한 소프트웨어스택에는 SDK 라이브러리가 플러그인 되어 있다.
그리고 VR용 애플리케이션의 UI는 전통적인 물리 입력장치(마우스, 키보드)없이 사용 가능한 UI(User Interface) 설계가 필요하며, 이 때 사용자 시선 이동을 위해 자이로스코프를 이용한 헤드 트랙킹(head tracking) 기술을 채용할 수 있다.
그리고 이러한 UI는 사용자가 보고 있는 시선 정중앙 방향에 대한 기준점을 그래도 표시하는 것이 아닌, 상기 기준점에서 제일 가까운 객체를 판별하고 화면에 해당 객체를 하이라이트 시키도록 구성된다.
그리고 VR 소프트웨어스택을 통하여 AR 기반 과제 수행 게임 시스템을 구현할 수 있고, 또한 AR 코딩학습 도서로 활용할 수 있다.
그리고 도 11은 저연령의 학생들이 좋아할 수 있는 상기 애플리케이션의 바탕화면을 도시한 도면이다.
그리고 추가적으로 보상 제공부가 더 포함될 수 있는데, 이러한 보상 제공부는 예정된 교과과정 진도를 맞추는 학습자에게 보상을 제공하는 기능부에 해당한다.
일정 수준의 교과과정을 이수한 학습자는 이수정보를 바탕으로 언락(unlocked)된 캐릭터 정보를 획득하며 이것을 선택함으로써 게임 내에서 새로운 캐릭터를 사용할 수 있다. 첫 사용자는 언락 여부에 관계없이 최소 하나의 사용가능한 캐릭터를 제공한다.
그리고 언락 조건은 일반 학습자 및 선생님과 같이 정상적으로 등록한 사용자로 한정하며, 특정 스테이지를 종료할 때, 이와 연계된 캐릭터를 언락하는 방식이 활용된다. 특정 스테이지를 종료할 때, 연계된 캐릭터를 언락한다.
그리고 여기서 게임이란 학습자가 증강현실 상에 텐져블 블록을 배치시켜 코딩의 기본적인 내용을 습득할 수 있게 만드는 퍼즐 게임을 말하는 것이다.
한편, 이하에서는 코딩 교육에 대한 집단 교육이 활발하게 수행되고 있음에 따라 학습 내용에 대한 평가 결과 정보를 평가대상학습자에게만 통지할 수 있으면서도 평가 결과에 따른 평가 점수에 대해 직관적으로 확인할 수 있는 평과 결과부 접속 인터페이스(이하 접속 암호 생성부 또는 접속 암호 입력부)에 대해 설명하고자 한다.
이는 의도치 않은 접촉에 의한 반의사적인 인증을 방지하여 평가 결과부로 임의로 접속되는 것을 방지할 수 있게 된다. 그리고 특히 본 발명이 저연령을 대상으로 한 코딩 교육에 대한 평가라는 점에서 비추어봤을 때, 인증 경로(P1)의 형상이 평가대상학습자의 지문 형상으로 구성됨으로써, 저연령의 학습자들이 인증 수단으로서의 지문이 갖는 중요성을 인지할 수 있다는 점에서도 장점이 크다.
먼저 코딩 교육 학습자의 평과 결과에 대한 정보를 포함하는 평가 결과부를 더 포함하고, 상기 평가 결과부는 상기 평가 결과부에 접속을 위한 접속 암호(I)를 생성하는 접속 암호 생성부를 포함한다.
여기서 접속 암호 생성부에서 생성되는 접속 암호(I)는 서버 측에서 관리할 수 있으며, 생성된 접속 암호(I)는 각 클라이언트부마다 달라 서버 측에서 각 클라이언트부별로 개별적으로 상기 접속 암호(I)를 송신하게 된다. 즉, 상기 접속 암호(I)는 상기 평가대상학습자의 클라이언트부에 개별적으로 전송되어, 접속 암호를 입력하는 접속 암호 입력부(D)에서 접속 암호(I)를 풀어 평가 결과부에 접속시킬 수 있게 된다.
그리고 이와 같이, 개별적으로 송신하는 이유는 학습자들 서로가 서로의 점수를 알 수 없도록 하기 위함이다. 그리고 도 15에 도시된 것은 접속 암호 입력부(D) 상에 나타난 접속 암호(I)에 대한 것이다.
그리고 상기 접속 암호(I)는 타 학습자의 최저 점수를 시점(P11)으로 상기 타 학습자의 최고 점수를 종점(P12)으로 구성되되 평가대상학습자의 지문 형상을 갖는 인증 경로(P1) 및, 상기 인증 경로(P1)의 어느 한 지점에 형성되는 인증 포인트(P2)를 포함한다.
여기서 상기 지문 형상은 각 학습자의 지문 형상을 말하는 것인데, 타 학습자와 평가결과대상자의 지문 형상은 상이하므로, 결과적으로는 타 학습자의 인증 경로(P1)와 평가결과대상자의 인증 경로(P1) 또한 상이하게 형성된다.
그리고 상기 인증 경로(P1)의 총 길이는 어느 한 학습자의 최고 점수에서 어느 한 학습자의 최저 점수를 뺀 만큼의 길이를 갖는다. 예컨대, 최고 점수와 최저 점수의 차이가 많이 나는 경우에는 상기 인증 경로(P1)의 총 길이는 늘어나게 되는 것이다.
그리고 인증 경로(P1)가 타 학습자의 최저 점수를 시점(P11)으로, 상기 타 학습자의 최고 점수를 종점(P12)으로 구성된다는 것은, 도 15에 도시된 바와 같이, 드래그가 시작되는 시점(P11)이 타 학습자의 최저 점수에 해당하는 지점에서 형성되고, 드래그가 끝나는 종점(P12)이 타 학습자의 최고 점수에 해당하는 지점에서 형성된다는 것을 말한다.
그리고 상기 어느 한 지점은 상기 평가대상학습자의 현재 점수가 상기 최저 점수에 가까운 경우에는 상기 시점(P11)에 가까운 곳에 형성되고, 상기 평가대상학습자의 상기 현재 점수가 상기 최고 점수에 가까운 경우에는 상기 종점(P12)에 가까운 곳에 형성된다.
즉, 상기 인증 포인트(P2)가 형성되는 상기 어느 한 지점은, 상기 최고 점수와 상기 최저 점수의 차이에 대한 상기 현재 점수와 상기 최저 점수의 비에 상기 인증 경로(P1)의 총 길이를 곱한 만큼의 길이가 상기 시점(P11)으로부터 떨어진 곳을 말한다.
예컨대 타 학습자의 최고 점수가 80점, 타 학습자의 최저 점수가 20점, 평가대상학습자의 현재 점수가 30점에 해당하는 경우 상기 최고 점수와 상기 최저 점수의 차이에 대한 상기 현재 점수와 상기 최저 점수의 차이의 비는 (30-20)/(80-20) = 1/6에 해당하는바 상기 인증 경로(P1) 총 길이의 1/6에 해당하는 길이만큼 시점(P11)으로부터 떨어진 곳에서 상기 인증 포인트(P2)가 형성된다.
즉, 결국에는 상기 인증 경로(P1)는 모든 학습자의 점수 분포를 하나의 라인으로 갖게 되는 것이다.
그리고 상기 인증 경로(P1)를 따라 드래그된 경우에만 상기 평가 결과부에 접속을 성공시키게 된다.
그리고 상기 인증 포인트(P2)에서 드래그 동작을 멈추면, 상기 인증 포인트(P2)의 내부가 점점 채워지는 효과를 출력하고, 상기 인증 포인트(P2)가 모두 채워진 후에만 상기 드래그 동작을 재개할 수 있고, 상기 인증 포인트(P2)의 내부를 채우지 못하거나 과도하게 채운 경우에는 상기 인증 경로(P1)가 사라지게 된다.
여기서 상기 인증 포인트(P2)의 내부를 채우지 못하거나 과도하게 채운 경우에는 상기 인증 경로(P1)가 사라지게 됨으로써, 정확하게 상기 인증 포인트(P2)의 내부를 채워야만 상기 평가 결과부에 접속을 성공할 수 있게 된다.
그리고 전술하였듯이 상기 인증 포인트(P2)가 형성되는 위치는 학습자 전체의 점수 분포를 하나의 라인으로 갖는 인증 경로(P1) 상에서 현재 점수가 위치하는 곳에 형성되기 때문에 평가대상학습자는 인증 포인트(P2)를 채우는 동안 본인의 점수에 대해 직관적으로 인식할 수 있는 효과를 가져 학습 동기 형성에 큰 도움을 줄 수 있다는 장점을 갖는다.
이상에서 첨부된 도면을 참조하여 설명한 본 발명은 통상의 기술자에 의하여 다양한 변형 및 변경이 가능하고, 이러한 변형 및 변경은 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.

Claims (7)

  1. 명령어를 포함하는 텐져블 블록에 따라 움직이되, 내부에 복수의 모터를 포함하는 로봇;
    상기 복수의 모터를 각각 독립적으로 컨트롤하는 컨트롤부;
    상기 로봇이 이동하는 공간에 해당하는 타일보드; 및
    상기 텐져블 블록을 인식하여 상기 명령어를 추출하는 블록 인식부;
    를 포함하되,
    상기 블록 인식부에는 상기 텐져블 블록이 배치되는 순서 정보를 판독하는 블록인식알고리즘이 탑재되고,
    상기 블록인식알고리즘은 3차원 공간상에 배치된 상기 텐져블 블록을 2차원 공간으로 매핑하고,
    상기 블록인식알고리즘은, 상기 텐져블 블록의 이미지를 획득하는 이미지 획득 단계, 상기 획득 단계로부터 획득한 상기 이미지를 저장하는 저장 단계, 저장된 상기 이미지의 2차원 정보를 추출하는 2차원 정보 추출 단계, 기준 좌표를 설정하고 상기 기준 좌표를 바탕으로 상기 2차원 정보에 좌표를 설정하는 좌표 설정 단계, 설정된 상기 좌표에 따라 상기 순서 정보를 획득하는 순서 정보 획득 단계, 상기 순서 정보에 따라 상기 텐져블 블록을 증강현실 상에 배치시키는 배치 단계, 및 배치되지 못한 미배치 블록이 존재하는 경우 상기 배치 단계 이후에 상기 미배치 블록을 배정하는 배정 단계를 포함하는 것을 특징으로 하는 코딩 학습용 로봇 제어 시스템.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서,
    상기 배정 단계는, 상기 텐져블 블록의 평균 높이를 계산하는 평균 높이 계산 과정 및 상기 미배치 블록 중에서 상기 평균 높이보다 작은 높이를 갖는 미달 블록들을 정렬시키는 정렬 과정을 포함하는 것을 특징으로 하는 코딩 학습용 로봇 제어 시스템.
  5. 청구항 1에 있어서,
    상기 텐져블 블록은 상면에 openCV 기반의 마커를 구비하되,
    상기 블록 인식부는 상기 마커의 코너를 인식하는 코너 인식 모듈을 포함하는 것을 특징으로 하는 코딩 학습용 로봇 제어 시스템.
  6. 청구항 1에 있어서,
    상기 컨트롤부는, 상기 로봇이 상기 텐져블 블록에 따라 움직이는지 여부를 확인하기 위해 상기 타일보드의 라인을 감지하는 라인감지부를 포함하고,
    상기 라인감지부는 상기 라인이 상기 라인감지부의 감지 반경 내에 존재하는지 여부에 따라 상이하게 구성되는 라인정보를 포함하는 것을 특징으로 하는 코딩 학습용 로봇 제어 시스템.
  7. 청구항 6에 있어서,
    상기 로봇의 전진 이동 및 회전 이동의 오차 허용 범위는 각각 하기의 수학식,
    Ed = 라인감지부의 길이 x 2
    Eθ = arctan(
    Figure 112020143931939-pat00003
    )
    -Ed: 전진 이동의 오차 허용 범위
    -Eθ: 회전 이동의 오차 허용 범위
    을 만족하는 것을 특징으로 하는 코딩 학습용 로봇 제어 시스템.
KR1020200188998A 2020-12-31 2020-12-31 코딩 학습용 로봇 제어 시스템 KR102491389B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200188998A KR102491389B1 (ko) 2020-12-31 2020-12-31 코딩 학습용 로봇 제어 시스템
US17/567,096 US20220223065A1 (en) 2020-12-31 2021-12-31 Robot control system for coding education

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200188998A KR102491389B1 (ko) 2020-12-31 2020-12-31 코딩 학습용 로봇 제어 시스템

Publications (2)

Publication Number Publication Date
KR20220096503A KR20220096503A (ko) 2022-07-07
KR102491389B1 true KR102491389B1 (ko) 2023-01-20

Family

ID=82322940

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200188998A KR102491389B1 (ko) 2020-12-31 2020-12-31 코딩 학습용 로봇 제어 시스템

Country Status (2)

Country Link
US (1) US20220223065A1 (ko)
KR (1) KR102491389B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102497558B1 (ko) * 2022-10-13 2023-02-08 주식회사 에이아이컨트롤 교육 부자재를 활용한 4차 산업 기술 교육 방법, 장치 및 시스템

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101264874B1 (ko) * 2011-05-20 2013-05-15 주식회사 가나테크 증강현실을 이용한 학습 장치 및 방법
PL417869A1 (pl) * 2016-07-06 2018-01-15 Michał Dziedziniewicz Urządzenie do generowania programów komputerowych i metoda generowania programów komputerowych
KR101983728B1 (ko) * 2016-07-15 2019-06-04 주식회사 토이트론 카드를 인식하여 명령을 수행하는 스마트 토이를 운용하는 장치 및 그 방법
KR101898864B1 (ko) * 2017-02-07 2018-09-14 주식회사 로보메이션 코딩 로봇의 주행 코드 형성 및 배치 방법
KR102370502B1 (ko) * 2019-01-24 2022-03-04 홍익대학교세종캠퍼스산학협력단 텐저블 블록 기반 증강현실 코딩 학습 시스템
KR20220041579A (ko) * 2020-09-25 2022-04-01 (주)이이알에스소프트 블록형 스마트토이를 활용한 증강현실 기반 교육용 프로그래밍언어 저작 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
공개특허공보 제10-2018-0091562호(2018.8.16. 공개) 1부.*
공개특허공보 제10-2020-0092247호(2020.8.3. 공개) 1부.*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102497558B1 (ko) * 2022-10-13 2023-02-08 주식회사 에이아이컨트롤 교육 부자재를 활용한 4차 산업 기술 교육 방법, 장치 및 시스템

Also Published As

Publication number Publication date
US20220223065A1 (en) 2022-07-14
KR20220096503A (ko) 2022-07-07

Similar Documents

Publication Publication Date Title
US8706295B2 (en) Apparatus and method for synchronizing robots
Li et al. Houseexpo: A large-scale 2d indoor layout dataset for learning-based algorithms on mobile robots
CN103702726B (zh) 玩具搭建系统、产生构建指令的方法和数据处理系统
KR20190029524A (ko) 경로를 자율주행하도록 로봇을 훈련시키기 위한 시스템 및 방법
CN103793936A (zh) 用于增强现实的自动化参考框架校准
CN107145222B (zh) 基于Unity三维引擎和VR设备的工具自动绑定系统和方法
KR102491389B1 (ko) 코딩 학습용 로봇 제어 시스템
Kim et al. Mixed reality for learning programming
CN104899361A (zh) 一种远程操控方法及装置
CN102693350B (zh) 面向虚拟现实牙科操作训练的多点接触力觉反馈系统
US10130883B2 (en) Information processing device and information processing method
Pedersen et al. Using human gestures and generic skills to instruct a mobile robot arm in a feeder filling scenario
CN109147057A (zh) 一种面向穿戴式触觉设备的虚拟手碰撞检测方法
KR102491390B1 (ko) 코딩 블록 인식 시스템
KR102022530B1 (ko) 모션 인식을 통해 기기 제어가 가능한 시스템
TWI725911B (zh) 桌遊教具
KR20190075356A (ko) 객체를 식별하기 위한 장치 및 방법
Park et al. Topological direction-giving and visual navigation in large environments
Piumatti et al. Enabling autonomous navigation in a commercial off-the-shelf toy robot for robotic gaming
EP4021601A1 (en) Toy construction system for constructing and operating a remote controlled toy vehicle model
CN117379791A (zh) 基于函数拟合实现捶打动作识别的体感游戏方法
KR102276439B1 (ko) 코딩 교육용 로봇
Le et al. Swarm Robotics Simulation Using Unity
US20230154162A1 (en) Method For Generating Training Data Used To Learn Machine Learning Model, System, And Non-Transitory Computer-Readable Storage Medium Storing Computer Program
CN117504294A (zh) 基于函数拟合实现体感篮球游戏的方法

Legal Events

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