Toy system, mobile body, card set, control method and program
Patent Information
- Application Number
- JP2023148376
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-13
- Publication Date
- 2025-03-26
- Estimated Expiration
- 2043-09-13
Smart Images

Figure 2025041216000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a toy system, a moving object, a card set, a control method, and a program. [Background technology]
[0002] To learn programming, educational materials are available for sale that involve arranging physical cards with commands written on them, and programming them. A self-propelled device reads the commands on the arranged cards, and then the self-propelled device executes the actions according to the commands read.
[0003] Patent document 1 discloses that a self-propelled device travels over a set of cards and reads the images printed on the cards to read a program, and then the self-propelled device travels through a maze according to the program. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] International Publication No. 2020 / 036146 Summary of the Invention [Problem to be solved by the invention]
[0005] In the method of reading the program in advance, reading the program and executing it are separated. Therefore, depending on the person, it may be difficult to intuitively grasp the relationship between the program and its operation, which may be an obstacle when experiencing programming.
[0006] The present invention has been made in consideration of the above-mentioned problems, and has an object to provide a technique that enables a more intuitive programming experience. [Means for solving the problem]
[0007] In order to solve the above problems, the toy system of the present invention includes a plurality of operation instruction cards, each of which has a coded image printed thereon indicating one of a plurality of operation instructions, an interrupt setting card, each of which has a coded image printed thereon indicating an interrupt record instruction associated with an execution condition, and a moving body. The moving body includes a driving means that enables the moving body to move, a reading means that reads the image when the moving body moves over the interrupt setting card or any of the plurality of action instruction cards, and an action control means that controls the moving means in accordance with the action instructions indicated by the image read from any of the plurality of action instruction cards, wherein when the encoded image is read by the moving body moving over any of the plurality of action instruction cards, the action control means controls the moving means in accordance with the action instructions indicated by the image, and when an image indicating the interrupt record instruction is read, the action control means stores the action instructions indicated by the image read from the action instruction card over which the moving body will next move, in association with the execution condition, and when the execution condition is satisfied, the action control means executes an action in accordance with the action instructions stored in association with the execution condition, and after executing the action, resumes the action before the execution condition was satisfied.
[0008] The mobile body according to the present invention includes a travel means for enabling travel, a plurality of action instruction cards on which an encoded image showing one of a plurality of action instructions is printed, and an interrupt setting card on which an encoded image showing an interrupt record instruction associated with an execution condition is printed, a reading means for reading the image when the mobile body travels over any of the plurality of action instruction cards, and an action control means for controlling the mobile body in response to the action instruction shown in the image read from any of the plurality of action instruction cards. When the encoded image is read by traveling over any of the plurality of action instruction cards, the action control means controls the mobile body in response to the action instruction shown in the image, and when the image showing the interrupt record instruction is read, the action control means stores the action instruction shown in the image read from the action instruction card over which the mobile body will next travel in association with the execution condition, and when the execution condition is satisfied, the action control means executes an action corresponding to the action instruction associated with the execution condition, and resumes the action before the execution condition was satisfied after the execution of the action.
[0009] The card set according to the present invention includes a plurality of operation instruction cards, each of which is printed with an encoded image indicating one of a plurality of operation instructions, and which is read when a moving body equipped with a traveling means that enables traveling travels, and which are placed by a user, and an interrupt setting card, each of which is printed with an encoded image indicating an interrupt record instruction associated with an execution condition. When an image indicating one of the plurality of operation instructions is read, the traveling means is controlled according to the operation instruction indicated by the image, and when an image indicating the interrupt record instruction is read, an operation instruction indicated by an image read from the operation instruction card over which the moving body next travels is stored in association with the execution condition, and when the execution condition is satisfied, an operation according to the operation instruction stored in association with the execution condition is executed, and after the execution of the operation, the operation before the execution condition was satisfied is resumed.
[0010] Furthermore, a control method according to the present invention is a control method for controlling the traveling of a mobile body having a reading means and a traveling means, and includes a step of reading an image by the reading means when the mobile body travels over one of a plurality of operation instruction cards, each of which has an encoded image indicating one of a plurality of operation instructions printed thereon and which are each placed by a user, and an interrupt setting card, each of which has an encoded image printed thereon indicating an interrupt record instruction associated with an execution condition, and a step of controlling the traveling means in accordance with the operation instructions indicated by the read image, wherein the step of controlling the traveling means further includes a step of controlling the traveling means in accordance with the operation instructions indicated by the read image when the encoded image is read by the mobile body traveling over one of the plurality of operation instruction cards, and a step of storing, in association with the execution condition, the operation instructions indicated by the image read from the operation instruction card over which the mobile body will next travel, when the execution condition is satisfied, and, after the execution of the operation, resuming the operation before the execution condition was satisfied.
[0011] In addition, the program of the present invention causes a computer including a traveling means to function as a reading means for reading the image when traveling over one of a plurality of operation instruction cards on which an encoded image indicating one of a plurality of operation instructions is printed, and an interrupt setting card on which an encoded image indicating an interrupt record instruction associated with an execution condition is printed, and an operation control means for controlling the traveling means in accordance with the operation instructions indicated by the image read from the plurality of operation instruction cards, wherein when the encoded image is read by traveling over one of the plurality of operation instruction cards, the operation control means controls the traveling means in accordance with the operation instructions indicated by the image, and when an image indicating the interrupt record instruction is read, the operation control means stores the operation instructions indicated by the image read from the operation instruction card over which the mobile body will next travel, in association with the execution condition, and when the execution condition is satisfied, the operation control means executes an operation in accordance with the operation instruction associated with the execution condition, and after executing the operation, resumes the operation before the execution condition was satisfied.
[0012] According to the present invention, it is possible for a user to have a more intuitive programming experience.
[0013] In one form of the invention, the execution condition may be a predetermined period of time having elapsed from a start time or since a previous execution condition was met.
[0014] In one form of the present invention, the execution condition includes a first condition and a second condition, the first condition being that a first period has elapsed since a start time or a previous execution under the first condition, and the second condition being that a second period longer than the first period has elapsed since a start time or a previous execution under the second condition, and when the second condition is satisfied, the operation control means may execute an operation only in accordance with an operation instruction associated with the second condition, regardless of whether the first condition is satisfied, and after executing the operation, resume the operation before the execution condition was satisfied.
[0015] In one aspect of the present invention, the execution condition may be that an acceleration sensor detects an impact on the moving object.
[0016] In one aspect of the present invention, the execution condition may be that the magnetic sensor detects a magnetic field that satisfies a detection condition.
[0017] In one aspect of the present invention, the execution condition may be that an image in which information corresponding to the execution condition is encoded is read by the reading means.
[0018] In one form of the present invention, when an image indicating the interrupt recording instruction is read, the operation control means causes the moving body to travel in a predetermined direction based on the orientation of the moving body obtained from the image, and stores the operation instruction indicated by the image read from an operation instruction card arranged in the predetermined direction, over which the moving body will next travel, in association with the execution condition. [Brief description of the drawings]
[0019] [Figure 1] FIG. 1 is a diagram showing an example of a toy system according to an embodiment of the present invention. [Diagram 2] FIG. 2 is a diagram illustrating an example of a hardware configuration of a toy system. [Diagram 3] FIG. 2 is a diagram showing an example of a moving object as viewed from below. [Figure 4] FIG. 13 is a diagram showing an example of a relationship between information printed on a card and a moving object. [Diagram 5] FIG. 2 is a block diagram showing functions realized by the toy system. [Figure 6] 11A and 11B are diagrams illustrating an example of control of a moving object by an action instruction card. [Figure 7] 13 is a diagram illustrating another example of control of a moving object by an action instruction card. FIG. [Figure 8] 13 is a diagram illustrating another example of control of a moving object by an action instruction card. FIG. [Figure 9] FIG. 13 is a diagram illustrating an example of settings of an interrupt operation. [Figure 10] FIG. 13 is a diagram showing a modified example of an interrupt setting card. [Figure 11] 10 is a diagram for explaining an example of an operation based on the interrupt setting shown in FIG. 9. FIG. [Figure 12] 11 is a diagram for explaining an example of an operation performed by an interrupt execution card; FIG. [Figure 13] 13 is a flowchart illustrating an example of processing of a moving body. [Figure 14] 13 is a flowchart illustrating an example of processing of a moving body. [Figure 15] 13 is a flowchart illustrating an example of processing of a moving body. [Figure 16] 10 is a flowchart showing an example of driving processing by a driving processing unit. [Figure 17] 13 is a flowchart showing an example of action processing by an action processing unit. [Figure 18] 10 is a flowchart showing an example of a process for operating a moving object 20 in accordance with an interrupt execution condition. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. Among the components appearing, those having the same functions are given the same reference numerals, and the description thereof will be omitted.
[0021] 1 is a diagram showing an example of a toy system according to an embodiment of the present invention. The toy system according to the present invention includes at least a moving body 20 and a plurality of cards 30. The moving body 20 has a cube-like outer shape, and its corners are chamfered. In addition, a plurality of protrusions are provided on the upper surface to enable attachment of other toys.
[0022] The multiple cards 30 include multiple operation instruction cards, multiple interrupt setting cards, and an interrupt execution card. Each of the multiple operation instruction cards is printed with an image indicating an instruction (operation instruction) for an operation of the moving object 20. At least some of the multiple operation instruction cards are printed with an encoded image indicating one of the multiple operation instructions for the moving object 20.
[0023] An interrupt setting card is a card for setting a type of interrupt processing. Interrupt processing is also called event processing. Multiple interrupt setting cards correspond one-to-one to multiple interrupt execution conditions, and each of the multiple interrupt setting cards is printed with an encoded image showing an interrupt setting instruction for the corresponding interrupt execution condition. An interrupt execution condition is an event that triggers the set processing. An interrupt execution card is an instruction (execution instruction) corresponding to a specific one of the multiple interrupt execution conditions, and an encoded image showing the execution instruction is printed on the interrupt execution card.
[0024] At least some of the multiple cards 30 are placed by the user at any location on a flat surface (e.g., on a desk or floor). When the moving object 20 travels over any of the cards 30, it reads the image and performs an operation according to the instruction shown in the image.
[0025] The operation instructions by the multiple operation instruction cards are classified into multiple types (groups). The multiple types include a state change type, an action type, and a forced type. The state change type is a group consisting of instructions that change the operation (e.g., the running state) of the moving body 20. The action type is a group mainly consisting of instructions that make the moving body 20 execute a predetermined operation. An action type instruction may resume the previous operation after the operation is executed. Note that even an action type instruction may cause the running state to change as a result of the operation. The forced type is a group consisting of instructions that make the moving body 20 immediately stop. Details of the interrupt setting cards and interrupt execution cards will be described later.
[0026] 2 is a diagram showing an example of a hardware configuration of the toy system. The moving object 20 includes a processor 21, a storage 22, a communication unit 23, a camera 24, two motors 25, a speaker 26, and a sensor 27.
[0027] The processor 21 operates according to a program stored in the storage 22, and controls the communication unit 23, the camera 24, the motor 25, the speaker 26, etc. The above program may be provided from another computer by communication via the communication unit 23, or may be stored in a computer-readable storage medium such as a flash memory or an optical disk and provided to the other computer.
[0028] The storage 22 is configured with a DRAM, a non-volatile memory, etc. The storage 22 stores the above-mentioned programs. The storage 22 also stores information input from the processor 21, the communication unit 23, etc., and calculation results.
[0029] The communication unit 23 is composed of an integrated circuit, an antenna, and the like for communicating with other devices. The communication unit 23 has a function of communicating with other devices (e.g., computers) according to, for example, the Bluetooth (registered trademark) protocol or a wireless LAN protocol. Under the control of the processor 21, the communication unit 23 inputs information received from other devices to the processor 21 or the storage 22, and transmits information to other devices. The communication unit 23 may communicate with other devices via a wired network.
[0030] Camera 24 is positioned to capture an image of the area below moving object 20, and captures an image of pattern 71 (see FIG. 4) printed on card 30 on which moving object 20 is placed. In this embodiment, pattern 71 that can be recognized in the infrared frequency domain is printed on card 30, and camera 24 captures an infrared image of the pattern 71. In addition to pattern 71, a picture that can be recognized in visible light is printed on card 30.
[0031] The motor 25 is a so-called servo motor, the direction, amount and speed of rotation of which are controlled by the processor 21 .
[0032] The speaker 26 outputs sound based on the control of the processor 21 and the like.
[0033] The sensor 27 includes at least one of an acceleration sensor and a magnetic sensor. The acceleration sensor is, for example, a six-axis acceleration sensor, and detects the acceleration applied to the mobile body 20. A fall of the mobile body 20 or an impact on the mobile body 20 is detected based on the output of the acceleration sensor. The magnetic sensor is, for example, a three-axis magnetic sensor, and may be installed, for example, below the upper surface of the mobile body 20.
[0034] 3 is a bottom view of an example of the moving body 20. The moving body 20 further includes a switch 222, a power switch 223, and two wheels 254. One motor 25 is assigned to each of the two wheels 254, and the motor 25 drives the assigned wheel 254. The drive mechanism including the motor 25 and the wheels 254 constitute a traveling device that causes the moving body 20 to travel.
[0035] FIG. 4 is a diagram showing an example of the relationship between information printed on card 30 and moving object 20. On card 30, a plurality of patterns 71, which are images that can be read by camera 24, are printed together with an image that can be visually recognized by the user. Patterns 71 of a predetermined size (e.g., 0.2 mm square) are arranged in a matrix on card 30. The size of each pattern 71 is smaller than the size of card 30 and moving object 20. The information printed on the plurality of patterns 71 on a certain card 30 may be the same. A pattern 71 indicating a position within card 30 may be printed on a certain card 30. When moving object 20 passes over card 30, patterns 71 printed at different positions as time progresses are usually read.
[0036] In the toy system according to this embodiment, the camera 24 of the moving body 20 captures the pattern 71 printed on the card 30, and the moving body 20 decodes the pattern 71 to obtain information. The information obtained from the pattern 71 printed on the action instruction card is an action instruction. This allows the moving body 20 to recognize the type of the action instruction card. The information obtained from the pattern 71 printed on the interrupt setting card is an interrupt setting instruction for the corresponding interrupt execution condition. The information obtained from the pattern 71 printed on the interrupt execution card is an execution instruction corresponding to a specific one of a plurality of interrupt execution conditions, and an encoded image indicating the execution instruction is printed on the interrupt execution card. In addition, the moving body 20 detects the inclination of the pattern 71 in the image captured by the camera 24 to detect the direction of the moving body 20 (for example, angle A from a reference direction).
[0037] 5 is a block diagram showing functions realized by the toy system. The toy system functionally has a card information acquisition unit 51 and an operation control unit 52. The operation control unit 52 functionally includes a card determination unit 53, a parameter update unit 54, a driving processing unit 55, an action processing unit 56, an interrupt setting unit 57, and an interrupt control unit 58. These functions are mainly realized by the processor 21 included in the moving object 20 executing a program stored in the storage 22 and controlling the camera 24, the motor 25, the speaker 26, and the sensor 27. Note that some of these functions may be realized by the processor 21 transmitting a processing request to another computer included in the toy system via the communication unit 23 and receiving the result.
[0038] The card information acquisition unit 51 reads the pattern 71 (image) printed on the card 30 and acquires information indicated by the pattern 71. More specifically, when the moving object 20 runs on any one of the multiple cards 30, the card information acquisition unit 51 reads the pattern 71 printed on the card 30 and decodes information (operation instruction, interrupt setting instruction, execution instruction) from the pattern 71. The card information acquisition unit 51 also acquires the orientation (angle) of the moving object 20 with respect to the card 30 based on the inclination of the pattern 71 photographed by the camera 24.
[0039] When an operation instruction is acquired as information, the operation control unit 52 controls the running device, the speaker 26, etc., in accordance with the acquired operation instruction. When the operation instruction is information indicating a change in a running parameter, the operation control unit 52 controls the running device (motor 25) in accordance with the changed parameter after acquiring the acquired pattern 71. When the encoded pattern 71 is not read, the operation control unit 52 controls the running device to continue the operation in accordance with the operation instruction indicated by the previously read pattern 71 until a new encoded pattern 71 is read as a result of the moving body 20 running on a new card 30 among the multiple cards 30. When a new encoded pattern 71 is read, the operation control unit 52 controls the running device in accordance with the new operation instruction, interrupt setting instruction, and execution instruction indicated by the new pattern 71.
[0040] When an interrupt setting instruction is acquired, the operation control unit 52 stores in the storage 22 the operation instruction indicated by the image read from the operation instruction card for the next run of the moving body 20, in association with the interrupt execution condition corresponding to the interrupt setting instruction.
[0041] When any of the interrupt execution conditions is satisfied, the operation control unit 52 executes an operation according to an operation instruction stored in the storage 22 in association with the satisfied interrupt execution condition, and after the execution of the operation, causes the traveling device to resume the operation before the interrupt execution condition was satisfied.
[0042] The card determination unit 53 determines what type of instruction the information of the card 30 acquired by the processing of the card information acquisition unit 51 indicates, and if the information indicates an operational instruction, determines the group to which the operational instruction belongs. If the operational instruction belongs to a state change type, the card determination unit 53 causes the parameter update unit 54 to execute processing. On the other hand, if the operational instruction belongs to an action type, the card determination unit 53 causes the action processing unit 56 to execute processing.
[0043] The parameter update unit 54 updates the travel parameters based on the operation instructions belonging to the state change system. Here, the operation instructions belonging to the state change system are further classified into a plurality of subgroups. The plurality of subgroups include a steering wheel subgroup, a speed subgroup, and a brake subgroup. The steering wheel subgroup includes an instruction to change the state of the steering wheel to the right or left, and an instruction to change the state of the steering wheel to go straight. Changing the state of the steering wheel to the right or left means continuously changing the traveling direction of the moving body 20 to the right or left. The speed subgroup includes an instruction to set the speed to a specified value. The specified value may be any one of a plurality of predetermined candidate values (e.g., slow, fast, very fast), and each of the plurality of instructions included in the speed subgroup may indicate a candidate value different from each other. The brake subgroup includes a brake instruction to continuously reduce the speed. In response to the brake instruction, the moving body 20 performs a brake operation to continuously reduce the speed. Here, each of the plurality of operation instructions belonging to the state change system may be classified (labeled) into one or more subgroups. For example, a certain motion instruction may be labeled in both a speed subgroup and a handling subgroup.
[0044] The parameter update unit 54 updates the driving parameters of the subgroup to which the operation instruction indicated by the read pattern 71 is classified, among the multiple subgroups, to information (e.g., a value) indicated by the operation instruction. By setting driving parameters for each subgroup and controlling the driving by the multiple driving parameters, the operation of the mobile object 20 can be made more diverse. When the operation instruction indicated by the read pattern 71 is classified into multiple subgroups of state change systems, the parameter update unit 54 may update each of the driving parameters of the multiple subgroups to which the operation instruction belongs to information of the driving parameters of the respective subgroups according to the operation instruction.
[0045] The driving processing unit 55 controls the driving device (e.g., the motor 25) based on the operation instructions (e.g., driving parameters) set for each of the multiple subgroups. The driving processing unit 55 controls the driving device so that the moving body 20 drives according to the driving parameters. The driving processing unit 55 continuously changes the traveling direction of the moving body 20 to the right or left, or drives the moving body 20 straight, according to the driving parameters of the steering wheel state. The driving processing unit 55 drives the moving body 20 at a speed according to the parameters of the speed subgroup. Furthermore, the driving processing unit 55 continuously reduces the speed of the moving body 20 when the parameters of the brake state are set.
[0046] When an interrupt setting instruction is acquired, the interrupt setting unit 57 acquires an operation instruction indicated by an image read from an operation instruction card for the moving body 20 to run next and the direction of the moving body 20, and stores an interrupt execution condition corresponding to the interrupt setting instruction in the storage 22 in association with the operation instruction and the direction. The interrupt execution condition includes at least a part of one or more time intervals for execution, detection of an impact by an acceleration sensor, detection of a magnetism satisfying a detection condition by a magnetic sensor, and reading of a special pattern 71. The special pattern 71 may be printed on an interrupt execution card, and the pattern 71 may be an image in which an execution instruction is coded. When the pattern 71 indicating an interrupt recording instruction is read, the interrupt setting unit 57 first makes the moving body 20 run in a predetermined direction based on the direction of the moving body 20 acquired from the inclination of the photographed pattern 71. Then, the interrupt setting unit 57 associates the action instruction and the direction indicated by the image read from the action instruction card placed in a predetermined direction with the interrupt execution condition and stores them in the storage 22. Note that a visible image indicating the direction in which the next card is to be placed may be printed on the interrupt setting card.
[0047] When any of the interrupt execution conditions is satisfied, the interrupt control unit 58 executes an operation according to an operation instruction stored in the storage 22 in association with the satisfied interrupt execution condition. This operation may be an operation executed by an operation instruction during normal running, may be to control the running device, or may be to output a sound from the speaker 26. After executing the operation, the interrupt control unit 58 causes the running device to resume the operation (for example, an operation according to a running parameter) that was performed before the interrupt execution condition was satisfied.
[0048] Here, a specific example of the running of the moving body 20 by changing the running parameters will be described. FIG. 6 is a diagram for explaining an example of the control of the moving body 20 by the action instruction cards. In the example of FIG. 6, the action instruction cards are a "Slow" card 30a, a "Fast" card 30b, a right-facing card 30d, and a goal card 30j. In the example of FIG. 6, the moving body 20 first reads the pattern 71 on the card 30a, sets the parameters of the speed subgroup to a first speed, and moves straight at that speed. Next, the moving body 20 reads the pattern 71 on the card 30b, updates the parameters of the speed subgroup to a second speed faster than the first speed, and moves straight at that speed. Next, the moving body 20 reads the pattern 71 on the card 30d, updates the parameters of the handle subgroup to "right", and moves forward so as to turn right while maintaining the speed. Then, when the moving body 20 reaches the card 30j, the moving body 20 that reads the pattern 71 on the card 30j makes a sound and stops.
[0049] Here, for example, a pattern 71 indicating an action instruction of a combination of "Fast" and rightward facing may be printed on one card 30. In this case, a card 30 in which cards 30b and 30d are integrated exists, and when the moving object 20 reads the pattern 71 on the card 30, the moving object 20 updates the parameters of the speed subgroup to a second speed, and further updates the running parameters of the steering wheel subgroup to "right". Thereafter, the moving object 20 may proceed to turn right at the second speed. Also, a card 30 may exist on which a pattern 71 indicating an action instruction of a combination of another speed and steering wheel state is printed.
[0050] FIG. 7 is a diagram for explaining another example of the control of the moving body 20 by the action instruction cards. In the example of FIG. 7, a card 30b of "Fast" and a card 30g of "Brake" are arranged as action instruction cards. In the example of FIG. 7, the moving body 20 first reads the pattern 71 on the card 30b, updates the parameters of the speed subgroup to a second speed, and moves straight at that speed. Then, the moving body 20 reads the pattern 71 on the card 30g, and updates the parameters of the brake subgroup to the brake state. Then, the moving body 20 continuously decelerates the speed of the moving body 20 according to the parameters of the brake state. Finally, the speed of the moving body 20 becomes 0 and the moving body 20 stops.
[0051] The action processing unit 56 controls the moving body 20 to perform an action indicated by an action instruction based on the action instruction. When the action processing unit 56 receives an instruction to turn in a direction indicated by the card 30, in other words, an instruction to make the moving body 20 travel in a specified direction, the action processing unit 56 controls the traveling device to make the moving body 20 turn in the specified direction.
[0052] FIG. 8 is a diagram for explaining another example of the control of the moving body 20 by the action instruction card. In the example of FIG. 8, a "Fast" card 30b and an arrow card 30h indicating the moving direction are arranged as the action instruction cards. In the example of FIG. 8, the moving body 20 first reads the pattern 71 on the card 30b, updates the parameters of the speed subgroup to a second speed, and moves straight at that speed. Then, the moving body 20 reads the pattern 71 on the card 30g, and executes an action of turning (changing direction) so that the direction indicated by the pattern 71 and the moving direction of the moving body 20 form a predetermined angle (actually the direction of the arrow). After the change of direction is completed, the moving body 20 moves straight at the second speed toward the moving direction.
[0053] In this way, the driving state, such as driving parameters or direction of travel, is changed by the action instruction of the card 30, and the moving object 20 continues to move according to the action instruction until it reaches the next card 30, and the driving state is changed by the action instruction again. This makes the reading of the card 30 and the action resulting from it interactive, allowing the user to experience programming more intuitively and easily. In addition, since there is no restriction on arranging the cards 30 without separating them, the user can place the cards 30 in any position, which increases the degree of freedom of the movement of the moving object 20 in the programming experience.
[0054] Next, a case where an interrupt setting card and an interrupt execution card are used will be described. FIG. 9 is a diagram for explaining an example of the setting of an interrupt operation. In the example of FIG. 9, an arrow card 30h indicating a change in direction is arranged as an operation instruction card. Also, a card 30r is arranged as an interrupt setting card. In the example of FIG. 9, the interrupt execution condition is a time interval of 2 seconds (every 2 seconds), and an interrupt operation for the interrupt execution condition is recorded. More specifically, the moving body 20 reads the card 30r indicating the interrupt setting and moves forward. Next, the moving body 20 reads the card 30h for changing direction diagonally to the right, and stores the operation instruction and angle obtained from the card 30h in the storage 22 in association with the interrupt execution condition of a time interval of 2 seconds.
[0055] Fig. 10 is a diagram showing a modified example of an interrupt setting card. As shown in Fig. 10, an opening of a size and shape corresponding to the action instruction card may be provided in card 30q, which is an interrupt setting card, and the action instruction card may be fitted into the opening. In the example of Fig. 10, a card 30k showing an action instruction indicating rotation is fitted into the opening. The interrupt execution condition corresponding to the interrupt setting card in Fig. 10 is to read the interrupt execution card.
[0056] When the mobile body 20 reads the interrupt setting instruction from the interrupt setting card, it next obtains an action instruction from an action instruction card fitted into the opening, associates the action instruction with an interrupt execution condition of reading the interrupt execution card, and stores the association in the storage 22.
[0057] Fig. 11 is a diagram for explaining an example of the operation according to the interrupt setting shown in Fig. 9. In the example of Fig. 11, an operation instruction for changing direction and information indicating an angle diagonally to the right indicating the direction of change are stored in association with an interrupt execution condition of a time interval of 2 seconds, and the operation instruction is executed every 2 seconds, and the moving body 20 changes direction diagonally to the right. After the direction change, the moving body 20 resumes moving forward in the same way as before. As a result, the path that the moving body 20 moves along becomes one as shown by the dashed line in Fig. 11.
[0058] FIG. 12 is a diagram for explaining an example of the operation by the interrupt execution card. In FIG. 12, a card 30p is arranged as the interrupt execution card. Also, as shown in FIG. 10, it is assumed that an operation instruction to rotate once is stored in association with the interrupt execution condition of reading the interrupt execution card. In the example of FIG. 12, when the pattern 71 of the interrupt execution card is read after the moving body 20 moves straight, the moving body 20 rotates. Then, after the rotation, the moving body 20 moves straight again. The interrupt execution card can perform the same operation as the rotation card 30k. In this way, it is also possible to substantially increase the number of operation instruction cards of a specific type.
[0059] Next, the process for realizing the operations described above will be described in more detail. Figures 13 to 15 are flowcharts showing an example of the process of the moving body 20. Figures 13 to 15 mainly show the processes of the card information acquisition unit 51, the card judgment unit 53, the parameter update unit 54, the interrupt setting unit 57, and the interrupt control unit 58. The processes shown in Figures 13 to 15 are repeatedly executed periodically (for example, every 0.1 seconds), but the repetition of the processes may be suppressed while an operation associated with an interrupt setting instruction or an operation corresponding to an interrupt execution condition is being executed.
[0060] First, the interrupt control unit 58 operates the moving body 20 based on whether or not each of a plurality of interrupt execution conditions is satisfied (S101). Strictly speaking, the plurality of interrupt execution conditions that are the subject of this process exclude reading of the interrupt execution card. Details of this process will be described later.
[0061] Next, the card information acquisition unit 51 acquires an image read by the camera 24 of the moving object 20 (S102). The card information acquisition unit 51 determines whether it is possible to acquire an instruction (operation instruction, interrupt setting instruction, interrupt execution instruction) from the acquired image (S103). More specifically, if the pattern 71 exists in the acquired image and information decoded from the image indicates some instruction (for example, indicates a value in a range assigned to the instruction), the card information acquisition unit 51 determines that it is possible to acquire the instruction. If it is impossible to acquire the instruction (N in S103), the processing shown in Figs. 13 to 15 ends. If it is possible to acquire the instruction (Y in S103), the card information acquisition unit 51 acquires the instruction of the card 30 from the image and the angle A of the moving object 20 with respect to the card 30 (S104). The processing using the angle A will be described later.
[0062] When an instruction for the card 30 is acquired, the card information acquisition unit 51 determines whether the instruction has been acquired from the same card 30 as the previous time (S105). If the instruction has been acquired from the same card 30 (Y in S105), the processing of Figs. 13 to 15 ends. Whether the instruction has been acquired from the same card 30 may be determined based on whether the same instruction has been read. Furthermore, if an instruction was not read last time, it may be determined that the instruction has not been read from the same card 30 as the previous time. This processing prevents problems and waste of processing resources caused by repeating the same processing.
[0063] If the instruction is not read from the same card 30 as the previous time (N in S105), the card determination unit 53 determines whether the acquired instruction is an operation instruction (S106). The process when the acquired instruction is not an operation instruction will be described later.
[0064] If the acquired instruction is an operation instruction (Y in S106), the card determination unit 53 determines whether the acquired operation instruction belongs to a state change group (S111). If the acquired operation instruction belongs to a state change group (Y in S111), the parameter update unit 54 updates the driving parameters according to the operation instruction (S112).
[0065] More specifically, the parameter update unit 54 updates the driving parameters of the subgroup into which the operation instruction is classified to values indicated by the operation instruction. When the operation instruction belongs to the speed subgroup, the parameter update unit 54 sets the speed parameter to a value according to the operation instruction. When the operation instruction belongs to the steering subgroup, the parameter update unit 54 updates the steering state parameter to a value indicated by the operation instruction (e.g., right, left, or straight). When the operation instruction belongs to the braking subgroup, the parameter update unit 54 updates the brake parameter to a braking state (or a no-brake state).
[0066] When an action instruction belongs to a plurality of subgroups, the parameter update unit 54 updates the driving parameters of each of the plurality of subgroups to a value indicated by the action instruction. For example, when an action instruction belongs to a speed subgroup and a steering wheel subgroup, the parameter update unit 54 sets the speed parameter to a value according to the action instruction, and updates the steering wheel state parameter to a value indicated by the action instruction. In this case, there may be a plurality of action instructions that correspond one-to-one to each combination of a candidate value of the speed parameter (e.g., slow, fast, very fast) and a candidate value of the steering wheel state parameter (e.g., right, left, straight). There may be a card 30 that corresponds one-to-one to each of the plurality of action instructions.
[0067] On the other hand, if the acquired operation instruction does not belong to the state change system (N in S111), the card determination unit 53 determines whether the acquired operation instruction indicates an instruction to stop the moving object 20 (S113). If the operation instruction indicates an instruction to stop the moving object 20 (Y in S113), the travel processing unit 55 ends the travel processing and stops the moving object 20 (S114).
[0068] On the other hand, if the action instruction does not indicate an instruction to stop the moving object 20 (N in S113), the card judgment unit 53 judges that the acquired action instruction belongs to the action group (S115). If the action instruction does not belong to the action group (N in S115), the processing of Figs. 13 to 15 is terminated. If the action instruction belongs to the action group (Y in S115), the card judgment unit 53 judges whether the running process of the running processing unit 55 or the action process of the action processing unit 56 is currently being executed (S116). If the running process or the action process is being executed (Y in S116), the running process or the action process being executed is stopped (S117). If the running process and the action process are not being executed (N in S116), the processing of S117 is skipped. Then, the action processing unit 56 starts the action process in response to the action instruction (S118). An example of the action process will be described later.
[0069] In S106, if the instruction acquired by the card information acquisition unit 51 is not an operation instruction (N in S106), the card judgment unit 53 judges whether the acquired instruction is an interrupt setting instruction (S121). If the acquired instruction is an interrupt setting instruction (Y in S121), the interrupt setting unit 57 controls the travel device so that the moving body 20 turns toward the next card 30 and then moves forward, and waits until the card information acquisition unit 51 reads the operation instruction (and angle) from the next card 30 (S122). The next card 30 is placed by the user in a direction (for example, to the right of the card 30 in Figs. 9 and 10) that is predetermined with respect to the interrupt setting card. Based on the angle A acquired by the card information acquisition unit 51 from the inclination of the photographed pattern 71 of the interrupt setting card, the interrupt setting unit 57 controls the travel device so that the moving body 20 turns toward a predetermined direction and moves forward in that direction. By rotating the direction, it becomes possible to read the action instruction card even if the direction in which the moving body 20 is placed is shifted.
[0070] When the operation instruction is read, the interrupt setting unit 57 associates the operation instruction and the angle with the interrupt execution condition corresponding to the interrupt setting instruction and stores them in the storage 22 (S123). The interrupt setting unit 57 also stops the motor 25 (S124), and ends the processing of Figures 13 to 15.
[0071] If the acquired instruction is not an interrupt setting instruction (N in S121), the card judgment unit 53 judges whether the acquired instruction is an execution instruction for a predetermined interrupt execution condition (S125). If the acquired instruction is an execution instruction (Y in S125), the interrupt control unit 58 acquires the operation instruction and angle stored in association with the interrupt execution condition from the storage 22, and controls at least a part of the traveling device and the speaker 26 to execute an operation according to the operation instruction (S127).
[0072] The process described above makes it possible to set the moving object 20 to operate not only according to instructions from the cards 30, but also according to various interrupt execution conditions. This improves the freedom of programming, and makes it possible to provide a more diverse and sophisticated programming experience by arranging the cards 30.
[0073] Next, a description will be given of details of the driving process by the driving processing unit 55. Fig. 16 is a flowchart showing an example of the driving process by the driving processing unit 55. The process shown in Fig. 16 is executed periodically except during a stopped state, an operation associated with an action process, an operation associated with an interrupt setting instruction, or an operation corresponding to an interrupt execution condition is being executed.
[0074] First, the driving processing unit 55 determines whether the brake state is set among the driving parameters (S201). If the brake state is set (Y in S201), a predetermined value is subtracted from the speed value stored as the driving parameter (S202). On the other hand, if the brake state is not set (N in S201), S202 is skipped.
[0075] If the speed value is 0 (Y in S203), the travel processing unit 55 stops the travel of the moving body 20 and transitions the state of the moving body 20 to a stopped state (S204). Note that if the recording mode is ON, the same process as when a recording end instruction is acquired (see S125) may be performed.
[0076] On the other hand, if the speed value is not 0 (N in S203), the driving processing unit 55 determines the rotation speed of the left and right wheels 254 based on the current speed value and the steering wheel state parameters (S205). The driving processing unit 55 controls the rotation of the left and right motors 25 based on the determined rotation speed (S206).
[0077] In this embodiment, the two wheels 254 are driven by different motors 25, and therefore, by controlling the rotation speed of the wheels 254 (motors 25), the moving body 20 can be made to go straight, turn continuously to the right, or turn continuously to the left. When going straight, the difference in the rotation speed between the left and right is almost zero. When the moving body 20 includes a steering mechanism, the travel processing unit 55 may control the moving body 20 to go straight, turn right, or turn left by setting the orientation of some of the wheels 254.
[0078] In this way, by running according to the running parameters set by the card 30, it is possible to control the running device so that even if it moves away from the card 30, it continues to operate according to the operating instructions indicated by the previously read pattern 71 until a new pattern 71 is read as the mobile object 20 runs over a new card 30.
[0079] Fig. 17 is a flowchart showing an example of action processing by the action processing unit 56. Fig. 17 shows processing executed by an action instruction to turn the direction of travel in a specified direction, such as the card 30h, among a plurality of action-based operation instructions. The processing shown in Fig. 17 starts at S118 in Fig. 14.
[0080] First, the action processing unit 56 reduces the rotation speed of the two motors 25 and temporarily stops the rotation of the wheels 254 (S301). Next, based on the angle read from the card 30 (or acquired from the storage 22), the action processing unit 56 determines the direction and amount of rotation of the left and right motors 25 (S302). The direction and amount of rotation are determined so that the orientation of the moving body 20 after rotation is a predetermined direction (for example, the direction of the arrow on the card 30h) with respect to the card 30 from which the angle was read. The action processing unit 56 also determines the direction and amount of rotation so that the directions of rotation of the left and right wheels 254 are opposite to each other and the moving body 20 faces a predetermined direction with the minimum rotation.
[0081] Here, if the value of the speed of the running parameter is 0 (Y of S304), the action processing unit 56 stops the moving object 20 and transitions the state of the moving object 20 to a stopped state (S305). If the value of the speed of the running parameter is not 0 (N of S304), the action processing unit 56 resumes the running processing of the running processing unit 55 (S306), and ends the processing of FIG.
[0082] In this process, the direction of travel is physically changed by the action set by the card 30. After the action, the traveling process is resumed, and the moving object 20 travels according to the traveling parameters set before. As a result, the traveling device can be controlled to continue the operation according to the previous operation instructions until a new pattern 71 is read by the moving object 20 traveling over a new card 30.
[0083] The processing executed by the action processing unit 56 is not limited to the above. For example, in other operation instructions belonging to the action subgroup, instead of the processing shown in S301 to S303, a typical operation such as rotation (spinning) or meandering may be executed by reproducing the time-series motor control information stored in the storage 22. In addition, in other operation instructions, instead of the processing shown in S301 to S303, a process of reproducing audio previously stored in the storage 22 from the speaker 26 may be executed.
[0084] FIG. 18 is a flowchart showing an example of a process for operating the moving object 20 in accordance with an interrupt execution condition.
[0085] First, the interrupt control unit 58 determines whether the acceleration sensor has detected an impact on the moving object 20 (S401). The detection of an impact is one of a plurality of interrupt execution conditions. If an impact is detected (Y in S401), the interrupt control unit 58 executes an operation according to an operation instruction (and angle) associated with the interrupt execution condition of the detection of an impact (S402). More specifically, the interrupt control unit 58 obtains the operation instruction and angle stored in association with the interrupt execution condition from the storage 22, and controls at least a part of the traveling device and the speaker 26 to execute an operation according to the operation instruction.
[0086] If no impact is detected (N in S401), the interrupt control unit 58 determines whether the magnetic sensor detects a magnetic field having a strength exceeding a threshold (S403). This detection of magnetic field is one of a number of interrupt execution conditions. If a magnetic field having a strength exceeding the threshold is detected (Y in S403), the interrupt control unit 58 executes an operation according to the operation instruction (and angle) associated with the interrupt execution condition of the detection of magnetic field (S404).
[0087] If no magnetism exceeding the threshold value is detected (N in S403), the interrupt control unit 58 judges in S405 whether the interrupt execution condition of 3-second intervals is satisfied. In practice, the interrupt control unit 58 judges whether 3 seconds have elapsed since the start of the operation or the previous execution time T3. The start of the operation may be, for example, the time when the moving body 20 is placed on a desk. The execution time T3 is the time when this interrupt execution condition was satisfied last time. The interrupt control unit 58 may simply judge whether the interrupt execution condition of 3-second intervals is satisfied based on whether the elapsed time from the start of the operation is divisible by 3 seconds. If 3 seconds have elapsed since the start of the run or the previous execution time T3 (Y in S405), the interrupt control unit 58 executes an operation according to the operation instruction (and angle) associated with the interrupt execution condition of 3-second intervals (S406).
[0088] If three seconds have not elapsed since the start of running or the previous execution time T3 (N in S405), the interrupt control unit 58 judges in S407 whether the interrupt execution condition of two-second intervals is satisfied. In practice, the interrupt control unit 58 judges whether two seconds have elapsed since the start of the operation or the previous execution time T2. The execution time T2 is the time when this interrupt execution condition was satisfied last time. The interrupt control unit 58 may simply judge whether the interrupt execution condition of two-second intervals is satisfied based on whether the elapsed time from the start of the operation is divisible by two seconds. If two seconds have elapsed since the start of running or the previous execution time T2 (Y in S407), the interrupt control unit 58 executes an operation according to the operation instruction (and angle) associated with the interrupt execution condition of two-second intervals (S408).
[0089] If two seconds have not elapsed since the start of running or the previous execution time T2 (N in S407), in S409 the interrupt control unit 58 judges whether the interrupt execution condition at one second intervals is satisfied. In practice, the interrupt control unit 58 judges whether one second has elapsed since the start of the operation or the previous execution time T1. The execution time T1 is the time when this interrupt execution condition was satisfied last time. The interrupt control unit 58 may simply judge whether the interrupt execution condition at one second intervals is satisfied based on whether the elapsed time from the start of the operation is divisible by one second. If one second has elapsed since the start of running or the previous execution time T1 (Y in S409), the interrupt control unit 58 executes an operation according to the operation instruction (and angle) associated with the interrupt execution condition at one second intervals (S409).
[0090] The order of the processes in S401 to S402, S403 to S404, and S405 to S410 may be different from that shown in FIG. 18. However, it is preferable that the processes in S405 to S410 are executed in a sequence in which the longer the time interval, the higher the priority. For example, when two seconds have passed since the start of an operation, not only the two-second interval but also the one-second interval interrupt execution condition is satisfied. However, if the operation according to the one-second interval interrupt execution condition is prioritized, the two-second interval operation will not be executed, resulting in a lack of diversity. In addition, by combining operations at multiple time intervals, complex operations with the least common multiple period can be realized, making it possible to perform more diverse programming.
[0091] As can be seen from the above explanation, the moving object 20 can be operated not only according to the instructions of the cards 30, but also according to interrupt execution conditions such as a specific card, a time interval, impact detection, or timing detection. It is also possible to incorporate changes in the movement by using a time interval, and for example, it is possible to program an action that corresponds to an obstacle using impact detection or timing detection, creating room for various ingenuity. This increases the degree of freedom in programming, and makes it possible to make the programming experience by arranging the cards 30 more diverse and advanced. [Explanation of symbols]
[0092] 20 mobile object, 21 processor, 22 storage, 23 communication unit, 24 camera, 25 motor, 26 speaker, 27 sensor, 222 switch, 223 power switch, 254 wheel, 30, 30a, 30b, 30d, 30g, 30h, 30k, 30j, 30p, 30q, 30r card, 51 card information acquisition unit, 52 operation control unit, 53 card determination unit, 54 parameter update unit, 55 driving processing unit, 56 action processing unit, 57 interrupt setting unit, 58 interrupt control unit, 71 pattern.
Claims
1. a plurality of action instruction cards, each of which has a coded image printed thereon that indicates one of a plurality of action instructions; an interrupt setting card on which is printed an encoded image showing interrupt recording instructions associated with execution conditions; A moving object, The moving body is A means for moving that enables the vehicle to move; a reading means for reading the image when the moving object travels over any one of the interrupt setting card and the plurality of operation instruction cards; and an operation control means for controlling the traveling means in response to an operation instruction indicated by an image read from any one of the plurality of operation instruction cards, when the encoded image is read by the moving object traveling on any one of the plurality of action instruction cards, the action control means controls the traveling means in accordance with the action instruction indicated by the image; when the image indicating the interrupt record instruction is read, the operation control means stores the operation instruction indicated by the image read from the operation instruction card over which the moving body will next travel, in association with the execution condition; the operation control means, when the execution condition is satisfied, executes an operation according to an operation instruction stored in association with the execution condition, and resumes the operation before the execution condition was satisfied after the execution of the operation. Toy system.
2. 2. The toy system according to claim 1, The execution condition is that a predetermined period of time has elapsed from a start time or since a previously satisfied execution condition. Toy system.
3. 3. The toy system according to claim 2, the execution condition includes a first condition and a second condition, The first condition is that a first period of time has elapsed since a start time or a previous execution of the first condition; the second condition is that a second period longer than the first period has elapsed since a start time or a previous execution under the second condition; when the second condition is satisfied, the operation control means executes an operation corresponding only to an operation instruction associated with the second condition, regardless of whether the first condition is satisfied, and resumes the operation before the execution condition is satisfied after the execution of the operation. Toy system.
4. 2. The toy system according to claim 1, the execution condition is that an acceleration sensor detects an impact on the moving object; Toy system.
5. 2. The toy system according to claim 1, The execution condition is that the magnetic sensor detects a magnetic field that satisfies a detection condition. Toy system.
6. 2. The toy system according to claim 1, the execution condition being that an image in which information corresponding to the execution condition is encoded is read by the reading means; Toy system.
7. 7. The toy system according to claim 1, when an image indicating the interrupt record instruction is read, the operation control means causes the moving body to travel in a predetermined direction based on the orientation of the moving body obtained from the image, and stores an operation instruction indicated by an image read from an operation instruction card arranged in the predetermined direction, over which the moving body will next travel, in association with the execution condition. Toy system.
8. A means for moving that enables the vehicle to move; a reading means for reading the image when the device runs over one of a plurality of operation instruction cards, each of which has a coded image printed thereon indicating one of a plurality of operation instructions, and an interrupt setting card, each of which has a coded image printed thereon indicating an interrupt record instruction associated with an execution condition; and an operation control means for controlling the traveling means in response to an operation instruction indicated by an image read from any one of the plurality of operation instruction cards, when the encoded image is read by running over any one of the plurality of action instruction cards, the action control means controls the running means in accordance with the action instruction indicated by the image; when the image indicating the interrupt record instruction is read, the operation control means stores the operation instruction indicated by the image read from the operation instruction card over which the moving body will next travel, in association with the execution condition; the operation control means, when the execution condition is satisfied, executes an operation according to an operation instruction associated with the execution condition, and, after the execution of the operation, resumes the operation before the execution condition was satisfied; Mobile body.
9. a plurality of operation instruction cards, each of which is printed with an encoded image indicating one of a plurality of operation instructions, the encoded image being an image to be read when a moving body having a traveling means that enables traveling is traveling, and each of which is placed by a user; an interrupt setting card on which is printed an encoded image showing an interrupt recording instruction associated with an execution condition; When an image showing any one of the plurality of operation instructions is read, the traveling means is controlled in accordance with the operation instruction shown by the image, When the image showing the interrupt record instruction is read, the operation instruction shown in the image read from the operation instruction card over which the moving body will next travel is stored in association with the execution condition; When the execution condition is satisfied, an operation corresponding to the operation instruction stored in association with the execution condition is executed, and after the execution of the operation, the operation before the execution condition was satisfied is resumed. Card set.
10. A control method for controlling travel of a moving body having a reading means and a travel means, comprising the steps of: a step in which, when the moving object travels over any of a plurality of operation instruction cards, each of which has a coded image showing one of a plurality of operation instructions printed thereon and which is placed by a user, and an interrupt setting card, each of which has a coded image showing an interrupt record instruction associated with an execution condition printed thereon, the reading means reads the image; and controlling the traveling means in response to an operation instruction indicated by the read image, In the step of controlling the traveling means, when the encoded image is read by the moving body traveling on any one of the plurality of operation instruction cards, the traveling means is controlled in accordance with the operation instruction indicated by the image; a step of storing, when the image indicating the interrupt record instruction is read, an operation instruction indicated by the image read from the operation instruction card over which the moving body will next travel, in association with the execution condition; In the step of controlling the traveling means, when the execution condition is satisfied, an operation is executed according to an operation instruction associated with the execution condition, and after the execution of the operation, the operation before the execution condition was satisfied is resumed. Control methods.
11. A computer including a vehicle, a reading means for reading the images when the device runs over one of a plurality of operation instruction cards, each of which has a coded image printed thereon indicating one of a plurality of operation instructions, and an interrupt setting card, each of which has a coded image printed thereon indicating an interrupt record instruction associated with an execution condition; an operation control means for controlling the traveling means in response to operation instructions indicated by images read from the plurality of operation instruction cards; Function as a when the encoded image is read by running over any one of the plurality of action instruction cards, the action control means controls the running means in accordance with the action instruction indicated by the image; when the image indicating the interrupt record instruction is read, the operation control means stores the operation instruction indicated by the image read from the operation instruction card over which the moving body will next travel, in association with the execution condition; the operation control means, when the execution condition is satisfied, executes an operation according to an operation instruction associated with the execution condition, and, after the execution of the operation, resumes the operation before the execution condition was satisfied; program.
Citation Information
Patent Citations
Mobile robot toy and using method thereof
CN111625003A
Sounding toy
JP2001113055A
Panel recognizing device
JP2001228963A
Traveling toy, program, information storage medium, and game device
JP2010167148A
Moving body toy
JP2010240345A