WO2021145506A1 - 모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법 - Google Patents
모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법 Download PDFInfo
- Publication number
- WO2021145506A1 WO2021145506A1 PCT/KR2020/003096 KR2020003096W WO2021145506A1 WO 2021145506 A1 WO2021145506 A1 WO 2021145506A1 KR 2020003096 W KR2020003096 W KR 2020003096W WO 2021145506 A1 WO2021145506 A1 WO 2021145506A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- module
- story
- information
- quest
- assembly
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 34
- 238000011017 operating method Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 18
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000001965 increasing effect Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000004397 blinking Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000002250 progressing effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- APTZNLHMIGJTEW-UHFFFAOYSA-N pyraflufen-ethyl Chemical compound C1=C(Cl)C(OCC(=O)OCC)=CC(C=2C(=C(OC(F)F)N(C)N=2)Cl)=C1F APTZNLHMIGJTEW-UHFFFAOYSA-N 0.000 description 1
- 230000011514 reflex Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/02—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
- G06F15/025—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application
- G06F15/0291—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators adapted to a specific application for reading, e.g. e-books
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/23—Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
- A63F13/235—Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/32—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
- A63F13/327—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections using wireless networks, e.g. Wi-Fi® or piconet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/46—Computing the game score
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/95—Storage media specially adapted for storing game information, e.g. video game cartridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7896—Modular architectures, e.g. assembled from a number of identical packages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/06—Electrically-operated educational appliances with both visual and audible presentation of the material to be studied
- G09B5/062—Combinations of audio and printed presentations, e.g. magnetically striped cards, talking books, magnetic tapes with printed texts thereon
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Definitions
- the present invention relates to a reader participation type e-book system using a module and a method for producing the same, and more particularly, to a module that can effectively increase the reader's participation and interest as the reader implements the story of the book using the module. It relates to a reader participation type e-book system used and a method for producing the same.
- modules included in these manufacturing tools can each perform a specific function, and are provided to be connected to each other to form a module assembly.
- each module may be provided to be electrically connected to each other to transmit and receive energy, signals, data, and the like.
- Readers can assemble modules according to the manual provided or their own creation to create a module assembly that fulfills a specific purpose.
- Patent Document 1 (Republic of Korea Patent Registration No. 1761596) discloses a module assembly manufactured by assembling various types of modules, such as a network module, a driving module, and a sensor module.
- the module assembly is an educational kit that allows students or readers to understand the operating principle of the electronic device while assembling the modules 10, 20, 30, 40, or a researcher used to manufacture a device for performing a specific purpose. It can be used for various purposes, such as a research kit and a toy kit that the reader can assemble for a hobby.
- these module assemblies are used by various people such as researchers who are experts in software or hardware, students, and the general public. However, it may be difficult for the general public or students, except for experts, to assemble each module so that it can operate properly and to write and use suitable software to drive the assembled module assembly, which may limit the spread of the above-mentioned module. there is.
- coding such as logical operation of signals generated by various hardware such as sensors or buttons
- APIs application program interfaces
- the present invention has been devised to respond to the above-described technical problem, and an object of the present invention is to substantially supplement various problems caused by limitations and disadvantages in the prior art, and the reader can read the book by using the module. It is to provide a reader participation type e-book system using a module that can effectively increase the reader's participation and interest as the story is implemented.
- a reader participation type e-book system using a module includes: a module assembly in which a plurality of modules are assembled; A reader participation type e-book system using a module including a module assembly and a user terminal connected to a user terminal through a network, the e-book system comprising: a story providing unit for transmitting an e-book database including at least one story to the user terminal; an assembling information receiving unit for receiving module assembling information based on at least one quest performance information generated with respect to a scene constituting the story and generated to progress the story; and a score generator for generating a score for the user's module assembly for each scoring condition with respect to the module assembly information.
- the quest performance information includes an explanatory text forming a story and a directive to be solved by module combination, and an essential module combined to perform the quest according to the directive may be predetermined.
- the quest performance information is independent of the progress of the story and may include an event element arbitrarily selected by a user and generated by an assembled module.
- a hidden story generator for generating a hidden story unrelated to the story according to an event element may be further included.
- the scoring condition is the time taken for the user to assemble the module assembly, module information about the type of connected module, whether the module operates, active story information, whether to implement code, whether to reflex, whether to cooperate and code implementation time.
- the activated story information may be the length of a story line generated based on module assembly.
- the score generator may add a score by weighting each item with respect to the scoring condition.
- the score generator may generate a score according to a preset weight for the scoring condition.
- the story providing server may set the reference time for module assembling differently to be proportional to the difficulty level.
- an event element generating unit for receiving mission performance information for determining whether a user performs a mission with respect to an event element; and an event information receiver configured to receive event performance information of the user for the event element.
- the story providing server may further include a source code generator for generating a source code based on module assembly information.
- the module assembly includes at least one of an input module and an output module
- the input module is at least one of an environment module, a button module, a gyroscope module, a microphone module, an infrared module, a dial module, and an ultrasonic module.
- the output module may be at least one of an LED module, a speaker module, a display module, a motor controller module, and a motor module.
- the next quest appearing after the quest may be determined in consideration of at least one of a surplus module combined by a user regardless of the quest, a topology, and a module order from programming.
- the module assembly for the previous quest performed immediately before the next quest may be initialized and then assembled.
- the network may be connected by wire and/or wirelessly.
- each of the plurality of modules may include module-specific information that is a module-specific identifier, and may include at least one set of unique information for identifying a user in the module assembly.
- the step of transmitting the e-book database including at least one story to the user terminal by the story providing unit Receiving module assembly information based on at least one quest performance information generated for a scene constituting the story by the assembly information receiver and generated for the story progress; and generating a score for the user's module assembly for each scoring condition with respect to the module assembly information by the score generator.
- an event element is added to evaluate the achievement speed and achievement rate for the event, thereby increasing the reader's interest, improving concentration, and at the same time helping to improve improvisation.
- the reader's understanding of the story can be increased by outputting visual, auditory, etc. through the module in progressing the story, and the reader's participation in the story can be increased by the reader's own production of the story in a variety of ways to induce continuous interest can do it
- the present invention it is possible to increase the interest in coding and ensure a learning result of a certain level or higher by receiving the source code information of the assembled module as feedback while the reader performs the event element for the story.
- the effectiveness of a product can be increased by connecting an electronic children's book having various stories to a module and using it.
- the effect according to the present invention is not limited by the contents exemplified above, and more various effects are included in the present specification.
- FIG. 1 is a perspective view showing a state in which a module assembly according to an embodiment of the present invention is assembled.
- FIG. 2 is a plan view showing an internal structure of a module according to an embodiment of the present invention.
- FIG. 3 is a schematic diagram illustrating a reader participation type e-book system using a module according to an embodiment of the present invention.
- FIG. 4 is a block diagram showing the configuration of a story providing server according to an embodiment of the present invention.
- FIG. 5 is a block diagram for explaining the components of a main module according to an embodiment of the present invention.
- FIG. 6 is a flowchart schematically illustrating the operation of a reader participation type e-book system according to an embodiment of the present invention.
- FIG. 7 is an exemplary diagram for explaining the overall story of the reader participation type e-book system according to an embodiment of the present invention.
- FIG. 8 is an exemplary diagram of an e-book according to an embodiment of the present invention.
- 9 to 10 are exemplary diagrams for explaining the connection between the reader participation type e-book and the module according to an embodiment of the present invention.
- FIG. 11 is an exemplary diagram of a source code generated by assembling a module assembly according to an embodiment of the present invention.
- FIG. 12 is a table for explaining topology information according to an embodiment of the present invention.
- FIG. 1 is a perspective view showing a state in which a module assembly according to an embodiment of the present invention is assembled.
- 2 is a plan view showing an internal structure of a module according to an embodiment of the present invention.
- the module assembly 1 includes a plurality of modules 10 , 20 , 30 , and 40 that can be assembled with each other.
- the module assembly 1 may be defined as a set of one or more modules 10, 20, 30, 40 that can be assembled with each other or a structure in which they are assembled, and the purpose, type, shape, number of modules, etc. not limited by
- the module assembly 1 may be a part of an educational kit in which a student or reader can understand an operating principle of an electronic device while assembling the modules.
- the module assembly 1 may be part of a research kit that is used by a researcher to manufacture a device for performing a specific purpose.
- the module assembly 1 may be part of a toy kit that the reader can assemble for a hobby.
- the module assembly 1 is described as being composed of four modules 10 , 20 , 30 , 40 as shown in FIG. 1 , and each of the first module 10 , the second module 20 , the third module 30 and the fourth module 40 .
- the plurality of modules (10, 20, 30, 40) is an object configured to transmit and receive signals, data, or electrical energy (hereinafter, also referred to as “electrical signals”) represented as changes in voltage or current with other modules or external devices.
- electrical signals represented as changes in voltage or current with other modules or external devices.
- These modules 10, 20, 30, 40 are provided with a central processing unit (CPU), memory, power supply, or the like, or are operable under the control of other modules, sensing means, processing means and driving ( Driving) means may be provided to each independently drive.
- each of the modules 10 , 20 , 30 , and 40 may be configured to independently perform a specific function or to perform a specific function by interaction with other modules.
- the modules include a central processing unit (CPU)
- firmware may be installed for each module.
- the first module 10 of the plurality of modules 10 , 20 , 30 , and 40 functions as a main module, and details related thereto will be described later with reference to FIG. 5 .
- each of the modules 10 , 20 , 30 , and 40 may be largely divided into an input module, an output module, and a setup module.
- the input module is an infrared module (IR (Infrared) module) that can receive an infrared signal from a remote control, etc., a gyroscope sensor module (Gyroscope module) that can detect the X, Y, Z axis change angle and acceleration Dial module that can measure the rotation angle or rotation speed using the rotation of the handle, detects the button press, detects the click, double click, and pressed state, and uses the toggle to turn on/off
- a button module that allows the (On/Off) state to be maintained, an environment module that can measure temperature, humidity, and illuminance, and an environment module that can detect ambient sound intensity (dB) and frequency It may be composed of a microphone module and an ultrasonic module capable of detecting a distance.
- the output module is an LED module that can be visually displayed according to color change, a speaker module, a display module that displays a picture drawn by the reader, text, or module information on the screen, speed, A motor controller module that transmits an electric signal to a motor module to perform rotational motion by setting an angle and torque, or a motor module capable of converting an electrical signal received from the motor controller into rotational motion; MDP-14) and the like.
- the setup module is a battery module used to supply power to other modules and a network module that can connect the module to a PC, smartphone or module through Bluetooth, Wi-Fi or USB connection. module) and the like.
- each of the modules 10 , 20 , 30 , and 40 may be connected to an external driving device 41 and a cable 42 .
- the module assembly 1 may be a device for selectively operating a motor by receiving a signal from a remote control or a smart phone.
- the configuration of the module assembly 1 as described above is only one example, and each module 10, 20, 30, 40 can perform any function independently or through interworking with other modules. may be provided.
- the modules 10 , 20 , 30 , and 40 may be three-dimensional in the shape of a polygonal column having a plurality of side surfaces so as to be in surface contact with other neighboring modules.
- the surface contact does not mean that all areas of the side are all in contact, but only a part of the side is in contact so that the side of one module and the side of the other module face each other and are understood to include a part in contact should be
- the modules 10 , 20 , 30 , and 40 have a square-shaped plane as an example. That is, the modules in this embodiment will be described as an example of a rectangular parallelepiped having four sides. Meanwhile, as another embodiment, the modules 10 , 20 , 30 , and 40 may be formed in a polygonal air shape such as an equilateral triangle, a rectangle, or a regular pentagon in plan view, and in particular, may be formed in a regular polygonal shape. Some modules may have different three-dimensional shapes. In addition, some of the modules may have various three-dimensional shapes such as horns and polyhedrons.
- the first module 10 includes a housing 11 forming an external appearance, a terminal 107 exposed on a side surface of the housing 11 to transmit or receive an electrical signal to another connected module, and the housing; It may include a pin installation part 150 provided with a pin 180 selectively protruding to the outside of the , and a pin receiving part 160 into which a pin of another module is inserted.
- one side of the first module 10 may include a serial port capable of communicating with an external device.
- the serial port may use a port of various standards capable of performing wired serial communication, such as Universal Serial Bus (USB), USB-C type, IEEE 1394, and Thunderbolt.
- USB Universal Serial Bus
- USB-C USB-C type
- IEEE 1394 IEEE 1394
- Thunderbolt Thunderbolt
- the housing 11 is a case formed in the shape of a rectangular parallelepiped having a square plane, and protects internal components.
- the housing 11 may be provided in a form in which the upper case 11a and the lower case 11b are coupled as shown in FIG. 1 .
- the upper case 11a and the lower case 11b may be integrally formed, or may be divided into more parts and assembled as needed.
- the terminal 107 may transmit an electrical signal or the like to or receive from another module connected thereto.
- the terminal 107 receives an electrical signal or the like from the board 102 provided in the housing 11 and receives an electrical signal from another module in contact with the terminal. It can be transmitted through the terminal.
- the terminal 107 may have a plurality of contact points or connection pins, which may have various shapes according to a method of transmitting an electric signal or the like, a standardized standard, and the like.
- Such a terminal 107 may be disposed on one side of the housing 11 to form a set with the pin 180 , the pin installation part 150 , and the pin receiving part 160 . Specifically, the terminal 107 may be disposed between the pin 180 and the pin receiving unit 160 , and may be in contact with a terminal disposed between the pin of another module and the pin receiving unit.
- the terminals 107 are provided on all sides of the housing 11 , but depending on the embodiment, there may be a side on which the terminals 107 are not formed.
- the lower case 11b includes a frame 100 forming an external and internal structure, a substrate 102 provided inside the frame 100 , and a functional unit 104 installed on the substrate 102 . may include.
- the frame 100 is a structure constituting a part or all of the housing 11 , and may form an outer shape of a part or all of the housing 11 , and may provide a space and a structure for installing various parts therein.
- the frame 100 is described as an example of forming the lower case 11b of the housing 11, but the scope of the present invention is not limited thereto.
- the frame 100 is formed in a rectangular shape and has four corners 101 .
- the functional unit 104 for implementing the function of the first module 10 may be mounted on the substrate 102 , and may be fixedly installed in the center of the inner space of the frame 100 .
- the functional unit 104 may include, for example, a microprocessor 105 , which may be provided for controlling the first module 10 if the first module 10 is driven by an independent firmware.
- the function unit 104 is configured with an analog digital converter (ADC) and other modules or external hardware necessary to process the infrared sensor and values sensed from the infrared sensor. It may include necessary devices such as an interface necessary for communication, for example, a communication interface such as I2C or UART, or USB. As such, in the modules 10 , 20 , 30 , and 40 of the present invention, the type of the module may be determined according to the function of the above-described functional unit 104 .
- ADC analog digital converter
- the functional unit 104 includes a microprocessor 105 and memory, and becomes a control module when it includes an OS or firmware capable of controlling other units.
- the functional unit 104 can transmit the sensing value of the sensor to another module or an external device, it becomes a sensor module.
- the functional unit 104 receives an electrical signal from another module, including various wired and wireless communication devices such as NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, and cable modem, and receives an electrical signal from another external device through the above-described wired/wireless communication device. If an electrical signal can be transmitted to a communication module, it may be a communication module.
- the functional unit 104 when it includes various actuators such as a motor and actuator control circuits to enable driving, it may be a driving module.
- various actuators such as a motor and actuator control circuits to enable driving
- it may be a driving module.
- Other more detailed structures and combinations of the modules of the present invention are described in detail in Korean Patent Publication No. 10-1761596, which is incorporated herein by reference.
- FIG. 3 is a schematic diagram illustrating a reader participation type e-book system using a module according to an embodiment of the present invention.
- a reader participation type e-book system using a module may include a module assembly 1 and a user terminal 2 .
- the module assembly 1 may be connected to the user terminal 2 through a network such as the Internet, an intranet, or a broadband communication network. Alternatively, it may be directly connected to the user terminal 2 through wired/wireless communication, in particular, a serial port connection.
- the network may include wired short-range communication means such as USB, RS-222, and IEEE1394, wireless short-range communication means such as WiFi and Bluetooth, and Internet connection.
- the user terminal 2 may provide an authoring tool capable of writing, recommending, and compiling (or interpreting) the source code of a program capable of driving the module assembly 1 .
- the reader participation type e-book system using a module may further include a story providing server 2 connected to the module assembly 1 or the user terminal 2 .
- the user terminal 2 may receive assembly information from the module assembly 1 through a network, and may store the assembly information as a database.
- a source code may be generated based on the assembly information.
- the user terminal 2 stores, as a database, the module assembly assembly information history and the corresponding source code, which have been configured in advance or already used by existing users, and is based on the assembly information and database of the current user's module assembly 1 to provide the source code.
- the user terminal 2 determines whether there is an assembly error based on the assembly information, provides the assembly error information to the module assembly 1, and provides assembly assistance information to the module assembly 1 so that the module can be removed, replaced, and added. ) is provided to Assembly information will be described later in detail with reference to FIG. 4 and the like.
- the user terminal 2 determines the assembly time of the module assembly 1 based on the user's assembly information of the module assembly 1 (hereinafter, "when the module is combined”). time spent”), the number of modules used, the types of modules used, module operation information, the similarity between the saved story and the created story, and whether the module operates or not, can be scored.
- time spent the number of modules used, the types of modules used, module operation information, the similarity between the saved story and the created story, and whether the module operates or not, can be scored.
- scoring conditions a plurality of items listed may be referred to as scoring conditions, and are not limited to the above-described types.
- a plurality of items for scoring conditions include the time taken for removal, the number of modules used to solve the same problem (in this case, the scoring condition is also referred to as “efficiency”), and the time required for module replacement (hereinafter, “spontaneity”). ), when two or more users cooperate to assemble a module or complete coding (in this case, the scoring condition is referred to as “cooperation”), and the like. Specific details related to this will be described later.
- the user terminal 2 checks the consistency of the execution rules of the source code, determines whether there is an error in assembling the module assembly 1 , and provides assembly error information to the module assembly 1 .
- the user terminal 2 checks whether the module assembly 1 is arranged and assembled according to the execution rule by the consistency of the execution rule.
- the assembly error information includes at least one module-specific information (module ID) in which an error has occurred.
- the module assembly 1 outputs that there is an assembly error in the module having at least one error based on the assembly error information provided from the user terminal 2 or the story providing server 2 . It is apparent to those skilled in the art that the module assembly 1 may output that there is an assembly error by blinking the LED of the module having at least one error in a predetermined color, but may output that there is an assembly error in another way. .
- the user terminal 2 may recommend module information and the location of the location to be removed, replaced and added based on the assembly information.
- the user terminal 2 provides the source code based on the database and assembly information of the currently assembled module assembly 1 .
- the user terminal 2 recommends module information of a location to be removed, replaced, and added in the module assembly 1 and its location based on the source code.
- the module information on the position to be added or replaced means information about a module that can be substituted in the current configuration or perform an additional operation compared to the current configuration by adding a module in the current configuration of the module assembly 1 do.
- the user terminal 2 checks the consistency of the execution rules of the source code of the currently assembled module assembly 1, and includes module information of positions to be removed, replaced, and added and the positions thereof in the assembly assistance information. provided to the assembly (1).
- the module assembly 1 may output the module of the position to be removed, replaced and added and its position by blinking the LED of the module in the position to be removed, replaced, and added in a predetermined color and in a predetermined direction, but in a different way It is obvious to those skilled in the art that it can be output.
- preferred module information may be selected based on an external input.
- the user terminal 2 generates a source code for debugging based on the assembly information.
- the user terminal 2 stores the module assembly assembly information history and the corresponding debugging source code as a database, which has been configured in advance or already used by existing users, and the assembly information and database of the current user's module assembly 1 Provides source code for debugging based on
- the user terminal 2 provides the module assembly 1 with an executable file (hereinafter, firmware) obtained by compiling the source code for debugging.
- the firmware for debugging is downloaded to the module assembly 1 .
- the firmware for debugging flickers the LED of the module being executed at a predetermined speed according to the execution order of the module assembly 1 .
- the firmware for debugging waits for an input sequence from the input module, the LED color may blink differently in a predetermined color.
- the user terminal 2 may determine whether two or more types of set unique information (set ID) are mixed when assembling the module assembly 1 .
- the set-specific information may determine whether a plurality of users have participated in assembling the module assembly 1 when assembling the module assembly 1 . For example, when there is the first set unique information and the second set unique information in one module assembly 1, it may be determined that two users participated in the assembly. That is, when one user assembles the module, one set unique information (set ID) is generated in the module assembly 1, and when a plurality of users assemble the module, a plurality of set IDs are generated in the module assembly 1 do.
- the user terminal 2 determines that a plurality of users are participating in module assembly and generates a score, This can be taken into account and reflected in the score. For example, whether or not cooperation is added to a plurality of items as a scoring condition is reflected in the score, or a score for each user may be separately assigned to promote competitiveness among users.
- FIG. 4 is a block diagram showing the configuration of a story providing server according to an embodiment of the present invention.
- the story providing server 2 includes a story providing unit 21 , an assembly information receiving unit 22 , an event element generating unit 23 , an event information receiving unit 24 , a code generating unit 25 , and a score. It includes a generation unit 26 , a display unit 27 , and a database 28 .
- the story providing unit 21 is configured to transmit at least one story in the form of an e-book to the user terminal.
- the e-book may provide a story composed of a plurality of scenes.
- the story may be a story having various endings, and specific details related thereto will be described later.
- the database 28 may be referred to as an e-book database. Specific details on the connection relationship between each story and module will be described later.
- At least one scene constituting the story may include story information in the form of any one of text, a picture, and a moving picture, or a combination of at least one.
- the text may be provided in units of words, sentences, and paragraphs and displayed on the display unit 27 .
- the scene may include a story area in which the story information is displayed and a Quest area in which quest information about the current scene is displayed, and the location of each area may be changed according to an embodiment. In this case, specific details of the story area and the quest area will be described later.
- the assembly information receiving unit 22 receives information on the assembled module when a module corresponding to one selected quest performance information among at least one of the quest performance information related to the story included in each scene (or for each part of the scene) is assembled. , also called “module assembly information”).
- the quest performance information is preferably understood as an element for story progression, and the connection between the quests according to the selection of the quest performance information is a story line.
- the event element generating unit 23 is a configuration that provides an event element related to a story included in a scene to a user terminal, and a hidden story may be generated according to the assembly of the event element.
- the event element may require not only module assembly but also motion action so as to arouse the user's interest in advancing the story. For example, when a warrior encounters a dragon, an event element such as "Use the microphone module to shout at a certain dB (decibel) or more to defeat the dragon" may be provided to the user.
- the event element may be output as text through the display unit 27 of the user terminal or may be output as voice through the speaker unit of the user terminal.
- the hidden story is not limited to being created by assembling event elements, and may be created as the user assembles any module irrelevant to the story progress (hereinafter, also referred to as “a module that can be omitted when the story progresses”). It may be characterized in that
- the event information receiving unit 24 allows the user to perform a mission for the event element using a specific module, and when the mission is completed (that is, when the user completes the assembly of the corresponding module), the user terminal It is a configuration for receiving information indicating that the mission has been performed (hereinafter, also referred to as “event performance information”).
- the present invention may include a separate hidden story generator that is independent of the story and generates a hidden story according to an event element according to an embodiment.
- the code generator 25 is a component that generates a source code based on module assembly information.
- the code generator 25 pre-configures the source code or stores the module assembly assembly information history used by existing users and the source code corresponding thereto to the database 28, and assembles the current user's module assembly 1 Source code may be provided based on the information and database 28 .
- the score generation unit 26 is configured to compare the module assembly information assembled by the current user based on the database 28 in which the module assembly information for the story is stored, and generate a score according to a plurality of scoring conditions for all processes. In addition, the score generator 26 generates a score based on a preset weight for the module assembly information.
- the preset weight is a weight for any one or more conditions of a plurality of module assembly information including time taken for module assembly, the number of types of modules used, the number of modules used, and similarity with a stored story. may be set for each ratio.
- the weight is set when the time taken for module assembly is short, the weight is set as the number of module types used is smaller (or more), the weight is set as the number of modules used is larger (or fewer), or A weight may be set as the similarity to the story stored in the database 28 is higher.
- the score generator 26 may generate a score by assigning weights based on the statistics in comparison with the time taken for assembly to be completed, the number of times combined and removed until completion, and the statistics stored in the server to evaluate the degree of completeness. there is.
- the score generator may evaluate the efficiency by generating a score based on the number of modules used when solving the same problem.
- the score generating unit 26 gives weight to cases that are close to the desired story, for example, similarly (or dissimilar) to the pattern previously stored in the server, and based on the database in which the solution method according to the problem is stored. The similarity may be evaluated by comparing the similarity. In addition, when two or more people cooperate to assemble a module or complete coding, the score generator 26 may generate a score by giving weight to evaluate cooperation. In this case, cooperation will be described later with reference to FIG. 6 . In addition, the score generator 26 measures the time it takes to replace a module restricted by the administrator with another module, or measures the time it takes to replace an input module/output module that does not work with a replacement module, etc. can also be evaluated. However, various other cases may be included, and the present invention is not limited thereto.
- the display unit 27 is configured to output in various forms such as images and videos by connecting story information, quest performance information, event elements, and the like to a smartphone, a computer, or a dedicated display.
- the story information may mean the title of the story, the author of the story, the length of the story, and the like.
- the quest performance information may mean a configuration that allows a user to progress a story through module assembly.
- the database 28 may store a genre of a story included in the e-book, author information of the story, keywords, publication information, content information, and the like. Alternatively, it is possible to store and manage module information about the module assembly 1 connected to a user terminal providing an e-book through a wired/wireless network.
- FIG. 5 is a block diagram for explaining the components of a main module according to an embodiment of the present invention.
- the first module 1 will be referred to as a main module 10 for convenience of description.
- main module 10 for convenience of description.
- the main module 10 includes an assembly information detection unit 101 , an assembly information generation unit 102 , an event operation result transmission unit 103 , a microprocessor 104 , a communication control unit 105 , and a memory. It may be a network module comprising 106 , but it will be apparent to those skilled in the art that other module categories may also function.
- the assembly information detection unit 101 is a hardware and/or software component that includes an assembly information detection protocol and can detect assembly information of connected modules.
- the assembly information detection unit 101 may detect module-specific information, module category, sub-connected module information, and execution category of modules connected to the module assembly 1 .
- the assembly information generating unit 102 may determine assembly information of the module assembly 1 according to the sensed assembly information and write it in the memory. For example, the assembly information generating unit 102 may generate assembly information including module-specific information of each module connected to the module assembly 1, module category, sub-connected module information, and execution category according to the sensed assembly information. there is.
- the event action information transmitter 103 may perform an operation on the event element received from the user terminal 2 using the input module and transmit the action information to the user terminal 2 .
- the event operation information may include input information using various modules, such as an input through a microphone module, an input through a dial module, or an input through a button module.
- the microprocessor 104 is the software module will be executed.
- the communication control unit 105 may control communication with an external device and communication between modules. Communication with an external device may include various wired/wireless communications such as NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, and cable modem. Meanwhile, communication between modules may be performed using various internal communication means such as UART, I2C, LIN, and CAN.
- the communication control unit 105 may include the above-described various wired/wireless communication means or communication means between modules, or may communicate in a manner that controls the separate network module when connected to a separate network module.
- the memory 106 includes a software module that can be executed in the microprocessor 105, various information necessary for the operation of the module assembly 1, and various information about the assembly information of the connected module, for example, the memory ( 106) may include module information, driving information, assembly information, and firmware.
- the module information includes at least one of a module ID, a module category, function information, and meta information.
- the module ID may be an identifier unique to the module, such as a universally unique identifier (UUID), or a temporary ID given when combining by the main module.
- UUID universally unique identifier
- the module category is a concept of classifying modules having similar functions into a higher level concept with a focus on a function to perform a plurality of modules in order to assist in finding replaceable modules.
- modules that input electrical signals such as sensors, keys, and microphones include 'input', actuators, displays, LEDs, etc. include 'output', or a microprocessor, and a module capable of executing a program ported by a user, a network
- a module, a battery module, or a weight display module, 'setup' may be an example of a module category.
- the function information indicates detailed functions of the module, and for example, a control module, an infrared sensor module, a switch module, a power module, and a network module may be detailed functions.
- the function of the module may vary according to the configuration of the functional unit 104 in each module.
- Meta information is other information of the module, for example, may be a specific device name such as 'fan fan', or may be related search words related to a fan such as 'wind' or 'shiwon'.
- the driving information is a driver for driving each module.
- Such driving information is stored by the corresponding module and provided to the control module 10 when the module is connected, or downloaded from the user terminal 2 when the control module 10 provides the module information to the user terminal 2 . can receive
- Firmware is software for operating the module assembly 1 , and may be created as an executable file after compiling by writing source code through the user terminal 2 .
- a source code is recommended from the user terminal 2
- an executable file (firmware) obtained by compiling the recommended source code is transferred to the user terminal 2 . can be downloaded from
- the module assembly may be composed of a plurality of control modules.
- the assembly information sensed and generated by each control module includes its own module-specific information (module ID), module category, sub-connected module information, and execution category.
- module ID module-specific information
- module category module category
- sub-connected module information module category
- execution category module-specific information
- Each of the plurality of modules of the module assembly generates the assembly information and provides it to the user terminal 2 or the assembly information providing server 2 through the communication control unit.
- FIG. 6 is a flowchart schematically illustrating the operation of a reader participation type e-book system according to an embodiment of the present invention.
- the story providing server 3 will be described as a reference.
- each component in FIG. 6 has the same role as the above-described components, a redundant description will be omitted.
- step 601 the story providing server 3 transmits a story including various story information to the user terminal 2 when connected to the user terminal 2 .
- the user terminal 2 transmits module assembly request information for quest performance information based on the received story information. Accordingly, the module assembly 1 receives module assembly request information for the received quest performance information.
- the module assembly request information is information that requests input for at least one quest performance information provided for the story provided from the user terminal 2, and the module assembly 1 additionally assembles the module according to the module assembly request information. input can be performed.
- the story providing server 3 may receive module assembly information based on the module assembly request information from the module assembly 1 .
- step 604 the story providing server 3 receiving the module assembly information may transmit the next story information to the user terminal 2 based on the module assembly information.
- Next story information may be defined as information about a story to be progressed (or provided) to the next story after assembling a module for one story is completed.
- step 605 the user terminal 2 transmits module assembly request information for quest performance information based on the received next story information.
- the user terminal 2 may receive module assembly information for the event element generated from the module assembly 1 .
- step 606 may be omitted because it is a step determined by a user's selective action.
- the story providing server 3 may receive module assembly information based on the module assembly request information from the module assembly 1 . It is preferable that the module assembly information in step 607 be understood as a step for the next story information that occurs after step 603 .
- step 608 the story providing server 3 requests the module assembly 1 for module-specific information (module ID) and set-specific information (set ID).
- step 609 the module assembly 1 provides the module ID and set ID. may be transmitted to the story providing server 3 .
- a source code is generated based on at least one of module assembly information, module ID, and set ID, and the generated source code is transmitted to the user terminal 2 to output the result through the display unit 27 . Accordingly, as shown in FIG. 11 , the user may improve his/her understanding and interest in coding by receiving feedback on the source code information for the module assembly 1 assembled by the user. A detailed description related thereto will be described later with reference to FIG. 11 .
- the story providing server 3 may generate a score for the assembled module assembly 1 based on the scoring condition, and transmit the score for each user or item to the user terminal 2 .
- FIG. 7 is an exemplary diagram for explaining the overall story of the reader participation type e-book system according to an embodiment of the present invention.
- a reader participation type e-book is an e-book that consists of multiple scenes and forms various storylines (X, Y, Z) according to the user's selection.
- at least one piece of quest performance information 710 may be included in each scene.
- the quest performance information 710 is characterized in that it includes an explanatory text forming a story for the current scene and an instruction to be solved by module combination.
- the user cannot directly know information about the type of module that must be combined to perform the quest through the directive, and must be combined by reasoning. In other words, it is based on providing only instructions so that the user can infer when assembling the module and not telling the module that needs to be assembled. Accordingly, it is possible to score the user (or each user) later based on the user's module assembly information.
- the quest performance information may include information on a module to be assembled by the user.
- one quest performance information is generated in the first scene (hereinafter, also referred to as “1 st Scene”), and in this case, the second scene (hereinafter referred to as “second scene ( 2 nd Scene)”), if it is assumed that two quest performance information 710 are generated, the user may perform only one quest among the two quest performance information 710 or perform both quests. After that, you can move on to the next scene.
- the user must assemble one module in order to perform the quest performance information 710 included in each scene.
- the assembled module may be referred to as an essential module.
- a module may be assembled separately from performing the quest performance information 710 , but in this case, the assembled module may be referred to as a surplus module.
- the redundant module has nothing to do with the quest performance of the current scene, but a new story related to the redundant module (hereinafter, also referred to as a “hidden story”) may be generated. Specific details related to this will be described later.
- the reader participation type e-book may form a storyline by at least one of the essential module and the redundant module, and various storylines may be formed according to module assembly. Accordingly, various endings such as X, Y, Z, etc. may be formed.
- any one of the plurality of results may be determined as the last scene 730 according to an element selected by the user.
- 8 is an exemplary diagram of an e-book according to an embodiment of the present invention.
- 9 to 10 are exemplary diagrams for explaining the connection between the reader participation type e-book and the module according to an embodiment of the present invention.
- 12 is a table for explaining topology information according to an embodiment of the present invention. 8 shows that the components described with reference to FIGS. 1 to 7 are illustrated by way of example, and thus a redundant description thereof will be omitted.
- a story is output for each scene on the display unit 27 of the user terminal 2 .
- the story may be displayed on the story area 80 formed in most areas of the display unit 27 , and quest performance information may be popped up on a partial area of the story area 80 and displayed on the quest area 81 .
- the arrangement of the story area 80 and the quest area 81 may be freely changed according to a design change.
- the story of the first scene #1 is displayed in the story area 80 of the user terminal 2 , and a tutorial pop-up window 82 is generated in the quest area 81 .
- a tutorial pop-up window 82 is generated in the quest area 81 .
- an explanation such as "The knight finally took out his armor, spear, and shield to save the princess, but has entered the endless desert.” is displayed, and in the quest area 81, "A sound from somewhere When you hear a sound, you scream three times, and when you see a light, you have to turn your head toward the light to survive.”
- the instructions include “If you hear a sound from somewhere, scream three times (Quest 1 (Q1))”, “When you find a light (Quest 2 (Q2))” “You have to turn your head toward the light to survive. You can see that 3 quests are included, such as “I can (quest 3 (Q3))”.
- the essential module for the quest 1 may be a microphone module 91 capable of inputting a sound
- the essential module for the quest 2 may be a light receiving module 92 capable of detecting light to discover the light.
- the essential module for the quest 3 may be a motor module 93 for performing the quest for turning the head.
- the required module is characterized in that it is determined in advance according to the quest of each scene. Accordingly, the user must assemble a predetermined required module by reasoning the instructions. On the other hand, the location where essential modules are assembled to perform the quest in the directive may be independent of the order of the quest.
- the user may attach a module (hereinafter, referred to as a “surplus module”) that is not related to the directive of the quest in the current scene.
- the surplus module is characterized in that it influences the selection of a quest that appears as an essential module in the next quest (hereinafter also referred to as “next quest”).
- the directive as an example, when the dial module 94 is combined as a redundant module unrelated to the directive, the quest including the dial module 94 as an essential module among numerous preliminary quests is converted to the current quest (q n ). ) can be determined by the next quest (q n+1 ).
- the story area for the next quest (q n+1 ) says, “The knight has barely arrived at the oasis, and the light in the small house is on.
- the essential module for the quest 1 may be a button module capable of detecting a button press and a speaker module capable of outputting a doorbell sound
- the essential module for the quest 2 may detect turning a knob It may be a dial module
- the essential module for the quest 3 is an LED module capable of blinking an LED of a color desired by the user, and may display an orange LED to perform the quest 3.
- quest 4 can be performed by turning off the orange LED.
- a quest including the motor module as an essential module will be selected as the next quest. Accordingly, a quest in which a chariot appears may be selected from among the plurality of preliminary quests.
- a process of initializing assembly information by separating all modules assembled in a previous scene may be accompanied.
- another quest (#2 or next quest) is displayed in the story area 80 of the user terminal 2 .
- the story area (80) "The knight finally encountered the dragon guarding the prison. It was already deep night and the dragon's momentum was the same, so I decided to run away and come back during the day.” is displayed, and in the quest area (81), “The dragon spouts red fire three times and screams. If you face it, you may see instructions like, “I will swing my sword in the air in a figure of eight to drive the dragon away.”
- the instructions include 3 such as “the dragon spits red light three times (quest 1)”, “if you scream at it (quest 2)” “swipe the sword in the air with an eight-character to drive out the dragon (quest 3)” You can see that there are dog quests included.
- the essential module for the quest 1 may be an LED module 95 capable of blinking a red LED three times
- the essential module for the quest 2 may be a microphone module 96 capable of inputting a sound
- the essential module for the quest 3 may be a gyro module 97 capable of measuring the inclination of the module, acceleration and angular velocity with respect to each axis in order to perform the quest wielding the figure 8.
- the next quest following the current quest is determined by the surplus module combined by the user among the preliminary quests.
- a quest including the vibration module 98 as an essential module may be selected as the next quest. Accordingly, if there is a quest related to vibration, such as “rolling a foot on a cliff to generate vibration” among the plurality of preliminary quests, the corresponding quest may proceed as the next quest.
- the next quest may be selected based on the module order from the topology and programming in addition to the redundant modules.
- the intent of the redundant module may change depending on which module it is attached to, even if it is the same redundant module. For example, if the motor module, which is a surplus module, is combined next to the infrared sensor module, it is judged that “the purpose is to detect an obstacle and make it roll” and a quest related to riding a vehicle (transportation means) will be selected as the next quest.
- the main module 90 may collect topology information (hereinafter, also referred to as “module topology information”). 12, the module topology information 1048 is basically unique information (module ID) 1048-1 of modules in the module assembly 1, step information 1048-2, and sub-connection module information 1048- 3), a connection rank 1048-4, and a module category 1048-6. Additionally, the module topology information 1048 may further include a connection direction 1048 - 5 .
- the module-specific information 1048 - 1 indicates module IDs 1046 of connected modules included in the module assembly.
- the module unique information 1048 - 1 may be a unique module identifier, such as a universally unique IDentifier (UUID), or a temporary ID given when the control module 10 connects.
- UUID universally unique IDentifier
- the step information 1048-2 means a distance from the control module 10 described above, and is determined by counting modules connected from the control module 10 to the corresponding module on the shortest path. However, in the case of the module attached to the semantic module among the above-mentioned modules, the step information 1048-2 assumes that the semantic module is the control module 10, the distance from the semantic module, or (step specified in the semantic module) + (distance from semantic module) - Can be set to 1. Alternatively, when attached to the semantic module, a large weight may be given to emphasize the importance of the module attached to the semantic module.
- the semantic module is an important module for source code recommendation or module recommendation in the developer program when direct connection with the control module 10 is difficult, for example, by affecting the size of the module or other modules. It is a module for display.
- the motor module or wheel module has an important meaning, but the distance from the control module 10 is reduced due to the size of the wheel, etc. There may be cases where it is difficult to give meaning because it is far away. In this case, if the motor module or wheel module is connected with the semantic module, the user's intention is reflected on the topology, so that the recommendation of the source code or the additional or replacement module can be closer to the user's intention.
- the lower connection module information 1048-3 indicates module-specific information of a module having a lower level than the corresponding module (the distance from the control module 10 is greater). Basically, each module stores information on modules connected to the corresponding module, and when connected to the control module 10 , may provide information on the lower connected modules to the control module 10 .
- connection order 1048 - 4 indicates the order of accessing the control module 10 , and is information that is based when the recommendation server 2 recommends the source code and the module. Since the method for determining the connection order 1048 - 4 has been written in the description of FIG. 5 , a description of the common part will be omitted. When a module group that is a plurality of modules already coupled to the control module 10 is combined, the same common connection rank 1048 - 7 may be assigned to the module group.
- connection direction 1048 - 5 is additional information indicating which ports the lower connection module and the upper connection module are physically connected to.
- the electromagnetic wave of the communication module may affect the sensing of the gyroscope sensor module, so based on the above-described connection direction 1048-4, if possible, They can be placed in positions that do not give each other.
- connection direction information and step information may be utilized.
- the module category 1048 - 6 is information that classifies the module according to the function of the module.
- various sensors such as a microphone, a temperature sensor, a gyroscope sensor, an infrared sensor, and an ultrasonic sensor, and modules that collect input electrical signals such as a dial, a button, and a keyboard may be classified as 'input'.
- an actuator such as a motor, a light emitting diode (LED), a liquid crystal display device, a speaker, or the like may be classified as an 'output'.
- various network modules LTE, Bluetooth, etc.
- LTE Long Term Evolution
- Bluetooth etc.
- a module including a microprocessor and capable of executing an application programmed in the user terminal 3 may be classified as a 'control'. Based on such category information, the server may determine whether a module is a replaceable module or an addable module when recommending a module.
- module order from programming in the present invention may be defined as the module order determined by programming the module topology information included in the module according to the order in which the modules are assembled and programmed in the form of source code.
- FIG. 11 is an exemplary diagram of a source code generated by assembling a module assembly according to an embodiment of the present invention.
- the source code shown in FIG. 11 is merely illustrative for convenience of description and is not actually related to module assembly.
- the coding program 1200 automatically generates the source code 1203 with respect to the user's module assembly information 1201 for the first scene and the user's module assembly information 1202 for the second scene. can do.
- the coding program may be displayed on a partial area of the display unit 27 of the user terminal 2 . Accordingly, the user can set conditions for the module to be assembled when assembling the module for quest performance information related to each scene through coding at the same time as assembly. Referring to the example of FIG. 10 above, when a user combines an LED module to express that a dragon emits red light three times, a source code is generated for a color to be output from the LED module through a coding program, and the You can enter the source code to turn on/off three times so that the color flashes three times.
- the reader receives the source code information for the assembled module as feedback while performing the event element for the story, thereby increasing the interest in coding and guaranteeing a learning result above a certain level.
- an event element is added to evaluate the achievement speed and achievement rate for the event, thereby increasing the reader's interest, improving concentration, and at the same time helping to improve improvisation.
- the reader's understanding of the story can be increased by outputting visual, auditory, etc. through the module in progressing the story, and the reader's participation in the story can be increased by the reader's own production of the story in a variety of ways to induce continuous interest can do it
- Each block in the accompanying block diagram and combinations of each step in the flowchart are composed of firmware, software, or hardware. may be performed by an algorithm or computer program instructions. These algorithms or computer program instructions may be embodied in the processor of a general purpose computer, special purpose computer, or other programmable digital signal processing device, such that the instructions are executed by the processor of the computer or other programmable data processing equipment. These will create a means for performing the functions described in each block of the block diagram or each step of the flowchart.
- These algorithms or computer program instructions may also be stored in a computer-usable or computer-readable memory which may direct a computer or other programmable data processing equipment to implement a function in a particular manner, and thus the computer-usable or computer-readable It is also possible that the instructions stored in the possible memory produce an article of manufacture containing instruction means for performing the functions described in each block of the block diagram or in each step of the flowchart.
- the computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to create a computer or other programmable data processing equipment. It is also possible that instructions for performing the processing equipment provide steps for carrying out the functions described in each block of the block diagram and each step of the flowchart.
- each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing specified logical function(s). It should also be noted that it is also possible for the functions recited in blocks or steps to occur out of order in some alternative embodiments. For example, it is possible that two blocks or steps shown one after another may in fact be performed substantially simultaneously, or that the blocks or steps may sometimes be performed in reverse order depending on the corresponding function.
- the system according to the present invention can be implemented as computer-readable codes on a computer-readable recording medium.
- the computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored.
- the computer-readable recording medium includes a magnetic storage medium (eg, a ROM, a floppy disk, a hard disk, etc.) and an optical readable medium (eg, a CD-ROM, a DVD, etc.).
- the computer-readable recording medium is distributed in a network-connected computer system so that the computer-readable code can be stored and executed in a distributed manner.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Human Computer Interaction (AREA)
- Educational Technology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Manufacturing & Machinery (AREA)
- Toys (AREA)
- Instructional Devices (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Warehouses Or Storage Devices (AREA)
Abstract
본 발명은 복수의 모듈이 조립되어 구성되는 모듈 어셈블리; 및 모듈 어셈블리와 사용자 단말과 네트워크를 통해 연결되는 사용자 단말을 포함하는 모듈을 이용한 독자 참여형 전자책 시스템에 있어서, 적어도 하나의 스토리를 포함하는 전자책 데이터베이스를 사용자 단말로 전송하는 스토리 제공부; 스토리를 구성하는 씬에 대하여 생성되며 스토리 진행을 위해 생성되는 적어도 하나의 퀘스트 수행 정보에 기초한 모듈 조립 정보를 수신하는 조립 정보 수신부; 및 모듈 조립 정보에 대하여 점수화 조건별로 사용자의 모듈 조립에 대한 점수를 생성하는 점수 생성부를 포함하도록 구성된 모듈을 이용한 독자 참여형 전자책 시스템이다.
Description
본 발명은 모듈을 이용한 독자 참여형 전자책 시스템 및 그의 제작 방법에 관한 것으로서, 보다 상세하게는 독자가 모듈을 이용하여 책의 스토리를 구현해 나감에 따라 독자의 참여 및 흥미를 효과적으로 증대시킬 수 있는 모듈을 이용한 독자 참여형 전자책 시스템 및 그의 제작 방법에 관한 것이다.
최근 교육, 취미, 연구, 생산 등을 목적으로 하는 다양한 모듈 기반 제작 도구들이 제안되고 있다. 이러한 제작 도구들에 포함된 모듈들은 각각 특정한 기능을 수행할 수 있으며, 서로 연결되어 모듈 어셈블리를 형성할 수 있도록 제공된다. 이때, 각각의 모듈은 서로 전기적으로도 연결되어 에너지, 신호, 데이터 등을 송수신할 수 있도록 제공될 수도 있다. 독자는 제공된 매뉴얼 또는 스스로 창작한 방식에 따라 모듈들을 조립하여 특정한 목적을 수행하는 모듈 어셈블리를 제작할 수 있다.
일 예로, 특허문헌 1(대한민국 등록특허 제1761596호)은 네트워크 모듈, 구동 모듈, 센서 모듈 등 다양한 종류의 모듈을 조립하여 제작한 모듈 어셈블리를 개시하고 있다. 이때, 모듈 어셈블리는 학생이나 독자가 모듈(10, 20, 30, 40)들을 조립하면서 전자 장치의 작동 원리를 이해할 수 있는 교육용 키트 또는, 연구원이 특정 목적을 수행하기 위한 장치를 제작하기 위해 사용되는 연구용 키트 및 독자가 취미용으로 조립 가능한 장난감 키트 등의 다양한 용도로 활용될 수 있다.
이러한 모듈 어셈블리들은 위에 언급한 바와 같이 소프트웨어 또는 하드웨어의 전문가인 연구원부터 학생, 일반인 등 다양한 사람들이 이용하고 있다. 단, 전문가를 제외한 일반인이나 학생들은 각 모듈들이 제대로 동작할 수 있도록 조립하고, 조립된 모듈 어셈블리를 구동시키기에 적합한 소프트웨어를 작성하여 사용하는 것이 어려울 수 있어서, 상술한 모듈의 보급에 제약이 될 수 있다.
특히, 센서나 버튼 등의 다양한 하드웨어에서 생성된 신호들을 논리 연산하는 등의 코딩들은 다양한 API(Application Program Interface)를 활용해야 하므로, 일반인이나 학생들에게는 난이도가 높은 코딩 기법이 될 수 있다. 따라서, 전자책과 연결된 모듈을 이용함으로써 코딩에 대한 접근이 용이하도록 하는 시스템이 필요하다.
본 발명은 상술한 기술적 문제에 대응하기 위하여 안출된 것으로, 본 발명의 목적은 종래 기술에서의 한계와 단점에 의해 발생하는 다양한 문제점을 실질적으로 보완할 수 있는 것으로, 독자가 모듈을 이용하여 책의 스토리를 구현해 나감에 따라 독자의 참여 및 흥미를 효과적으로 증대시킬 수 있는 모듈을 이용한 독자 참여형 전자책 시스템을 제공하는데 있다.
본 발명의 일 실시예에 따르면 모듈을 이용한 독자 참여형 전자책 시스템은 복수의 모듈이 조립되어 구성되는 모듈 어셈블리; 모듈 어셈블리와 사용자 단말과 네트워크를 통해 연결되는 사용자 단말을 포함하는 모듈을 이용한 독자 참여형 전자책 시스템에 있어서, 적어도 하나의 스토리를 포함하는 전자책 데이터베이스를 사용자 단말로 전송하는 스토리 제공부; 스토리를 구성하는 씬에 대하여 생성되며 스토리 진행을 위해 생성되는 적어도 하나의 퀘스트 수행 정보에 기초한 모듈 조립 정보를 수신하는 조립 정보 수신부; 및 모듈 조립 정보에 대하여 점수화 조건별로 사용자의 모듈 조립에 대한 점수를 생성하는 점수 생성부를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 퀘스트 수행 정보는 스토리를 형성하는 설명문 및 모듈 결합으로 해결해야 하는 지시문을 포함하며, 상기 지시문에 따라 퀘스트를 수행하기 위해 결합되는 필수 모듈은 미리 결정될 수 있다.
본 발명의 일 실시예에 따르면, 퀘스트 수행 정보는 스토리의 진행과는 무관하며 사용자에 의해 임의로 선택되어 조립된 모듈에 의해 생성되는 이벤트 요소를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 이벤트 요소에 의해 스토리와 무관한 히든 스토리를 생성하는 히든 스토리 생성부를 더 포함할 수 있다.
본 발명의 일 실시예에 따르면, 점수화 조건은 사용자가 모듈 어셈블리를 조립하는데 소요된 시간, 연결된 모듈의 종류에 대한 모듈 정보, 모듈의 동작 여부, 활성화된 스토리 정보, 코드 구현 여부, 순발력, 협동 여부 및 코드 구현 시간 중 적어도 하나를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 활성화된 스토리 정보는 모듈 조립에 기초하여 생성된 스토리 라인의 길이일 수 있다.
본 발명의 일 실시예에 따르면, 점수 생성부는 점수화 조건에 대하여 항목별로 가중치를 두어 점수를 부가할 수 있다.
본 발명의 일 실시예에 따르면 점수 생성부는, 점수화 조건에 대하여 기 설정된 가중치에 따라 점수를 생성할 수 있다.
본 발명의 일 실시예에 따르면, 스토리 제공 서버는, 스토리의 난이도에 기초하여 모듈 조립에 대한 기준 시간을 난이도와 비례하도록 상이하게 설정할 수 있다.
본 발명의 일 실시예에 따르면, 이벤트 요소에 대한 사용자의 미션 수행 여부를 판단하는 미션 수행 정보를 수신하는 이벤트 요소 생성부; 및 이벤트 요소에 대한 사용자의 이벤트 수행 정보를 수신하는 이벤트 정보 수신부;를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 스토리 제공 서버는, 모듈 조립 정보에 기초하여 소스 코드를 생성하는 소스 코드 생성부를 더 포함할 수 있다.
본 발명의 일 실시예에 따르면, 모듈 어셈블리는 입력 모듈 및 출력 모듈 중 적어도 하나를 포함하고, 입력 모듈은 환경 모듈, 버튼 모듈, 자이로스코프 모듈, 마이크 모듈, 적외선 모듈, 다이얼 모듈 및 초음파 모듈 중 적어도 하나이고, 출력 모듈은 LED 모듈, 스피커 모듈, 디스플레이 모듈, 모터 컨트롤러 모듈 및 모터 모듈 중 적어도 하나일 수 있다.
본 발명의 일 실시예에 따르면, 상기 퀘스트와 무관하게 사용자에 의해 결합되는 잉여 모듈, 토폴로지 및 프로그래밍에서 나오는 모듈 순서 중 적어도 하나를 고려하여 상기 퀘스트 이후로 나오는 넥스트 퀘스트가 결정될 수 있다.
본 발명의 일 실시예에 따르면, 넥스트 퀘스트에 대하여 모듈을 조립하는 경우, 상기 넥스트 퀘스트 직전에 수행한 이전 퀘스트에 대한 모듈 조립을 초기화한 후 조립할 수 있다.
*본 발명의 일 실시예에 따르면, 네트워크는 유선 및/또는 무선 연결될 수 있다.
본 발명의 일 실시예에 따르면, 복수의 모듈 각각은 모듈 고유의 식별자인 모듈 고유 정보를 포함하고, 모듈 어셈블리 내에는 사용자를 구분하기 위한 적어도 하나의 세트 고유 정보를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따르면 복수의 모듈을 포함하는 모듈을 이용한 전자책 시스템의 동작 방법에 있어서, 스토리 제공부에 의해 적어도 하나의 스토리를 포함하는 전자책 데이터베이스를 사용자 단말로 전송하는 단계; 조립 정보 수신부에 의해 스토리를 구성하는 씬에 대하여 생성되며 스토리 진행을 위해 생성되는 적어도 하나의 퀘스트 수행 정보에 기초한 모듈 조립 정보를 수신하는 단계; 및 점수 생성부에 의해 모듈 조립 정보에 대하여 점수화 조건별로 사용자의 모듈 조립에 대한 점수를 생성하는 단계를 포함할 수 있다.
본 발명에 따른 과제의 해결수단은 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
본 발명의 실시예들에 의하면 적어도 다음과 같은 효과가 있다.
본 발명에 따르면, 독자가 모듈을 조립하여 다양한 스토리를 연출할 때 이벤트 요소를 부가하여 이벤트에 대한 달성 속도 및 달성률 등을 평가함으로써 독자의 흥미를 높여 집중력을 향상시킴과 동시에 순발력을 향상시키는데 도움을 줄 수 있다.
본 발명에 따르면, 스토리를 진행함에 있어서 모듈을 통해 시각, 청각 등을 출력함으로써 스토리에 대한 독자의 이해도를 높힐 수 있고, 독자가 스스로 스토리를 다양하게 연출함으로써 독자의 참여도를 높여 지속적인 흥미를 유발시킬 수 있다.
본 발명에 따르면 독자가 스토리에 대한 이벤트 요소를 수행해 나가면서 조립한 모듈에 대한 소스 코드 정보를 피드백 받음으로써 코딩에 대한 관심도를 증가시키고 일정 수준 이상의 학습 결과를 보장할 수 있다.
본 발명에 따르면 다양한 스토리를 갖는 전자 동화책을 모듈과 연결시켜 활용하도록 함으로써 제품의 효용성을 높일 수 있다.
본 발명에 따르면, 모듈이 조립되는 코딩의 전 과정을 점수화하여 유저들간의 경쟁력을 강화시키며 다양한 창의적인 스토리를 창출할 수 있다.
본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.
도 1은 본 발명의 실시예에 따른 모듈 어셈블리가 조립된 모습을 보여주는 사시도이다.
도 2는 본 발명의 실시예에 따른 모듈의 내부 구조를 보여주는 평면도이다.
도 3은 본 발명의 실시예에 따른 모듈을 이용한 독자 참여형 전자책 시스템을 나타낸 개략도이다.
도 4는 본 발명의 실시예에 따른 스토리 제공 서버의 구성을 나타낸 블럭도이다.
도 5는 본 발명의 실시예에 따른 메인 모듈의 구성 요소를 설명하기 위한 블럭도이다.
도 6은 본 발명의 실시예에 따른 독자 참여형 전자책 시스템의 동작을 개략적으로 도시한 순서도이다.
도 7은 본 발명의 실시예에 따른 독자 참여형 전자책 시스템의 전체적인 스토리를 설명하기 위한 예시도이다.
도 8은 본 발명의 실시예에 따른 전자책에 대한 예시도이다.
도 9 내지 도 10은 본 발명의 실시예에 따른 독자 참여형 전자책과 모듈의 연결을 설명하기 위한 예시도이다.
도 11은 본 발명의 실시예에 따른 모듈 어셈블리의 조립에 따라 생성된 소스 코드의 예시도다.
도 12는 본 발명의 실시예에 따른 토폴로지 정보를 설명하기 위한 표이다.
발명의 이점, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 발명의 실시예를 설명하기 위한 도면에 개시된 형상, 크기, 비율, 각도, 개수 등은 예시적인 것이므로 본 발명이 도시된 사항에 한정되는 것은 아니다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다. 본 명세서 상에서 언급된 '포함한다', '갖는다', '이루어진다' 등이 사용되는 경우, '~만'이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성요소를 단수로 표현한 경우에 특별히 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함한다.
구성요소를 해석함에 있어서, 별도의 명시적 기재가 없더라도 오차 범위를 포함하는 것으로 해석한다.
본 발명의 여러 실시예들의 각각 특징들이 부분적으로 또는 전체적으로 서로 결합 또는 조합 가능하며, 당업자가 충분히 이해할 수 있듯이 기술적으로 다양한 연동 및 구동이 가능하며, 각 실시예들이 서로에 대하여 독립적으로 실시 가능할 수도 있고 연관 관계로 함께 실시 가능할 수도 있다.
이하, 도 1 및 도 2를 참조하여 본 발명에 실시예에 따른 모듈 어셈블리를 상세히 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 모듈 어셈블리가 조립된 모습을 보여주는 사시도이다. 도 2는 본 발명의 실시예에 따른 모듈의 내부 구조를 보여주는 평면도이다.
도 1을 참조하면, 모듈 어셈블리(1)는 서로 조립 가능한 복수개의 모듈(10, 20, 30, 40)들로 구성된다.
본 실시예에서 모듈 어셈블리(1)는 서로 조립 가능한 하나 이상의 모듈들(10, 20, 30, 40)의 집합 또는 이들이 조립된 구조체로 정의될 수 있으며, 그 목적, 종류, 형태, 모듈의 개수 등에 의해 제한되지 않는다. 예를 들어, 모듈 어셈블리(1)는 학생이나 독자가 모듈들을 조립하면서 전자 장치의 작동 원리를 이해할 수 있는 교육용 키트의 일부일 수 있다. 또는, 모듈 어셈블리(1)는 연구원이 특정 목적을 수행하기 위한 장치를 제작하기 위해 사용되는 연구용 키트의 일부일 수 있다. 또는, 모듈 어셈블리(1)는 독자가 취미용으로 조립 가능한 장난감 키트의 일부일 수 있다.
설명의 용이함을 위하여 본 실시예에서는 모듈 어셈블리(1)가 도 1에 도시된 바와 같이 네 개의 모듈들(10, 20, 30, 40)로 구성된 것으로 예를 설명하며, 각각 제1 모듈(10), 제2 모듈(20), 제3 모듈(30) 및 제4 모듈(40)로 지칭한다.
복수개의 모듈(10, 20, 30, 40)은 전압 또는 전류의 변화로서 나타내는 신호, 데이터, 또는 전기 에너지(이하, “전기적 신호”라고도 함)를 다른 모듈 또는 외부 장치와 송수신할 수 있도록 구성된 객체로 정의될 수 있다. 이러한 모듈들(10, 20, 30, 40)은 중앙처리장치(CPU), 메모리, 전원 등을 구비하거나 또는 다른 모듈의 제어를 받아 작동 가능한 감지(Sensing) 수단, 처리(Processing) 수단 및 구동(Driving) 수단 등을 구비하여 각각 독립적으로 구동 가능할 수 있다.
또한, 각각의 모듈들(10, 20, 30, 40)은 독립적으로 특정한 기능을 수행하거나, 다른 모듈과의 상호 작용에 의해 특정한 기능을 수행하도록 구성될 수도 있다. 모듈들이 중앙처리장치(CPU)를 구비하는 경우에는 각각의 모듈별로 펌웨어(Firmware)가 설치될 수도 있다. 본 명세서에서는 복수개의 모듈(10, 20, 30, 40) 중 제1 모듈(10)은 메인 모듈로 기능하는 것으로 기재하였으며, 이와 관련된 구체적인 내용은 도 5를 참조하여 후술하기로 한다.
또한, 각각의 모듈들(10, 20, 30, 40)은 크게 입력(Input) 모듈, 출력(Output) 모듈, 셋업(Setup) 모듈로 구분할 수 있다.
여기서, 입력 모듈은 리모컨 등으로부터 적외선 신호를 수신할 수 있는 적외선 모듈(IR(Infrared) module), X,Y,Z축 변화 각도와 가속도를 감지할 수 있는 자이로스코프 센서 모듈(Gyroscope module), 모듈 손잡이의 회전을 이용하여 회전 각도 혹은 회전 속도를 측정할 수 있는 다이얼 모듈(Dial module), 버튼의 눌림을 감지하여, 클릭, 더블 클릭, 눌린 상태를 감지하고, 토글(Toggle)을 사용해 온/오프(On/Off) 상태가 유지될 수 있도록 하는 버튼 모듈(Button module), 온도, 습도, 조도 등을 측정할 수 있는 환경 모듈(Environment module), 주변의 소리 세기(dB)와 주파수를 감지할 수 있는 마이크 모듈(Mic module) 및 거리를 감지할 수 있는 초음파 모듈(Ultrasonic module) 등으로 구성될 수 있다.
출력 모듈은 색 변경에 따른 시각적 표시가 가능한 LED 모듈(LED module), 스피커 모듈(Speaker module), 독자가 그린 그림이나, 글자 또는 모듈 정보 등을 화면에 표시하는 디스플레이 모듈(Display module), 속도, 각도, 토크(Torque)를 설정하여 전기 신호를 모터 모듈로 보내서 회전 운동을 시켜주는 모터 컨트롤러 모듈(Motor Controller module), 또는 모터 컨트롤러에서 받은 전기적 신호를 회전운동으로 변환할 수 있는 모터 모듈(Motor; MDP-14) 등으로 구성될 수 있다.
셋업 모듈은 다른 모듈에 전원을 공급할 때 사용되는 배터리 모듈(Battery module) 및 블루투스(Bluetooth), 와이파이(WiFi) 혹은 USB 연결을 통해 모듈을 PC, 스마트폰 또는 모듈과 연결시킬 수 있는 네트워크 모듈(Network module) 등으로 구성될 수 있다.
또한, 각각의 모듈들(10, 20, 30, 40)은 외부의 구동 장치(41)와 케이블(42)에 의해 연결될 수도 있다. 이 경우, 모듈 어셈블리(1)는 리모컨 또는 스마트폰의 신호를 수신하여 모터를 선택적으로 작동시키는 장치일 수 있다. 상기와 같은 모듈 어셈블리(1)의 구성은 하나의 예에 불과하며, 각각의 모듈(10, 20, 30, 40)은 독립적으로, 또는 다른 모듈과의 연동을 통해 임의의 기능을 수행할 수 있도록 제공될 수 있다.
모듈들(10, 20, 30, 40)은 이웃하는 다른 모듈과 면 접촉 가능하도록 복수 개의 측면을 갖는 다각형 기둥 형상인 입체일 수 있다. 여기서, 면 접촉은 측면의 모든 면적이 모두 접촉되는 것만을 의미하는 것은 아니며, 측면의 일부만 접촉되어 어느 하나의 모듈의 측면과 다른 모듈의 측면이 서로 마주보며 일부분이 접촉되는 것을 포함하는 의미로 이해되어야 한다
본 실시예에서는 모듈들(10, 20, 30, 40)이 정사각형 형상의 평면을 갖는 것을 예로 들어 도시하였다. 즉, 본 실시예에서의 모듈들은 4개의 측면을 갖는 직육면체인 것을 예로 설명한다. 한편, 다른 실시예로서 모듈들(10, 20, 30, 40)은 평면상 정삼각형, 직사각형, 정오각형 등의 다각형 기중 형상으로 형성될 수도 있고, 특히, 정다각형 형상으로 형성될 수 있다. 일부의 모듈들이 서로 다른 입체적 형상을 가질 수도 있다. 또한, 모듈들 중 일부는 뿔, 다면체 등의 다양한 입체적 형상을 가질 수도 있다.
이하에서는, 복수의 모듈들 중에서 제1 모듈(10)을 기초로 모듈의 구성을 설명하기로 한다.
여기서, 제1 모듈(10)은 외관을 형성하는 하우징(11)과, 상기 하우징(11)의 측면에 노출되어 전기 신호 등을 연결된 다른 모듈에 전달하거나 수신할 수 있는 단자(107)와, 하우징의 외부로 선택적으로 돌출되는 핀(180)이 제공된 핀 설치부(150) 및 다른 모듈의 핀이 삽입되는 핀 수용부(160)를 포함할 수 있다.
한편, 제1 모듈(10)의 일 측면에는 외부 장치와 통신할 수 있는 시리얼 포트(Serial Port)를 포함할 수 있다. 예컨대, 시리얼 포트는 USB(Universal Serial Bus), USB-C type, IEEE 1394, 썬더볼트(Thunderbolt) 등의 유선 시리얼 통신을 할 수 있는 다양한 규격의 포트를 사용할 수 있다.
하우징(11)은 평면이 정사각형인 직육면체 형상으로 형성된 케이스로서, 내부의 구성품들을 보호한다. 하우징(11)은 도 1에 도시된 바와 같이 상부 케이스(11a)와 하부 케이스(11b)가 결합되는 형태로 제공될 수 있다. 하우징(11)을 구성하는 방법은 필요에 따라 상부 케이스(11a)와 하부 케이스(11b)가 일체로 형성되거나, 더 많은 부분으로 나뉘어 조립될 수도 있다.
단자(107)는 전기 신호 등을 연결된 다른 모듈에 전달하거나 다른 모듈로부터 받을 수 있으며, 일 예로 하우징(11)의 내부에 제공된 기판(102)으로부터 전기 신호 등을 전달받아 단자에 접촉된 다른 모듈의 단자로 전달할 수 있다. 단자(107)는 다수 개의 접촉 점이나 연결 핀을 가질 수 있으며, 이는 전기 신호 등의 전달 방법, 표준화된 규격 등에 따라 다양한 형태를 가질 수 있다.
이와 같은 단자(107)는 핀(180), 핀 설치부(150), 핀 수용부(160)와 한 세트를 이루어 하우징(11)의 일 측면에 배치될 수 있다. 구체적으로, 단자(107)는 핀(180)과 핀 수용부(160) 사이에 배치될 수 있으며, 다른 모듈의 핀과 핀 수용부 사이에 배치된 단자에 접촉될 수 있다.
본 실시예에서는 하우징(11)의 모든 측면에 단자(107)가 제공되는 것을 예로 들었으나, 실시예에 따라서는 단자(107)가 형성되지 않은 측면이 존재할 수도 있다.
도 2를 참조하면, 하부 케이스(11b)는 외형 및 내부 구조를 형성하는 프레임(100), 프레임(100)의 내측에 제공되는 기판(102) 및 기판(102)에 설치되는 기능 유닛(104)을 포함할 수 있다.
프레임(100)은 하우징(11)의 일부 또는 전부를 구성하는 구조물로서, 하우징(11)의 일부 또는 전부의 외형을 형성하고, 내부에 각종 부품이 설치되기 위한 공간과 구조를 제공할 수 있다. 본 실시예에서 프레임(100)은 하우징(11)의 하부 케이스(11b)를 형성하는 것을 예로 들어 설명하나, 본 발명의 권리범위는 이에 한정되지 않는다. 또한, 본 실시예에서 프레임(100)은 사각형 형상으로 형성되며, 4개의 코너(corner, 101)를 갖는다.
기판(102)에는 제1 모듈(10)의 기능을 구현하기 위한 기능 유닛(104)이 실장될 수 있으며, 프레임(100)의 내측 공간 중앙부에 고정 설치될 수 있다. 기능 유닛(104)은 예를 들어 마이크로프로세서(105)를 포함할 수 있으며, 이때 제1 모듈(10)이 독립적인 펌웨어에 의해 구동되면 제1 모듈(10)을 제어하기 위해 제공될 수 있다.
또 다른 예로서, 제1 모듈(10)이 적외선 센서 모듈인 경우, 기능 유닛(104)은 적외선 센서 및 적외선 센서로부터 감지된 값을 처리하는데 필요한 ADC(Analog Digital Converter) 및 다른 모듈 또는 외부 하드웨어와 통신하는 데 필요한 인터페이스 예컨대, I2C 또는 UART, 또는 USB 등의 통신 인터페이스 등 필요한 디바이스들을 포함할 수 있다. 이처럼 본 발명의 모듈(10, 20, 30, 40)은 상술한 기능 유닛(104)의 기능에 따라 모듈의 종류가 정해질 수 있다.
또 다른 예로서, 기능 유닛(104)이 마이크로프로세서(105) 및 메모리를 포함하고 있으며, 다른 유닛들을 제어할 수 있는 OS 또는 펌웨어를 포함하고 있는 경우에는 컨트롤 모듈이 된다.
또는, 기능 유닛(104)이 센서의 센싱 값을 다른 모듈 또는 외부 디바이스에 전달할 수 있는 경우에는 센서 모듈이 된다.
또는, 기능 유닛(104)이 NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, 케이블 모뎀 등 다양한 유무선 통신 장치를 포함하면서 다른 모듈로부터 전기적 신호를 수신하여 상술한 유무선 통신 장치를 통하여 다른 외부 디바이스에 전기적 신호를 전송할 수 있는 경우에는 통신 모듈이 될 수 있다.
또는, 기능 유닛(104)이 모터 등의 다양한 액추에이터 및 액추에이터 제어 회로들을 포함하여 구동이 가능하게 하는 경우에는 구동 모듈이 될 수 있다. 기타 본원 발명의 모듈의 더욱 상세한 구조 및 결합에 대해서는 대한민국 등록특허 공보 제10-1761596에 상세하게 기재되어 있으며, 본원 특허 명세서에 참조로서 포함된다.
이하, 도 3을 참조하여 본 발명의 실시예에 따른 독자 참여형 전자책 시스템에 대하여 설명하기로 한다.
도 3은 본 발명의 실시예에 따른 모듈을 이용한 독자 참여형 전자책 시스템을 나타낸 개략도이다.
도 3을 참조하면, 모듈을 이용한 독자 참여형 전자책 시스템은 모듈 어셈블리(1) 및 사용자 단말(2)을 포함할 수 있다. 이 경우, 모듈 어셈블리(1)는 인터넷, 인트라넷, 또는 광대역 통신망 등의 네트워크를 통하여 사용자 단말(2)과 연결될 수 있다. 또는 유무선 통신 특히, 시리얼 포트 연결을 통하여 사용자 단말(2)과 직접 연결될 수도 있다. 아울러, 네트워크는 USB, RS-222 및 IEEE1394 등의 유선 근거리 통신 수단, WiFi 및 Bluetooth 등의 무선 근거리 통신 수단 및 인터넷 연결 등을 포함할 수 있다. 이때, 사용자 단말(2)은 모듈 어셈블리(1)를 구동시킬 수 있는 프로그램의 소스 코드를 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴을 제공할 수 있다. 이러한 소스 코드의 작성, 추천 및 컴파일(또는 인터프리트)할 수 있는 저작툴에 대해서는 본 출원인이 이전에 발명한 대한민국 특허출원 제10-2018-0114166호 및 제10-2018-0114171호에 상세하게 기재되어 있으며, 위의 두 특허는 참조로서 포함된다. 한편, 본 명세서에서 모듈을 이용한 독자 참여형 전자책 시스템은 모듈 어셈블리(1) 또는 사용자 단말(2)과 연결되는 스토리 제공 서버(2)를 더 포함할 수도 있다.
사용자 단말(2)은 네트워크를 통하여 모듈 어셈블리(1)로부터 조립 정보를 수신할 수 있으며, 이러한 조립 정보를 데이터베이스로 저장할 수 있다. 조립 정보에 기초하여 소스 코드를 생성할 수 있다. 사용자 단말(2)은 사전에 미리 구성해두었거나 기존 사용자들이 이미 사용한, 모듈 어셈블리 조립 정보 이력 및 이에 대응되는 소스 코드를 데이터베이스로 저장하고 현재 사용자의 모듈 어셈블리(1)의 조립 정보 및 데이터베이스에 기초하여 소스 코드를 제공할 수 있다.
또한, 사용자 단말(2)은 조립 정보에 기초하여 조립 오류 여부를 판단하고 조립 오류 정보를 모듈 어셈블리(1)에게 제공하고, 모듈을 제거, 치환 및 추가할 수 있도록 조립 도움 정보를 모듈 어셈블리(1)에게 제공한다. 조립 정보는 이하 도 4 등을 이용하여 상세히 후술한다.
또한, 사용자 단말(2)이 소스 코드를 제공함에 있어서, 사용자 단말(2)은 사용자의 모듈 어셈블리(1)의 조립 정보에 기초하여, 모듈 어셈블리(1)의 조립 시간(이하, “모듈 결합 시 소요된 시간”이라고도 함), 사용된 모듈의 개수, 사용된 모듈의 종류, 모듈의 동작 정보, 저장된 스토리와 생성된 스토리와의 유사도 및 모듈의 동작 여부 등을 점수화할 수 있다. 여기서, 나열된 복수의 항목들은 점수화 조건으로 지칭될 수도 있으며, 상술한 종류에 한정되는 것은 아니다. 예컨대, 점수화 조건을 위한 복수의 항목들은 제거 시 소요된 시간, 같은 문제 해결 시 사용한 모듈의 개수(이 경우, 점수화 조건은 “효율”이라고도 함), 모듈 대체 시 소요되는 시간(이하, “순발력”이라고도 함), 2인 이상의 사용자가 협동하여 모듈을 조립하거나 코딩을 완성한 경우(이 경우, 점수화 조건은 “협동”이라고 함) 등을 포함할 수 있다. 이와 관련한 구체적인 내용은 추후 설명하기로 한다.
또한, 사용자 단말(2)은 상기 소스 코드의 실행 규칙의 정합성을 체크하여, 모듈 어셈블리(1) 조립에 오류가 있는지 여부를 판단하고, 모듈 어셈블리(1)에 조립 오류 정보를 제공한다. 사용자 단말(2)은 모듈 어셈블리(1)가 실행 규칙에 맞게 배열되어 조립되어 있는지 등을 실행 규칙의 정합성으로 체크한다. 조립 오류 정보는 오류가 발생한 적어도 하나의 모듈 고유 정보(모듈 ID)를 포함한다. 모듈 어셈블리(1)는 사용자 단말(2) 또는 스토리 제공 서버(2)로부터 제공받은 조립 오류 정보에 기초하여, 적어도 하나의 오류가 있는 모듈에 조립 오류가 있음을 출력한다. 모듈 어셈블리(1)는 적어도 하나의 오류가 있는 모듈의 LED를 소정의 색깔로 점멸시킴으로써, 조립 오류가 있음을 출력할 수 있으나, 다른 방식으로 조립 오류가 있음을 출력할 수 있음은 당업자에게 자명하다.
또한, 사용자 단말(2)은 조립 정보에 기초하여 제거, 치환 및 추가할 위치의 모듈 정보와 그 위치를 추천할 수 있다. 전술한 바와 같이, 사용자 단말(2)은 현재 조립된 모듈 어셈블리(1)의 조립 정보 및 데이터베이스에 기초하여 소스 코드를 제공한다. 사용자 단말(2)은 상기 소스 코드에 기초하여, 모듈 어셈블리(1)에서 제거, 치환 및 추가할 위치의 모듈 정보와 그 위치를 추천한다. 이 경우, 추가 또는 치환할 위치의 모듈 정보는 모듈 어셈블리(1)의 현재 구성에서, 모듈을 추가 부착하여 현재 구성 대비 추가적인 동작을 수행하거나, 또는 현재 구성에서 치환할 수 있는 모듈에 대한 정보를 의미한다.
또한, 사용자 단말(2)은 현재 조립된 모듈 어셈블리(1)의 상기 소스 코드의 실행 규칙의 정합성을 체크하여, 제거, 치환 및 추가할 위치의 모듈 정보와 그 위치를 조립 도움 정보에 포함하여 모듈 어셈블리(1)에게 제공한다. 모듈 어셈블리(1)는 제거, 치환 및 추가할 위치의 모듈의 LED를 소정의 색깔 및 소정의 방향으로 점멸시킴으로써, 제거, 치환 및 추가할 위치의 모듈 및 그 위치를 출력할 수 있으나, 다른 방식으로 출력할 수 있음은 당업자에게 자명하다. 이때 사용자 단말(2) 또는 스토리 제공 서버(2)가 복수의 제거, 치환 및 추가할 위치의 모듈 정보와 그 위치를 제공하는 경우, 외부 입력에 기초하여 선호하는 모듈 정보를 선택할 수 있다.
또한, 사용자 단말(2)은 조립 정보에 기초하여, 디버깅용 소스 코드를 생성한다. 사용자 단말(2)은 사전에 미리 구성해 두었거나 기존 사용자들이 이미 사용한, 모듈 어셈블리 조립 정보 이력 및 이에 대응되는 디버깅용 소스 코드를 데이터베이스로 저장하고 현재 사용자의 모듈 어셈블리(1)의 조립 정보 및 데이터베이스에 기초하여 디버깅용 소스 코드를 제공한다. 사용자 단말(2)은 디버깅용 소스 코드를 컴파일한 실행 파일(이하, 펌웨어)을 모듈 어셈블리(1)에게 제공한다. 디버깅용 펌웨어는 모듈 어셈블리(1)에 다운로드된다. 디버깅용 펌웨어는 모듈 어셈블리(1)의 실행 순서에 따라, 실행되는 모듈의 LED를 소정의 속도로 점멸시킨다. 디버깅용 펌웨어는 입력 모듈에서 입력 순서를 기다리는 경우, LED 색깔을 소정의 색깔로 다르게 점멸시킬 수 있다.
또한, 사용자 단말(2)은 모듈 어셈블리(1) 조립 시 세트 고유 정보(세트 ID)가 두 종류 이상 섞여 있는지 여부를 판단할 수 있다. 다시 말해, 세트 고유 정보는 모듈 어셈블리(1) 조립 시 하나의 모듈 어셈블리 내에 복수의 사용자가 조립에 참여했는지를 판단할 수 있다. 예컨대, 하나의 모듈 어셈블리(1) 내에 제1 세트 고유 정보와 제2 세트 고유 정보가 있는 경우 두 명의 사용자가 조립에 참여한 것으로 판단할 수 있다. 즉, 한 명의 사용자가 모듈을 조립할 경우 모듈 어셈블리(1)에는 하나의 세트 고유 정보(세트 ID)가 생성되고, 복수의 사용자가 모듈을 조립할 경우 모듈 어셈블리(1)에는 복수의 세트 ID가 생성되게 된다. 이에 따라, 사용자 단말(2)은 조립된 하나의 모듈 어셈블리(1)에 적어도 둘 이상의 세트 고유 정보(세트 ID)가 포함된 경우, 복수의 사용자가 모듈 조립에 참여하고 있다고 판단하여 점수 생성 시, 이를 고려하여 점수에 반영할 수 있다. 예컨대, 점수화 조건인 복수의 항목에 협동 여부를 추가하여 점수에 반영하거나, 사용자 별로 점수를 따로 매김으로써 사용자 간의 경쟁력을 도모할 수도 있다.
이하, 도 4를 참조하여 본 발명의 실시예에 따른 스토리 제공 서버(2)의 구성 및 동작에 대해 구체적으로 설명하기로 한다.
도 4는 본 발명의 실시예에 따른 스토리 제공 서버의 구성을 나타낸 블럭도이다.
도 4를 참조하면, 스토리 제공 서버(2)는 스토리 제공부(21), 조립 정보 수신부(22), 이벤트 요소 생성부(23), 이벤트 정보 수신부(24), 코드 생성부(25), 점수 생성부(26), 디스플레이부(27) 및 데이터베이스(28)를 포함한다.
스토리 제공부(21)는 적어도 하나의 스토리를 전자책 형태로 사용자 단말에 전송하는 구성이다. 전자책은 복수의 씬(Scene)구성된 스토리를 제공할 수 있다. 이때, 스토리는 다양한 결말을 가진 스토리일 수 있으며 이와 관련된 구체적인 내용은 추후 설명하기로 한다. 한편, 데이터베이스(28)는 전자책 데이터베이스라고 지칭될 수도 있다. 각각의 스토리와 모듈과의 연결 관계에 대한 구체적인 내용은 추후 설명하기로 한다.
또한, 스토리를 구성하는 적어도 하나의 씬에는 텍스트, 그림, 동영상 중 어느 하나 또는 적어도 하나의 조합의 형태로 이루어진 스토리 정보가 포함될 수 있다. 여기서, 텍스트는 단어, 문장, 문단 단위로 제공되어 디스플레이부(27)에 표시될 수 있다. 또한, 씬은 상기 스토리 정보가 표시되는 스토리 영역 및 현재 씬에 대한 퀘스트 정보가 표시되는 퀘스트(Quest) 영역을 포함할 수 있으며, 각 영역의 위치는 실시예에 따라 변경될 수도 있다. 이때, 스토리 영역 및 퀘스트 영역에 대한 구체적인 내용은 추후 설명하기로 한다.
조립 정보 수신부(22)는 씬 마다(혹은 일부 씬 마다) 포함된 스토리와 관련된 적어도 하나의 상기 퀘스트 수행 정보 중 선택된 하나의 퀘스트 수행 정보에 상응하는 모듈이 조립되면 조립된 상기 모듈에 대한 정보(이하, “모듈 조립 정보”라고도 함)를 수신하는 구성이다. 여기서, 퀘스트 수행 정보는 스토리 진행을 위한 요소로써 이해되는 것이 바람직하며, 퀘스트 수행 정보의 선택에 따른 퀘스트 간의 연결이 스토리 라인인 것을 특징으로 한다.
이벤트 요소 생성부(23)는 씬에 포함된 스토리와 관련한 이벤트 요소를 사용자 단말로 제공하는 구성으로서, 이벤트 요소에 대한 조립에 따라 히든 스토리가 생성될 수 있다. 또한, 이벤트 요소는 스토리를 진행하는데 있어 사용자의 흥미를 유발시킬 수 있도록 모듈 조립만 아닌 모션 동작을 요구할 수 있다. 예컨대, 용사가 용을 마주친 경우, 사용자에게 “마이크 모듈을 이용하여 일정 dB(데시벨) 이상으로 소리를 질러 용을 무찌르세요”와 같은 이벤트 요소를 제공할 수 있다. 이때, 이벤트 요소는 사용자 단말의 디스플레이부(27)를 통해 텍스트로서 출력되거나, 사용자 단말의 스피커부를 통해 음성으로서 출력될 수도 있다. 한편, 히든 스토리는 이벤트 요소에 대한 조립에 의해 생성되는 것으로 제한되는 것은 아니며, 사용자가 스토리 진행과 무관한 임의의 모듈(이하, “스토리 진행 시 생략 가능한 모듈”이라고도 함)을 조립함에 따라 생성될 수도 있는 것을 특징으로 한다.
이에 따라, 이벤트 정보 수신부(24)는 사용자가 특정 모듈을 이용하여 상기 이벤트 요소에 대한 미션을 수행하고, 미션 수행을 완료한 경우(즉, 사용자가 해당 모듈의 조립을 완성한 경우)에 사용자 단말이 미션 수행을 완료했다는 정보(이하, “이벤트 수행 정보”라고도 함)를 수신하는 구성이다.
한편, 본 발명에서는 실시예에 따라 스토리와 무관하며 이벤트 요소에 의해 히든 스토리를 생성하는 별도의 히든 스토리 생성부를 포함할 수도 있다.
코드 생성부(25)는 모듈 조립 정보에 기초하여 소스 코드를 생성하는 구성이다. 코드 생성부(25)는 소스 코드를 사전에 미리 구성해 두거나 기존 사용자들이 이미 사용한 모듈 어셈블리 조립 정보 이력 및 이에 대응되는 소스 코드를 데이터베이스(28)로 저장하고 현재 사용자의 모듈 어셈블리(1)의 조립 정보 및 데이터베이스(28)에 기초하여 소스 코드를 제공할 수 있다.
점수 생성부(26)는 스토리에 대한 모듈 조립 정보가 저장된 데이터베이스(28)를 기반으로 현재 사용자로부터 조립되는 모듈 조립 정보를 비교하여 모든 과정을 복수의 점수화 조건에 따라 점수를 생성하는 구성이다. 또한, 점수 생성부(26)는 모듈 조립 정보에 대하여 기 설정된 가중치를 기초로 점수를 생성한다. 여기서, 기 설정된 가중치는 모듈 조립 시 소요된 시간, 사용한 모듈의 종류의 수, 사용된 모듈의 수, 저장된 스토리와의 유사성 등을 포함하는 복수의 모듈 조립 정보 중 어느 하나 또는 그 이상의 조건에 대하여 가중치가 비율별로 설정될 수 있다. 예컨대, 모듈 조립 시 소요된 시간이 짧은 경우에 가중치를 설정하거나, 사용한 모듈의 종류의 수가 적을수록(또는 많을수록) 가중치를 설정하거나, 사용한 모듈의 수가 많을수록(혹은 적을수록) 가중치를 설정하거나, 또는 데이터베이스(28)에 저장된 스토리와 유사도가 높을수록 가중치를 설정할 수 있다. 또한, 점수 생성부(26)는 조립이 완성되기까지 소요된 시간, 완성 시까지 결합, 제거한 횟수, 서버에 저장된 통계와 대비하여 상기 통계를 기준으로 가중치를 부여하여 점수를 생성하여 완성도를 평가할 수도 있다. 또한, 점수 생성부는, 같은 문제 해결 시 사용한 모듈의 개수를 기반으로 점수를 생성하여 효율성을 평가할 수 있다. 또한, 점수 생성부(26)는 바람직한 스토리에 가까운, 예컨대, 서버에 기 저장된 패턴과 유사하게(또는 비유사하게) 배치된 사례에 가중치를 두어 문제에 따른 해결 방법이 저장된 데이터베이스를 기초로 패턴의 유사성을 비교하여 유사도를 평가할 수도 있다. 또한, 점수 생성부(26)는 두 명 이상이 협동하여 모듈을 조립하거나 코딩을 완성한 경우에 가중치를 두어 점수를 생성하여 협동성을 평가할 수도 있다. 이때, 협동성과 관련하여 추후 도 6을 참조하여 후술하기로 한다. 또한, 점수 생성부(26)는 관리자가 제한하는 모듈을 다른 모듈로 대체하는 데 걸리는 시간을 측정하거나, 작동이 되지 않는 입력 모듈/출력 모듈을 대체 모듈로 대체하는 데 걸리는 시간 등을 측정하여 순발력을 평가할 수도 있다. 다만, 이 밖에도 다양한 경우가 포함될 수 있으며 이에 제한되는 것은 아니다.
디스플레이부(27)는 스토리 정보, 퀘스트 수행 정보, 이벤트 요소 등을 스마트폰, 컴퓨터 또는 전용 디스플레이 등과 연결하여 이미지, 영상 등 다양한 형태로의 출력을 수행하는 구성이다. 여기서, 스토리 정보는 스토리의 제목, 스토리의 저자, 스토리의 길이 등을 의미하는 것일 수 있다. 퀘스트 수행 정보는 사용자가 모듈 조립을 통해 스토리를 진행할 수 있게 하는 구성을 의미하는 것일 수 있다.
데이터베이스(28)는 전자책에 포함되는 스토리의 장르, 스토리의 저자 정보, 키워드, 출판 정보, 컨텐츠 정보, 등을 저장할 수 있다. 또는 전자책을 제공하는 사용자 단말과 유/무선 네트워크를 통해 연결되는 모듈 어셈블리(1)에 대한 모듈 정보를 저장하고 관리할 수 있다.
한편, 상술한 구성들은 사용자 단말(2)에 포함되어 동작되는 것으로 설명하였으나, 실시예에 따라 추가되고 상기 모듈 어셈블리(1)와 사용자 단말(2)과 네트워크를 통해 연결되는 스토리 제공 서버에 포함되어 동작될 수도 있다.
이하, 도 5를 참조하여 본 발명의 실시예에 따라 메인 모듈로 동작하는 제1 모듈(10)의 구성 및 동작에 대해 구체적으로 설명하기로 한다.
도 5는 본 발명의 실시예에 따른 메인 모듈의 구성 요소를 설명하기 위한 블럭도이다. 도 5에서는 상술한 바와 같이, 설명의 편의상 제1 모듈(1)을 메인 모듈(10)이라고 지칭하기로 한다. 또한, 본 명세서에서 메인 모듈(10)은 하나인 것으로 설명하였으나, 복수 개 일 수도 있다.
도 5를 참조하면, 메인 모듈(10)은 조립 정보 감지부(101), 조립 정보 생성부(102), 이벤트 동작 결과 전송부(103), 마이크로프로세서(104), 통신 제어부(105) 및 메모리(106)를 포함하는 네트워크 모듈일 수 있으나, 다른 모듈 카테고리도 기능할 수 있음은 당업자에게 자명하다.
조립 정보 감지부(101)는 조립 정보 감지 프로토콜을 포함하며 연결된 모듈들의 조립 정보를 감지할 수 있는 하드웨어 및/또는 소프트웨어 구성요소이다. 예컨대, 조립 정보 감지부(101)는 모듈 어셈블리(1)에 연결된 모듈들의 모듈 고유 정보, 모듈 카테고리, 하위 연결 모듈 정보 및 실행 카테고리를 감지할 수 있다.
조립 정보 생성부(102)는 감지된 조립 정보에 따라 모듈 어셈블리(1)의 조립 정보를 결정하여 메모리에 기입할 수 있다. 예컨대, 조립 정보 생성부(102)는 감지된 조립 정보에 따라 모듈 어셈블리(1)에 연결된 각각의 모듈의 모듈 고유 정보, 모듈 카테고리, 하위 연결 모듈 정보 및 실행 카테고리를 포함하는 조립 정보를 생성할 수 있다.
이벤트 동작 정보 전송부(103)는 입력 모듈을 이용하여 사용자 단말(2)로부터 수신한 이벤트 요소에 대한 동작을 수행하고, 동작 정보를 사용자 단말(2)로 전송할 수 있다. 예컨대, 이벤트 동작 정보는 마이크 모듈을 통한 입력일 수 있고, 다이얼 모듈을 통한 입력일 수 있고, 버튼 모듈을 통한 입력일 수 있는 등 다양한 모듈을 이용한 입력 정보를 포함할 수 있다.
마이크로프로세서(104)는 조립 정보 감지부(101), 조립 정보 생성부(102), 이벤트 동작 결과 전송부(103) 및 통신 제어부(105) 중 적어도 일부가 소프트웨어 모듈로 구현되는 경우에, 그 소프트웨어 모듈을 실행하게 된다.
통신 제어부(105)는 외부 기기와의 통신 및 모듈 사이의 통신을 제어할 수 있다. 외부 기기와의 통신은 NB-IOT, LTE, LoRa, WiFi, Bluetooth, USB, 케이블 모뎀 등 다양한 유무선 통신을 포함할 수 있다. 한편, 모듈 사이의 통신은 UART, I2C, LIN, CAN 등 다양한 내부 통신 수단을 이용하여 모듈 간 통신을 수행할 수 있다. 통신 제어부(105) 내에는 상술한 다양한 유무선 통신 수단 또는 모듈 사이의 통신 수단을 포함할 수도 있고, 별도의 네트워크 모듈과 연결될 때 별도의 네트워크 모듈을 제어하는 방식으로 통신할 수도 있다.
한편, 메모리(106)는 마이크로프로세서(105)에서 실행될 수 있는 소프트웨어 모듈과 모듈 어셈블리(1)의 동작에 필요한 각종 정보 및 연결된 모듈의 조립 정보에 관한 각종 정보들을 포함하며, 예를 들어, 메모리(106)는 모듈 정보, 구동 정보, 조립 정보 및 펌웨어를 포함할 수 있다.
모듈 정보는 모듈 ID, 모듈 카테고리, 기능 정보 및 메타 정보 중 적어도 하나를 포함한다.
모듈 ID는 UUID(Universally Unique identifier)와 같은 모듈 고유의 식별자이거나 메인 모듈에서 결합 시 부여하는 임시 ID일 수 있다.
모듈 카테고리는 치환 가능한 모듈들을 찾는 것을 보조하기 위하여 복수의 모듈을 수행 기능을 중심으로 유사한 기능을 가진 모듈들을 상위 개념으로 분류하는 개념이다. 예컨대, 센서, 키, 마이크 등 전기 신호를 입력하는 모듈들은 '입력', 액추에이터, 디스플레이, LED 등은 '출력', 또는 마이크로프로세서를 포함하며, 사용자가 포팅한 프로그램을 실행시킬 수 있는 모듈, 네트워크 모듈, 배터리 모듈 또는 가중치 표시 모듈은 '셋업' 등이 모듈 카테고리의 예가 될 수 있다.
기능 정보는 모듈의 상세 기능을 표시한 것으로, 예를 들어, 컨트롤 모듈, 적외선 센서 모듈, 스위치 모듈, 전원 모듈 및 네트워크 모듈 등이 상세 기능이 될 수 있다. 이 경우, 모듈의 기능은 각 모듈 내의 기능 유닛(104)의 구성에 따라 달라질 수 있다.
메타 정보는 모듈의 기타 정보로서, 예를 들어, '선풍기' 등의 구체적인 기기 명이 될 수도 있고, '바람', 또는 '시원' 등과 같은 선풍기와 연관된 연관 검색어들이 될 수 있다.
구동 정보는 각 모듈을 구동하기 위한 드라이버(Driver)이다. 이러한 구동 정보는 해당 모듈이 저장하고 있다가 모듈 연결 시에 컨트롤 모듈(10)에 제공하거나 또는 컨트롤 모듈(10)이 모듈 정보를 사용자 단말(2)에 제공하는 경우, 사용자 단말(2)로부터 다운로드 받을 수 있다.
펌웨어는 모듈 어셈블리(1)를 동작시키기 위한 소프트웨어로서, 사용자 단말(2)을 통해 소스 코드를 작성하여 컴파일 후 실행파일로 생성할 수 있다. 또는 컨트롤 모듈(10)이 조립 정보를 사용자 단말(2)에게 제공하는 경우, 사용자 단말(2)로부터 소스 코드를 추천받고, 추천받은 소스 코드를 컴파일한 실행파일(펌웨어)을 사용자 단말(2)로부터 다운로드 받을 수 있다.
한편 본 발명의 다른 실시예에 따른 모듈 어셈블리는 복수 개의 컨트롤 모듈로 구성될 수 있다. 이 경우, 각각의 컨트롤 모듈이 감지 및 생성하는 조립 정보는 자신의 모듈 고유 정보(모듈 ID), 모듈 카테고리, 하위 연결 모듈 정보 및 실행 카테고리를 포함한다. 모듈 어셈블리의 복수 개의 모듈 각각은 상기 조립 정보를 생성하여 통신 제어부를 통해 사용자 단말(2) 또는 조립 정보 제공 서버(2)에게 제공한다.
이하에서는, 도 6를 참조하여 본 발명의 실시예에 따른 모듈 어셈블리의 동작에 관하여 상세하게 설명한다.
도 6은 본 발명의 실시예에 따른 독자 참여형 전자책 시스템의 동작을 개략적으로 도시한 순서도이다. 도 6에서는 설명의 편의를 위해 스토리 제공 서버(3)를 기준으로 기술하기로 한다. 또한, 도 6에서 각 구성은 앞서 상술한 구성들과 역할이 동일하므로 중복 설명은 생략하기로 한다.
도 6을 참조하면, 단계 601에서, 스토리 제공 서버(3)는 사용자 단말(2)과 연결될 때, 사용자 단말(2)로 다양한 스토리 정보가 포함된 스토리를 전송한다.
단계 602에서, 사용자 단말(2)은 수신한 스토리 정보에 기초하여 퀘스트 수행 정보에 대한 모듈 조립 요청 정보를 전송한다. 이에 따라, 모듈 어셈블리(1)는 수신한 퀘스트 수행 정보에 대해서 모듈 조립 요청 정보를 수신한다. 여기서, 모듈 조립 요청 정보는 사용자 단말(2)로부터 제공된 스토리에 대해 제공받은 적어도 하나의 퀘스트 수행 정보에 대한 입력을 요청하는 정보이고, 모듈 조립 요청 정보에 따라 모듈 어셈블리(1)는 모듈을 추가 조립함으로써 입력을 수행할 수 있다.
단계 603에서, 스토리 제공 서버(3)는 모듈 어셈블리(1)로부터 모듈 조립 요청 정보에 기초한 모듈 조립 정보를 수신할 수 있다.
단계 604에서, 모듈 조립 정보를 수신한 스토리 제공 서버(3)는 모듈 조립 정보에 기초하여 넥스트 스토리 정보를 사용자 단말(2)로 전송할 수 있다. 넥스트 스토리 정보는 하나의 스토리에 대한 모듈 조립이 완료된 후 다음으로 진행될(혹은 제공될) 스토리에 대한 정보로 정의될 수 있다.
단계 605에서, 사용자 단말(2)은 수신한 넥스트 스토리 정보에 기초하여 퀘스트 수행 정보에 대한 모듈 조립 요청 정보를 전송한다. 이때, 단계 606과 같이, 사용자 단말(2)은 모듈 어셈블리(1)로부터 생성된 이벤트 요소에 대한 모듈 조립 정보를 수신할 수도 있다. 한편, 단계 606은 사용자의 선택적인 동작에 의해 결정되는 단계이기 때문에 생략될 수도 있다.
단계 607에서, 스토리 제공 서버(3)는 모듈 어셈블리(1)로부터 모듈 조립 요청 정보에 기초한 모듈 조립 정보를 수신할 수 있다. 단계 607에서의 모듈 조립 정보는 단계 603 이후에 일어나는 넥스트 스토리 정보에 대한 단계로 이해되는 것이 바람직하다.
단계 608에서, 스토리 제공 서버(3)는 모듈 어셈블리(1)에 모듈 고유 정보(모듈 ID)와 세트 고유 정보(세트 ID)를 요청하면, 단계 609에서 모듈 어셈블리(1)는 모듈 ID와 세트 ID를 스토리 제공 서버(3)를 전송할 수 있다.
단계 610에서, 모듈 조립 정보, 모듈 ID, 세트 ID 중 적어도 하나를 기초로 소스 코드를 생성하고 생성된 소스 코드를 사용자 단말(2)로 전송하여 디스플레이부(27)를 통해 결과를 출력할 수 있다. 이에 따라, 사용자는 도 11에 도시된 바와 같이, 자신이 조립한 모듈 어셈블리(1)에 대한 소스 코드 정보를 피드백 받음으로써 코딩에 대한 이해와 관심을 향상시킬 수 있다. 이와 관련한 상세한 설명은 도 11을 참조하여 후술하기로 한다.
단계 611에서, 스토리 제공 서버(3)는 점수화 조건에 기초하여 조립된 모듈 어셈블리(1)에 대한 점수를 생성하고, 사용자별 또는 항목별로 매긴 점수를 사용자 단말(2)로 전송할 수 있다.
이하에서는 도 7을 참조하여 독자 참여형 전자책의 스토리 전개 순서에 대하여 설명하기로 한다.
도 7은 본 발명의 실시예에 따른 독자 참여형 전자책 시스템의 전체적인 스토리를 설명하기 위한 예시도이다.
독자 참여형 전자책은 다수의 씬(Scene)으로 구성되며, 사용자의 선택에 따라 다양한 스토리 라인(X, Y, Z)을 형성하는 전자책이다. 도 7을 참조하면, 각각의 씬에는 적어도 하나의 퀘스트 수행 정보(710)가 포함될 수 있다. 여기서, 퀘스트 수행 정보(710)는 현재 씬에 대한 스토리를 형성하는 설명문 및 모듈 결합으로 해결해야 하는 지시문을 포함하는 것을 특징으로 한다.
단, 사용자는 지시문을 통해 퀘스트를 수행하기 위해 결합해야 하는 모듈의 종류에 대한 정보를 직접적으로는 알 수 없으며 추리해서 결합해야 하는 것을 특징으로 한다. 다시 말해, 사용자가 모듈 조립 시 추리할 수 있도록 지시문만 제공할 뿐 조립해야 하는 모듈을 알려주지 않는 것을 기본으로 한다. 이에 따라, 추후에 사용자의 모듈 조립 정보에 기초하여 사용자(혹은 사용자별로)의 점수를 매길 수 있다. 다만, 실시예에 따라서 퀘스트 수행 정보는 사용자가 조립해야 하는 모듈에 대한 정보를 포함할 수도 있다.
예컨대, 도 7에 도시된 바와 같이, 첫번째 씬(이하, “제1 씬(1st Scene)”이라고도 함)에는 한 개의 퀘스트 수행 정보가 생성되고, 이때, 두번째 씬(이하, “제2 씬(2nd Scene)”이라고도 함)에는 두 개의 퀘스트 수행 정보(710)가 생성된 것으로 가정한 경우, 사용자는 두 개의 퀘스트 수행 정보(710) 중 하나의 퀘스트만 수행할 수도 있고, 두 개의 퀘스트를 모두 수행한 후 다음 씬으로 넘어갈 수 있다.
사용자는 각 씬에 포함된 퀘스트 수행 정보(710)를 수행하기 위해 반드시 하나의 모듈은 조립해야 하는 것을 특징으로 한다. 이때 조립되는 모듈은 필수 모듈이라고 지칭될 수 있다.
단, 퀘스트 수행 정보(710)를 수행하는 것과 별개로 모듈이 조립될 수도 있으나, 이때 조립되는 모듈은 잉여 모듈이라고 지칭될 수 있다. 여기서, 잉여 모듈은 현재 씬의 퀘스트 수행과는 상관이 없지만 잉여 모듈과 관련한 새로운 스토리(이하, “히든 스토리”라고도 함)가 생성될 수도 있다. 이와 관련된 구체적인 내용은 추후 설명하기로 한다.
이처럼, 독자 참여형 전자책은 필수 모듈 및 잉여 모듈 중 적어도 하나의 모듈에 의해 스토리 라인을 형성할 수 있으며, 모듈 조립에 따라 다양한 스토리 라인이 형성될 수 있다. 이에 따라 X, Y, Z 등과 같이 다양한 결말이 형성될 수 있다.
이와 같은 과정을 반복하여 스토리의 마지막 씬(Last Scene)까지 왔을 때 사용자가 선택한 요소에 따라 복수의 결과(X, Y, Z) 어느 하나의 씬이 마지막 씬(730)으로 결정될 수 있다.
*이하에서는 도 8 내지 도 10 및 도 12를 참조하여 독자 참여형 전자책의 구현과정을 상세히 설명하기로 한다.
도 8은 본 발명의 실시예에 따른 전자책에 대한 예시도이다. 도 9 내지 도 10은 본 발명의 실시예에 따른 독자 참여형 전자책과 모듈의 연결을 설명하기 위한 예시도이다. 도 12는 본 발명의 실시예에 따른 토폴로지 정보를 설명하기 위한 표이다. 도 8은 도 1 내지 도 7에서 설명한 구성요소가 예시적으로 도시된 것을 나타낸 것이므로 중복 설명은 생략하기로 한다.
도 8을 참조하면, 사용자 단말(2)의 디스플레이부(27)에는 하나의 씬 별로 스토리가 출력된다. 스토리는 디스플레이부(27)의 대부분 영역에 형성된 스토리 영역(80)에 표시되고, 퀘스트 수행 정보는 스토리 영역(80)의 일부 영역에 팝업되어 퀘스트 영역(81)에 표시될 수 있다. 다만, 스토리 영역(80)과 퀘스트 영역(81)에 대한 배치는 설계 변경에 따라 자유롭게 변경 가능하다.
도 9를 참조하면, 사용자 단말(2)의 스토리 영역(80)에는 첫번째 씬(#1)에 대한 이야기가 표시되고, 퀘스트 영역(81)에는 튜토리얼 팝업창(82)이 생성된다. 예컨대, 스토리 영역(80)에는 “기사는 드디어 갑옷과 창, 방패를 챙겨서 공주를 구하기 위해 떠났으나, 끝도 없는 사막으로 들어서게 되었다.”와 같은 설명문이 표시되고, 퀘스트 영역(81)에는 “어디선가 소리가 들려오면 소리를 세 번 지르고, 불빛을 발견하면 불빛이 있는 곳을 향하여 고개를 돌려야 살아남을 수 있다”와 같은 지시문이 표시될 수 있다.
이때, 지시문에는 “어디선가 소리가 들려오면 소리를 세 번 지르고(퀘스트 1(Q1))”, “불빛을 발견하면(퀘스트 2(Q2))” “불빛이 있는 곳을 향하여 고개를 돌려야 살아남을 수 있다(퀘스트 3(Q3))”와 같이 3개의 퀘스트가 포함된 것을 알 수 있다. 예컨대, 상기 퀘스트 1에 대한 필수 모듈은 소리를 입력할 수 있는 마이크 모듈(91)일 수 있고, 상기 퀘스트 2에 대한 필수 모듈은 불빛을 발견하기 위해 빛을 감지할 수 있는 수광부 모듈(92)일 수 있고, 상기 퀘스트 3에 대한 필수 모듈은 고개 돌리기에 대한 퀘스트를 수행하기 위한 모터 모듈(93)일 수 있다.
단, 필수 모듈은 각 씬의 퀘스트에 따라 미리 결정되는 것을 특징으로 한다. 이에 따라, 사용자는 지시문을 추리하여 미리 결정된 필수 모듈을 조립해 나가야 한다. 한편, 지시문에 있는 퀘스트를 수행하기 위해 필수 모듈이 조립되는 위치는 퀘스트 순서와 상관없을 수 있다.
한편, 사용자는 현재 씬의 퀘스트의 지시문과 관계없는 모듈(이하, “잉여 모듈”이라고 함)을 붙일 수도 있다. 이 경우, 잉여 모듈은 다음 퀘스트(이하, “넥스트 퀘스트”라고도 함)에 필수 모듈로서 등장하는 퀘스트를 선택하는 데 영향을 주는 것을 특징으로 한다. 다시 말해, 상기 지시문을 예로 들면, 상기 지시문과 관련 없는 잉여 모듈로서 다이얼 모듈(94)이 결합된 경우, 수많은 예비 퀘스트 중에서 필수 모듈로 다이얼 모듈(94)이 포함되어 있는 퀘스트를 현재 퀘스트(qn)의 다음 퀘스트(qn+1)로 결정할 수 있다.
이처럼, 퀘스트 간의 연결을 통해 스토리가 전개되는 것을 특징으로 한다.
이어서, 다이얼 모듈(94)을 통해 다음 퀘스트(qn+1)에 대하여 스토리 영역에는 “기사는 간신히 오아시스에 도착하였는데, 작은 집에 불이 켜져 있었다. 그 안에서 소리가 들렸으므로 그 집에 다가갔다”와 같은 설명문 표시되고, 퀘스트 영역에는 “초인종을 3번 누른 후에 문의 손잡이를 돌려서 집에 들어갈 수 있었다. 집 안에선 주황색 촛불이 깜빡이고 있었는데, 주인을 부르니 촛불이 꺼졌다”와 같은 지시문이 표시될 수 있다.
이때, 지시문에는 “초인종을 3번 누른 후에(퀘스트 1)” “문의 손잡이를 돌려서 집에 들어갈 수 있었다(퀘스트 2)” “집 안에선 주황색 촛불이 깜빡이고 있었는데(퀘스트 3)”, “주인을 부르니 촛불이 꺼졌다(퀘스트 4)”와 같이 4개의 퀘스트가 포함된 것을 알 수 있다. 예컨대, 상기 퀘스트 1에 대한 필수 모듈은 버튼의 눌림을 감지할 수 있는 버튼 모듈과 초인종 소리를 출력할 수 있는 스피커 모듈일 수 있고, 상기 퀘스트 2에 대한 필수 모듈은 손잡이를 돌리는 것을 감지할 수 있는 다이얼 모듈일 수 있고, 상기 퀘스트 3에 대한 필수 모듈은 사용자가 원하는 색의 LED를 깜박일 수 있는 LED모듈로서, 퀘스트 3을 수행하기 위해 주황색 LED를 표시할 수 있다. 또한, 주황색 LED를 오프(OFF)시킴으로써 퀘스트 4를 수행할 수 있다.
이와 같은 과정이 반복됨에 따라 사용자가 현재 씬의 퀘스트와 무관한 모터 모듈을 결합할 경우, 다음 퀘스트로는 필수 모듈로서 모터 모듈이 포함된 퀘스트가 선택될 것이다. 이에 따라, 복수의 예비 퀘스트 중에서 마차(Chariot)가 등장하는 퀘스트가 선택될 수 있다.
한편, 본 발명의 실시예에 따라, 다음 퀘스트가 출력된 후, 다음 퀘스트에 대하여 조립을 수행하기 위해서는 이전 씬에서 조립했던 모듈들을 모두 분리함으로써 조립 정보를 초기화하는 과정이 수반될 수 있다.
도 10을 참조하면, 사용자 단말(2)의 스토리 영역(80)에는 실시예에 따른 또 다른 퀘스트(#2, 혹은 넥스트 퀘스트)가 표시된다. 스토리 영역(80)에는 “기사는 드디어 감옥을 지키는 드래곤과 마주쳤다. 이미 깊은 밤이 되었고 드래곤의 기세가 등등하므로 일단은 도망쳤다가 낮에 다시 오기로 하였다.”와 같은 설명문이 표시되고, 퀘스트 영역(81)에는 “용이 빨간 불을 세 번 내 뿜으면서 소리를 질러 대면, 칼을 공중에서 8자로 휘둘러 용을 쫓아낸다”와 같은 지시문이 표시될 수 있다.
이때, 지시문에는 “용이 빨간 불을 세 번 내 뿜으면서(퀘스트 1)”, “소리를 질러 대면(퀘스트 2)” “칼을 공중에서 8자로 휘둘러 용을 쫓아낸다(퀘스트 3)”와 같이 3개의 퀘스트가 포함된 것을 알 수 있다.
예컨대, 상기 퀘스트 1에 대한 필수 모듈은 빨간색 LED를 3번 깜박일 수 있는 LED 모듈(95)일 수 있고, 상기 퀘스트 2에 대한 필수 모듈은 소리를 입력할 수 있는 마이크 모듈(96)일 수 있고, 상기 퀘스트 3에 대한 필수 모듈은 8자로 휘두르는 퀘스트를 수행하기 위해 모듈의 기울기, 각 축에 대한 가속도와 각속도를 측정할 수 있는 자이로 모듈(97)일 수 있다.
이때, 현재 퀘스트 다음으로 올 다음 퀘스트는 앞서 상술한 바와 같이, 수만은 예비 퀘스트 중에서 사용자에 의해 결합되는 잉여 모듈에 의해 결정된다.
예컨대, 잉여 모듈로서 진동 모듈(98)이 결합된 경우, 다음 퀘스트로는 필수 모듈로서 진동 모듈(98)이 포함된 퀘스트가 선택될 수 있다. 이에 따라, 복수의 예비 퀘스트 중에서 “절벽에서 발을 굴러 진동을 발생시킨다”와 같이 진동과 관련한 퀘스트가 존재하면 해당 퀘스트가 다음 퀘스트로서 진행될 수 있다.
한편, 본 발명의 또 다른 실시예에 따라서는 다음 퀘스트가 잉여 모듈 이외에 토폴로지 및 프로그래밍에서 나오는 모듈 순서에 기초하여 선택될 수 있다. 다시 말해, 토폴로지와 프로그래밍에서 나오는 모듈 순서에 기초하여 다음 퀘스트를 선택하는 경우, 같은 잉여 모듈이라고 하더라도 어느 모듈 옆에 붙어 있느냐에 따라 해당 잉여 모듈의 의도가 바뀔 수 있다. 예를 들면, 잉여 모듈인 모터 모듈이 적외선 센서 모듈 옆에 결합될 경우에는 “장애물을 감지하여 굴러가게 하려는 목적”인 것으로 판단하여 탈 것(이동 수단)을 타는 것과 관련한 퀘스트가 다음 퀘스트로서 선택될 수 있다.
토폴로지와 관련하여 구체적으로 설명하자면, 메인 모듈(90)에서는 토폴로지 정보(이하, “모듈 토폴로지 정보”라고도 함)를 수집할 수 있다. 도 12를 참조하면, 모듈 토폴로지 정보(1048)는 기본적으로 모듈 어셈블리(1) 내의 모듈들의 고유 정보(모듈 ID)(1048-1), 단계 정보(1048-2), 하위 연결 모듈 정보(1048-3), 연결 순위(1048-4) 및 모듈 카테고리(1048-6)를 포함할 수 있다. 추가적으로 모듈 토폴로지 정보(1048)는 연결 방향(1048-5)을 더 포함할 수 있다.
모듈 고유 정보(1048-1)는 모듈 어셈블리에 포함된 연결된 모듈들의 모듈 ID(1046)를 나타낸다. 이 경우, 모듈 고유 정보(1048-1)는 UUID(Universally Unique IDentifier)와 같은 모듈 고유의 식별자 일 수 있으며, 컨트롤 모듈(10)에서 연결 시 부여하는 임시 ID 일 수도 있다.
단계 정보(1048-2)는 앞서 설명한 컨트롤 모듈(10)과의 거리를 의미하며, 컨트롤 모듈(10)로부터 해당 모듈까지 최단 경로 상으로 연결된 모듈을 카운팅하여 결정된다. 단, 상술한 모듈들 중 시멘틱 모듈에 부착되는 모듈의 경우에는 단계 정보(1048-2)가 시멘틱 모듈을 컨트롤 모듈(10)으로 가정하여 시멘틱 모듈로부터의 거리나, (시멘틱 모듈에 지정된 단계) + (시멘틱 모듈과의 거리) - 1 로 정해질 수 있다. 또는 시멘틱 모듈에 부착되는 경우에는 큰 가중치가 부여되어 시멘틱 모듈에 부착되는 모듈의 중요성이 강조될 수 있다.
시멘틱 모듈(Semantic module)은 예컨대, 모듈의 크기나 다른 모듈에 영향을 주는 등 컨트롤 모듈(10)과 직접 연결이 어려운 경우에 개발자 프로그램에서 소스 코드 추천이나 모듈 추천에 있어서 중요한 모듈이라는 것을 하드웨어적으로 표시하기 위한 모듈이다.
예컨대, 사용자가 모듈을 조립하여 미니 자동차의 기능을 하는 모듈 어셈블리를 만들려는 의도가 있을 때에 모터 모듈이나 바퀴 모듈은 중요한 의미를 가지게 되지만, 바퀴의 사이즈 등으로 인하여 컨트롤 모듈(10)과의 거리가 멀어져서 의미를 주기 어려운 경우가 있을 수 있다. 이 경우, 모터 모듈 또는 바퀴 모듈을 시멘틱 모듈과 연결하게 된다면, 토폴로지 상에서 사용자의 의도가 반영되어 소스 코드 또는 추가 또는 치환 모듈의 추천이 보다 사용자의 의도에 가까워질 수 있다.
하위 연결 모듈 정보(1048-3)는 해당 모듈보다 단계가 낮은(컨트롤 모듈(10)과의 거리가 더 먼) 모듈의 모듈 고유 정보를 나타낸다. 기본적으로 각 모듈은 해당 모듈과 연결된 모듈들의 정보를 저장하고 컨트롤 모듈(10)에 연결될 때, 하위로 연결된 모듈의 정보를 컨트롤 모듈(10)에 제공할 수 있다.
연결 순위(1048-4)는 컨트롤 모듈(10)에 접속하는 순서를 나타내는 것으로, 추천 서버(2)에서 소스 코드 및 모듈을 추천할 때에 기초가 되는 정보이다. 연결 순위(1048-4)의 결정 방법에 대해서는 도 5에 대한 설명 부분에서 저술하였으므로 공통된 부분의 설명을 생략한다. 컨트롤 모듈(10)에 이미 결합되어 있는 복수의 모듈인 모듈 그룹이 결합되는 경우에는 모듈 그룹에 동일한 공통 연결 순위(1048-7)가 부여될 수 있다.
연결 방향(1048-5)은 부가적인 정보로서, 하위 연결 모듈 및 상위 연결 모듈이 어떤 포트와 물리적으로 접속되었는지를 나타내는 정보이다. 예를 들어, 통신 모듈과 자이로스코프 센서 모듈이 있는 경우에, 통신 모듈의 전자기파가 자이로스코프 센서 모듈의 센싱에 영향을 줄 수도 있으므로, 상술한 연결 방향(1048-4)에 기초하여 가급적이면 영향을 주지 않는 위치에 서로 배치할 수 있다. 이 경우에는 연결 방향 정보 및 단계 정보를 활용할 수 있다.
마지막으로 모듈 카테고리(1048-6)는 모듈의 기능에 따라 모듈을 분류한 정보이다. 예를 들어, 마이크로폰, 온도 센서, 자이로스코프 센서, 적외선 센서, 초음파 센서 등의 각종 센서, 다이얼, 버튼, 키보드 등의 입력되는 전기 신호를 수집하는 모듈들은 '입력' 으로 분류될 수 있다. 또는 모터 등의 액추에이터, 발광다이오드(LED), 액정 디스플레이 장치, 스피커 등은 '출력'으로 분류될 수 있다. 또한, 각종 네트워크 모듈(LTE, Bluetooth 등)은 '통신'으로 분류될 수 있다. 또한, 마이크로프로세서를 포함하며 사용자 단말기(3)에서 프로그래밍한 애플리케이션을 실행할 수 있는 모듈은 '컨트롤'로 분류될 수 있다. 이러한 카테고리 정보에 기초하여 서버에서는 모듈 추천 시 치환 가능한 모듈인지, 추가 가능한 모듈인지 여부를 판단할 수 있다.
또한, 본 발명에서 프로그래밍에서 나오는 모듈 순서는 모듈 내에 포함된 모듈 토폴로지 정보가 모듈이 조립되는 순서에 따라 프로그래밍되어 소스 코드의 형태로 프로그래밍됨에 따라 결정된 모듈 순서인 것으로 정의될 수 있다.
이하에서는, 도 11을 참조하여 본 발명의 실시예에 따른 소스 코드에 대하여 설명하기로 한다.
도 11은 본 발명의 실시예에 따른 모듈 어셈블리의 조립에 따라 생성된 소스 코드의 예시도다. 도 11에 도시된 소스 코드는 설명의 편의를 위해 예시적으로 도시한 것일 뿐 모듈 조립과 실제로 관련 있는 소스 코드는 아니다.
도 11을 참조하면, 코딩 프로그램(1200)은 제1 씬에 대한 사용자의 모듈 조립 정보(1201)와 제2 씬에 대한 사용자의 모듈 조립 정보(1202)에 대하여 자동으로 소스 코드(1203)를 생성할 수 있다.
또는, 코딩 프로그램은 사용자 단말(2)의 디스플레이부(27)의 일부 영역에 표시될 수 있다. 이에 따라, 사용자는 각 씬과 관련된 퀘스트 수행 정보에 대해 모듈을 조립할 때 조립되는 모듈에 대한 조건을 조립과 동시에 코딩을 통해 설정할 수 있다. 앞서 도 10의 예를 참조하면, 용이 빨간 불을 세 번 내 뿜는 것을 표현하기 위해 사용자가 LED 모듈을 결합할 경우, 코딩 프로그램을 통해 LED 모듈에서 출력할 색깔에 대하여 소스 코드를 생성하고, 출력할 색깔이 세 번 깜박일 수 있도록 세 번 온/오프(ON/OFF) 되도록 소스 코드를 입력할 수 있다.
이와 같이 본 발명에 따르면 독자가 스토리에 대한 이벤트 요소를 수행해 나가면서 조립한 모듈에 대한 소스 코드 정보를 피드백 받음으로써 코딩에 대한 관심도를 증가시키고 일정 수준 이상의 학습 결과를 보장할 수 있다.
본 발명에 따르면, 독자가 모듈을 조립하여 다양한 스토리를 연출할 때 이벤트 요소를 부가하여 이벤트에 대한 달성 속도 및 달성률 등을 평가함으로써 독자의 흥미를 높여 집중력을 향상시킴과 동시에 순발력을 향상시키는데 도움을 줄 수 있다.
본 발명에 따르면, 스토리를 진행함에 있어서 모듈을 통해 시각, 청각 등을 출력함으로써 스토리에 대한 독자의 이해도를 높힐 수 있고, 독자가 스스로 스토리를 다양하게 연출함으로써 독자의 참여도를 높여 지속적인 흥미를 유발시킬 수 있다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 펌웨어(firmware), 소프트웨어(software) 또는 하드웨어(hardware)로 구성된다. 알고리즘 또는 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 알고리즘 또는 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 디지털 신호 처리 디바이스(Digital Signal Processing Device)의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다.
이들 알고리즘 또는 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽힐 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 상기 컴퓨터가 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등) 및 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
Claims (24)
- 복수의 모듈이 조립되어 구성되는 모듈 어셈블리; 및 상기 모듈 어셈블리와 네트워크를 통해 연결되는 사용자 단말을 포함하는 모듈을 이용한 독자 참여형 전자책 시스템에 있어서,적어도 하나의 스토리를 포함하는 전자책 데이터베이스를 상기 사용자 단말로 전송하는 스토리 제공부;상기 스토리를 구성하는 씬에 대하여 생성되며 스토리 진행을 위해 생성되는 적어도 하나의 퀘스트 수행 정보에 기초한 모듈 조립 정보를 수신하는 조립 정보 수신부; 및상기 모듈 조립 정보에 대하여 점수화 조건별로 상기 사용자의 모듈 조립에 대한 점수를 생성하는 점수 생성부를 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 퀘스트 수행 정보는 스토리를 형성하는 설명문 및 모듈 결합으로 해결해야 하는 지시문을 포함하며, 상기 지시문에 따라 퀘스트를 수행하기 위해 결합되는 필수 모듈은 미리 결정되는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 퀘스트 수행 정보는 상기 스토리의 진행과는 무관하며 상기 사용자에 의해 임의로 선택되어 조립된 모듈에 의해 생성되는 이벤트 요소를 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제3항에 있어서,상기 이벤트 요소에 의해 상기 스토리와 무관한 히든 스토리를 생성하는 히든 스토리 생성부를 더 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 점수 생성부는,상기 점수화 조건에 대하여 기 설정된 가중치에 따라 점수를 생성하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 점수화 조건은 상기 사용자가 상기 모듈 어셈블리를 조립하는데 소요된 시간, 연결된 모듈의 종류에 대한 모듈 정보, 모듈의 동작 여부, 활성화된 스토리 정보, 코드 구현 여부, 순발력, 협동 여부 및 코드 구현 시간 중 적어도 하나를 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제6항에 있어서,상기 활성화된 스토리 정보는 모듈 조립에 기초하여 생성된 스토리 라인의 길이인, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 점수 생성부는상기 점수화 조건에 대하여 항목별로 가중치를 두어 점수를 부가하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 스토리 제공 서버는,상기 스토리의 난이도에 기초하여 모듈 조립에 대한 기준 시간을 상기 난이도와 비례하도록 상이하게 설정하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제3항에 있어서,상기 이벤트 요소에 대한 상기 사용자의 미션 수행 여부를 판단하는 미션 수행 정보를 수신하는 이벤트 요소 생성부; 및 상기 이벤트 요소에 대한 사용자의 이벤트 수행 정보를 수신하는 이벤트 정보 수신부;를 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 스토리 제공 서버는,상기 모듈 조립 정보에 기초하여 소스 코드를 생성하는 소스 코드 생성부를 더 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 모듈 어셈블리는 입력 모듈 및 출력 모듈 중 적어도 하나를 포함하고,상기 입력 모듈은 환경 모듈, 버튼 모듈, 자이로스코프 모듈, 마이크 모듈, 적외선 모듈, 다이얼 모듈 및 초음파 모듈 중 적어도 하나이고,상기 출력 모듈은 LED 모듈, 스피커 모듈, 디스플레이 모듈, 모터 컨트롤러 모듈 및 모터 모듈 중 적어도 하나인, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제2항에 있어서,상기 퀘스트와 무관하게 사용자에 의해 결합되는 잉여 모듈, 토폴로지 및 프로그래밍에서 나오는 모듈 순서 중 적어도 하나를 고려하여 상기 퀘스트 이후로 나오는 넥스트 퀘스트가 결정되는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제13항에 있어서,상기 넥스트 퀘스트에 대하여 모듈을 조립하는 경우, 상기 넥스트 퀘스트 직전에 수행한 이전 퀘스트에 대한 모듈 조립을 초기화한 후 조립하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 네트워크는 유선 및/또는 무선 연결되는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 제1항에 있어서,상기 복수의 모듈 각각은 모듈 고유의 식별자인 모듈 고유 정보를 포함하고, 상기 모듈 어셈블리 내에는 사용자를 구분하기 위한 적어도 하나의 세트 고유 정보를 포함하는, 모듈을 이용한 독자 참여형 전자책 시스템.
- 스토리 제공부에 의해 적어도 하나의 스토리를 포함하는 전자책 데이터베이스를 사용자 단말로 전송하는 단계;조립 정보 수신부에 의해 상기 스토리를 구성하는 씬에 대하여 생성되며 스토리 진행을 위해 생성되는 적어도 하나의 퀘스트 수행 정보에 기초한 모듈 조립 정보를 수신하는 단계; 및점수 생성부에 의해 상기 모듈 조립 정보에 대하여 점수화 조건별로 상기 사용자의 모듈 조립에 대한 점수를 생성하는 단계를 포함하는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제17항에 있어서,이벤트 요소 생성부에 의해 상기 스토리의 진행과 무관하게 상기 사용자에 의해 임의로 선택되어 조립된 모듈에 의해 생성되는 이벤트 요소에 대한 상기 사용자의 미션 수행 여부를 판단하는 미션 수행 정보를 수신하는 단계;를 더 포함하는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제17항에 있어서,이벤트 정보 수신부에 의해 상기 이벤트 요소에 대한 상기 사용자의 이벤트 수행 정보를 수신하는 단계를 더 포함하는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제17항에 있어서,상기 퀘스트 수행 정보는 스토리를 형성하는 설명문 및 모듈 결합으로 해결해야 하는 지시문을 포함하며, 상기 지시문과 관련된 퀘스트를 수행하기 위해 결합되는 필수 모듈은 미리 결정되는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제20항에 있어서,상기 퀘스트와 무관하게 사용자에 의해 결합되는 잉여 모듈에 의해 상기 퀘스트 이후로 나오는 넥스트 퀘스트가 결정되는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제21항에 있어서,상기 넥스트 퀘스트는 토폴로지 및 프로그래밍에서 나오는 모듈 순서 중 적어도 하나를 고려하여 결정되는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제18항 및 제21항에 있어서,상기 필수 모듈, 상기 잉여 모듈 및 상기 이벤트 요소에 의해 복수의 결말을 제공하는 단계를 포함하는, 모듈을 이용한 전자책 시스템의 동작 방법.
- 제17항에 있어서,상기 모듈 어셈블리는 입력 모듈 및 출력 모듈 중 적어도 하나를 포함하고; 상기 입력 모듈은 환경 모듈, 버튼 모듈, 자이로스코프 모듈, 마이크 모듈, 적외선 모듈, 다이얼 모듈 및 초음파 모듈 중 적어도 하나이고; 상기 출력 모듈은 LED 모듈, 스피커 모듈, 디스플레이 모듈, 모터 컨트롤러 모듈 및 모터 모듈 중 적어도 하나인, 모듈을 이용한 전자책 시스템의 동작 방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020541547A JP7181642B2 (ja) | 2020-01-14 | 2020-03-05 | モジュールを用いた読者参加型電子ブックシステム及び動作方法 |
EP20717069.7A EP3905056A4 (en) | 2020-01-14 | 2020-03-05 | READER PARTICIPATION E-BOOK SYSTEM AND METHODS OF OPERATION USING MODULES |
CN202080001724.1A CN113396406A (zh) | 2020-01-14 | 2020-03-05 | 利用模块的读者参与型电子书系统及运转方法 |
US16/928,189 US11229841B2 (en) | 2020-01-14 | 2020-07-14 | Reader participation type electronic book system using module and operation method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2020-0004579 | 2020-01-14 | ||
KR1020200004579A KR102301027B1 (ko) | 2020-01-14 | 2020-01-14 | 모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/928,189 Continuation US11229841B2 (en) | 2020-01-14 | 2020-07-14 | Reader participation type electronic book system using module and operation method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021145506A1 true WO2021145506A1 (ko) | 2021-07-22 |
Family
ID=76863849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2020/003096 WO2021145506A1 (ko) | 2020-01-14 | 2020-03-05 | 모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법 |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP3905056A4 (ko) |
JP (1) | JP7181642B2 (ko) |
KR (1) | KR102301027B1 (ko) |
CN (1) | CN113396406A (ko) |
TW (1) | TWI768442B (ko) |
WO (1) | WO2021145506A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023223214A1 (en) * | 2022-05-16 | 2023-11-23 | Trioptima Ab | Pre-compression data object convention conversion |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070086557A (ko) * | 2005-01-24 | 2007-08-27 | 후지쯔 가부시끼가이샤 | 부품 교환 순서 특정 방법 및 프로그램 |
US20140007257A1 (en) * | 2012-06-27 | 2014-01-02 | Apple Inc. | Systems and methods for narrating electronic books |
KR20150069611A (ko) * | 2013-12-13 | 2015-06-24 | 목포대학교산학협력단 | 독자 참여형 전자책 제작 방법 및 시스템 |
KR101713085B1 (ko) * | 2015-12-15 | 2017-03-07 | 위드큐브(주) | 스마트 블록을 이용한 컨텐츠 제공시스템 |
KR101761596B1 (ko) | 2016-03-07 | 2017-07-26 | 주식회사 럭스로보 | 모듈 어셈블리 |
KR20180114166A (ko) | 2016-03-08 | 2018-10-17 | 비즈리드 엘엘씨 | 콘텐츠 강화와 읽기 교육 및 이해 가능화를 위한 시스템 및 방법 |
KR20180114171A (ko) | 2016-06-24 | 2018-10-17 | 쇼와 덴코 패키징 가부시키가이샤 | 축전 디바이스용 외장재 및 축전 디바이스 |
KR20200002078A (ko) * | 2018-06-29 | 2020-01-08 | (주)애플파이스튜디오 | 미션 수행 기반 독자 참여형 웹툰 제공 장치 및 방법 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69305981T2 (de) * | 1992-03-17 | 1997-05-15 | Massachusetts Inst Technology | Geringbenachbarte dreidimensionale verbindung. |
US8742814B2 (en) * | 2009-07-15 | 2014-06-03 | Yehuda Binder | Sequentially operated modules |
CN103394200B (zh) * | 2013-08-08 | 2015-12-02 | 魏正鹏 | 电子拼接件的连接块 |
US20150133023A1 (en) * | 2013-11-12 | 2015-05-14 | Hallmark Cards, Incorporated | System and method for story assembly |
JP6324716B2 (ja) * | 2013-12-26 | 2018-05-16 | 株式会社ソニー・インタラクティブエンタテインメント | ブロック、ブロックシステム、表示方法、および情報処理方法 |
KR101552255B1 (ko) * | 2014-03-20 | 2015-09-09 | 김관석 | 블록 완구 |
KR20170010720A (ko) * | 2015-07-20 | 2017-02-01 | 이준희 | 토폴로지 인식 기능을 갖는 블록 완구 및 이를 이용한 컨텐츠 제공 시스템 |
KR101906823B1 (ko) * | 2016-03-07 | 2018-12-05 | 주식회사 럭스로보 | 멀티 모듈 컴파일 시스템 및 멀티 모듈 컴파일 방법, 그리고 컴파일러 프로그램을 갖는 컴퓨터 판독가능 저장매체 |
US10163361B2 (en) * | 2016-03-21 | 2018-12-25 | Fujitsu Limited | Behavior shaping using a construction toy |
US20180053431A1 (en) | 2016-05-19 | 2018-02-22 | Timothy J. Young | Computer architecture for customizing the content of publications and multimedia |
CN205867599U (zh) * | 2016-05-30 | 2017-01-11 | 姚龙 | 一种快速拼接的电子积木 |
IL246551A (en) | 2016-06-30 | 2017-07-31 | Algobrix Ltd | Physical programming interface in the three-dimensional plane that includes multi-layer and parameters |
KR20190043707A (ko) * | 2017-10-19 | 2019-04-29 | 주식회사 에드토이 | 창의력 증진을 위한 놀이판이 포함된 블록 놀이세트 및 그것을 이용한 놀이방법 |
KR20190088787A (ko) * | 2018-01-19 | 2019-07-29 | 김태권 | 알고리즘 교육을 위한 작동 모듈이 구비된 조합가능형 로봇 블록 |
TWD196441S (zh) * | 2018-01-29 | 2019-03-11 | 正崴科技有限公司 | 電池積木模組 |
CN108288411B (zh) * | 2018-03-08 | 2023-12-19 | 安徽晨光电子科技有限公司 | 一种智能互动学习机及其系统 |
KR102198397B1 (ko) * | 2018-05-24 | 2021-01-05 | 조이연 | 코딩 테이블 |
KR101984954B1 (ko) * | 2019-02-08 | 2019-05-31 | 주식회사 소풍앤컴퍼니 | 코딩 학습 지원 장치 |
-
2020
- 2020-01-14 KR KR1020200004579A patent/KR102301027B1/ko active IP Right Grant
- 2020-03-05 JP JP2020541547A patent/JP7181642B2/ja active Active
- 2020-03-05 EP EP20717069.7A patent/EP3905056A4/en active Pending
- 2020-03-05 CN CN202080001724.1A patent/CN113396406A/zh active Pending
- 2020-03-05 WO PCT/KR2020/003096 patent/WO2021145506A1/ko unknown
- 2020-08-24 TW TW109128852A patent/TWI768442B/zh active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070086557A (ko) * | 2005-01-24 | 2007-08-27 | 후지쯔 가부시끼가이샤 | 부품 교환 순서 특정 방법 및 프로그램 |
US20140007257A1 (en) * | 2012-06-27 | 2014-01-02 | Apple Inc. | Systems and methods for narrating electronic books |
KR20150069611A (ko) * | 2013-12-13 | 2015-06-24 | 목포대학교산학협력단 | 독자 참여형 전자책 제작 방법 및 시스템 |
KR101713085B1 (ko) * | 2015-12-15 | 2017-03-07 | 위드큐브(주) | 스마트 블록을 이용한 컨텐츠 제공시스템 |
KR101761596B1 (ko) | 2016-03-07 | 2017-07-26 | 주식회사 럭스로보 | 모듈 어셈블리 |
KR20180114166A (ko) | 2016-03-08 | 2018-10-17 | 비즈리드 엘엘씨 | 콘텐츠 강화와 읽기 교육 및 이해 가능화를 위한 시스템 및 방법 |
KR20180114171A (ko) | 2016-06-24 | 2018-10-17 | 쇼와 덴코 패키징 가부시키가이샤 | 축전 디바이스용 외장재 및 축전 디바이스 |
KR20200002078A (ko) * | 2018-06-29 | 2020-01-08 | (주)애플파이스튜디오 | 미션 수행 기반 독자 참여형 웹툰 제공 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN113396406A (zh) | 2021-09-14 |
EP3905056A1 (en) | 2021-11-03 |
JP7181642B2 (ja) | 2022-12-01 |
JP2022521863A (ja) | 2022-04-13 |
KR20210091426A (ko) | 2021-07-22 |
TW202127224A (zh) | 2021-07-16 |
TWI768442B (zh) | 2022-06-21 |
EP3905056A4 (en) | 2022-12-14 |
KR102301027B1 (ko) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130019019A1 (en) | Cloud servicing system configured for servicing smart phone or touch pad circuit applications and consumer programmable articles | |
WO2021145506A1 (ko) | 모듈을 이용한 독자 참여형 전자책 시스템 및 동작 방법 | |
CN105278670A (zh) | 眼佩戴型终端及控制眼佩戴型终端的方法 | |
Perdue et al. | The unofficial LEGO Mindstorms NXT 2.0 Inventor's Guide | |
WO2012100742A1 (zh) | 交互式电子积木系统 | |
US9459838B2 (en) | Path driven programming method and programming tool | |
WO2020171361A1 (ko) | 스마트 큐브 및 이의 동작방법 | |
WO2015126022A1 (ko) | 완구 조립영상 제공방법 | |
US11229841B2 (en) | Reader participation type electronic book system using module and operation method | |
WO2016190676A1 (ko) | 로봇, 스마트 블록 완구 및 이를 이용한 로봇 제어 시스템 | |
WO2014133256A1 (ko) | 미러월드 기반 체감형 디지털 보드 게임 서비스 제공 방법 및 장치 | |
WO2021040105A1 (ko) | 개체명 테이블을 생성하는 인공 지능 장치 및 그 방법 | |
WO2020145477A1 (ko) | 조립 정보 제공 시스템 및 모듈 어셈블리 | |
WO2019231182A1 (ko) | 모듈러 로봇 시스템 | |
WO2021107200A1 (ko) | 이동 단말기 및 이동 단말기 제어 방법 | |
WO2018038337A1 (ko) | Hmd 유저와 복수의 일반인들 간에 상호작용이 가능한 가상현실 컨텐츠 시스템 및 그 제어방법 | |
WO2022149635A1 (ko) | Ar을 통한 모듈 조립이 가능한 코딩 교육용 시스템 | |
WO2020141716A1 (ko) | 플러그 앤 플레이 모듈 어셈블리 및 플러그 앤 플레이 시스템 | |
WO2023286952A1 (ko) | 전원 공급 및 위치 인식이 가능한 스마트블록 및 이의 제어시스템 | |
WO2020130734A1 (ko) | 사용자 상태에 기초하여 반응을 제공하는 전자 장치 및 그의 동작 방법 | |
WO2023277227A1 (ko) | 이미지 표시 장치 및 그 제어 방법 | |
Lazar | Arduino and LEGO projects | |
WO2023191432A1 (en) | Method and electronic device for managing operation settings of home appliances | |
WO2021095992A1 (ko) | 인공지능 기능이 내장된 스마트 캐릭터 장난감 및 가상 쇼룸 생성 방법 및 그 장치 | |
WO2023234456A1 (ko) | 수중 모니터링을 위한 vr 영상 및 컨텐츠 제공 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2020541547 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20717069 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |