KR20210093959A - 정보 처리 시스템 - Google Patents

정보 처리 시스템 Download PDF

Info

Publication number
KR20210093959A
KR20210093959A KR1020217018437A KR20217018437A KR20210093959A KR 20210093959 A KR20210093959 A KR 20210093959A KR 1020217018437 A KR1020217018437 A KR 1020217018437A KR 20217018437 A KR20217018437 A KR 20217018437A KR 20210093959 A KR20210093959 A KR 20210093959A
Authority
KR
South Korea
Prior art keywords
program
basic core
unit
control
function
Prior art date
Application number
KR1020217018437A
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 비비타 가부시키가이샤
Publication of KR20210093959A publication Critical patent/KR20210093959A/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H30/00Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
    • A63H30/02Electrical arrangements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H30/00Remote-control arrangements specially adapted for toys, e.g. for toy vehicles
    • A63H30/02Electrical arrangements
    • A63H30/04Electrical arrangements using wireless transmission
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H33/00Other toys
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2231Master slave
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2666Toy

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)
  • Toys (AREA)

Abstract

프로그램 작성 지원 장치에 의해 작성된 제어 프로그램에 기초하여 하드웨어 디바이스가 동작될 때에 있어서, 예컨대 완구 등으로서 바람직한 응답 속도로 동작하는 것이 가능하고, 또한, 하드웨어 디바이스의 실기를 자립 구동시키는 것을 가능하게 하는 기술을 제공하는 것. 정보 처리 시스템은, 사용자의 지시에 의해 제어 프로그램의 제작을 지원하는 사용자 단말(1)과, 기능 모듈(3-1, 3-2)의 각각과 통신을 하는 기능과 전술한 제어 프로그램에 기초하여 기능 모듈(3-1, 3-2)의 각각을 제어하는 기능을 갖는 베이직 코어(2-1, 2-2)와, 그 베이직 코어(2-1)와 통신을 하는 기능과 소정의 기능을 발휘하는 기능을 갖는 기능 모듈(3-1, 3-2)을 포함한다. 사용자 단말(1)의 제어 송부부(104)는, 제어 프로그램의 적어도 일부를 1 이상의 베이직 코어(2-1, 2-2) 중의 적어도 하나에 송부한다.

Description

정보 처리 시스템
본 발명은 정보 처리 시스템에 관한 것이다.
종래부터, 어린이의 교육을 목적으로 한 조립식 완구의 제공은 널리 보급되어 있고, 관련 기술이 많이 제안되어 있다(예컨대 특허문헌 1).
예컨대, 특허문헌 1에 기재된 기술에 의하면, 간단한 배선이나 프로그래밍에 의해 조립식 완구를 구축할 수 있는 조립 블록이 제공되고 있다.
이 특허문헌 1에 기재된 기술에 의하면, 연령이 낮은 사용자라 하더라도, 복잡한 작업이나 조작을 하지 않고 조립식 완구를 구축할 수 있다.
특허문헌 1 : 일본 특허 공개 평10-108985호 공보
그러나, 전술한 특허문헌 1의 기술에서는, 각 조립 블록은, 기존의 프로그램에 의해 단일하게 제어되고 있는 것에 불과하여, 조립식 완구의 동작이나 제어의 자유도에는 한계가 있었다.
즉, 예컨대, 전술한 특허문헌 1의 기술만으로는, 각 조립 블록의 각각의 기능을 조합하여 프로그램을 제작하는 것 같은 처리를 실행할 수는 없었다.
바꾸어 말하면, 전술한 특허문헌 1의 기술만으로는, 각 조립 블록의 각각의 기능을 조합하는 등의 고도의 처리를 실행시키기 위해서는, 별도의 복잡한 프로그램을 작성할 필요가 있었다.
또한, 조립식 완구의 동작이나 제어의 자유도는, 유선식 접속의 조립에서는, 배선 처리의 사정에 있어서 제한을 받게 되고, 무선식 접속의 조립에서는, 고속 통신에서는 전력 소모에 의한 제한을 받게 된다.
예컨대, 무선식 고속 통신의 일례인 WLAN(Wi-Fi)에서는, 회로가 물리적으로 큰 것에 의한 제한을 받게 되고, 나아가 고가격인 점에서도 채용은 어렵다.
한편, 저소비 전력의 무선식 접속의 조립에서는 통신 속도가 충분하지 않거나 또는 통신 간격이 길어(예컨대, BLE(Blutooth Low Energy)에서는 5 ms∼100 ms), 보틀넥이 되어 동작이 지연되어, 완구로서 바람직한 것이 아니었다.
또한, 표시 화면이 있는 디바이스는 고가격이 되는 경향이 있기 때문에, 이것을 점유하는 것은 바람직하지 않았다.
본 발명은, 이러한 상황을 감안하여 이루어진 것으로, 프로그램 작성 지원 장치에 의해 작성된 제어 프로그램에 기초하여 하드웨어 디바이스가 동작될 때, 프로그램 작성 지원 장치와 각 하드웨어 디바이스 사이의 통신을 불필요한 것으로 하는 것에 의해, 예컨대 완구 등으로서 바람직한 응답 속도로 동작하는 것이 가능하고, 또한, 하드웨어 디바이스의 실기를 자립 구동시키는 것을 가능하게 하는 기술을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위해, 본 발명의 일양태의 정보 처리 시스템은,
사용자의 지시에 의해 제어 프로그램의 제작을 지원하는 프로그램 제작 지원 장치와,
다른 하드웨어 디바이스와 통신을 하는 기능과 상기 제어 프로그램에 기초하여 상기 다른 하드웨어 디바이스를 제어하는 기능을 갖는 1 이상의 제1 하드웨어 디바이스와,
상기 제1 하드웨어 디바이스와 통신을 하는 기능과 소정의 기능을 발휘하는 기능을 갖는 상기 다른 하드웨어 디바이스로서의 1 이상의 제2 하드웨어 디바이스를 포함하는 정보 처리 시스템으로서,
상기 프로그램 제작 지원 장치는,
상기 제어 프로그램의 적어도 일부를 상기 1 이상의 제1 하드웨어 디바이스 중의 적어도 하나에 송부하는 제어 송부 수단
을 구비한다.
본 발명에 의하면, 프로그램 작성 지원 장치에 의해 작성된 제어 프로그램에 기초하여 하드웨어 디바이스가 동작될 때, 프로그램 작성 지원 장치와 각 하드웨어 디바이스 사이의 통신을 불필요한 것으로 하는 것에 의해, 예컨대 완구 등으로서 바람직한 응답 속도로 동작하는 것을 가능하게 하고, 또한, 하드웨어 디바이스의 실기를 자립 구동시키는 것을 가능하게 하는 기술을 제공할 수 있다.
도 1은 본 발명의 일실시형태에 관한 정보 처리 시스템의 구성을 도시하는 블록도이다.
도 2는 본 발명의 일실시형태에 관한 사용자 단말의 하드웨어 구성의 일례를 도시하는 블록도이다.
도 3은 본 발명의 일실시형태에 관한 베이직 코어의 하드웨어 구성의 일례를 도시하는 블록도이다.
도 4는 본 발명의 일실시형태에 관한 기능 모듈의 하드웨어 구성의 일례를 도시하는 블록도이다.
도 5는 본 발명의 일실시형태에 관한 베이직 코어 및 기능 모듈이 접속된 상태의 구성의 일례를 도시하는 도면이다.
도 6은 도 2의 사용자 단말, 도 3의 베이직 코어 및 도 4의 기능 모듈의 기능적 구성예를 도시하는 기능 블록도이다.
도 7은 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리에 관한 상태의 천이를 도시하는 상태 천이도이다.
도 8a는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 실제로 표시되는 화면의 일례를 도시하는 도면이다.
도 8b는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 실제로 표시되는 화면의 일례를 도시하는 도면이다. 도 8a와는 다른 도면이다.
도 8c는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 실제로 표시되는 화면의 일례를 도시하는 도면이다. 도 8a 및 도 8b와는 다른 도면이다.
도 9a는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 예를 도시하는 도면이다.
도 9b는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 예를 도시하는 도면이다. 도 9a와는 다른 도면이다.
도 9c는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 예를 도시하는 도면이다. 도 9a 및 도 9b와는 다른 도면이다.
도 10a는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9와는 다른 예를 도시하는 도면이다.
도 10b는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9와는 다른 예를 도시하는 도면이다. 도 10a와는 다른 도면이다.
도 10c는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9와는 다른 예를 도시하는 도면이다. 도 10a 및 도 10b와는 다른 도면이다.
도 11a는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9 및 도 10과는 다른 예를 도시하는 도면이다.
도 11b는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9 및 도 10과는 다른 예를 도시하는 도면이다. 도 11a와는 다른 도면이다.
도 11c는 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9 및 도 10과는 다른 예를 도시하는 도면이다. 도 11a 및 도 11b와는 다른 도면이다.
이하, 본 발명의 실시형태에 관해 도면을 이용하여 설명한다.
본 발명은, 사용자가 시각적인 조작에 의해, 보다 용이하게 복잡한 프로그램을 제작하기 위한 기술적 사상의 창작이다.
사용자는, 프로그램 제작용으로 표시되는 사용자 인터페이스(이하, 「프로그램 제작 화면」이라고 함)에 표시된 각종 아이콘을 조작함으로써, 프로그램을 제작할 수 있다.
구체적으로는 예컨대, 사용자는, 프로그램 제작 화면에 표시된 특정한 하드웨어의 동작을 지정하는 프로그램의 내용을 나타내는 아이콘(이하, 「하드웨어 파트」 또는 「H 파트」라고 함) 및 특정한 소프트웨어의 실행을 지정하는 프로그램의 내용을 나타내는 아이콘(이하, 「소프트웨어 파트」 또는 「S 파트」라고 함)을 시인할 수 있다.
그리고, 사용자는, 이들 아이콘을 임의로 이동(예컨대, Drag And Drop 등)시킴으로써, 각종 아이콘을 조합하여 프로그램을 제작한다.
이와 같이 하여 제작된 프로그램은, 예컨대 조립식 완구 등에 이용할 수 있다.
즉, 본 발명의 일실시형태에 관한 정보 처리 시스템은, 용이한 조작에 의해 프로그램을 제작할 수 있기 때문에, 프로그램의 구조나 작성 방법을 어린이에게 학습시키기 위한 교재로서 매우 유용하다.
도 1은, 본 발명의 일실시형태에 관한 정보 처리 시스템의 구성을 도시하는 블록도이다.
도 1에 도시하는 정보 처리 시스템은, 사용자에 의해 사용되는 사용자 단말(1)과, m개의 베이직 코어(2-1 내지 2-m)(m은 1 이상의 임의의 정수치)와, m개의 기능 모듈(3-1 내지 3-m)을 포함하는 시스템이다.
또한, 사용자 단말(1)은, 베이직 코어(2-1 내지 2-m)의 각각과, 각종 방식, 예컨대 NFC(등록상표)(Near Field Communication), Bluetooth(등록상표) 등의 각종 방식으로 통신을 행한다.
또, 이하, 베이직 코어(2-1 내지 2-m)의 각각을 개개로 구별할 필요가 없는 경우, 이들을 통합하여 「베이직 코어(2)」, 기능 모듈(3-1 내지 3-m)을 개개로 구별할 필요가 없는 경우, 이들을 통합하여 「기능 모듈(3)」이라고 한다.
여기서, 본 실시형태에서 이용되는 베이직 코어(2) 및 기능 모듈(3)에 관해 간단히 설명한다.
베이직 코어(2)란, 후술하는 기능 모듈(3)과 접속하여 사용하는 하드웨어 디바이스이며, 근거리 무선 통신(예컨대, NFC(등록상표)의 규격에 준거한 통신)으로 사용자 단말(1)과의 페어링을 행한다.
사용자 단말(1)은, 소정의 베이직 코어(2-K)(K는, 1 내지 m 중 임의의 정수값)와 페어링을 행함으로써, 베이직 코어(2-K)와, 베이직 코어(2-K)에 접속된 소정의 기능 모듈(3-K)을 인식한다.
기능 모듈(3-K)이란, 예컨대, 온도 센서 등의 각종 센서, 버저 등의 조작 기구, 모터나 선풍기 등의 구동 기구 등에 의해 구성되는 하드웨어 디바이스이다.
여기서, 전술한 사용자 단말(1)과 베이직 코어(2-K)의 페어링에 관해 설명한다. 본 실시형태에서는, 베이직 코어(2-K)에 접속된 기능 모듈(3-K)의 동작을 적어도 수반하는 프로그램을 제작함에 있어서, 사용자 단말(1)과 베이직 코어(2-K)에 관해 근거리 무선 통신을 이용한 페어링을 행할 필요가 있다.
페어링이란, 단적으로 말하면, 근거리 무선 통신을 이용하여, 사용자 단말(1)에, 베이직 코어(2-K) 및 그것에 접속되어 있는 기능 모듈(3-K)의 종별이나 접속 상태 등을 인식시키는 것을 말한다.
또, 상세에 관해서는 후술하지만, 사용자 단말(1)에서는, 기능 모듈(3-K)의 종별이나 접속의 상태 등을 인식하면, 접속된 기능 모듈(3-K)에 대응하는 H 파트가 프로그램 제작 화면에 표시된다.
도 2는, 본 발명의 일실시형태에 관한 사용자 단말(1)의 하드웨어 구성을 도시하는 블록도이다.
사용자 단말(1)은, 태블릿형 단말 등으로 구성된다.
사용자 단말(1)은, CPU(Central Processing Unit)(21)와, ROM(Read Only Memory)(22)와, RAM(Random Access Memory)(23)와, 버스(24)와, 입출력 인터페이스(25)와, 터치 조작 입력부(26)와, 표시부(27)와, 입력부(28)와, 기억부(29)와, 제1 근거리 무선 통신부(30)와, 제2 근거리 무선 통신부(31)와, 통신부(32)와, 드라이브(33)와, 리무버블 미디어(34)를 구비하고 있다.
CPU(21)는, ROM(22)에 기록되어 있는 프로그램, 또는, 기억부(29)로부터 RAM(23)에 로드된 프로그램에 따라서 각종 처리를 실행한다.
RAM(23)에는, CPU(21)가 각종 처리를 실행하는 데에 있어서 필요한 정보 등도 적절하게 기억된다.
CPU(21), ROM(22) 및 RAM(23)은, 버스(24)를 통해 서로 접속되어 있다. 이 버스(24)에는 또한, 입출력 인터페이스(25)도 접속되어 있다. 입출력 인터페이스(25)에는, 터치 조작 입력부(26), 표시부(27), 입력부(28), 기억부(29), 제1 근거리 무선 통신부(30), 통신부(32) 및 드라이브(33)가 접속되어 있다. 또한, 제2 근거리 무선 통신부(31)도 설치되어 있다.
터치 조작 입력부(26)는, 예컨대 표시부(27)에 적층되는 정전 용량식 또는 저항막식(감압식)의 위치 입력 센서에 의해 구성되며, 터치 조작이 이루어진 위치의 좌표를 검출한다.
표시부(27)는, 액정 등의 디스플레이에 의해 구성되며, 프로그램 제작에 관한 화상 등, 각종 화상을 표시한다.
이와 같이, 본 실시형태에서는, 터치 조작 입력부(26)와 표시부(27)에 의해 터치 패널이 구성되어 있다.
입력부(28)는, 각종 하드웨어 등으로 구성되며, 사용자의 지시 조작에 따라서 각종 정보를 입력한다.
기억부(29)는, 하드디스크나 DRAM(Dynamic Random Access Memory) 등으로 구성되며, 각종 정보를 기억한다.
제1 근거리 무선 통신부(30)는, 예컨대, NFC(등록상표)의 규격에 따른 방식으로 근거리 무선 통신을 행하는 제어를 실행한다. 구체적으로는 예컨대, 전술한 바와 같이, 사용자 단말(1)과 베이직 코어(2)는, NFC(등록상표)의 규격에 따른 방식으로 근거리 무선 통신을 하여 페어링을 행한다.
제2 근거리 무선 통신부(31)는, 예컨대, Bluetooth(등록상표)의 규격에 따른 방식으로 근거리 무선 통신을 행하는 제어를 실행한다. 구체적으로는 예컨대, 사용자 단말(1)에서 제작한 프로그램의 실행 결과(커맨드 등을 포함)를, Bluetooth(등록상표)의 규격에 따른 방식의 근거리 무선 통신으로 송신한다.
통신부(32)는, 제1 근거리 무선 통신부(30) 및 제2 근거리 무선 통신부(31)와는 별개로 독립적으로, 인터넷 등을 통해 다른 장치와의 사이에서 행하는 통신을 제어한다.
드라이브(33)는 필요에 따라서 설치된다. 드라이브(33)에는, 자기 디스크, 광디스크, 광자기 디스크 혹은 반도체 메모리 등으로 이루어진, 리무버블 미디어(34)가 적절하게 장착된다. 드라이브(33)에 의해 리무버블 미디어(34)로부터 독출된 프로그램은, 필요에 따라서 기억부(29)에 인스톨된다.
또한, 리무버블 미디어(34)는, 기억부(29)에 기억되어 있는 각종 정보도 기억부(29)와 마찬가지로 기억할 수 있다.
도 3은, 본 발명의 일실시형태에 관한 베이직 코어(2)의 하드웨어 구성을 도시하는 블록도이다.
베이직 코어(2)는, 소정의 하드웨어 디바이스 등으로 구성된다.
베이직 코어(2)는, CPU(41)와, ROM(42)와, RAM(43)와, 버스(44)와, 제1 근거리 무선 통신부(45)와, 제2 근거리 무선 통신부(46)와, 접속부(47)와, 전원부(48)를 구비하고 있다.
베이직 코어(2)의 구성 중, CPU(41), ROM(42), RAM(43), 버스(44), 제1 근거리 무선 통신부(45), 제2 근거리 무선 통신부(46)에 관해서는, 사용자 단말(1)의 구성과 기본적으로 동일하기 때문에, 여기서는 이들의 설명은 생략한다.
접속부(47)는, 다른 하드웨어 디바이스(예컨대, 도 1의 기능 모듈(3))와의 접속을 행한다.
또한, 접속부(47)는, 모듈간 통신부(51)와 모듈간 전력 전달부(52)를 구비한다.
모듈간 통신부(51)는, 예컨대, LAN(Local Area Network)의 규격에 따른 방식에 의해, 데이터 통신을 행하는 제어를 실행한다.
모듈간 전력 전달부(52)는, 후술하는 전원부(48)로부터의 전력의 공급을 받아, 다른 하드웨어 디바이스(예컨대, 도 1의 기능 모듈(3))에 전력을 전달한다.
전원부(48)는 전지 등의 배터리이다. 전원부(48)는, 베이직 코어(2)에 전력을 공급함과 더불어, 모듈간 전력 전달부(52)를 통해 적절하게 기능 모듈(3)에 전력을 공급한다.
도 4는, 본 발명의 일실시형태에 관한 기능 모듈(3)의 하드웨어 구성을 도시하는 블록도이다.
기능 모듈(3)은, 소정의 하드웨어 디바이스 등으로 구성된다.
기능 모듈(3)은, CPU(61)과, ROM(62)와, RAM(63)와, 버스(64)와, 접속부(67)와, 기능 하드웨어(68)와, 전력 공급부(69)를 구비하고 있다.
기능 모듈(3)의 구성 중, CPU(61), ROM(62), RAM(63), 버스(64) 및 접속부(67)에 관해서는, 사용자 단말(1) 혹은 베이직 코어(2)의 구성과 기본적으로 동일하기 때문에, 여기서는 이들의 설명은 생략한다.
또, 기능 모듈(3)에도, 베이직 코어(2)와 마찬가지로, 제1 근거리 무선 통신부와 제2 근거리 무선 통신부가 설치되어도 좋다.
기능 하드웨어(68)는, 예컨대, 온도 센서나 버저이며, 각각의 기능 모듈이 고유의 기능을 발휘하기 위한 하드웨어 등이다.
즉, 사용자가 제작한 프로그램은, 기능 하드웨어(68)가 적절히 그 기능을 발휘함으로써, 실제의 하드웨어상에 반영되는 것이다.
여기서, 본 실시형태에서, 프로그램의 실행에는 2종류의 실행 방법이 존재한다. 즉, 사용자 단말(1)에서 제작한 프로그램을, 사용자 단말(1)만으로 가상적으로 실행하는 종류를, 「시뮬레이션에 의한 실행」이라고 부른다. 한편, 사용자 단말(1)에서 제작한 프로그램의 실행 결과에 기초하여 기능 하드웨어(68) 등을 동작시키는 종류를, 「실기에 의한 실행」이라고 부른다.
또한, 「실기에 의한 실행」에는, 사용자 단말(1)에서 제작한 프로그램에 기초하는 제어를 사용자 단말(1)로 행하는 실행 방법과, 1 이상의 베이직 코어(2)로 행하는 실행 방법이 존재한다.
전력 공급부(69)는, 모듈간 전력 전달부(72)를 통해 취득한 전력, 또는 외부의 전원(예컨대 도 5의 배터리 유닛(PP))으로부터 공급된 전력을 기능 모듈(3)에 공급한다.
다음으로, 도 5를 이용하여, 베이직 코어(2-E)(E는, 1 내지 m 중 임의의 정수값) 및 기능 모듈(3-E)의 접속 형태의 상세에 관해 설명한다.
도 5는, 본 발명의 일실시형태에 관한 베이직 코어(2-E) 및 기능 모듈(3-E)이 접속된 상태의 구성의 일례를 도시하는 도면이다.
도 5에는, 베이직 코어(2-E), 기능 모듈(3-E) 및 배터리 유닛(PP)이 예시되어 있다.
베이직 코어(2-E)에는, 배터리 유닛(BU)(예컨대, 도 3의 전원부(48)), 시리얼 포트(S) 및 근거리 무선 통신부(BT)(예컨대, 도 3의 제2 근거리 무선 통신부(46))가 구비되어 있다.
배터리 유닛(BU)은, 예컨대 전지 등의 배터리이며, 베이직 코어(2-E)나 기능 모듈(3-E)에 전력을 공급한다.
시리얼 포트(S)는, 베이직 코어(2-E)와 다른 하드웨어 등을 접속하기 위한 접속구(접속 커넥터)이다.
도 5의 예에서는, 베이직 코어(2-E)에는 시리얼 포트(SP)가 구비되고, 기능 모듈(3-E)에는 시리얼 포트(PS)가 구비되어 있다. 그리고, 베이직 코어(2-E)와 기능 모듈(3-E)은, 이 2개의 시리얼 포트(SP, PS)를 통해 접속되어 있다.
근거리 무선 통신부(BT)는, 다른 하드웨어 등과 소정의 규격(예컨대 Bluetooth(등록상표))에 따른 방식으로 근거리 무선 통신을 행하기 위한 IC 카드 등이 탑재되어 있다.
도 5의 예에서는, (도 5에서는 도시하지 않음)사용자 단말(1)과, 근거리 무선 통신부(BT)를 구비한 베이직 코어(2-E)는, Bluetooth(등록상표)에 따른 방식으로 근거리 무선 통신을 행한다.
구체적으로 예컨대, 사용자 단말(1)에서 제작된 프로그램의 실행 결과(커맨드 등)는 베이직 코어(2-E)에도 송신된다. 더 말하자면, 베이직 코어(2-E)에서는, 사용자 단말(1)로부터 송신되어 온 상기 프로그램의 실행 결과(커맨드 등)를 취득하고, 또한 그 결과를 기능 모듈(3-E)에 송신한다.
또한, 혹은, 구체적으로 예컨대, 사용자 단말(1)에서 제작된 프로그램은, 베이직 코어(2-E)에 송신되고, 베이직 코어(2-E)에서 실행된다. 더 말하자면, 베이직 코어(2-E)에서는, 사용자 단말(1)로부터 송신되어 온 상기 프로그램을 취득하고, 실행한 결과(커맨드 등)를 또한 기능 모듈(3-E)에 송신한다.
또한, 기능 모듈(3-E)은 타이어(T)(예컨대, 도 4의 기능 하드웨어(68))를 구비하고 있다. 그리고, 전술한 바와 같이, 기능 모듈(3-E)은, 베이직 코어(2-E)로부터 송신되어 온 전술한 프로그램의 실행 결과(커맨드 등)를 취득한다. 도 5의 예의 기능 모듈(3-E)은, 사용자 단말(1)에서 제작된 프로그램의 실행 결과(커맨드 등)에 따라서 타이어(T)를 구동시킨다.
여기서, 도 5의 예에서는, 기능 모듈(3-E)에는 배터리 유닛(PP)이 접속되어 있다. 이 배터리 유닛(PP)은, 외부 전원으로서 기능 모듈(3-E)에 전력을 공급한다. 또, 전술한 바와 같이, 베이직 코어(2)의 전원부(48)(도 3) 등으로부터 기능 모듈(3-E)에 전력의 공급이 가능하다면, 배터리 유닛(PP)은 필수적인 구성 요소가 아니다.
이러한 사용자 단말(1), 베이직 코어(2) 및 기능 모듈(3)의 각종 하드웨어와 각종 소프트웨어의 협동에 의해 프로그램 제작 처리의 실행이 가능해진다.
여기서, 프로그램 제작 처리란, 베이직 코어(2)에 접속된 기능 모듈(3)을 1 이상 기능시키기 위한 프로그램을 작성하기 위한 처리를 말한다.
이 프로그램 제작 처리를 실현하기 위해, 사용자 단말(1), 베이직 코어(2) 및 기능 모듈(3)은, 도 6에 도시하는 바와 같은 기능적 구성을 갖고 있다.
도 6은, 도 1의 사용자 단말(1), 베이직 코어(2) 및 기능 모듈(3)의 기능적 구성의 일례를 도시하는 기능 블록도이다.
도 6에 도시하는 바와 같이, 사용자 단말(1)의 CPU(21)에서는, 페어링부(101)와, 프로그램 제작부(102)와, 제어 송부선 결정부(103)와, 제어 송부부(104)와, 표시 제어부(105)와, 통신 제어부(106)가 기능한다.
또한, 사용자 단말(1)의 기억부(29)의 하나의 영역에는, 프로그램 제작부(102)에서 제작된 프로그램을 저장하는 프로그램 저장부(500)와, 각종 S 파트가 저장되어 있는 S 파트 DB(Software Parts Data Base)(600)가 설치되어 있다.
그리고, 베이직 코어(2-1)의 CPU(41-1)에서는, 단말 통신 제어부(201-1)와, 프로그램 실행부(202-1)와, 기능 모듈 통신 제어부(203-1)가 기능한다.
여기서, 베이직 코어(2-1)의 기억부(49-1)의 하나의 영역에는, 단말 통신 제어부(201-1)를 통해 수신한 프로그램을 저장하는 프로그램 저장부(500-1)가 설치되어 있다.
또한, 베이직 코어(2-2)의 CPU(41-2)에서는, 단말 통신 제어부(201-2)와, 프로그램 실행부(202-2)와, 기능 모듈 통신 제어부(203-2)가 기능한다.
또한, 여기서, 베이직 코어(2-2)의 기억부(49-2)의 하나의 영역에는, 단말 통신 제어부(201-2)를 통해 수신한 프로그램을 저장하는 프로그램 저장부(500-2)가 설치되어 있다.
또, 이하, 베이직 코어(2-1 내지 2-2)의 각 구성의 각각을 개개로 구별할 필요가 없는 경우, 이들을 통합하여 「CPU(41)」, 「기억부(49)」, 「단말 통신 제어부(201)」, 「프로그램 실행부(202)」, 「기능 모듈 통신 제어부(203)」 및 「프로그램 저장부(500)」라고 부른다.
사용자 단말(1)의 페어링부(101)는, 제1 근거리 무선 통신부(30)를 통해, 사용자 단말(1)과 베이직 코어(2)의 페어링을 행한다. 또, 이 페어링은, 본 실시형태에서는 NFC(등록상표)에 준거한 근거리 무선 통신으로 행해지지만, 이것은 예시에 불과하며, 임의의 방식의 통신으로 행해져도 좋다.
또한, 페어링부(101)는, 사용자 단말(1)과 페어링한 베이직 코어(2) 및 그것에 접속된 기능 모듈(3)의 종별이나 접속 상황을 확인한다.
또, 페어링부(101)에 확인된 기능 모듈(3)의 종별이나 접속 상황은, 표시 제어부(105)를 통해 프로그램 제작 화면에 표시된다.
프로그램 제작부(102)는, 사용자의 터치 조작을 접수하여, 실제로 프로그램의 제작을 행한다.
또한, 프로그램 제작부(102)는, 페어링부(101)에 의해 페어링이 행해진 베이직 코어(2)에 접속되어 있는 기능 모듈(3)의 종별에 대응하는 H 파트를, 표시 제어부(105)를 통해 프로그램 제작 화면에 표시한다.
또한, 프로그램 제작부(102)는, 적절하게 S 파트 DB(600)로부터 S 파트를 추출하여, 표시 제어부(105)를 통해 프로그램 제작 화면에 표시한다.
또한, 프로그램 제작부(102)는, 사용자의 터치 조작에 따라서, 각종 H 파트 및 각종 S 파트를 결합한다.
최종적으로 제작되는 프로그램에서는, 이와 같이 결합된 각종 H 파트 및 S 파트에 지정된 프로그램의 내용이 연속적으로 실행되어도 좋다.
그리고, 프로그램 제작부(102)는, 사용자에게 제작된 프로그램의 내용을 확정하고, 그 제작된 프로그램을 프로그램 저장부(500)에 저장한다.
제어 송부선 결정부(103)는, 소정의 룰에 기초하여, 프로그램 저장부(500)에 저장된 프로그램의 적어도 일부를 송부하는 제1 하드웨어 디바이스를 결정한다.
즉, 제어 송부선 결정부(103)는, 프로그램 저장부(500)에 저장된 프로그램 중에서 사용자가 실행을 원하는 프로그램을 추출하고, 여기에 소정의 룰을 적용하여, 제어의 송부선으로 하는 베이직 코어(2)와, 여기에 송부할 프로그램의 일부를 결정한다.
여기서, 베이직 코어(2)를 1개 사용하여 실기를 구성한 경우는, 상기 베이직 코어(2)를 제어 송부선으로서 결정하는 것에 의해, 자립 제어가 가능해져, 사용자 단말(1)과도, 다른 기기와도, 근거리 무선 통신을 이용한 신호 전달이 불필요해지기 때문에, 예컨대, 완구로서 바람직한 응답 속도로 동작시킬 수 있다.
그러나, 여기서, 베이직 코어(2)를 2개 이상 사용하여 실기를 구성한 경우는, 어느 것을 제어 송부선으로 해야 하는지가 문제가 된다.
즉, 사용자 단말(1)의 중앙 집권 제어가 아니기 때문에, 각각의 베이직 코어(2)가 자신과 관련된 로직(프로그램의 일부)에 관해 파악하여, 각각이 자립해서 제어할 필요가 있다.
구체적으로는, 로직의 시점부터 종점까지의 데이터의 경로를 어떻게 할지, 또는 하드웨어를 개재하지 않은 S 파트의 로직(예컨대 NOT(신호의 반전) 연산)은, 베이직 코어(2)가 2개 이상인 경우에 어느 베이직 코어(2)가 제어할지, 이들을 최적화하는 알고리즘이 요구된다.
이것에 관한 하나의 방책으로는, 가장 종점의 베이직 코어(2)가 자기(自機)에 관한 모든 시점의 정보를 취득하여, 종점으로부터 시점의 사이에 있는 로직을, 전부 상기 베이직 코어(2)에 처리시켜도 좋다. 이와 같이 함으로써, 데이터의 전달 경로로서는 최단이 된다.
또, 예컨대, 후술하는 도 11c의 경우, 완전히 동일한 논리합 연산 처리를 베이직 코어(2-3)에서도 베이직 코어(2-4)에서도 행하게 된다. 이와 같이, 실기 전체로서의 처리 효율에 관해서는 트레이드오프가 되는 경우가 있다.
또한, 각 베이직 코어(2)는, 자립 제어뿐만 아니라, 베이직 코어(2)끼리 동기를 취하는 등의 협조를 행하는 것이 바람직하다.
이와 같이 함으로써, 여러가지 문제점을 회피하는 것이 가능해진다.
여기서, 제어 송부선 결정부(103)에는, 소정의 룰에 기초하여 상기 제어 프로그램의 적어도 일부를 송부하는 제1 하드웨어 디바이스를 결정하기 위해, 종점 부품 추출부(121)와, 선행 부품 특정부(122)와, 송신선 변경부(123)가 설치되어 있다.
제어 송부선 결정부(103)가 제어의 송부선으로 하는 베이직 코어(2)는, 1이어도 좋고, 2 이상이어도 좋다.
이와 같이 함으로써, 베이직 코어(2)를 몇개 사용하여 실기를 구성하더라도, 제어 프로그램을 적정하게 분할하여 처리시키는 것이 가능해진다.
종점 부품 추출부(121)는, 상기 제어 프로그램을 해석하여, 다른 상기 프로그래밍 부품에 신호를 보내지 않는 상기 프로그래밍 부품을 종점 부품으로서 추출한다.
이와 같이 함으로써, 종점 부품의 각각으로부터 신호의 전달 경로를 거슬러 올라가, 다른 프로그래밍 부품과의 관계를 조사하는 것이 가능해진다.
선행 부품 특정부(122)는, 추출된 상기 종점 부품의 각각으로부터 거스러 올라가 그 시점까지의 모든 상기 프로그래밍 부품을, 상기 종점 부품에 관한 선행 부품으로서 특정한다.
이와 같이 함으로써, 직접 또는 간접적으로, 처리 대상의 종점 부품에 신호를 전달하는 상기 프로그래밍 부품을 특정하는 것이 가능해진다.
또한, 이와 같이 함으로써, 신호의 전달 경로의 중계 부분을 특정하는 것이 가능해진다.
송신선 변경부(123)는, 상기 종점 부품의 각각에 관한 상기 선행 부품의 상기 제어 프로그램에서의 신호의 이송선을 상기 종점 부품으로 변경한다.
이와 같이 함으로써, 신호의 전달 경로를 최대 1단계까지만으로 감소시킬 수 있기 때문에, 신호 전달에 요하는 시간을 단축시킬 수 있다.
이에 따라, 프로그램의 필요한 일부를 실행시키는 베이직 코어(2)를 종점 부품의 것으로 하기 위해, 그 제어 송부선을 제어 송부선 결정부(103)로서 결정하는 것에 의해, 실행 결과에 관해서는 유지할 수 있기 때문에, 본 발명에 관한 예컨대 완구를, 양호한 응답 속도로 정확하게 동작시킬 수 있다.
또, 「이송선을 변경」하는 것은, 하나의 기존의 이송선을 하나의 새로운 이송선으로 교체하는 것 뿐만 아니라, 기존의 이송선을 남기고 새로운 이송선을 추가해도 좋고, 또는 후술하는 도 11c에 도시하는 바와 같이, 2 이상의 새로운 이송선으로 교체해도 좋다.
제어 송부부(104)는, 제어 프로그램의 적어도 일부를 1 이상의 제1 하드웨어 디바이스 중의 적어도 하나에 송부한다.
즉, 제어 송부부(104)는, 제어 송부선 결정부(103)가 소정의 룰에 기초하여 송부선으로서 결정한 베이직 코어(2)에, 제어 프로그램의 적어도 일부를 송부한다.
즉, 제어 송부부(104)는, 사용자가 실행을 원하는 프로그램 저장부(500)에 저장된 프로그램을 적절하게 개변하는 것에 의해, 제어 프로그램의 적어도 일부를 생성하여 송부한다.
또, 사용자 단말(1)은, 사용자에게 제작된 프로그램에 의해 베이직 코어(2) 및 기능 모듈(3)을 동작시키는 것을 목적으로 하지 않고, 추출된 프로그램을 가상적으로 실행할 수 있으면 된다.
즉, 사용자 단말(1)은, 실제로 제작된 프로그램을 정상적으로 실행할 수 있는지 등을 체크하기 위한 시뮬레이션을 행할 수 있으면 된다. 또, 프로그램의 실행 결과는, 후술하는 바와 같이, 표시 제어부(105)를 통해 표시부(27)에 표시된다.
또한, 사용자 단말(1)은, 사용자에게 제작된 프로그램에 의해 베이직 코어(2) 및 기능 모듈(3)을 동작시키는 것을 목적으로 하여, 추출된 프로그램을 실행할 수 있으면 된다.
즉, 사용자 단말(1)은, 제작된 프로그램의 실행 결과(커맨드 등)를 베이직 코어(2) 및 기능 모듈(3)에 송신하여, 기능 모듈(3)에 기능을 발휘시킬 수 있으면 된다.
또, 프로그램의 실행 결과는, 표시 제어부(105)를 통해 표시부(27)에 표시되는 것뿐만 아니라, 후술하는 바와 같이, 통신 제어부(106)에 의해 베이직 코어(2)에 송신되어도 좋다.
표시 제어부(105)는, 전술한 각종 정보 등을 표시부(27)에 표시하기 위한 제어를 실행한다.
통신 제어부(106)는, 제어 송부부(104)에 의한 제어 프로그램의 적어도 일부의 송부를, 제2 근거리 무선 통신부(31)를 통해 1 이상의 베이직 코어(2)에 송신하는 것에 의해 실현하기 위한 제어 등을 행한다.
또한, 통신 제어부(106)는, 사용자 단말(1)에서 실행된 프로그램의 실행 결과를 제2 근거리 무선 통신부(31)를 통해 베이직 코어(2)에 송신하기 위한 제어 등을 행해도 좋다.
또, 전술한 바와 같이, 본 실시형태에서는, 제2 근거리 무선 통신부(31)는 Bluetooth(등록상표)의 규격에 따른 방식으로 근거리 무선 통신을 행한다.
베이직 코어(2)는, 제1 근거리 무선 통신부(45)를 통해 사용자 단말(1)과 페어링을 행한다.
여기서, 제1 근거리 무선 통신부(45)는, 베이직 코어(2)에서 시스템과 독립되어 있다. 따라서, 제1 근거리 무선 통신부(45)에는, 제2 근거리 무선 통신부(46)의 접속 정보(예컨대 MAC 어드레스)가 미리 기록되어 있고, 베이직 코어(2)는, 그 MAC 어드레스를 판독하여, Bluetooth(등록상표)에 의한 사용자 단말(1)과의 페어링을 실현하고 있지만, 이것은 예시에 불과하며, 접속 정보의 판독은 임의의 방식으로 행해질 수 있다.
즉, 페어링에서의 접속 정보의 판독에는, 예컨대, 카메라와 QR 코드(등록상표)의 조합, 홀센서와 자석의 조합, 가속도 센서와 진동 모터의 조합 등을 채용할 수 있다.
단말 통신 제어부(201)는, 예컨대, 사용자 단말(1)로부터 송신되어 온 프로그램의 일부 또는 프로그램의 실행 결과를 제2 근거리 무선 통신부(46)를 통해 취득하기 위한 제어 등을 실행한다.
이 경우는, 예컨대 BLE에 의한 근거리 무선 통신을 채용하는 경우는, 각 베이직 코어(2)가 BLE 서버가 되고, 사용자 단말(1)이 BLE 클라이언트가 되어, 근거리 무선 통신을 행해도 좋다.
또한, 단말 통신 제어부(201)는, 다른 베이직 코어(2)와, 기능 모듈(3)로부터의 신호 또는 프로그램의 실행 결과의 통신을 하기 위한 제어 등을 실행한다.
이 경우는, 예컨대 BLE 기기(베이직 코어(2)) 하나로, BLE 서버와 BLE 클라이언트를 모두 담당하게 하는 것으로 해도 좋다.
즉, 2개의 베이직 코어(2) 사이에서, BLE 서버와 BLE 클라이언트의 관계가 통신 방향에 의해 교체되는 것으로 해도 좋다.
이 경우, 베이직 코어(2)가 2개인 경우는, 페어링은 2개 행하게 되고, 베이직 코어(2)가 3개인 경우는, 페어링은 6개 행하게 된다.
그 외에는, BLE에서 애드버타이징 패킷으로 송신하는 것에 의해, 데이터를 브로드캐스트하는 것으로 해도 좋다.
즉, 브로드캐스트 정보 중에 수신처 정보를 넣어 송신하고, 수신자인 베이직 코어(2)는 자신이 수신처인 경우만 취득하고, 그 이외의 정보는 파기하는 것으로 해도 좋다.
이 경우에, BLE 브로드캐스트는, 송신 간격을 수 ms 이하까지 변경할 수 있고, 또한 동적으로 송신 간격을 변경할 수 있는 것이 바람직하다.
여기서, 프로그램의 실행시에 있어서, 상기 프로그램에서 기능을 발휘시키는 기능 모듈(3)은, 소정의 베이직 코어(2)와 접속되어 있는 것이 필요한다.
즉, 적어도 프로그램의 실행시에 있어서, 베이직 코어(2)와 기능 모듈(3)은, 접속부(47)와 접속부(67)에 의해 접속되어 있다.
여기서, 적어도 프로그램의 실행시로 한 것은, 베이직 코어(2)와 기능 모듈(3)의 접속은, 베이직 코어(2)와 사용자 단말(1)의 페어링과는 독립적으로 행할 수 있기 때문이다. 즉, 페어링전에 베이직 코어(2)와 기능 모듈(3)이 접속되어 있어도 좋지만, 페어링후에 베이직 코어(2)와 기능 모듈(3)이 접속되어 있어도 좋다. 후자의 경우, 기능 모듈(3)로부터 자신의 유니크 ID가 사용자 단말(1)에 송신됨으로써, 사용자 단말(1)은 그 기능 모듈(3)이 무엇인지(어떠한 기능을 발휘시키는 것인지)를 인식할 수 있다.
또한, 페어링후에 기능 모듈(3)을 베이직 코어(2)로부터 제거할 수도 있다. 그 때에는, 베이직 코어(2)는, 기능 모듈(3)이 제거된 것을 사용자 단말(1)에 통지한다. 사용자 단말(1)은, UI(후술하는 도 8a 내지 도 8c의 사용자 표시 화면 등)에 제거되었다는 취지를 표시시킨다. 보다 정확하게는 본 실시형태에서는, 사용자 단말(1)은, 소정의 기능 모듈(3)이 베이직 코어(2)로부터 제거된 경우는, 상기 소정의 기능 모듈(3)에 대응하는 H 파트를 나타내는 아이콘이 UI에서 비표시 상태가 된다.
이와 같이 하여, 페어링후의 기능 모듈(3)의 핫스왑이 실현되었다. 즉, 사용자에게는, 일단 페어링해 버리면, 그 후에는 베이직 코어(2)에 대한 기능 모듈(3)을 넣거나 빼기만 하면 된다. 이 넣고 빼는 상태는, 사용자 단말(1) 상의 UI에서도 추종된다.
어쨌든, 베이직 코어(2)와 기능 모듈(3)이 접속되어 있는 경우, 베이직 코어(2)의 기능 모듈 통신 제어부(203)는, 접속부(47)를 통해 접속된 기능 모듈(3)과의 통신의 제어를 실행한다.
예컨대, 기능 모듈 통신 제어부(203)는, 후술하는 프로그램 실행부(202)에서 출력된 동작 지시 등을 기능 모듈(3)에 송신한다.
프로그램 실행부(202)는, 베이직 코어(2)에서 실행되는 각종 처리의 주요한 제어를 실행한다.
예컨대, 프로그램 실행부(202)는, 단말 통신 제어부(201)에서 취득한 프로그램의 일부를 실행하고, 그 실행 결과에 기초하여, 기능 모듈(3)의 기능을 발휘시키기 위한 동작 지시 등을 출력한다.
또, 베이직 코어(2)의 CPU(41)는, 단말 통신 제어부(201)에서의 BLE 인터페이스와의 데이터의 교환, 기능 모듈 통신 제어부(203)에서의 기능 모듈(3)과의 데이터의 교환, 및 프로그램 실행부(202)에서의 로직의 처리의 3개를 병행하여 μ초오더로 행하는 연산 처리 능력을 갖추고 있는 것이 바람직하다.
기능 모듈(3)은, 기능 모듈(3)에서 실행되는 각종 처리의 주요한 제어를 실행한다.
예컨대, 베이직 코어(2)로부터 송신되어 온 동작 지시를, 접속부(67)를 통해 취득한다.
기능 모듈(3)은, 취득한 동작 지시를 기능 하드웨어(68)에 실행시키기 위한 제어를 실행한다.
즉, 기능 모듈(3)은, 취득한 동작 지시를 기능 하드웨어(68)에 실행시킴으로써 기능 모듈(3)의 기능을 발휘시킨다.
또, 전력 공급부(69)는, 모듈간 전력 전달부(72)를 통해 취득한 전력을 기능 모듈(3)에 공급하지만, 전술한 바와 같이, 외부의 전원(예컨대 도 5의 배터리 유닛(PP))으로부터 공급된 전력을 기능 모듈(3)에 공급할 수도 있다.
도 7은, 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리에 관한 상태의 천이를 도시하는 상태 천이도이다.
도 7에서, 각 상태는 하나의 타원형으로 나타나 있고, 각각의 상태는 SP를 포함하는 부호에 의해 판별된다.
하나의 상태로부터 하나의 상태로의 상태 천이는, 소정의 조건(이하, 「상태 천이 조건」이라고 함)이 만족되면 실행된다.
이러한 상태 천이 조건은, 도 7에서는, 하나의 상태로부터 하나의 상태로의 천이를 나타내는 화살표에, A를 포함하는 부호를 붙여 표시되어 있다.
본 실시형태에서는, 도 7에 도시하는 바와 같이, 프로그램 제작 상태 SP1이 기본 상태가 된다.
프로그램 제작 상태 SP1에서, 사용자는, 사용자 단말(1)과 베이직 코어(2)를 근접시킴으로써 페어링한다.
또, 여기서 말하는 근접된다는 것은, NFC(등록상표) 규격에 따른 방식으로 근거리 무선 통신을 행하기에 유효한 거리이며, 일반적으로 10 cm 정도의 거리까지 근접시키는 것을 말한다.
즉, 사용자가, 사용자 단말(1)과 베이직 코어(2)를 10 cm 정도의 거리까지 근접시킴으로써, 상태 천이 조건 A1이 만족된다.
그렇게 되면, 상태는 페어링 상태 SP2로 천이한다. 이것에 의해, 프로그램 제작부(102)는, H 파트를 표시 제어부(105)를 통해 프로그램 제작 화면에 표시한다.
그리고, 페어링후, 사용자가 일정 시간 조작을 행하지 않은 경우에는, 상태 천이 조건 A2가 만족된다.
그렇게 되면, 상태는 프로그램 제작 상태 SP1로 다시 천이한다.
페어링 상태 SP2에서, 사용자가 소정의 조작자(도시하지 않은 프로그램 실행 버튼 등)를 누르면, 상태 천이 조건 A3이 만족된다.
그렇게 되면, 상태는 프로그램 실행 상태 SP3으로 천이한다.
그리고, 조금전과 마찬가지로, 프로그램 실행 상태 SP3에서, 사용자가 사용자 단말(1)과 베이직 코어(2)를 근접시킴으로써, 상태 천이 조건 A4가 만족된다.
그렇게 되면, 상태는 페어링 상태 SP2로 다시 천이한다.
프로그램 제작 상태 SP1에서, 사용자가, 프로그램의 작성이 종료하여, 프로그램의 실행을 지시하는 소정의 조작자(도시하지 않은 프로그램 실행 버튼 등)를 누르면, 상태 천이 조건 A12가 만족된다.
그렇게 되면, 상태는 프로그램 실행 상태 SP3으로 천이한다.
또, 프로그램 실행 상태 SP3에서, 사용자가, 프로그램의 추가나 변경을 원하는 경우, 소정의 조작자(도시하지 않은 프로그램 제작 버튼 등)를 누르면, 상태 천이 조건 A13이 만족된다.
그렇게 되면, 상태는 프로그램 제작 상태 SP1로 천이한다.
여기서, 프로그램 실행 상태 SP3에는, 전술한 바와 같이 시뮬레이션 상태와 실기 상태 2개의 상태가 존재한다.
프로그램 실행 상태 SP3에서, 이들 2개의 상태는, 사용자가 소정의 조작자(도시하지 않은 시뮬레이션 버튼 등)를 누름으로써, 각각의 상태에서의 상태 천이 조건 A10 또는 A11을 만족시킨다.
이와 같이, 프로그램 실행 상태 SP3에서, 시뮬레이션 상태와 실기 상태는 적절하게 천이할 수 있다.
프로그램 실행 상태 SP3에서, 프로그램 실행후, 사용자가 소정의 조작자(도시하지 않은 프로그램 실행 캔슬 버튼 등)를 누르면, 상태 천이 조건 A5가 만족된다.
그렇게 되면, 상태는 휴지 상태 SP4로 천이한다.
그리고, 휴지 상태 SP4에서, 사용자가 소정의 조작자(도시하지 않은 프로그램 실행 버튼 등)를 누르면, 상태 천이 조건 A6이 만족된다.
그렇게 되면, 상태는 프로그램 실행 상태 SP3으로 천이한다.
휴지 상태 SP4에서, 사용자가 소정의 조작자(도시하지 않은 프로그램 제작 애플리케이션의 기동 버튼 등)를 누르면, 상태 천이 조건 A7이 만족된다.
그렇게 되면, 상태는 프로그램 제작 상태 SP1로 천이한다.
그리고, 프로그램 제작 상태 SP1에서, 사용자가 소정의 조작자(도시하지 않은 프로그램 제작 캔슬 버튼 등)를 누르면, 천이 조건 A8이 만족된다.
그렇게 되면, 상태는 휴지 상태 SP4로 천이한다.
또, 도 7에 도시하는 바와 같이, 페어링 상태 SP2와 휴지 상태 SP4에 관해서는, 직접 천이하는 것도 가능하다.
다음으로, 도 8a 내지 도 8c를 이용하여, 사용자 단말(1)의 표시부(27)에 표시되는 프로그램 제작 화면의 상세에 관해 설명한다.
도 8a 내지 도 8c는, 도 2의 사용자 단말(1)이 실행하는 프로그램 제작 처리에 관해, 사용자에게 실제로 표시되는 화면의 일례를 도시하는 도면이다.
도 8a 내지 도 8c에서, 좌측 절반에는 사용자에게 표시되어 있는 프로그램 제작 화면(이하, 「사용자 표시 화면」이라고 함)이, 우측 절반에는 실제로 제작된 프로그램에 따라서 동작하는 각종 하드웨어의 모식도(이하, 「하드웨어 모식도」라고 함)가 도시되어 있다.
우선, 도 8a는, 사용자 단말(1)에, 어느 베이직 코어(2)도 페어링되지 않은 상황을 도시하고 있다.
즉, 도 8a의 하드웨어 모식도를 보면, 사용자 단말(1)에는, 베이직 코어(2-O) 및 기능 모듈(3-O)(O는, 1 내지 m 중 임의의 정수값)과, 베이직 코어(2-P) 및 기능 모듈(3-P)(P는, 1 내지 m 중 O 이외의 임의의 정수값) 모두 페어링되어 있지 않다.
또, 기능 모듈(3-O)은 푸시 버튼의 기능을 발휘할 수 있다. 또한, 기능 모듈(3-P)은 버저의 기능을 발휘할 수 있다.
그리고, 도 8a의 사용자 표시 화면을 보면, 프로그램 제작시 표시 영역 DA와 H 파트 표시 영역 DHA에는 아이콘은 표시되어 있지 않다. 또, S 파트 표시 영역 DSA에는, 타이머의 아이콘이 표시되어 있다.
도 8b는, 사용자 단말(1)과, 기능 모듈(3-O)이 접속된 베이직 코어(2-O)가 페어링되고, 또한, 사용자 단말(1)과, 기능 모듈(3-P)이 접속된 베이직 코어(2-P)가 페어링된 상황을 도시하고 있다.
그리고, 도 8b의 사용자 표시 화면을 보면, 페어링된 기능 모듈(3-O)에 대응하는 푸시 버튼의 아이콘 및 기능 모듈(3-P)에 대응하는 버저의 아이콘이 H 파트 표시 영역 DHB에 각각 표시되어 있다.
도 8c는, 사용자에 의해 제작된 프로그램이 실행된 상황을 도시하고 있다.
도 8c의 사용자 표시 화면을 보면, 프로그램 제작시 표시 영역 DC에는, 우측으로부터 순서대로 푸시 버튼의 아이콘, 타이머(2s), 버저의 아이콘이 순서대로 표시되고, 각각의 아이콘에 의해 각각 결합되어 있다.
사용자는, 이와 같이, 사용자 표시 화면에 표시된 아이콘을 시인하면서, 각종 H 파트 및 각종 S 파트를 자유롭게 조합하여 결합시킴으로써, 각각의 아이콘이 지정하는 내용을 조합하여 하나의 프로그램을 제작하고, 그 프로그램을 실행시킬 수 있다.
도 8c의 하드웨어 모식도를 보면, 도 8c의 사용자 표시 화면에 표시된 프로그램이 실행된 결과로서, 푸시 버튼(기능 모듈(3-O))이 푸시되면, 그 2초후에 버저(기능 모듈(3-P))가 울리는 동작이 실현되는 것을 알 수 있다.
도 9a 내지 도 11c를 이용하여, 사용자 단말(1)이 프로그램 제작 화면에서 표시하는 프로그램에 기초하는 제어의 상세에 관해 설명한다.
도 9a 내지 도 9c는, 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어와 대응 관계의 예를 도시하는 도면이다.
도 9a는, 프로그램 제작 화면에 표시되는 프로그램의 모식도이다.
프로그램 제작 화면에는, H 파트로서, 좌측에는 예컨대 버튼인 H 파트 HA 및 H 파트 HB의 아이콘이 표시되고, 우측에는 예컨대 LED 라이트인 H 파트 HC의 아이콘이 표시되어 있다. 이들의 사이에는, S 파트로서, 논리 회로 S1의 아이콘이 표시되어 있다. 논리 회로 S1의 아이콘은, 입력측에는 H 파트 HA 및 H 파트 HB의 아이콘이 접속되고, 출력측에는 H 파트 HC의 아이콘이 접속되어 있다.
도 9b는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제1 양태의 모식도이다.
여기서, 베이직 코어(2-1)는, 프로그램 제작 화면에서의 H 파트 HA로서 페어링된 예컨대 푸시 버튼 A인 기능 모듈(3)과 접속되어 있는 것으로 한다. 마찬가지로, 베이직 코어(2-2)는, H 파트 HB로서 페어링된 예컨대 푸시 버튼 B인 기능 모듈(3)과, 베이직 코어(2-3)는, H 파트 HC로서 페어링된 예컨대 LED 라이트 C인 기능 모듈(3)과, 각각 접속되어 있는 것으로 한다.
또한, 여기서, 각 베이직 코어(2) 사이의 파선 화살표는, 저소비 전력 근접 무선 통신(예컨대 BLE(Blutooth Low Energy))에 의한 신호의 전달 방향을 나타내고 있다.
본 제어의 양태는, 베이직 코어(2-2)로부터 베이직 코어(2-1)에 신호가 전달되고, 베이직 코어(2-1)에서, H 파트 HA 및 H 파트 HB로부터의 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 입력하고, 그 결과의 신호를 베이직 코어(2-3)에 전달한다.
이러한 예에서는, 프로그램에 기초하여, 푸시 버튼 A와 푸시 버튼 B가 함께 푸시되고 있는 동안에, LED 라이트 C가 발광하게 된다.
이 경우에, 베이직 코어(2-1)는, 논리 회로 S1의 결과의 신호를, 그대로 베이직 코어(2-3)에 전달하여, 베이직 코어(2-3)에 LED 라이트 C를 발광시키는 제어를 해도 좋다.
혹은, 베이직 코어(2-1)는, LED 라이트 C도 제어해도 좋다. 즉, 논리 회로 S1의 결과에 기초하여 LED 라이트 C를 발광시키는 신호를 베이직 코어(2-1)에서 생성하고, 이것을 베이직 코어(2-3)에 전달하여 LED 라이트 C를 발광시켜도 좋다.
도 9c는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제2 양태의 모식도이다.
여기서, 각 베이직 코어(2)와, 각 H 파트로서 페어링된 기능 모듈(3)의 접속 관계는, 도 9b에서의 경우와 동일하다.
본 제어의 양태는, 베이직 코어(2-1) 및 베이직 코어(2-2)로부터 베이직 코어(2-3)에 신호가 전달되고, 베이직 코어(2-3)에서, 푸시 버튼 A 및 푸시 버튼 B로부터 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 입력한다.
이러한 예에서도, 도 9b에서의 경우와 마찬가지로, 프로그램에 기초하여, 푸시 버튼 A와 푸시 버튼 B가 함께 푸시되고 있는 동안에, LED 라이트 C가 발광하게 된다.
본 제어의 양태에서는, 도 9b에 도시하는 제1 양태의 경우에 비교하여, 푸시 버튼 B의 신호의 베이직 코어(2-3)로의 전달 경로가 1단계 짧아진다.
이것에 의해, 신호 전달에 요하는 시간이 감소하기 때문에, 본 제어의 양태에서는, 완구로서 양호한 속도로 동작하게 된다.
도 10a 내지 도 10c는, 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며 도 9a 내지 도 9c와는 다른 예를 도시하는 도면이다.
도 10a는, 프로그램 제작 화면에 표시되는 프로그램의 모식도이다.
프로그램 제작 화면에는, H 파트로서, 좌측에는 예컨대 버튼인 H 파트 HA 및 H 파트 HB의 아이콘이 표시되고, 우측에는 예컨대 LED 라이트인 H 파트 HD의 아이콘이 표시되어 있다. 이들의 사이에는, 예컨대 버튼인 H 파트 HA와, S 파트로서, 논리 회로 S1 및 논리 회로 S2의 아이콘이 표시되어 있다. 논리 회로 S1의 아이콘은, 입력측에는 H 파트 HA 및 H 파트 HB의 아이콘이 접속되고, 출력측에는 논리 회로 S2의 아이콘이 접속되어 있다. 논리 회로 S2의 아이콘은, 입력측에는 논리 회로 S1의 아이콘 및 H 파트 HC의 아이콘이 접속되고, 출력측에는 H 파트 HD의 아이콘이 접속되어 있다.
도 10b는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제1 양태의 모식도이다.
여기서, 베이직 코어(2-1)는, 프로그램 제작 화면에서의 H 파트 HA로서 페어링된 예컨대 푸시 버튼 A인 기능 모듈(3)과 접속되어 있는 것으로 한다. 마찬가지로, 베이직 코어(2-2)는, H 파트 HB로서 페어링된 예컨대 푸시 버튼 B인 기능 모듈(3)과, 베이직 코어(2-3)는, H 파트 HC로서 페어링된 예컨대 푸시 버튼 C인 기능 모듈(3)과, 베이직 코어(2-4)는, H 파트 HD로서 페어링된 예컨대 LED 라이트 D인 기능 모듈(3)과, 각각 접속되어 있는 것으로 한다.
본 제어의 양태는, 베이직 코어(2-1) 및 베이직 코어(2-2)로부터 베이직 코어(2-3)에 신호가 전달되고, 베이직 코어(2-3)에서 H 파트 HA 및 H 파트 HB로부터의 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 입력하고, 그 결과의 신호 및 H 파트 HC로부터의 신호를 베이직 코어(2-4)에 전달하고, 이들을 예컨대 AND 게이트 회로인 논리 회로 S2에 입력한다.
이러한 예에서는, 프로그램에 기초하여, 푸시 버튼 A와 푸시 버튼 B와 푸시 버튼 C가 함께 푸시되고 있는 동안에, LED 라이트 D가 발광하게 된다.
도 10c는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제2 양태의 모식도이다.
본 제어의 양태는, 신호의 송신선을, 2 이상의 새로운 이송선으로 교체하는 경우의 예이다.
여기서, 각 베이직 코어(2)와, 각 H 파트로서 페어링된 기능 모듈(3)의 접속 관계는, 도 10b에서의 경우와 동일하다.
본 제어의 양태는, 베이직 코어(2-1), 베이직 코어(2-2) 및 베이직 코어(2-3)로부터, 베이직 코어(2-4)에 신호가 전달되고, 베이직 코어(2-4)에서, H 파트 HA 및 H 파트 HB로부터의 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 입력하고, 그 결과의 신호 및 H 파트 HC로부터의 신호를, 예컨대 AND 게이트 회로인 논리 회로 S2에 다시 입력한다.
이러한 예에서도, 프로그램에 기초하여 푸시 버튼 A와 푸시 버튼 B와 푸시 버튼 C가 함께 푸시되고 있는 동안에, LED 라이트 D가 발광하게 된다.
본 제어의 양태에서는, 도 10b에 도시하는 제1 양태의 경우에 비교하여, 푸시 버튼 A 및 푸시 버튼 B의 신호의 베이직 코어(2-4)로의 전달 경로가 1단계짧아진다.
이것에 의해, 신호 전달에 요하는 시간이 감소하기 때문에, 본 제어의 양태에서는, 완구로서 양호한 속도로 동작하게 된다.
도 11a 내지 도 11c는, 본 발명의 일실시형태에 관한 정보 처리 시스템을 이용한 프로그램 제작 처리시에, 사용자에게 표시되는 화면과 실제 제어의 대응 관계의 일례이며, 도 9a 내지 도 9c 및 도 10a 내지 도 10c과는 다른 예를 도시하는 도면이다.
도 11a는, 프로그램 제작 화면에 표시되는 프로그램의 모식도이다.
프로그램 제작 화면에는, H 파트로서, 좌측에는 예컨대 버튼인 H 파트 HA 및 H 파트 HB의 아이콘이 표시되고, 우측에는 예컨대 LED 라이트인 H 파트 HC 및 H 파트 HD의 아이콘이 표시되어 있다. 이들의 사이에는, S 파트로서, 논리 회로 S1의 아이콘이 표시되어 있다. 논리 회로 S1의 아이콘은, 입력측에는 H 파트 HA 및 H 파트 HB의 아이콘이 접속되고, 출력측에는 H 파트 HC 및 H 파트 HD의 아이콘이 접속되어 있다.
도 11b는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제1 양태의 모식도이다.
여기서, 베이직 코어(2-1)는, 프로그램 제작 화면에서의 H 파트 HA로서 페어링된 예컨대 푸시 버튼 A인 기능 모듈(3)과 접속되어 있는 것으로 한다. 마찬가지로, 베이직 코어(2-2)는, H 파트 HB로서 페어링된 예컨대 푸시 버튼 B인 기능 모듈(3)과, 베이직 코어(2-3)는, H 파트 HC로서 페어링된 예컨대 LED 라이트 C인 기능 모듈(3)과, 베이직 코어(2-4)는, H 파트 HD로서 페어링된 예컨대 LED 라이트 D인 기능 모듈(3)과, 각각 접속되어 있는 것으로 한다.
본 제어의 양태는, 베이직 코어(2-1) 및 베이직 코어(2-2)로부터 베이직 코어(2-3)에 신호가 전달되고, 베이직 코어(2-3)에서, H 파트 HA 및 H 파트 HB로부터의 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 입력하고, 그 결과의 신호를 베이직 코어(2-4)에 전달한다.
이러한 예에서는, 프로그램에 기초하여, 푸시 버튼 A와 푸시 버튼 B가 함께 푸시되고 있는 동안에, LED 라이트 C와 LED 라이트 D가 발광하게 된다.
이 경우에, 베이직 코어(2-3)는, 논리 회로 S1의 결과의 신호를 그대로 베이직 코어(2-4)에 전달하여, 베이직 코어(2-4)에 LED 라이트 C를 발광시키는 제어를 해도 좋다.
혹은, 베이직 코어(2-3)는 LED 라이트 D도 제어해도 좋다. 즉, 논리 회로 S1의 결과에 기초하여 LED 라이트 D를 발광시키는 신호를 베이직 코어(2-3)에서 생성하고, 이것을 베이직 코어(2-4)에 전달하여 LED 라이트 D를 발광시켜도 좋다.
도 11c는, 프로그램 제작 화면에 표시되는 프로그램에 기초하여 실행되는 제어의 제2 양태의 모식도이다.
여기서, 각 베이직 코어(2)와, 각 H 파트로서 페어링된 기능 모듈(3)의 접속 관계는, 도 11b에서의 경우와 동일하다.
본 제어의 양태는, 베이직 코어(2-1) 및 베이직 코어(2-2)로부터 베이직 코어(2-3) 및 베이직 코어(2-4)에 각각 신호가 전달되고, 베이직 코어(2-3) 및 베이직 코어(2-4)에서, 푸시 버튼 A 및 푸시 버튼 B로부터의 신호를 예컨대 AND 게이트 회로인 논리 회로 S1에 각각 입력한다.
이러한 예에서도, 도 11b에서의 경우와 마찬가지로, 프로그램에 기초하여, 푸시 버튼 A와 푸시 버튼 B가 함께 푸시되고 있는 동안에, LED 라이트 C 및 LED 라이트 D가 발광하게 된다.
본 제어의 양태에서는, 도 11b에 도시하는 제1 양태의 경우에 비교하여, 베이직 코어(2-4)로의 신호의 전달 경로가 1단계 짧아진다.
이것에 의해, 신호 전달에 요하는 시간이 감소하기 때문에, 본 제어의 양태에서는, 완구로서 양호한 속도로 동작하게 된다.
이상 본 발명의 일실시형태에 관해 설명했지만, 본 발명은 전술한 실시형태에 한정되는 것이 아니며, 본 발명의 목적을 달성할 수 있는 범위에서의 변형, 개량 등은 본 발명에 포함되는 것이다.
예컨대, 도 8a 내지 도 8c에 도시하는 실시형태에서는, 기능 모듈(3-O) 및 기능 모듈(3-P)로서 푸시 버튼과 버저가 채용되고 있지만, 기능 모듈(3)이 발휘하는 기능은 전술한 실시형태에 특별히 한정되지는 않는다.
본 발명은, 전술한 여러가지 실시형태에 의해 실시하는 것이 가능하지만, 많은 실시형태에서, 특히 어린이의 교육용 조립식 완구에 사용하는 프로그램을 제작하는 데 매우 유용하다.
프로그램 제작 화면에 표시된 아이콘을 시각적으로 확인할 수 있기 때문에, 사용자가 어린이라 하더라도, 안전하고 용이하게 프로그램을 제작할 수 있다. 또한, 자신이 제작한 프로그램에 따라서, 실기에 의해 동작시킬 수 있기 때문에, 어린이는 싫증내지 않고 프로그램의 제작을 즐길 수 있다.
이와 같이, 어린이에게 즐기면서 프로그램을 제작하게 함으로써, 어린이는 일반적으로 접촉하기 어려운 프로그램에 친숙해질 수 있는 것이다.
또한, 베이직 코어(2)와 사용자 단말(1)을 페어링해 두면, 기능 모듈(3)은 자유롭게 착탈이 가능하고, 그 착탈의 상태도 프로그램 제작 화면에 반영된다. 따라서, 어린이는 하드웨어의 설계도 즐길 수 있다.
여기서, 본 실시형태에서의 입출력 정보에 관해 보충한다. 본 실시형태에서, 각종 H 파트나 각종 S 파트를 조합함으로써, 각종 아이콘에 지정된 프로그램의 내용이 연속적으로 실행된다.
이 각각의 프로그램의 입출력 정보는, 도 8에 도시한 바와 같은 단순한 트리거 정보뿐만 아니라, 아날로그 신호 등의 다양한 정보를 입출력 정보로서 취급할 수 있다.
즉, 예컨대, 본 실시형태에서의 입출력 정보는, 온도 센서에 의해 취득된 정보(예컨대, 온도가 15도)를, 그대로 아날로그 신호 등의 정보로서 출력하여, 프로그램의 제작에 이용할 수 있다. 그 때문에, 디지털 신호의 정보만으로는, 실현할 수 없는 복잡한 정보 처리라도 실현하는 것이 가능해진다.
또한 예컨대, 전술한 실시형태에서는, 사용자 단말(1)과 베이직 코어(2)의 페어링은, NFC(등록상표) 규격에 따른 방식에 의한 근거리 무선 통신에 의해 행하고 있지만, 이것에 한정되지 않는다. 페어링은, 근거리 무선 통신에 한정되지 않고, 어떠한 수단으로 페어링해도 좋다.
더 말하자면, 전술한 실시형태에서는, 사용자 단말(1)에서 제작한 프로그램의 실행 결과를 Bluetooth(등록상표) 등의 규격에 따른 방식으로 근거리 무선 통신을 이용하여 송신하고 있지만, 이것에 특별히 한정되는 것은 아니다. 제작한 프로그램은, 근거리 무선 통신에 한정되지 않고, 어떠한 수단을 이용하여 송신해도 좋다.
또한 예컨대, 전술한 본 실시형태에서는, 베이직 코어(2)의 수와 기능 모듈(3)의 수를 모두 m으로 하여 설명했지만, 이것에 특별히 한정되는 것은 아니다. 즉, 베이직 코어(2)의 수와 기능 모듈(3)의 수는, 동일해도 상관없고 상이해도 상관없다.
즉, 1대의 베이직 코어(2)에 대하여, s대(s는 1 이상의 임의의 정수값)의 기능 모듈(3)을 접속해도 좋다.
또한 예컨대, 전술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다.
환언하면, 도 6의 기능적 구성은 예시에 불과하며, 특별히 한정되지 않는다.
즉, 전술한 일련의 처리를 전체로서 실행할 수 있는 기능이 정보 처리 시스템에 갖춰져 있으면 충분하며, 이 기능을 실현하기 위해 어떠한 기능 블록을 이용하는지는 도 4의 예에 특별히 한정되지는 않는다. 또한, 기능 블록의 존재 장소도, 도 6에 특별히 한정되지 않고 임의이면 된다.
또한, 하나의 기능 블록은, 하드웨어 단일로 구성해도 좋고, 소프트웨어 단일로 구성해도 좋고, 이들의 조합으로 구성해도 좋다.
또한 예컨대, 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 컴퓨터 등에 네트워크나 기록 매체로부터 인스톨된다.
컴퓨터는, 전용 하드웨어에 편입되어 있는 컴퓨터이어도 좋다.
또한, 컴퓨터는, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한 컴퓨터, 예컨대 서버 외에, 범용의 스마트폰이나 퍼스널 컴퓨터이어도 좋다.
또한 예컨대, 이러한 프로그램을 포함하는 기록 매체는, 사용자에게 프로그램을 제공하기 위해 장치 본체와는 별도로 배포되는 도시하지 않은 리무버블 미디어에 의해 구성될 뿐만 아니라, 장치 본체에 미리 편입된 상태로 사용자에게 제공되는 기록 매체 등으로 구성된다.
또, 본 명세서에서, 기록 매체에 기록되는 프로그램을 설명하는 단계는, 그 순서에 따라 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않더라도, 병렬적 혹은 개별적으로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에서, 시스템의 용어는, 복수의 장치나 복수의 수단 등으로 구성되는 전체적인 장치를 의미하는 것으로 한다.
이상을 환언하면, 본 발명이 적용되는 정보 처리 시스템은, 다음과 같은 구성을 갖는 각종 각색의 실시형태를 취할 수 있다.
즉, 본 발명이 적용되는 정보 처리 시스템은,
사용자의 지시에 의해 제어 프로그램(예컨대 도 6의 프로그램 저장부(500)에 저장된 프로그램)의 제작을 지원하는 프로그램 제작 지원 장치(예컨대, 도 1의 사용자 단말(1))와,
다른 하드웨어 디바이스와 통신을 하는 기능과 상기 제어 프로그램에 기초하여 상기 다른 하드웨어 디바이스를 제어하는 기능을 갖는 1 이상의 제1 하드웨어 디바이스(예컨대, 도 1의 베이직 코어(2))와,
상기 제1 하드웨어 디바이스와 통신을 하는 기능과 소정의 기능을 발휘하는 기능을 갖는 상기 다른 하드웨어 디바이스로서의 1 이상의 제2 하드웨어 디바이스(예컨대, 도 1의 기능 모듈(3))를 포함하는 정보 처리 시스템에 있어서,
상기 프로그램 제작 지원 장치는,
상기 제어 프로그램의 적어도 일부를 상기 1 이상의 제1 하드웨어 디바이스 중의 적어도 하나에 송부하는 제어 송부 수단(예컨대, 도 6의 제어 송부부(104)),
를 구비하는 정보 처리 시스템이면 충분하다.
이것에 의해, 프로그램 작성 지원 장치에 의해 작성된 제어 프로그램에 기초하여 하드웨어 디바이스가 동작되는 데에 있어서, 프로그램 작성 지원 장치와 각 하드웨어 디바이스 사이의 통신이 불필요해지므로, 예컨대 완구 등으로서 바람직한 응답 속도로 동작하는 것이 가능해지고, 또한, 하드웨어 디바이스의 실기를 자립 구동시키는 것이 가능해진다.
1 : 사용자 단말, 2 : 베이직 코어, 3 : 기능 모듈, 21 : CPU, 27 : 표시부, 30 : 제1 근거리 무선 통신부, 31 : 제2 근거리 무선 통신부, 41 : CPU, 45 : 제1 근거리 무선 통신부, 46 : 제2 근거리 무선 통신부, 47 : 접속부, 48 : 전원부, 51 : 모듈간 통신부, 52 : 모듈간 전력 전달부, 61 : CPU, 67 : 접속부, 68 : 기능 하드웨어, 69 : 전력 공급부, 71 : 모듈간 통신부, 72 : 모듈간 전력 전달부, 101 : 페어링부, 102 : 프로그램 제작부, 103 : 제어 송부선 결정부, 104 : 제어 송부부, 105 : 표시 제어부, 106 : 통신 제어부, 121 : 종점 부품 추출부, 122 : 선행 부품 특정부, 123 : 송신선 변경부, 201 : 단말 통신 제어부, 202 : 프로그램 실행부, 203 : 기능 모듈 통신 제어부, 500 : 프로그램 저장부, 600 : S 파트 DB

Claims (3)

  1. 사용자의 지시에 의해 제어 프로그램의 제작을 지원하는 프로그램 제작 지원 장치와,
    다른 하드웨어 디바이스와 통신을 하는 기능과 상기 제어 프로그램에 기초하여 상기 다른 하드웨어 디바이스를 제어하는 기능을 갖는 1 이상의 제1 하드웨어 디바이스와,
    상기 제1 하드웨어 디바이스와 통신을 하는 기능과 미리 정해진 기능을 발휘하는 기능을 갖는 상기 다른 하드웨어 디바이스로서의 1 이상의 제2 하드웨어 디바이스를 포함하는 정보 처리 시스템으로서,
    상기 프로그램 제작 지원 장치는,
    상기 제어 프로그램의 적어도 일부를 상기 1 이상의 제1 하드웨어 디바이스 중의 적어도 하나에 송부하는 제어 송부 수단
    을 구비하는 것인, 정보 처리 시스템.
  2. 제1항에 있어서,
    상기 프로그램 제작 지원 장치는,
    상기 1 이상의 하드웨어 디바이스 중에서, 미리 정해진 룰에 기초하여 상기 제어 프로그램의 적어도 일부를 송부하는 제1 하드웨어 디바이스를 결정하는 제어 송부선 결정 수단
    을 더 구비하는 것인, 정보 처리 시스템.
  3. 제2항에 있어서,
    상기 제어 프로그램은, 상기 제2 하드웨어 디바이스에 대응된 하드웨어 부품을 포함하는 프로그래밍 부품을 결합시켜 정의되고,
    상기 제어 송부선 결정 수단은,
    상기 제어 프로그램을 해석하여, 다른 상기 프로그래밍 부품에 신호를 보내지 않는 상기 프로그래밍 부품을 종점 부품으로서 추출하는 종점 부품 추출 수단과,
    추출된 상기 종점 부품의 각각으로부터 거스러 올라가 그 시점까지의 모든 상기 프로그래밍 부품을, 상기 종점 부품에 관한 선행 부품으로서 특정하는 선행 부품 특정 수단과,
    상기 종점 부품의 각각에 관한 상기 선행 부품의 상기 제어 프로그램에서의 신호의 이송선을 상기 종점 부품으로 변경하는 송신선 변경 수단
    을 더 구비하는 것인, 정보 처리 시스템.
KR1020217018437A 2018-12-13 2019-12-12 정보 처리 시스템 KR20210093959A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018233734A JP2020095532A (ja) 2018-12-13 2018-12-13 情報処理システム
JPJP-P-2018-233734 2018-12-13
PCT/JP2019/048676 WO2020122171A1 (ja) 2018-12-13 2019-12-12 情報処理システム

Publications (1)

Publication Number Publication Date
KR20210093959A true KR20210093959A (ko) 2021-07-28

Family

ID=71076497

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217018437A KR20210093959A (ko) 2018-12-13 2019-12-12 정보 처리 시스템

Country Status (8)

Country Link
US (1) US20220026868A1 (ko)
EP (1) EP3895771A1 (ko)
JP (1) JP2020095532A (ko)
KR (1) KR20210093959A (ko)
CN (1) CN113474066A (ko)
SG (1) SG11202106286UA (ko)
TW (1) TW202032367A (ko)
WO (1) WO2020122171A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10108985A (ja) 1996-10-09 1998-04-28 Syst Watt:Kk 組立ブロック及び組立式玩具システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009011056A1 (ja) * 2007-07-19 2009-01-22 Fujitsu Limited アプリケーション改善支援プログラム、アプリケーション改善支援方法およびアプリケーション改善支援装置
US8869287B2 (en) * 2012-12-31 2014-10-21 International Business Machines Corporation Hybrid analysis of vulnerable information flows
KR101568224B1 (ko) * 2014-12-26 2015-11-11 고려대학교 산학협력단 소프트웨어 취약점 분석방법 및 분석장치
JP6576884B2 (ja) * 2016-07-12 2019-09-18 株式会社日立製作所 制御アプリケーション生成支援装置、及び制御アプリケーション生成支援方法
EP3588270B1 (en) * 2017-02-24 2022-06-01 VIVIWARE Japan, Inc. Control device, control method, information processing device, information processing method, and program
KR102304692B1 (ko) * 2018-09-21 2021-09-24 주식회사 럭스로보 소스 코드 및 모듈 추천 시스템 및 모듈 어셈블리

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10108985A (ja) 1996-10-09 1998-04-28 Syst Watt:Kk 組立ブロック及び組立式玩具システム

Also Published As

Publication number Publication date
EP3895771A1 (en) 2021-10-20
WO2020122171A1 (ja) 2020-06-18
US20220026868A1 (en) 2022-01-27
TW202032367A (zh) 2020-09-01
CN113474066A (zh) 2021-10-01
SG11202106286UA (en) 2021-07-29
JP2020095532A (ja) 2020-06-18

Similar Documents

Publication Publication Date Title
US10001843B2 (en) Modular sensing device implementing state machine gesture interpretation
WO2020220184A1 (zh) 可视化编程控制装置、可编程控制的设备及其控制方法、计算机可读存储介质以及编程控制系统
KR20170053185A (ko) 동작카드를 이용한 블록완구 동작 제어시스템 및 그 제어방법
KR20120130420A (ko) 프로그래밍 블록 조립체, 이를 이용한 프로그램에 의해 구동되는 로봇 시스템 및 그 프로그래밍 방법
KR102286283B1 (ko) 제어 장치, 제어 방법, 정보 처리 장치, 정보 처리 방법 및 프로그램
JP2012106044A (ja) 遊技機
KR20210093959A (ko) 정보 처리 시스템
EP3815855B1 (en) Modular robot system
JP2011019960A (ja) 遊技機
US11463128B2 (en) Information processing device
KR102323488B1 (ko) 디지털 그림 그리기 장치 및 디지털 그림 그리기 방법
KR102229422B1 (ko) Led 블록을 통한 코딩 학습 방법 및 시스템
JP2022100572A (ja) プログラム実行システム、制御装置及び制御プログラム
KR101680584B1 (ko) 적응형 스마트 토이 시스템 및 그 구성 방법
JP2023032976A (ja) 情報処理システム
KR20200020756A (ko) 학습용 무선 마이크로컨트롤러 키트
KR20210091426A (ko) 모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법
KR101590954B1 (ko) 스마트 플랫폼 적용을 위한 멀티형 아케이드 게임기기 및 펀치 아케이드 게임 제공 방법
JP2019087927A (ja) 赤外線操作システム
CN114949835B (zh) 感应式图像显示系统
KR102203829B1 (ko) 코딩용 카드를 이용하여 코딩로봇의 제어를 위한 알고리즘을 생성하는 코딩보드장치 및 방법
WO2019155860A1 (ja) スイッチ、個体識別データ送信方法、および、個体識別データ送信プログラム
KR20230084843A (ko) Nfc 통신을 이용하는 버스용 양면 엘이디 전광판 시스템
JP2015176445A (ja) ホスト機器、無線接続システム、無線接続された機器間の視認方法及びプログラム
JP2012194611A (ja) Kvmスイッチ及びプログラム