Toy system, moving body, control method, and program

The toy system addresses the challenges of intuitive programming and stable movement by using coded images on cards to guide a moving object, allowing it to continue operations based on previously read instructions and accurately recognizing information from multiple cards, thus improving the learning experience and stability.

WO2025018025A1PCT designated stage expired Publication Date: 2025-01-23SONY INTERACTIVE ENTERTAINMENT LLC
View PDF 15 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/018899
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-19
Filing Date
2024-05-22
Publication Date
2025-01-23

AI Technical Summary

Technical Problem

Existing programming education tools face challenges in providing an intuitive learning experience, as users struggle to grasp the relationship between programs and operations, and there is difficulty in accurately recognizing information from multiple cards and maintaining stable movement due to environmental shifts.

Method used

A toy system with coded images on cards that allows users to place cards arbitrarily, featuring a moving object with a reading mechanism that continues operations based on previously read instructions until new images are detected, enabling intuitive programming and stable movement by classifying instructions into groups and controlling the moving object accordingly.

Benefits of technology

Enhances the intuitive programming experience by allowing users to understand the relationship between instructions and operations more clearly, and ensures stable movement by accurately recognizing and responding to encoded information from multiple cards.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024018899_23012025_PF_FP_ABST
    Figure JP2024018899_23012025_PF_FP_ABST
Patent Text Reader

Abstract

The present invention allows a user to experience programming more intuitively. This toy system includes: a traveling means that enables traveling; a reading means that reads an image when traveling on one of a plurality of cards, each printed with a coded image indicating one of a plurality of operation states and each disposed at an arbitrary location by a user; and an operation control means that controls the traveling means according to an operation instruction indicated by an image that has been read. When a coded image is yet to be read, the operation control means controls the traveling means so as to continue an operation corresponding to an operation instruction indicated by an image previously read, until a new coded image is read by traveling on a new card among the plurality of cards. When a new coded image has been read, the operation control means controls the traveling means according to a new operation instruction indicated by the new image.
Need to check novelty before this filing date? Find Prior Art

Description

Toy system, moving object, control method and program

[0001] The present invention relates to a toy system, a moving object, a control method, and a program.

[0002] To learn programming, educational materials are available for sale that involve arranging physical cards with commands written on them. A self-propelled device reads the commands on the cards, and then the device performs the actions according to the read commands.

[0003] There is also a system that controls a moving object that travels on a sheet-like medium by printing a plurality of patterns associated with information different from position information on one side of the medium.

[0004] There is also a toy system in which cards are arranged on a flat surface such as a desk, and a moving object travels on the cards.

[0005] WO 2020 / 036146 describes a mobile object traveling over a set of command cards, recognizing a pattern printed on the command card and obtaining a command from the pattern to control the movement of the mobile object. WO 2020 / 036146 also discloses a self-propelled device traveling over the set of cards, reading the image printed on the card to read a program, and then traveling through a maze according to the program.

[0006] WO 2018 / 025467 discloses that a carriage runs over a sheet-like medium on which a plurality of second array patterns, each having control information defined thereon, are printed, and the carriage's movement is controlled by reading the patterns printed on the medium.

[0007] In the method of reading a program in advance, reading the program and executing it are separated. Therefore, some people find it difficult to intuitively grasp the relationship between the program and its operations, which may be an obstacle to learning programming.

[0008] The present invention has been made in view of the above-mentioned problems, and one of its objects is to provide a technique that enables a more intuitive programming experience.

[0009] The inventors have also developed a system that controls the operation of a moving object using multiple cards, each of which is a sheet-like medium. When multiple cards with the same coded pattern printed on them are placed in succession, the information read by the moving object remains unchanged even when the moving object moves onto the next card. This makes it difficult to accurately determine whether the moving object is receiving information from a single card or multiple cards.

[0010] The present invention has been made in consideration of the above-mentioned problems, and one of its objectives is to provide a technology that can accurately acquire information from multiple cards on which patterns encoding information are printed.

[0011] Furthermore, depending on the environment in which the cards are placed, the position of the card may shift when the moving object moves over it, making it difficult for the moving object to move stably.

[0012] The present invention has been made in view of the above-mentioned problems, and one of its objects is to provide a technique that enables a moving body to travel stably.

[0013] In order to solve one of the above problems, the toy system of the present invention includes a plurality of action instruction cards, each printed with an encoded image indicating one of a plurality of action instructions and each placed at a location of the user by a user, and a moving body, the moving body including a traveling means that enables the moving body to move, a reading means that reads the image when the moving body moves over one 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 read image, and if the encoded image is not read, the action control means controls the moving means to continue moving in accordance with the action instructions indicated by the previously read image until a new encoded image is read by the moving body moving over a new action instruction card among the plurality of action instruction cards, and if the new encoded image is read, controls the moving means in accordance with the new action instructions indicated by the new image.

[0014] In order to solve one of the above problems, the mobile body of the present invention includes a traveling means that enables traveling, a reading means that reads an encoded image indicating one of a plurality of action instruction cards printed on each card and placed at any location by a user when traveling over one of a plurality of action instruction cards, and an action control means that controls the traveling means in accordance with the action instructions indicated by the read image, wherein if the encoded image is not read, the action control means controls the traveling means to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read by traveling over a new action instruction card among the plurality of action instruction cards, and when the new encoded image is read, the action control means controls the traveling means in accordance with the new action instructions indicated by the new image.

[0015] In addition, the control method of the present invention is a control method for controlling the movement of a mobile body having a reading means and a traveling means, and includes the steps of: when the mobile body travels over one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed on it and which are each placed at a location of the user by a user, reading the image by the reading means; and controlling the traveling means in accordance with the action instructions indicated by the read image; and in the step of controlling the traveling means, if the encoded image is not read, the traveling means is controlled to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read by the mobile body traveling over a new action instruction card among the plurality of action instruction cards, and when the new encoded image is read, the traveling means is controlled in accordance with the new action instructions indicated by the new image.

[0016] In addition, the program of the present invention causes a computer including a traveling means to operate as a reading means that reads an encoded image indicating one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed on it and which is placed at any location by a user, when the computer travels over one of the plurality of action instruction cards, and an action control means that controls the traveling means in accordance with the action instructions indicated by the read image, and if the encoded image is not read, the action control means controls the traveling means to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read by traveling over a new action instruction card among the plurality of action instruction cards, and if the new encoded image is read, controls the traveling means in accordance with the new action instructions indicated by the new image.

[0017] According to the present invention, it is possible for the user to have a more intuitive programming experience.

[0018] In one form of the present invention, the multiple operation instructions are classified into multiple groups, and the operation control means may update the setting of the group to which the operation instruction indicated by the read image belongs to, to information indicated by the operation instruction.

[0019] In one form of the present invention, the plurality of operation instructions include a steering instruction to continuously change the direction of travel to the right or left, and the operation control means may control the driving means to continuously change the direction of travel of the moving body to the right or left after an image indicating the steering instruction is read.

[0020] In one form of the present invention, the plurality of operation instructions may include a speed at which the moving body travels, and the operation control means may control the travel means so that the moving body travels according to the speed after an image indicating the speed is read.

[0021] In one form of the present invention, the plurality of operation instructions may include a braking instruction to continuously reduce the speed of the moving body, and the operation control means may continuously reduce the speed of the moving body after an image indicating the braking instruction is read.

[0022] In one form of the present invention, the operation control means may control the traveling means based on the information set for each of the plurality of groups in accordance with operation instructions indicated by previously read images.

[0023] In one form of the present invention, the plurality of operation instructions may include a direction of travel, and when an image indicating the direction of travel is read, the operation control means may control the traveling means so that the moving body turns toward the direction of travel and continues the operation before the turn.

[0024] In order to solve one of the above problems, the toy system of the present invention includes a plurality of action instruction cards, each printed with an encoded image indicating one of a plurality of action instructions and each placed by a user, and a moving body, the moving body including a traveling means that enables the moving body to move, a reading means that reads the image when the moving body moves over one of the plurality of action instruction cards, and an action control means that controls the moving body in accordance with the action instructions indicated by the read image, the action control means controls the moving body in accordance with the action instructions indicated by the image when the encoded image is read by the moving body moving over one of the plurality of action instruction cards, the plurality of action instructions including steering instructions to continuously change the direction of travel to the right or left, and the action control means controls the moving means to change the direction of travel to the right or left with a turning radius that corresponds to the current speed of the moving body after the image indicating the steering instruction is read.

[0025] In order to solve one of the above problems, the mobile body of the present invention includes a traveling means that enables traveling, a reading means that reads an encoded image indicating one of a plurality of operation instruction cards printed on each card and placed by a user when traveling over one of the plurality of operation instruction cards, and an operation control means that controls the traveling means in accordance with the operation instructions indicated by the read image, 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 the plurality of operation instructions include steering instructions to continuously change the direction of travel to the right or left, and after the image indicating the steering instruction is read, the operation control means controls the traveling means to change the direction of travel to the right or left with a turning radius that corresponds to the current speed.

[0026] In addition, the control method of 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 the steps of: 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 on it and which is placed by a user, the reading means reads the image; and controlling the traveling means in accordance with the operation instructions indicated by the read image; in the step of controlling the traveling means, when the encoded image is read by the mobile body traveling over one of the plurality of operation instruction cards, the traveling means is controlled in accordance with the operation instructions indicated by the image, and the plurality of operation instructions include steering instructions to continuously change the direction of travel to the right or left, and in the step of controlling the traveling means, after the image indicating the steering instruction is read, the traveling means is controlled to change the direction of travel to the right or left with a turning radius corresponding to the current speed.

[0027] In addition, the program of the present invention causes a computer including a traveling means to function as a reading means for reading an image when traveling 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 on it and which is placed by a user, and an operation control means for controlling the traveling means in accordance with the operation instructions indicated by the read image, 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 the plurality of operation instructions include steering instructions to continuously change the direction of travel to the right or left, and the operation control means controls the traveling means to change the direction of travel to the right or left with a turning radius according to the current speed after the image indicating the steering instruction is read.

[0028] In addition, the card set of 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 an image that is read when a mobile body equipped with a traveling means that enables traveling travels, and which is placed by a user, the plurality of operation instructions including steering instructions to continuously change the direction of travel to the right or left, and when an image indicating one of the plurality of operation instructions is read, the traveling means is controlled in accordance with the operation instruction indicated by the image, and after the image indicating the steering instruction is read, the traveling means is controlled to change the direction of travel to the right or left with a turning radius that corresponds to the current speed of the mobile body.

[0029] According to the present invention, it is possible for the user to have a more intuitive programming experience.

[0030] In one form of the present invention, the plurality of operation instructions may further include a speed at which the moving body is to travel, and the operation control means may control the travel means so that the moving body travels according to the speed after the image indicating the speed is read.

[0031] In one form of the present invention, the plurality of operation instructions further include a braking instruction to continuously reduce the speed of the moving body, and the operation control means may continuously reduce the speed of the moving body so that it stops within a braking distance corresponding to the speed after the image indicating the braking instruction is read.

[0032] In one form of the present invention, the operation control means may control the traveling means so that, after the image indicating the brake instruction and the image indicating the steering instruction are read, the traveling means changes direction to the right or left while the turning radius monotonically decreases.

[0033] In order to solve one of the above problems, the toy system of the present invention includes a plurality of action instruction cards, each of which has an encoded image showing one of a plurality of action instructions printed thereon and which is placed at a location of the user's choosing, and a moving body, the moving body including: a traveling means for enabling the moving body to move; a reading means for reading the image when the moving body moves over one of the plurality of action instruction cards; and an action control means for controlling the moving body in accordance with the action instructions indicated by the read image, the action control means controlling the moving body in accordance with the action instructions indicated by the image when the encoded image is read by the moving body moving over one of the plurality of action instruction cards; and when a record instruction is obtained, the action control means stores the action instruction shown by the image and time information indicating the current time in storage each time an encoded image is read by the moving body moving over a new action instruction card, and when a play instruction is obtained, the action control means controls the moving body in accordance with the stored time information and action instructions.

[0034] In order to solve one of the above problems, the mobile body of the present invention includes a traveling means that enables traveling, a reading means that reads an encoded image indicating one of a plurality of action instruction cards printed on each card and placed at any location by a user when the mobile body travels over one of a plurality of action instruction cards, and an action control means that controls the traveling means in accordance with the action instructions indicated by the read image, wherein when the encoded image is read by the mobile body traveling over one of the plurality of action instruction cards, the action control means controls the traveling means in accordance with the action instructions indicated by the image, and when a recording instruction is obtained, the action control means stores the action instructions indicated by the image and time information indicating the current time in storage each time an encoded image is read by traveling over a new action instruction card, and when a playback instruction is obtained, the action control means controls the traveling means in accordance with the stored time information and action instructions.

[0035] In addition, the control method of the present invention is a control method for controlling the travel of a mobile body having a reading means and a traveling means, and includes the steps of: when the mobile body travels over one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed on it and which are each placed at a location of the user by a user, reading the image by the reading means; and controlling the traveling means in accordance with the action instructions indicated by the read image; and in the step of controlling the traveling means, when the encoded image is read by the mobile body traveling over one of the plurality of action instruction cards, controlling the traveling means in accordance with the action instructions indicated by the image; and when a recording instruction is obtained, each time an encoded image is read by the mobile body traveling over a new action instruction card, storing the action instructions indicated by the image and time information indicating the current time in storage; and when a playback instruction is obtained, controlling the traveling means in accordance with the stored time information and action instructions.

[0036] In addition, the program of the present invention causes a computer including a traveling means to function as a reading means for reading an image when the traveling means travels over one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed on it and which is placed at a location of the user's choosing, and an action control means for controlling the traveling means in accordance with the action state indicated by the read image, wherein the action control means controls the traveling means in accordance with the action instructions indicated by the image when the encoded image is read by the traveling body traveling over one of the plurality of action instruction cards, and when a recording instruction is obtained, the action control means stores the action instructions indicated by the image and time information indicating the current time in storage each time an encoded image is read by the traveling body traveling over a new action instruction card, and when a playback instruction is obtained, the action control means controls the traveling means in accordance with the stored time information and action instructions.

[0037] In addition, the card set of 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 is an image that is read when a mobile body equipped with a traveling means and storage that enables traveling travels, and which are placed in a location of the user; a recording instruction card printed with an encoded image indicating a recording instruction; and a playback instruction card printed with an encoded image indicating a playback instruction; when the image indicating the operation instruction is read by the mobile body, the traveling means is controlled in accordance with the operation instruction; when the image indicating the recording instruction is read by the mobile body, each time an encoded image is read as the mobile body travels over a new operation instruction card, the operation instruction indicated by the image and time information indicating the current time are stored in the storage; and when the image indicating the playback instruction is read by the mobile body, the traveling means is controlled in accordance with the stored time information and operation instruction.

[0038] According to the present invention, it is possible for the user to have a more intuitive programming experience.

[0039] In one form of the present invention, when the recording instruction is acquired, the operation control means stores in storage the operating state of the moving body at the time the recording instruction was acquired, and when the playback instruction is acquired, the operation control means controls the traveling means to achieve the stored operating state, and then controls the traveling means in accordance with the stored time information and operating instruction.

[0040] In one form of the present invention, the toy system further includes a recording instruction card on which an encoded image indicating the recording instruction is printed, and a playback instruction card on which an encoded image indicating the playback instruction is printed, wherein the reading means reads the images printed on the recording instruction card and the playback instruction card when the mobile body runs over the recording instruction card and the playback instruction card, respectively, and the operation control means, when the image indicating the recording instruction is read, stores in storage the operation instruction indicated by the image and time information indicating the current time each time an encoded image is read by the mobile body running over a new operation instruction card, and when the image indicating the playback instruction is read, the operation control means may control the running means in accordance with the stored time information and operation instruction.

[0041] In one form of the present invention, the reading means repeats reading the image when the moving body runs over one of the plurality of action instruction cards after the image indicating the recording instruction has been read, and the action control means does not need to store the action instruction indicated by the image read this time and time information indicating the current time in storage if the action instruction indicated by the image read this time is the same as the action instruction indicated by the image read last time.

[0042] In one form of the present invention, the toy system further includes a recording end card on which an encoded image indicating an instruction to end recording is printed, and the reading means reads the image printed on the recording end card when the moving body runs over the recording end card, and the operation control means, when the image indicating the recording instruction is read, may store in storage the operation instruction indicated by the image and time information indicating the current time each time an encoded image is read by the moving body running over a new operation instruction card until the image indicating the instruction to end recording is read.

[0043] In one form of the present invention, if the encoded image is not read, the driving means is controlled to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read by the mobile body running over a new action instruction card among the plurality of action instruction cards, and if the new encoded image is read, the driving means is controlled in accordance with the action instructions indicated by the new image.

[0044] In order to solve one of the above problems, the toy system of the present invention includes a plurality of operation instruction cards, each of which has printed thereon an encoded image indicating one of a plurality of operation instructions, an interrupt setting card, on which is printed an encoded image indicating an interrupt recording instruction associated with an execution condition, and a moving body. The moving body includes a traveling means that enables the moving body to travel, a reading means that reads the image when the moving body travels over the interrupt setting card or any of the plurality of action instruction cards, and an action control means that controls the moving body 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 traveling over any of the plurality of action instruction cards, the action control means controls the moving body in accordance with the action instructions indicated by the image, and when an image indicating the interrupt recording 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 travel, in association with the execution condition, and when the execution condition is met, 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 met.

[0045] A mobile body according to the present invention includes a travel means for enabling travel, a plurality of action instruction cards on each of 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, and a reading means for reading the image when the mobile body travels over 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 travel means in accordance with the action instruction shown in the image. 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. When the execution condition is satisfied, the action control means executes an action according to the action instruction associated with the execution condition, and after executing the action, resumes the action before the execution condition was satisfied.

[0046] 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 mobile 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 in accordance with the operation instruction indicated by the image, and when an image indicating the interrupt record instruction is read, the operation instruction indicated by the image read from the operation instruction card over which the mobile 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.

[0047] Furthermore, a control method according to the present invention is a control method for controlling the travel of a mobile body having a reading means and a traveling means, and includes the steps of: when the mobile body travels over one of a plurality of operation instruction cards, each of which has an encoded image showing one of a plurality of operation instructions printed on it and which is placed by a user, and an interrupt setting card, on which an encoded image showing an interrupt record instruction associated with an execution condition is printed, reading the image by the reading means; and controlling the traveling means in accordance with the operation instructions shown in the read image; and, when the encoded image is read as the mobile body travels over one of the plurality of operation instruction cards, controlling the traveling means in accordance with the operation instructions shown in the image; and, when an image showing the interrupt record instruction is read, storing the operation instructions shown in 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, controlling the traveling means,

[0048] In addition, the program of the present invention causes a computer including a traveling means to function as a reading means that reads the images when the traveling means travels over one of a plurality of operation instruction cards, each of which has an encoded image printed thereon indicating one of a plurality of operation instructions, 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 an operation control means that controls the traveling means in accordance with the operation instructions indicated by the images 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 met, 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 met.

[0049] According to the present invention, it is possible for the user to have a more intuitive programming experience.

[0050] In one form of the invention, the execution condition may be that a predetermined period of time has elapsed from a start time or since a previous execution condition was met.

[0051] In one form of the present invention, the execution conditions include a first condition and a second condition, the first condition being that a first period has elapsed since the start time or the previous execution under the first condition, and the second condition being that a second period longer than the first period has elapsed since the start time or the previous execution under the second condition, and when the second condition is satisfied, the operation control means may execute an operation according to only the operation instructions 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.

[0052] In one aspect of the present invention, the execution condition may be that an acceleration sensor detects an impact on the moving object.

[0053] 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.

[0054] 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 unit.

[0055] 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 that the moving body will next travel over, which is an operation instruction card arranged in the predetermined direction, in association with the execution condition.

[0056] In order to solve another of the above problems, the card set of the present invention includes a plurality of cards classified into a plurality of types, each of the plurality of cards having a surface including an internal area and a peripheral area surrounding the internal area, the internal area of ​​each of the plurality of cards having printed thereon a plurality of identification patterns that are photographed by a moving object traveling thereon and indicate the type to which the card belongs, and the peripheral area of ​​each of the plurality of cards has no identification pattern printed thereon that indicates any of the plurality of types.

[0057] In one aspect of the present invention, the peripheral area may be arranged on the periphery of each of the plurality of cards.

[0058] In one aspect of the present invention, a pattern that does not exhibit any of the plurality of types may be printed in the peripheral region.

[0059] In one aspect of the present invention, the plurality of identification patterns may be arranged within the internal region, and the plurality of peripheral patterns may be arranged to surround the internal region.

[0060] In addition, the toy system of the present invention includes a plurality of cards classified into a plurality of types, and a mobile body including a camera that repeatedly photographs, each of the plurality of cards having a surface including an internal area and a peripheral area surrounding the internal area, each of the plurality of cards having a plurality of identification patterns printed thereon indicating the type to which it belongs, and each of the plurality of cards having a peripheral pattern printed thereon that is different from the patterns indicating any of the types, and when one of the plurality of identification patterns is photographed by the camera after the peripheral pattern has been photographed, the operation of the mobile body is controlled based on the photographed identification pattern.

[0061] In one aspect of the present invention, when the same identification pattern as that captured previously is captured by the camera, the operation of the moving object does not need to be controlled based on the captured identification pattern.

[0062] According to the present invention, information can be accurately acquired from a plurality of cards on which patterns encoding information are printed.

[0063] In order to solve another of the above problems, the toy system of the present invention includes a mobile body that can move on its own using rotating wheels, and a card on which the mobile body can move, the card including one sheet or multiple overlapping sheets, and the coefficient of friction of the back surface of the card is greater than the coefficient of friction of the front surface of the card.

[0064] In one aspect of the present invention, the back surface of the card may be surface-treated to have a higher coefficient of friction than the front surface of the card.

[0065] In one form of the present invention, the card may include a sheet, and the front surface of the sheet may be printed with a pattern that is readable by the moving body and that encodes information that controls the movement of the moving body.

[0066] In one form of the present invention, the card includes a base sheet and two sheets that respectively form the front and back surfaces of the card, and the material of the sheet that forms the front surface of the card may be the same as the material of the sheet that forms the back surface of the card.

[0067] In one aspect of the present invention, the sheet that forms the front surface of the card and the sheet that forms the back surface of the card may contain the same type of resin.

[0068] In one embodiment of the present invention, a visible image may be printed on the front surface of the substrate.

[0069] In one aspect of the present invention, a pattern that can be read by the moving body and that encodes information for controlling the movement of the moving body may be printed on the front surface of the substrate.

[0070] In addition, the card of the present invention is a card on which a self-propelled mobile body can run, and includes one sheet or multiple overlapping sheets, and the coefficient of friction of the back surface of the card is greater than the coefficient of friction of the front surface of the card.

[0071] In one aspect of the present invention, a pattern that is read by the mobile object and that encodes information for controlling the movement of the mobile object may be printed on the card.

[0072] According to the present invention, the moving body can run stably on the card.

[0073] 1 is a diagram illustrating an example of a toy system according to an embodiment of the present invention. FIG. 1 is a diagram illustrating an example of a hardware configuration of a toy system. FIG. 1 is a diagram illustrating an example of a moving object as viewed from below. FIG. 2 is a diagram illustrating an example of a relationship between information printed on a card and a moving object. FIG. 2 is a block diagram illustrating functions implemented by the toy system. FIG. 3 is a diagram illustrating an example of control of a moving object by a card. FIG. 4 is a diagram illustrating another example of control of a moving object by a card. FIG. 5 is a diagram illustrating another example of control of a moving object by a card. FIG. 6 is a flowchart illustrating an example of processing of a moving object. FIG. 7 is a flowchart illustrating an example of running processing by a running processing unit. FIG. 8 is a diagram illustrating an example of differences in the behavior of a moving object depending on speed. FIG. 9 is a diagram illustrating another example of differences in the behavior of a moving object depending on speed. FIG. 10 is a diagram illustrating another example of differences in the behavior of a moving object depending on speed. FIG. 11 is a flowchart illustrating an example of action processing by an action processing unit. FIG. 12 is a flowchart illustrating an example of processing of a moving object. FIG. 13 is a flowchart illustrating another example of processing of a moving object. FIG. 14 is a diagram illustrating an example of multiple cards arranged. FIG. 15 is a diagram illustrating an example of the behavior of a moving object relative to the multiple arranged cards. FIG. 16 is a diagram illustrating another example of the behavior of a moving object relative to the multiple arranged cards. A schematic cross-sectional view of a card. FIG. 17 is a diagram illustrating an example of a moving object running on cards. FIG. 18 is a block diagram illustrating functions implemented by the toy system. 9 is a diagram illustrating an example of recording of an operation instruction. FIG. 10 is a diagram illustrating an example of playback of recorded operation instructions. FIG. 11 is a flowchart illustrating an example of processing by a moving body. FIG. 12 is a flowchart illustrating an example of processing by a moving body. FIG. 13 is a diagram illustrating an example of stored operation instructions, etc. FIG. 14 is a diagram illustrating another example of the hardware configuration of a toy system. FIG. 15 is a block diagram illustrating functions realized by the toy system. FIG. 16 is a diagram illustrating an example of setting an interrupt operation. FIG. 17 is a diagram illustrating a modified example of an interrupt setting card. FIG. 18 is a diagram illustrating an example of operation by the interrupt setting shown in FIG. 9. FIG. 19 is a diagram illustrating an example of operation by an interrupt execution card. FIG. 19 is a flowchart illustrating an example of processing by a moving body. FIG. 19 is a flowchart illustrating an example of processing by a moving body.10 is a flowchart showing an example of processing of a moving body; and FIG. 11 is a flowchart showing an example of processing of operating a moving body in accordance with an interrupt execution condition.

[0074] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. Among the components appearing, components having the same function are designated by the same reference numerals, and the description thereof will be omitted.

[0075] 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 with chamfered corners. The top surface of the moving body 20 is provided with a plurality of protrusions that allow other toys to be attached.

[0076] At least some of the cards 30 are placed by the user anywhere on a flat surface (for example, on a desk or floor). When the mobile object 20 travels over any of the cards 30, it reads the image printed on the card 30 and performs an operation according to the instructions indicated by the image.

[0077] The multiple cards 30 are classified into multiple card types, and an image encoding information indicating the card type is printed on each card. The card types are further classified into multiple hierarchical groups. At the highest level, the card types are classified into an action instruction group and a setting group. Cards belonging to the action instruction group are called action instruction cards.

[0078] The multiple cards 30 include multiple action instruction cards, and at least some of the multiple action instruction cards are printed with an image indicating an instruction (action instruction) for an action of the moving body 20. Each of the multiple action instruction cards is printed with an encoded image indicating one of the multiple action instructions for the moving body 20. The types of the action instruction correspond one-to-one to the card types, and decoding the card type corresponds to decoding the action instruction.

[0079] The operation instructions given by the operation instruction cards are classified into multiple types (groups). The multiple types include a state change system, an action system, and a forced system. The state change system is a group consisting of instructions that change the operation (e.g., the running state) of the mobile object 20. The action system is a group mainly consisting of instructions that cause the mobile object 20 to perform a predetermined operation. An action system instruction may resume the previous operation after the operation is performed. Note that even an action system instruction may cause the running state to change as a result of the operation. The forced system is a group consisting of instructions that cause the mobile object 20 to immediately stop.

[0080] 2 is a diagram showing an example of the hardware configuration of the toy system. A moving object 20 included in the toy system includes a processor 21, a storage 22, a communication unit 23, a camera 24, two motors 25, and a speaker 26.

[0081] 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 program may be provided from another computer by communication via the communication unit 23. The program may be provided to the other computer by being stored in a computer-readable storage medium such as a flash memory or an optical disk. The number of processors 21 may be one or more.

[0082] 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.

[0083] The communication unit 23 is configured with a radio frequency circuit, an integrated circuit, an antenna, etc. 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. Based on 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. Note that the communication unit 23 may also communicate with other devices via a wired network.

[0084] Camera 24 is positioned to capture images of the area below moving object 20, and repeatedly captures images of the area below moving object 20. When moving object 20 travels over card 30, camera 24 captures an image of pattern 71 (see FIG. 4 ) printed on card 30. In this embodiment, pattern 71 that can be recognized in the infrared frequency range 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.

[0085] The motor 25 is a so-called servo motor whose rotation direction, rotation amount, and rotation speed are controlled by the processor 21 .

[0086] The speaker 26 outputs sound based on the control of the processor 21 and the like.

[0087] 3 is a bottom view of an example of the mobile body 20. The mobile 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 mobile body 20 to travel.

[0088] FIG. 4 is a diagram showing an example of the relationship between information printed on card 30 and mobile object 20. On card 30, multiple patterns 71, which are images that can be read by camera 24, are printed along with an image that can be seen 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 mobile object 20. The information printed on multiple patterns 71 on a given card 30 may be the same. A pattern 71 indicating a position within card 30 may also be printed on a given card 30. Note that when mobile object 20 passes over card 30, patterns 71 printed in different positions as time passes are usually read.

[0089] In the toy system according to this embodiment, the camera 24 of the mobile object 20 captures an image of the pattern 71 printed on the card 30, and the mobile object 20 decodes the pattern 71 to acquire information. Hereinafter, this information will also be referred to as an operation instruction. This allows the mobile object 20 to recognize the type of the card 30. Furthermore, the mobile object 20 detects the tilt of the pattern 71 in the image captured by the camera 24, thereby detecting the direction of the mobile object 20 (for example, angle A from a reference direction).

[0090] 5 is a block diagram showing functions realized by the toy system. The toy system functionally includes a card information acquisition unit 51 and an action control unit 52. The action control unit 52 functionally includes a card determination unit 53, a parameter update unit 54, a driving processing unit 55, and an action processing unit 56. These functions are mainly realized by the processor 21 included in the mobile object 20 executing a program stored in the storage 22 and controlling the camera 24, the motor 25, and the speaker 26. Note that some of these functions may be realized by the processor 21 sending a processing request to another computer included in the toy system via the communication unit 23 and receiving a processing result from the other computer.

[0091] The card information acquisition unit 51 reads the pattern 71 (image) printed on the card 30 and acquires information indicated by the pattern 71. The card information acquisition unit 51 acquires an action instruction for the moving object 20 based on the pattern 71 printed on the card 30 of the action instruction card. More specifically, when the moving object 20 travels on one of a plurality of cards 30, the card information acquisition unit 51 reads the pattern 71 printed on the card 30 and decodes information (e.g., an action instruction) from the pattern 71. The card information acquisition unit 51 also acquires the orientation of the moving object 20 relative to the card 30 based on the inclination of the pattern 71 photographed by the camera 24.

[0092] The operation control unit 52 controls the running device, the speaker 26, etc. in accordance with the acquired operation instruction. If the operation instruction is information indicating a change in the running state, the operation control unit 52 controls the running device (motor 25) in accordance with the information after acquiring the acquired pattern 71. More specifically, if the operation instruction belongs to a state change group, the operation control unit 52 changes the running parameters in accordance with the operation instruction and controls the running device (motor 25) in accordance with the changed parameters. Furthermore, if the encoded pattern 71 is not read, the operation control unit 52 controls the running device to continue operating in accordance with the operation instruction indicated by the previously read pattern 71 until a new encoded pattern 71 is read as the mobile object 20 runs over a new card 30 among the multiple cards 30. If a new encoded pattern 71 is read, the operation control unit 52 controls the running device in accordance with the new operation instruction indicated by the new pattern 71.

[0093] The card determination unit 53 determines the group to which the action instruction of the card 30 acquired by the processing of the card information acquisition unit 51 belongs. If the action 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 action instruction belongs to an action type, the card determination unit 53 causes the action processing unit 56 to execute processing.

[0094] The parameter update unit 54 updates the driving parameters based on the operation instructions belonging to the state change system. The operation instructions belonging to the state change system are further classified into multiple subgroups. The multiple subgroups include a steering subgroup, a speed subgroup, and a braking subgroup. Each subgroup has its own driving parameters. The steering subgroup includes an instruction to turn the steering wheel to the right or left and an instruction to turn the steering wheel to the straight-ahead position. Turning the steering wheel to the right or left means continuously changing the traveling direction of the mobile object 20 to the right or left, and a value corresponding to the instruction is set as the steering wheel driving parameter. The speed subgroup includes an instruction to set the speed driving parameter to a specified value. The specified value may be one of multiple predetermined candidate values ​​(e.g., slow, fast, very fast), and each of the multiple instructions included in the speed subgroup may indicate a different candidate value. The braking subgroup includes a braking instruction to continuously reduce the speed. The braking instruction sets a driving parameter for the braking state. The driving parameter causes the mobile object 20 to brake to continuously reduce its speed. Here, each of the multiple operation instructions belonging to the state change system may be classified (labeled) into one or more subgroups. For example, a certain operation instruction may be labeled into both a speed subgroup and a handle subgroup.

[0095] 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., values) indicated by the operation instruction. By setting driving parameters for each subgroup and controlling driving using the multiple driving parameters, the movement of the mobile object 20 can be made more diverse. If 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 to information on the driving parameters of the respective subgroups corresponding to the operation instruction.

[0096] 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 causes the mobile object 20 to drive at a speed corresponding to the parameters of the speed subgroup. Furthermore, when a brake state parameter is set, the driving processing unit 55 continuously reduces the speed of the mobile object 20 so that the mobile object 20 stops within a braking distance corresponding to the set speed. The driving processing unit 55 controls the driving device so that the mobile object 20 drives according to the driving parameters. The driving processing unit 55 continuously changes the traveling direction of the mobile object 20 to the right or left, or causes the mobile object 20 to move straight, according to the steering state driving parameter. After reading an image indicating a steering instruction to change the traveling direction to the right or left, the driving processing unit 55 controls the driving device to change the traveling direction to the right or left with a turning radius corresponding to the current speed of the mobile object 20. More specifically, when an instruction to turn the steering wheel to the right or left is set in the driving parameters of the steering subgroup, the driving processing unit 55 controls the driving device to change the direction of travel to the right or left with a turning radius according to the current speed of the mobile body 20.

[0097] Here, a specific example of the traveling of the moving object 20 due to changes in the traveling parameters will be described. FIG. 6 is a diagram illustrating an example of the control of the moving object 20 by cards 30 (here, action instruction cards). In the example of FIG. 6, a "Slow" card 30a, a "Fast" card 30b, a right-facing card 30d, and a goal card 30j are arranged. In the example of FIG. 6, the moving object 20 first reads the pattern 71 on card 30a, sets the parameters of the speed subgroup to a first speed, and moves straight at that speed. Next, the moving object 20 reads the pattern 71 on card 30b, updates the parameters of the speed subgroup to a second speed that is faster than the first speed, and moves straight at that speed. Next, the moving object 20 reads the pattern 71 on card 30d, updates the parameters of the steering subgroup to "right," and moves forward while maintaining the speed, turning right. When the moving object 20 reaches the card 30j, the moving object 20 reads the pattern 71 on the card 30j, makes a sound, and stops.

[0098] Here, for example, a pattern 71 indicating an action instruction combining "Fast" and rightward direction may be printed on one card 30. In this case, a card 30 may exist in which cards 30b and 30d are integrated, and when the mobile object 20 reads the pattern 71 on the card 30, it updates the parameters of the speed subgroup to a second speed and further updates the driving parameters of the steering subgroup to "right." Thereafter, the mobile object 20 may proceed to turn right at the second speed. Alternatively, a card 30 may exist on which a pattern 71 indicating an action instruction combining another speed and steering state is printed.

[0099] FIG. 7 is a diagram illustrating another example of control of the moving object 20 by cards 30 (here, action instruction cards). In the example of FIG. 7, a "Fast" card 30b and a "Brake" card 30g are placed. In the example of FIG. 7, the moving object 20 first reads the pattern 71 on card 30b, updates the parameters of the speed subgroup to a second speed, and moves straight ahead at that speed. Then, it reads the pattern 71 on card 30g and updates the parameters of the brake subgroup to the brake state. Then, the moving object 20 continuously decelerates its speed in accordance with the brake state parameters. Eventually, the speed of the moving object 20 reaches 0 and the moving object 20 stops.

[0100] The action processing unit 56 controls the mobile object 20 to perform the action indicated by the action instruction based on the action instruction. When the action processing unit 56 receives an instruction to turn in a direction specified by the card 30, in other words, an instruction to make the mobile object 20 travel in a specified direction, the action processing unit 56 controls the travel device to make the mobile object 20 turn in the specified direction.

[0101] FIG. 8 is a diagram illustrating another example of control of the moving object 20 using cards 30 (here, action instruction cards). In the example of FIG. 8, a "Fast" card 30b and an arrow card 30h indicating the direction of travel are placed as action instruction cards. In the example of FIG. 8, the moving object 20 first reads the pattern 71 on card 30b, updates the speed subgroup parameters to a second speed, and moves straight at that speed. The second speed is a specified (faster) speed. Then, the moving object 20 reads the pattern 71 on card 30h, and performs an action of turning (changing direction) so that the direction indicated by the pattern 71 and the moving direction of the moving object 20 form a predetermined angle (in reality, the moving object 20 faces the direction of the arrow). After the turn is completed, the moving object 20 moves straight at the second speed in the moving direction.

[0102] In the example of Figure 8, the driving state, such as driving parameters or direction of travel, is changed in response to the action instruction on the card 30. The moving object 20 then continues to move according to the action instruction until it reaches the next card 30, and the driving state is then changed again in response to the action instruction. This makes the reading of the card 30 and the resulting action interactive, allowing the user to experience programming more intuitively and easily. Furthermore, since there is no restriction on arranging the cards 30 without separating them, the user can place the cards 30 in any position, increasing the degree of freedom in the movement of the moving object 20 in the programming experience. Furthermore, by simulating real-world movements such as steering and braking, the toy system can attract the user's interest while cultivating more advanced thinking skills. However, even if the cards 30 are arranged without separating them, the configuration of the internal area 31 and peripheral area 32 of the cards 30 and the control of the moving object 20 are still effective. This will be discussed later.

[0103] In the examples described so far, there is no restriction on arranging the cards 30 without separating them. In this case, the user can place the cards 30 in any position, which increases the degree of freedom in the movement of the moving object 20 during the programming experience, allowing the user to have a more advanced experience. However, there may be restrictions on how the cards 30 are arranged in this embodiment. For example, a sheet with multiple recesses may be used, and the cards 30 may be fitted into any of the multiple recesses. Alternatively, the cards 30 may be arranged so that the edges constituting the periphery of the cards 30 are in contact with or adjacent to each other. When the cards 30 are arranged without separating them, the multiple cards 30 may include cards 30 that do not change the movement of the moving object 20 and may be placed between cards 30 that indicate movement instructions.

[0104] Next, the processing for realizing the operation of the moving object 20 according to this embodiment will be described in more detail. Figures 9 and 10 are flowcharts showing an example of the processing of the moving object 20. Figures 9 and 10 mainly describe the processing for the operation instruction card. Figures 9 and 10 mainly show the processing of the card information acquisition unit 51, the card determination unit 53, and the parameter update unit 54. The processing shown in Figures 9 and 10 is repeatedly executed periodically (for example, every 0.1 seconds).

[0105] First, the card information acquisition unit 51 acquires an image read by the camera 24 of the moving object 20 (S101). The card information acquisition unit 51 determines whether it is possible to acquire an action instruction from the acquired image (S102). More specifically, the card information acquisition unit 51 determines whether a pattern 71 is present in the acquired image. If it is not possible to acquire an action instruction (N in S102), the processing in FIGS. 9 and 10 ends. If it is possible to acquire an action instruction (Y in S102), the card information acquisition unit 51 acquires an action instruction for the card 30 and an angle A of the moving object 20 relative to the card 30 from the image (S103). The processing using the angle A will be described later.

[0106] When an operation instruction for the card 30 is acquired, the card information acquisition unit 51 determines whether the operation instruction was acquired from the same card 30 as the previous time (S104). If the instruction was acquired from the same card 30 (Y in S104), the processing of FIGS. 9 and 10 ends. Whether the instruction was acquired from the same card 30 may be determined based on whether the same instruction was read during the above-mentioned reading. Here, if no information was read during the previous reading, or the read information did not indicate any instruction, and an operation instruction is read this time, it is determined that the instruction was not 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.

[0107] If the acquired operation instruction is different from the previously acquired operation instruction (N in S104), the card determination unit 53 determines whether the acquired operation instruction belongs to a state change group (S105). If the acquired operation instruction belongs to a state change group (Y in S105), the parameter update unit 54 updates the driving parameters in accordance with the operation instruction (S106).

[0108] More specifically, the parameter update unit 54 updates the driving parameters of the subgroup to which the operation instruction is classified to values ​​indicated by the operation instruction. If the operation instruction belongs to the speed subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the operation instruction. If 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). If 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).

[0109] When an action instruction belongs to multiple subgroups, the parameter update unit 54 updates the driving parameters of each of the multiple subgroups to the value indicated by the action instruction. For example, when an action instruction belongs to a speed subgroup and a steering subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the action instruction and updates the steering state parameter to the value indicated by the action instruction. In this case, there may be multiple action instructions that correspond one-to-one to each combination of a candidate value for the speed parameter (e.g., slow, fast, very fast) and a candidate value for the steering state parameter (e.g., right, left, straight). There may be a card 30 that corresponds one-to-one to each of the multiple action instructions.

[0110] On the other hand, if the acquired operation instruction does not belong to the state change system (N in S105), the card determination unit 53 determines (S111) whether the acquired operation instruction indicates an instruction to stop the moving object 20. If the operation instruction indicates an instruction to stop the moving object 20 (Y in S111), the travel processing unit 55 ends the travel processing and stops the moving object 20 (S112).

[0111] On the other hand, if the action instruction does not indicate an instruction to stop the moving object 20 (N in S111), the card determination unit 53 determines that the acquired action instruction belongs to the action group (S113). If the action instruction does not belong to the action group (N in S113), the processing of Figures 9 and 10 is terminated. If the action instruction belongs to the action group (Y in S113), the card determination unit 53 determines whether the running process of the running processing unit 55 or the action process of the action processing unit 56 is currently being executed (S114). If the running process or action process is being executed (Y in S114), the running running process or action process is stopped (S115). If the running process or action process is not being executed (N in S114), the processing of S115 is skipped. Then, the action processing unit 56 starts the action process in response to the action instruction (S116).

[0112] For example, when an instruction to turn in a direction specified by the card 30 (e.g., the direction of the arrow written on the card 30) is acquired, the action processing unit 56 determines the direction and amount of rotation of the left and right motors 25 based on the angle read from the card 30 in S103 of Fig. 9, and controls the motors 25 based on the determination. The direction and amount of rotation are determined so that the orientation of the moving object 20 after rotation will be a predetermined direction with respect to the card 30 (e.g., the direction of the arrow on the card 30h). Details of this process will be described later.

[0113] In other operation instructions belonging to the action subgroup, the action processing unit 56 may execute typical operations such as snaking or spinning by reproducing the time-series motor control information stored in the storage 22.

[0114] Next, a description will be given of details of the driving process performed by the driving processing unit 55. Fig. 11 is a flowchart showing an example of the driving process performed by the driving processing unit 55. The process shown in Fig. 11 is executed periodically except when the vehicle is stopped or when an action process is being executed.

[0115] 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 a driving parameter (S202). On the other hand, if the brake state is not set (N in S201), S202 is skipped.

[0116] 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).

[0117] FIG. 12 is a diagram illustrating an example of differences in the behavior of the moving object 20 depending on the speed. In the example at the top of FIG. 12, a "Slow" card 30a and a "Brake" card 30g are placed, while in the example at the bottom of FIG. 12, a "Fast" card 30b and a "Brake" card 30g are placed. In the example at the top, the moving object 20 first reads the pattern 71 on the card 30a, updates the parameters of the speed subgroup to a first speed, and moves straight at that speed. Then, the moving object 20 reads the pattern 71 on the card 30g, and updates the parameters of the brake subgroup to the brake state. Then, the moving object 20 continues to decelerate its speed in accordance with the brake state parameters until the speed reaches 0 (braking distance ds) and stops. On the other hand, in the example at the bottom, the moving object 20 first 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. The moving object 20 reads the pattern 71 on the card 30g and updates the parameters of the brake subgroup to the brake state. The moving object 20 then reduces its speed and travels the braking distance df until it stops.

[0118] In the process of Figure 11, when the brake state is set, the speed is periodically reduced by a fixed amount. Therefore, the faster the speed, the longer it takes for the speed to reach zero, and since the average running speed is also high, the braking distance increases as the speed increases. This is similar to uniform acceleration motion with acceleration opposite to the direction of travel. The motor 25 of the moving object 20 is a servo motor, which makes it easy to suddenly stop rotation regardless of speed. Here, by controlling the motor 25 so that the braking distances ds and df correspond to the speed, the effect of the programming experience is improved by approximating physical movement.

[0119] The rest of the process will be described below. In S203, if the speed value is not 0 (N in S203), the driving processing unit 55 determines the rotation speeds of the left and right wheels 254 based on the current speed value and the steering state parameters (S205). The driving processing unit 55 controls the rotation of the left and right motors 25 based on the determined rotation speeds (S206).

[0120] 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 mobile object 20 can be made to move straight, turn continuously to the right, or turn continuously to the left. When moving straight, the difference in rotation speed between the left and right wheels is almost zero.

[0121] Here, in S205, when the steering wheel state parameter is set to right or left, the driving processing unit 55 determines the rotation speeds of the left and right wheels 254 so that the rotation radius (the rotation radius corresponds to the curvature of the trajectory) increases as the speed parameter among the driving parameters increases. For example, the driving processing unit 55 may determine the rotation speeds of the left and right wheels 254 so that the difference between the rotation speeds of the left and right wheels 254 is constant and the sum of the rotation speeds of the left and right wheels 254 is proportional to the speed parameter. In this case, the rotation radius is approximately proportional to the speed. The rotation speeds may be calculated using another formula, or the driving processing unit 55 may determine the rotation speeds by referring to a table that stores the rotation speeds of the left and right wheels 254 for each speed.

[0122] 13 and 14 are diagrams illustrating another example of the difference in the behavior of the moving object 20 depending on the speed. In the example of Fig. 13, the moving object 20 first reads the pattern 71 on the "Slow" card 30a, changes its own speed to a first speed, then reads the pattern 71 on the right-facing card 30d, updates the steering wheel state parameter to "right," and moves forward while maintaining the speed and turning right. At this time, the moving object 20 turns right with a turning radius rs.

[0123] 14, the moving object 20 first reads the pattern 71 on the "Fast" card 30b, changes its speed to a second, faster speed, then reads the pattern 71 on the card 30d, and turns right with a turning radius df, which is greater than the turning radius ds.

[0124] In conventional programming teaching materials where cards are arranged, the area where a device such as the moving object 20 moves is also in the form of a grid. Also, since it is not considered that the device can operate ignoring the grid, instead of changing direction like a steering wheel, the device is turned in 90-degree increments on the card.

[0125] On the other hand, in the examples of Figures 13 and 14, an additional condition is added: when turning right or left, as in steering a steering wheel, the turning radius increases as the speed increases. This increases the variety of movements of the moving object 20, giving the user more room to innovate when arranging the cards 30. Furthermore, this condition is similar to the behavior of an actual car, making it easy for the user to intuitively understand. This attracts the user's interest while providing a more advanced programming experience. Note that this condition cannot be achieved unless the number of rotations is consciously controlled for the moving object 20 used as a toy. Therefore, the driving processing unit 55 intentionally controls the number of rotations to the left and right to simulate this phenomenon.

[0126] Combining it with a braking state or the like can provide an even more interesting experience. Figure 15 is a diagram illustrating another example of how the behavior of a moving object differs depending on its speed. In the example of Figure 15, the pattern 71 on the "Fast" card 30b is first read, then the speed of the moving object 20 reaches a second speed, the pattern 71 on the "Brake" card 30g is read, and then the pattern 71 on the card 30d is read as the speed continues to decrease. The moving object 20 turns right while decreasing its speed, and in doing so, the turning radius decreases monotonically according to the speed. A spiral movement is possible with simple control, providing the user with a more advanced experience.

[0127] If the moving body 20 includes a steering mechanism, the driving processing unit 55 may control the moving body 20 to go straight, turn right, or turn left by setting the direction of some of the wheels 254.

[0128] 9 to 11 causes the moving object 20 to move in accordance with the moving parameters set by the card 30. The operation control unit 52 also controls the traveling device so that even after moving away from the card 30, the moving object 20 continues to move in accordance with the operation instructions indicated by the previously read pattern 71 until a new pattern 71 is read as the moving object 20 moves over a new card 30.

[0129] Fig. 16 is a flowchart showing an example of action processing by the action processing unit 56. Fig. 16 shows processing executed by an action instruction, such as card 30h, to turn the direction of travel in a specified direction, among a plurality of action-based operation instructions. The processing shown in Fig. 16 starts at S116 in Fig. 10.

[0130] 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 in S103 of FIG. 9, 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 object 20 after rotation is a predetermined direction relative to the card 30 (e.g., the direction of the arrow on card 30h). The action processing unit 56 also determines the direction and amount of rotation so that the rotation directions of the left and right wheels 254 are opposite and the moving object 20 faces the predetermined direction with minimal rotation.

[0131] If the value of the speed of the running parameter is 0 (Y in 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 in S304), the action processing unit 56 resumes the running processing of the running processing unit 55 (S306), and the processing in FIG. 16 ends.

[0132] In this process, the direction of travel is physically changed by the action set by the card 30. After the action, the travel process is resumed, causing the moving object 20 to travel according to the travel parameters set previously. As a result, the traveling device can be controlled to continue operating according to the previous operation instructions until a new pattern 71 is read as the moving object 20 travels over a new card 30.

[0133] 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 serpentine driving or spinning (rotation) may be executed by reproducing time-series motor control information stored in the storage 22. Furthermore, 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.

[0134] [Example of a method for detecting whether instructions are obtained from the same card 30] Next, an example of a method for detecting whether instructions are obtained from the same card 30, which was described in S104 of Figure 9, will be described in more detail.

[0135] FIG. 17 is a diagram illustrating an example of a card 30. The front surface of one card 30 includes an internal area 31 surrounded by a dashed line in FIG. 17 and a peripheral area 32 outside the dashed line and surrounding the internal area 31. A plurality of patterns 71 are printed on the card 30 in a matrix arrangement. Each of the patterns 71 is an image of a predetermined size, for example, 0.2 mm square. The size of each of the patterns 71 is smaller than the size of the moving object 20. In FIG. 17, the patterns 71 are depicted on a portion of the card 30, but in reality, they are arranged to fill the entire surface of the card 30. For ease of explanation, the image "Sound," which can be recognized with visible light, is depicted by a dashed line.

[0136] Within the internal area 31, a plurality of identification patterns 72 are arranged, each indicating the card type to which the card 30 belongs. The identification pattern 72 is an image in which card type information is encoded, and the image of the identification pattern 72 varies depending on the card type. The plurality of identification patterns 72 are arranged in a matrix within the internal area 31. For the same card 30, the plurality of identification patterns 72 may have the same image. Note that the internal area 31 does not have to be rectangular, and patterns 71 extending beyond the internal area 31 become peripheral patterns 73 (described below) rather than identification patterns 72. Furthermore, to ensure that a mobile object 20 traveling within the internal area 31 can recognize the identification patterns 72, for example, 3 × 3 or more identification patterns 72 are arranged within the internal area 31. The identification patterns 72 do not necessarily have to be arranged in a matrix, but may be arranged in concentric circles, for example.

[0137] The peripheral region 32 is arranged on the periphery of the front surface of the card 30. A plurality of peripheral patterns 73 are arranged in the peripheral region 32 so as to surround the internal region 31 in which the plurality of identification patterns 72 are arranged. From another perspective, the identification pattern 72 indicating any of the card types is not printed in the peripheral region 32. The peripheral pattern 73 is a pattern 71 that does not indicate any of the plurality of card types, and is an image in which peripheral information different from the information indicating the card type is encoded. In this embodiment, the peripheral information has a fixed value regardless of the card type, but it does not necessarily have to be a fixed value. The plurality of peripheral patterns 73 need only be arranged so as to be readable by the mobile object 20 traveling from the internal region 31 toward the outside of the card 30, and do not necessarily have to be arranged in a matrix. The width of the peripheral region 32 may be, for example, at least twice the size of the pattern 71.

[0138] Although the dashed dotted line is not actually printed, it is clear that the boundary between the internal region 31 and the peripheral region 32 exists between the adjacent identification pattern 72 and peripheral pattern 73, making it easy to confirm the existence of the internal region 31 and the peripheral region 32. The pattern 71 does not have to be printed in the peripheral region 32.

[0139] As explained in FIG. 4, when the moving object 20 passes over the card 30, the pattern 71, which is usually printed at different positions as time progresses, is read.

[0140] In the toy system according to this embodiment, the camera 24 of the mobile object 20 captures an image of the pattern 71 printed on the card 30, and the mobile object 20 decodes the pattern 71 to acquire information. For example, the mobile object 20 acquires an action instruction as information from an identification pattern 72 printed on an action instruction card. The mobile object 20 acquires peripheral information from a peripheral pattern 73.

[0141] The functional configuration realized by the toy system is shown in Figure 5. The following provides additional information about each function. Explanations of what has already been explained up to this point will be omitted.

[0142] When the mobile object 20 travels over one of the multiple cards 30, the card information acquisition unit 51 reads the pattern 71 printed on the card 30 and decodes information (card type, peripheral information) from the pattern 71. Here, the card type is decoded from the identification pattern 72, and the peripheral information is decoded from the peripheral pattern 73.

[0143] When information (card-shaped) indicating an operation instruction is acquired from the identification pattern 72, the operation control unit 52 controls the running device, speaker 26, etc. in accordance with the operation instruction. When the identification pattern 72 is not read, the operation control unit 52 controls the running device to continue operating in accordance with the previously read operation instruction until a new identification pattern 72 is read as the mobile object 20 runs over a new card 30. When an operation instruction is acquired from the new identification pattern 72, the operation control unit 52 controls the operation of the mobile object 20 in accordance with the new operation instruction indicated by the new identification pattern 72.

[0144] Furthermore, when the identification pattern 72 is photographed by the camera 24 after the peripheral pattern 73 has been photographed, the operation control unit 52 controls the running device of the mobile object 20 based on the photographed identification pattern 72. On the other hand, when the same identification pattern 72 as the previous time is photographed by the camera 24, the operation control unit 52 does not control the operation of the mobile object 20 based on the photographed identification pattern 72. Note that when the identification pattern 72 is photographed for the first time when the mobile object 20 starts running based on a user instruction, the operation control unit 52 may control the running device of the mobile object 20 based on the photographed identification pattern 72. The above processing makes it possible to recognize the differences between multiple cards 30 of the same type when they are lined up.

[0145] The card determination unit 53 determines whether the information acquired by the processing of the card information acquisition unit 51 is a card type or peripheral information, and further determines whether the card type belongs to an action instruction group or a setting group. Furthermore, if the card type belongs to the action instruction group, in other words, if the information indicates an action instruction, the card determination unit 53 determines the group to which the action instruction belongs. If the action instruction belongs to a state change type, the card determination unit 53 executes processing in the parameter update unit 54, and if the action instruction belongs to an action type, the card determination unit 53 executes processing in the action processing unit 56.

[0146] When an instruction to turn in a specified direction is acquired from the identification pattern 72, the action processing unit 56 controls the traveling device so that the mobile object 20 turns in the specified direction. When an instruction to perform a predetermined action is acquired from the identification pattern 72 as an action instruction, the action processing unit 56 controls the mobile object 20 so that the predetermined action is performed. The instruction to perform the predetermined action may be, for example, an instruction to output a predetermined sound or to travel in a predetermined direction (snaking or rotating).

[0147] Next, the effect of providing the internal area 31 and the peripheral area 32 of the card 30 will be described in more detail, while the process for realizing the operations described with reference to FIG. 8 and other figures will be described. FIGS. 18 and 19 are flowcharts illustrating an example of the process performed by the mobile object 20. FIGS. 18 and 19 mainly illustrate the processes performed by the card information acquisition unit 51, the card determination unit 53, and the parameter update unit 54. The processes illustrated in FIGS. 18 and 19 are periodically (e.g., every 0.1 seconds). While an action-based operation instruction is being performed that takes a certain amount of time, only the process for determining whether the card type has been read from the same card 30 (S121 to S127) may be periodically executed. Even if the mobile object 20 moves to another card 30 of the same type during the action, it is possible to accurately obtain information from the card 30 read at the end of the action.

[0148] First, the card information acquisition unit 51 acquires an image read by the camera 24 of the mobile object 20 (S121). The card information acquisition unit 51 determines whether information can be decoded from the acquired image (S122). This process determines whether a pattern 71 exists in the acquired image. If the information cannot be decoded (N in S122), the card information acquisition unit 51 sets the same card flag to OFF and terminates the process shown in FIGS. 18 and 19. On the other hand, if the information can be decoded (Y in S122), the card information acquisition unit 51 determines whether the decoded information is peripheral information (S124). This determination may be made based on whether the decoded information is within a range of values ​​indicating the card type. If the decoded information is peripheral information (Y in S124), the card information acquisition unit 51 sets the same card flag to OFF and terminates the process shown in FIGS. 18 and 19. On the other hand, if the decrypted information is not peripheral information (N in S124), the card information acquisition unit 51 checks whether the same instruction as the previous one has been decrypted (S125). If the same instruction as the previous one has not been decrypted (N in S125), S126 is skipped and the process from S127 onwards is executed. If the same instruction as the previous one has been decrypted (Y in S125), it is determined whether the same card flag is set to ON (S126).

[0149] 18 and 19. On the other hand, if the same card flag is set to OFF (N in S126), the card information acquisition unit 51 sets the same card flag to ON (S127). The card information acquisition unit 51 also acquires an instruction (here, an operation instruction) from the decoded card type, acquires the angle A of the moving object 20 relative to the card 30 (S128), and executes the processing from S131 onward (processing for controlling the running device, speaker 26, etc.) to operate the moving object 20 in accordance with the instruction.

[0150] The processes of S122 to S124 and S126 to S128 detect whether card type information has been acquired from the same card 30 as the previous time, and if card type information has been acquired from the same card 30, new control based on the instructions indicated by the card type is not executed. Furthermore, if card type information has been acquired from a new card 30 through these processes, new control based on the instructions indicated by that card type is executed. The process of S125 is a process that corresponds to the case where the identification patterns 72 of two different types of cards 30 are forcibly read by moving the mobile object 20 by hand.

[0151] Fig. 20 is a diagram showing an example of a plurality of cards 30 arranged side by side. In the example of Fig. 20, two cards 30 are arranged so that they partially overlap. A mobile object 20 moves from left to right in Fig. 20 and reads patterns 71 from the two cards. Both cards 30 have an internal region 31 and a peripheral region 32, but at the boundary between the two cards 30, the peripheral region 32 of the left card 30 is hidden under the right card 30.

[0152] In the example of Figure 20, before the camera 24 of the mobile object 20 reads the image of the card 30, the card information acquisition unit 51 is unable to decode the information and sets the same card flag to OFF. Furthermore, when the camera 24 photographs the peripheral pattern 73 at position P1, the peripheral information is decoded and the same card flag remains OFF. In this state, when the camera 24 photographs the identification pattern 72 at position P2, the same card flag is set to OFF, so a process for controlling the operation of the mobile object 20 according to the decoded card type is executed, and the same card flag is set to ON. On the other hand, even if the identification pattern 72 is subsequently photographed in the internal area 31 of the left card 30, the same card flag is set to ON, so no process for controlling the operation of the mobile object 20 is executed.

[0153] Thereafter, when the camera 24 photographs the peripheral pattern 72 at position P3, the peripheral information is decoded and the same card flag is set to OFF, thereby determining that the next identification pattern 72 to be read is information to be read from a new card 30. Thereafter, when the camera 24 photographs the identification pattern 72 at position P4, a process is executed to control the operation of the mobile object 20 according to the decoded card type.

[0154] If the peripheral area 32 on which the peripheral pattern 73 is printed does not exist, and the same card-shaped identification pattern 72 is printed on the entire surface of both cards 30, even if the pattern 71 of the second card 30 is read, the same information as that of the previous card 30 will be decoded. Therefore, it is difficult for the mobile object 20 to recognize whether the identification pattern 72 has been read from the new card 30. The peripheral area 32 on which the peripheral pattern 73 is printed makes it possible to reliably recognize whether the identification pattern 72 has been read from the new card 30. Note that although a similar effect can be achieved by not printing the pattern 71 in the peripheral area 32, printing the peripheral pattern 73 ensures more reliable recognition. Furthermore, the processing of S102 makes it possible to prevent malfunctions when the peripheral pattern 73 cannot be read for some reason.

[0155] Instead of using the same card flag, information decoded from the pattern 71 photographed by the camera 24 in the previous process may be stored, and if the information is not identical to the information decoded from the currently photographed pattern 71, processing may be executed to control the operation of the mobile object 20 according to the decoded card type. In this case, if information cannot be decoded from the image, dummy information may be stored instead of the decoded information, which can also be used to deal with cases where the surrounding pattern 73 cannot be read for some reason.

[0156] The reason why new control is not executed when the card type is read from the same card 30 is to prevent problems from occurring and processing resources from being wasted due to repeating the same processing.

[0157] 18 and 19. When the process of S128 is executed, the card determination unit 53 determines whether the acquired operation instruction belongs to a state change group (S131). If the acquired operation instruction belongs to a state change group (Y in S131), the parameter update unit 54 updates the driving parameters in accordance with the operation instruction (S132).

[0158] More specifically, the parameter update unit 54 updates the driving parameters of the subgroup to which the operation instruction is classified to values ​​indicated by the operation instruction. If the operation instruction belongs to the speed subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the operation instruction. If 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). If 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).

[0159] When an action instruction belongs to multiple subgroups, the parameter update unit 54 updates the driving parameters of each of the multiple subgroups to the value indicated by the action instruction. For example, when an action instruction belongs to a speed subgroup and a steering subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the action instruction and updates the steering state parameter to the value indicated by the action instruction. In this case, there may be multiple action instructions that correspond one-to-one to each combination of a candidate value for the speed parameter (e.g., slow, fast, very fast) and a candidate value for the steering state parameter (e.g., right, left, straight). There may be a card 30 that corresponds one-to-one to each of the multiple action instructions.

[0160] On the other hand, if the acquired operation instruction does not belong to the state change system (N in S131), the card determination unit 53 determines (S133) whether the acquired operation instruction indicates an instruction to stop the moving object 20. If the operation instruction indicates an instruction to stop the moving object 20 (Y in S133), the travel processing unit 55 ends the travel processing and stops the moving object 20 (S134).

[0161] On the other hand, if the action instruction does not indicate an instruction to stop the moving object 20 (N in S133), the card determination unit 53 determines that the acquired action instruction belongs to the action group (S135). If the action instruction does not belong to the action group (N in S135), the processing of Figures 18 and 19 is terminated. If the action instruction belongs to the action group (Y in S135), the card determination unit 53 determines whether the running process of the running processing unit 55 or the action process of the action processing unit 56 is currently being executed (S136). If the running process or action process is being executed (Y in S136), the running running process or action process is stopped (S137). If the running process or action process is not being executed (N in S136), the processing of S137 is skipped. Then, the action processing unit 56 starts the action process in response to the action instruction (S138).

[0162] Among action-related operation instructions, in particular, for an operation instruction to turn the traveling direction in a specified direction, such as card 30h, the action processing unit 56 determines the direction and amount of rotation of the left and right motors 25 based on the angle read from card 30. The direction and amount of rotation are determined so that the orientation of the moving object 20 after rotation will be a predetermined direction (e.g., the direction of the arrow on card 30h) relative to the card 30 from which the angle was read. The action processing unit 56 then rotates the left and right motors 25 in the determined direction and amount of rotation. When the rotation is completed, processing by the travel processing unit 55 resumes.

[0163] For an action instruction to execute a typical action such as a rotation (spin), a meandering run, or a sound output, the action processing unit 56 first acquires time-series control information associated with the action instruction and recorded in the storage 22. The action processing unit 56 controls at least one of the motor 25 and the speaker 26 based on the time-series control information. When this time-series control ends, the processing of the running processing unit 55 resumes.

[0164] An example of processing that combines the processing of the action processing unit 56 with the acquisition of a card type from a new card 30 will be described. FIGS. 21 and 22 are diagrams illustrating an example of the behavior of the moving object 20 with respect to a plurality of arranged cards 30. In the example of FIG. 21, two cards 30s are arranged with a partial overlap. An identification pattern 72 indicating a motion instruction for an action that produces a sound is printed on the cards 30s. In the example of FIG. 21, a sound is output when the moving object 20 reads the identification pattern 72 on the left card 30s for the first time, and a sound is also output on the right card 30s. By identifying whether the cards 30 are the same, it is possible to prevent a situation in which a sound is not output from the right card 30s.

[0165] In the example of FIG. 22 , two cards 30h are arranged side by side, partially overlapping and changing direction. An identification pattern 72 indicating a motion instruction for an action to change direction in the direction of the arrow is printed on the card 30h. In the example of FIG. 22 , the moving object 20 changes direction with the first card 30h, and then changes direction with the second card 30h. Even in such a case, by identifying whether the cards 30 are the same, it is possible to prevent a situation in which the second change of direction is not made. Note that in the example of FIG. 22 , while it is theoretically possible to recognize the difference between the cards 30 from the angle, due to variations in angle caused by traveling, using the peripheral area 32 provides easier and more reliable recognition.

[0166] 21 and 22 and the travel process shown in Fig. 11 make it possible to control the travel device so that it travels according to the travel parameters set by the card 30, and continues to operate according to the operation instructions indicated by the previously read pattern 71 even after moving away from the card 30, until a new pattern 71 is read as the mobile object 20 travels over a new card 30. Furthermore, by utilizing the surrounding area 32 and combining this with not performing new control when an identification pattern 72 is read from the same card 30, it becomes possible to obtain information accurately from multiple cards and perform simple operation with few malfunctions.

[0167] [Example of card structure]

[0168] The structure of the card 30 will be described below. Fig. 23 is a schematic cross-sectional view of the card 30. The card 30 has a strength that makes it difficult to bend. The coefficient of friction of the back surface of the card 30 is greater than the coefficient of friction of the front surface of the card 30.

[0169] The card 30 includes multiple sheets stacked one on top of the other. The multiple sheets include a base material 35, a front sheet 36, and a back sheet 37. The front sheet 36 forms the front surface of the card 30, and the back sheet 37 forms the back surface of the card 30. The multiple sheets are stacked in the order of front sheet 36, base material 35, and back sheet 37 from top to bottom. A printed layer 39 is present between the base material 35 and the front sheet 36. An image recognizable with visible light and a pattern 71 recognizable with infrared light are printed on the front surface of the base material 35 as the printed layer 39. The thickness of the card 30 is, for example, 0.45 mm or less. The thickness of the card 30 may be any thickness that allows the moving object 20 to ride over it and makes it difficult to bend.

[0170] The substrate 35 may be made of resin or paper. More specifically, the material of the substrate 35 may be any of paper, polypropylene (PP), polycarbonate (PC), polyethylene terephthalate (PET), and polyvinyl chloride (PVC). The material of the substrate 35 may be selected from the above materials in consideration of rigidity, durability, cost, smoothness (resistance to warping), and heat resistance.

[0171] The front sheet 36 and the back sheet 37 are films attached to the substrate 35. The front sheet 36 and the back sheet 37 may be formed by laminating a film onto the substrate 35, or by coating. The material of the front sheet 36 may be the same as the material of the back sheet 37, and specifically, they may contain the same type of resin. Specifically, the material of the front sheet 36 and the back sheet 37 may be either PP or PET. By using the same material for the front sheet 36 and the back sheet 37, it is possible to prevent warping due to temperature changes, etc.

[0172] Here, the back surface of the card 30, i.e., the back sheet 37, is surface-treated to have a higher coefficient of friction than the front surface of the card 30. For example, the front surface of the card 30 may be matte-finished, and the back surface may be coated with a material with a high coefficient of friction. Alternatively, the back surface may be matte-finished, and the front surface may be untreated. The matte finish may be achieved by attaching a film with a rough surface (e.g., a matte film) to the base material 35 as the front sheet 36 or back sheet 37, or by applying a material such as resin, varnish, or silicone-based ink to the front sheet 36 or back sheet 37. A velvet PP finish may be used instead of the matte finish or the application of a material.

[0173] These surface treatments make it possible to increase the coefficient of friction on the back side of card 30 even without applying an adhesive for a sticker. Instead of surface treatment using front sheet 36 or back sheet 37, the coefficient of friction on the back side of card 30 may be made higher than that on the front side by printing or applying a material to substrate 35. For example, the surface of substrate 35 may be printed with printing layer 39 and coated with a protective layer (varnish) (printing alone may be sufficient), and then coated with a resin or silicone-based ink with a higher coefficient of friction. In this case, card 30 may be composed of a single sheet of substrate 35.

[0174] FIG. 24 is a diagram illustrating an example of a moving object 20 moving over a card 30. In FIG. 24, the card 30 is placed on a desk. When the moving object 20 moves over the card 30, a force in the opposite direction (rearward) to the moving object 20's direction of travel is transmitted to the card 30 due to the friction between the rotating wheels 254 and the card 30. If the friction between the card 30 and the desk is insufficient, the card 30 will slip backward. By increasing the coefficient of friction on the back side of the card 30, the limit of the static friction between the card 30 and the desk is increased, making it possible to suppress slippage of the card 30. Furthermore, by decreasing the coefficient of friction on the front side of the card 30, it is possible to reduce the possibility of excessive force being transmitted to the card 30 and causing it to slip out of position when the moving object 20 makes a sudden movement.

[0175] Next, the planar configuration of the printing layer 39 will be described. FIG. 17 is a diagram illustrating an example of an image printed on the card 30. As described above, the front surface of the card 30 includes an internal area 31 surrounded by a dashed line in FIG. 17 and a peripheral area 32 outside the dashed line and surrounding the internal area 31. A plurality of patterns 71 are printed in a matrix on the front side of the card 30 (strictly speaking, on the front side of the substrate 35). Each of the patterns 71 is an image of a predetermined size, for example, 0.2 mm square. The patterns 71 are images in which information for controlling the operation of the moving object 20 is encoded. This information is also card-shaped. The details of the printing are the same as those described previously, and will not be described again.

[0176] [Modification enabling recording and reproduction] An example will be described below in which the operation of the moving object 20 is recorded and reproduced using the card 30. Portions not specifically described are the same as those in the embodiments described so far.

[0177] In this example, the cards 30 include a plurality of operation instruction cards, a start recording card, an end recording card, and a playback card. The start recording card, end recording card, and playback card are printed with coded images indicating the start or end of recording and playback instructions, respectively.

[0178] In the toy system according to this embodiment, the camera 24 of the moving object 20 captures an image of the pattern 71 printed on the card 30, and the moving object 20 decodes the pattern 71 to acquire information. The information acquired from the pattern 71 printed on the action instruction card is an action instruction. This allows the moving object 20 to recognize the type of the action instruction card. The information acquired from the pattern 71 printed on the card 30, which indicates the start or end of recording and playback, is a recording start instruction, a recording end instruction, and a playback instruction, respectively. In addition, the moving object 20 detects the inclination of the pattern 71 in the image captured by the camera 24, thereby detecting the direction of the moving object 20 (e.g., angle A from a reference direction).

[0179] 25 is a block diagram showing functions realized by the toy system. In this example, 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, as well as a recording control unit 57 and a playback 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, and the speaker 26. Note that some of these functions may be realized by the processor 21 sending a processing request to another computer included in the toy system via the communication unit 23 and receiving the result of the request.

[0180] 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 mobile object 20 travels on one of the multiple cards 30, the card information acquisition unit 51 reads the pattern 71 printed on the card 30 and decodes information (an operation instruction, a recording start instruction, a recording end instruction, or a playback instruction) from the pattern 71. The card information acquisition unit 51 also acquires the orientation of the mobile object 20 relative to the card 30 based on the inclination of the pattern 71 photographed by the camera 24.

[0181] 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.

[0182] When a recording start instruction is obtained, the operation control unit 52 additionally stores in the storage 22 the operation instruction indicated by the image and time information indicating the current time each time an encoded image is read by the moving body 20 running over a new operation instruction card until the recording end condition is met.

[0183] When a playback instruction is acquired, the operation control unit 52 controls the traveling device in accordance with the time information and operation instruction stored in the storage 22. Furthermore, when a playback instruction is acquired, the operation control unit 52 may control the traveling device to return to the initial state stored in the storage 22, and then control the traveling device in accordance with the time information and operation instruction stored in the storage 22.

[0184] When a start recording instruction is acquired, the recording control unit 57 additionally stores in the storage 22 the operation instruction indicated by the image and time information indicating the current time each time an encoded image is read by the moving object 20 traveling over a new operation instruction card until a condition for ending recording is met. The start recording instruction may be acquired by reading an image indicating the start recording instruction from the pattern 71 printed on the start recording card. The condition for ending recording may be acquisition of the end recording instruction from the pattern 71 printed on the end recording card. The condition for ending recording may be acquisition of the end recording instruction from the pattern 71 printed on the end recording card. The condition for ending recording may be acquisition of the stop recording instruction by the moving object 20 stopping, or the passage of a predetermined time. When a start recording instruction is acquired from the pattern 71 printed on the start recording card, the operation control unit 52 may store the operating state (e.g., running parameters) of the moving object 20 at that time as an initial state in the storage 22.

[0185] When a playback instruction is acquired, the playback control unit 58 controls the traveling device in accordance with the time information and operation instructions stored in the storage 22. The playback instruction may be acquired by reading an image indicating the playback instruction from a playback card. When a playback instruction is acquired, the playback control unit 58 may control the traveling device to return to the initial state stored in the storage 22, and then control the traveling device in accordance with the time information and operation instructions stored in the storage 22.

[0186] Next, an example of controlling a moving object using a recording start card, a recording end card, and a playback card will be described. FIG. 26 is a diagram illustrating an example of recording an operation instruction. In the example of FIG. 26, a "Fast" card 30b and a card 30h with two arrows indicating a direction change are arranged as operation instruction cards. Also, a card 30r is arranged as a recording start card, and a card 30q is arranged as a recording end card. In the example of FIG. 26, after the moving object 20 passes the "Fast" card 30b and changes its speed to a second speed, it reads the card 30r indicating the start of recording and starts recording subsequent operation instruction cards. As the initial state, traveling parameters including the second speed are recorded. After recording starts, the moving object 20 reads the card 30h indicating a direction change to the lower left in the figure and changes direction, and then reads the card 30h indicating a direction change to the right in the figure and changes direction again. The moving object 20 then moves straight ahead and reads the card 30q indicating the end of recording, thereby ending recording. The recording control unit 57 may stop the moving object 20 when the recording ends.

[0187] FIG. 27 is a diagram illustrating an example of playback of recorded action instructions. In the example of FIG. 27, a card 30p serving as a playback card and an arrow card 30h serving as an action instruction card indicating a change of direction are arranged. In the example of FIG. 27, when the moving object 20 reads the card 30p indicating the playback instruction, the moving object 20 assumes a second speed as an initial state and moves as recorded in FIG. 26. Furthermore, when this movement ends, the moving object 20 stops. Note that in addition to the card 30p indicating the playback instruction, a card 30 indicating a repeat playback instruction may also be present. When the moving object 20 reads the card 30 indicating the repeat playback instruction, the recorded action is repeated without stopping at the end of the action described in FIG. 27.

[0188] Next, the processing for realizing the operations described above will be described in more detail. Figures 28 to 30 are flowcharts showing an example of processing by the mobile object 20. Figures 28 to 30 mainly show processing by the card information acquisition unit 51, the card determination unit 53, the parameter update unit 54, the recording control unit 57, and the playback control unit 58. The processing shown in Figures 28 to 30 is repeatedly executed periodically (for example, every 0.1 seconds). In the example of Figures 28 to 30, in addition to a normal driving mode, there are a recording mode in which operation instructions are recorded while driving, and a playback mode in which the recorded operation instructions are played back.

[0189] First, the playback control unit 58 determines whether the playback mode is ON (S141). If the playback mode is ON (Y in S141), the playback control unit 58 executes the processing from S149 onwards, the details of which will be described later.

[0190] If the playback mode is OFF (N in S141), the card information acquisition unit 51 acquires an image captured by the camera 24 of the moving object 20 (S142). The card information acquisition unit 51 determines whether it is possible to acquire an instruction (operation instruction, recording start instruction, recording end instruction, or playback instruction) from the acquired image (S143). More specifically, the card information acquisition unit 51 determines whether a pattern 71 is present in the acquired image. If it is not possible to acquire an instruction (N in S143), the processing shown in FIGS. 28 to 30 ends. If it is possible to acquire an instruction (Y in S143), the card information acquisition unit 51 acquires the instruction of the card 30 and the angle A of the moving object 20 relative to the card 30 from the image (S144). The processing using the angle A will be described later.

[0191] When an instruction from the card 30 is acquired, the card information acquisition unit 51 determines whether the instruction was acquired from the same card 30 as the previous instruction (S145). If the instruction was acquired from the same card 30 (Y in S145), the processing of FIGS. 28 to 30 is terminated. Whether the instruction was acquired from the same card 30 may be determined based on whether the same instruction was read during the above-mentioned reading. Here, if no information was read during the previous reading, or the read information did not indicate any instruction, and an operation instruction was read this time, it is determined that the instruction was not read from the same card 30 as the previous one. This processing prevents problems and waste of processing resources caused by repeating the same processing.

[0192] If the acquired operation instruction is different from the previously acquired operation instruction (N in S145), the card determination unit 53 determines whether the acquired instruction is an operation instruction (S146). The process when the acquired instruction is not an operation instruction will be described later.

[0193] If the acquired instruction is an operation instruction (Y in S146), the recording control unit 57 determines whether the recording mode is ON (S147). If the recording mode is ON (Y in S107), the recording control unit 57 adds the operation instruction and angle A acquired by the card information acquisition unit 51, and time information indicating the current time, to the storage 22 (S148). If the recording mode is OFF (N in S147), the processing of S148 is skipped.

[0194] FIG. 31 is a diagram showing an example of operation instructions and the like stored in the storage 22. This diagram shows, in table format, an example of information stored in the storage 22 when the operation described in FIG. 26 is performed. The "Time" column indicates time information. In the example of FIG. 31, the time information is the difference between the time when the operation instruction was read and the time when recording started. The time information may be the current time. In this case, the time when the recording start instruction was acquired may be separately recorded as the initial state. While the operation instruction is expressed in command format, it may actually be a binary code corresponding to the command, or the decoded information of the pattern 71 itself. In the example of FIG. 31, the angle is expressed in the format of -180 degrees to +180 degrees, but it may also be expressed in the format of 0 to 360 degrees, or as an angle with n stages per revolution (for example, n is an integer greater than or equal to 8). Furthermore, when a recording end instruction is acquired, the recording control unit 57 may also store the time information and the like in the storage 22. In the example of FIG. 31, an example of this is shown in a line in the operation instruction that reads "End Recording." The storage 22 in which the operation instructions and the like are stored may be, for example, a memory possessed by the mobile object 20 .

[0195] If the playback mode is ON in S141 (Y in S141), the processes from S142 to S148 are not performed. The playback control unit 58 also acquires from the storage 22 the earliest unread operation instruction (next operation instruction) and the time information and angle stored in association with that operation instruction (S149). In the processes from S151 to S158, this operation instruction and angle are treated the same as those acquired in S144. The playback control unit 58 waits until the time indicated by the time information (S150). Although not shown, if information indicating the end of recording is read from the storage 22 in S149, the playback control unit 58 controls the traveling means to stop the moving object 20. If the playback mode is ON because an image indicating that instruction is read from the repeat playback card 30, the process of S167 may be executed instead of stopping when information indicating the end of recording is read from the storage 22.

[0196] When the processes of S147 N, S148, and S150 are completed, the card determination unit 53 determines whether the acquired operation instruction belongs to the status change group (S151). If the acquired operation instruction belongs to the status change group (Y in S151), the parameter update unit 54 updates the driving parameters in accordance with the operation instruction (S152).

[0197] More specifically, the parameter update unit 54 updates the driving parameters of the subgroup to which the operation instruction is classified to values ​​indicated by the operation instruction. If the operation instruction belongs to the speed subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the operation instruction. If 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). If 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).

[0198] When an action instruction belongs to multiple subgroups, the parameter update unit 54 updates the driving parameters of each of the multiple subgroups to the value indicated by the action instruction. For example, when an action instruction belongs to a speed subgroup and a steering subgroup, the parameter update unit 54 sets the speed parameter to a value corresponding to the action instruction and updates the steering state parameter to the value indicated by the action instruction. In this case, there may be multiple action instructions that correspond one-to-one to each combination of a candidate value for the speed parameter (e.g., slow, fast, very fast) and a candidate value for the steering state parameter (e.g., right, left, straight). There may be a card 30 that corresponds one-to-one to each of the multiple action instructions.

[0199] On the other hand, if the acquired operation instruction does not belong to the state change system (N in S151), the card determination unit 53 determines whether the acquired operation instruction indicates an instruction to stop the moving object 20 (S153). If the operation instruction indicates an instruction to stop the moving object 20 (Y in S153), the travel processing unit 55 ends the travel processing and stops the moving object 20 (S154). When the processing of S154 is executed, the processing of Figures 28 to 30 ends.

[0200] On the other hand, if the action instruction does not indicate an instruction to stop the moving object 20 (N in S153), the card determination unit 53 determines that the acquired action instruction belongs to the action group (S155). If the action instruction does not belong to the action group (N in S155), the processing of Figures 28 to 30 is terminated. If the action instruction belongs to the action group (Y in S155), the card determination unit 53 determines whether the running process of the running processing unit 55 or the action process of the action processing unit 56 is currently being executed (S156). If the running process or action process is currently being executed (Y in S156), the running running process or action process is stopped (S157). If the running process or action process is not currently being executed (N in S156), the processing of S157 is skipped. Then, the action processing unit 56 starts action processing in response to the action instruction (S158). Examples of action processing will be described later.

[0201] If the instruction acquired by the card information acquisition unit 51 in S146 is not an operation instruction (N in S146), the card determination unit 53 determines whether the acquired instruction is an instruction to start recording (S161). If the acquired instruction is an instruction to start recording (Y in S161), the recording control unit 57 sets the recording mode to ON (S162) and stores the current driving parameters as initial states in the storage 22 (S163). Then, the processing of Figures 28 to 30 ends.

[0202] If the acquired instruction is not a start recording instruction (N in S161), the card determination unit 53 determines whether the acquired instruction is an end recording instruction (S164). If the acquired instruction is an end recording instruction (Y in S164), the recording control unit 57 sets the recording mode to OFF and stops the motor 25 (S165). Then, the processing of Figures 28 to 30 is terminated.

[0203] If the acquired instruction is not an instruction to stop recording (N in S164), the card determination unit 53 determines whether the acquired instruction is an instruction to play (S166). If the acquired instruction is an instruction to play (Y in S166), the playback control unit 58 acquires information about the initial state from the storage 22 and controls the motor 25 according to the acquired initial state (e.g., driving parameters) (S167). More specifically, the playback control unit 58 updates the driving parameters based on the acquired initial state and controls the rotation of the motor 25 so that the driving state of the mobile object 20 becomes the initial state; in other words, the rotation state of the wheels 254 corresponds to the speed and steering direction indicated by the driving parameters. The playback control unit 58 then sets the playback mode to ON (S168).

[0204] 28 to 30, the processes of S146, S161, S164, and S166 may be executed in a different order, and the processes of S151, S153, and S155 may also be executed in a different order.

[0205] In the embodiments described so far, rather than recording the positions of the arranged cards 30, the operation instructions and time information read during the actual movement of the moving object 20 are recorded and then played back, making it possible to reproduce the operation easily and faithfully. It is also possible to treat the playback of what has been recorded as a subroutine, making it possible to make the programming experience by arranging the cards 30 more diverse and sophisticated.

[0206] 28 to 30, whether the recording mode is on or off, if a new operation instruction is the same as the previous operation instruction, it is ignored (see the order of S145 and S147). These processes make it possible to more simply reduce the capacity of the storage 22 involved in recording, while suppressing differences between the operation when recording or not recording and the operation when playing back.

[0207] The details of the travel processing following the processing of Figures 28 to 30 and the action processing started by S158 in Figure 29 are the same as those described using Figures 11 and 16, respectively. Therefore, detailed description of these processes will be omitted. However, if the recording mode is ON in S204, the same processing as when a recording end instruction is obtained (see S165) may be performed. Also, in S302, the action processing unit 56 determines the direction and amount of rotation of the left and right motors 25 based on the angle read from the card 30 or the angle obtained in S149.

[0208] [Modification enabling interrupt processing] An example of using interrupt processing to control the operation of the moving body 20 will be described below. Unless otherwise specified, the same applies to the embodiments described so far.

[0209] The plurality of cards 30 include a plurality of operation instruction cards, a plurality of interrupt setting cards, and an interrupt execution card. Each of the plurality of operation instruction cards has printed thereon an image indicating an instruction (operation instruction) for an operation of the mobile object 20. At least some of the plurality of operation instruction cards have printed thereon an encoded image indicating one of the plurality of operation instructions for the mobile object 20.

[0210] 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 indicating an interrupt setting instruction for the corresponding interrupt execution condition. The 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 is printed with an encoded image indicating that execution instruction.

[0211] 32 is a diagram showing an example of the 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.

[0212] 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 that detects acceleration acting on the mobile body 20. A fall of the mobile body 20 or an impact to 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 that may be installed, for example, below the top surface of the mobile body 20.

[0213] With reference to FIG. 4 already described, in the toy system according to this embodiment, the camera 24 of the mobile object 20 captures an image of the pattern 71 printed on the card 30, and the mobile object 20 decodes the pattern 71 to acquire information. The information acquired from the pattern 71 printed on the action instruction card is an action instruction. This allows the mobile object 20 to recognize the type of the action instruction card. The information acquired from the pattern 71 printed on the interrupt setting card is an interrupt setting instruction for the corresponding interrupt execution condition. The information acquired from the pattern 71 printed on the interrupt execution card is an execution instruction corresponding to a specific one of multiple interrupt execution conditions, and an encoded image indicating the execution instruction is printed on the interrupt execution card.

[0214] 33 is a block diagram showing functions realized by the toy system. Functionally, the operation control unit 52 includes a card determination unit 53, a parameter update unit 54, a travel processing unit 55, and an action processing unit 56, as well as an interrupt setting unit 59 and an interrupt control unit 60. 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, motor 25, speaker 26, and sensor 27. Note that some of these functions may be realized by the processor 21 sending a processing request to another computer included in the toy system via the communication unit 23 and receiving the result of the request.

[0215] As previously described, 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 mobile object 20 travels on 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 instructions, interrupt setting instructions, execution instructions) from the pattern 71.

[0216] As previously described, 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. If the operation instruction is information indicating a change in running parameters, the operation control unit 52 controls the running device (motor 25) in accordance with the changed parameters after acquiring the acquired pattern 71. Furthermore, when the encoded pattern 71 is not read, the operation control unit 52 controls the running device to continue operating in accordance with the operation instruction indicated by the previously read pattern 71 until a new encoded pattern 71 is read as the mobile object 20 runs over a new card 30 out of 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.

[0217] 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 mobile body 20, in association with the interrupt execution condition corresponding to the interrupt setting instruction.

[0218] 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 running device to resume the operation before the interrupt execution condition was satisfied.

[0219] The card determination unit 53 determines what type of instruction the information on the card 30 acquired by the processing of the card information acquisition unit 51 indicates, and if the information indicates an operation instruction, determines the group to which the operation instruction belongs.

[0220] 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 indicating the next travel of the mobile object 20 and the orientation of the mobile object 20, and stores an interrupt execution condition corresponding to the interrupt setting instruction in the storage 22 in association with the operation instruction and orientation. The interrupt execution condition includes at least one of one or more time intervals for execution, detection of an impact by an acceleration sensor, detection of a magnetic field satisfying a detection condition by a magnetic sensor, and reading of a special pattern 71. The special pattern 71 may be printed on the interrupt execution card, and the pattern 71 may be an image in which the execution instruction is coded. When the pattern 71 indicating an interrupt recording instruction is read, the interrupt setting unit 57 first causes the mobile object 20 to travel in a predetermined direction based on the orientation of the mobile object 20 acquired from the inclination of the photographed pattern 71. The interrupt setting unit 57 then associates the action instruction and 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 should be placed may be printed on the interrupt setting card.

[0221] When any of the interrupt execution conditions is satisfied, the interrupt control unit 58 executes an operation according to an operation instruction associated with the satisfied interrupt execution condition and stored in the storage 22. This operation may be an operation executed in response to an operation instruction during normal running, may be to control the running device, or may be to output sound from the speaker 26. After executing this operation, the interrupt control unit 58 causes the running device to resume the operation (e.g., an operation according to a running parameter) that was performed before the interrupt execution condition was satisfied.

[0222] Next, a case where an interrupt setting card and an interrupt execution card are used will be described. FIG. 34 is a diagram illustrating an example of setting an interrupt operation. In the example of FIG. 34, an arrow card 30h indicating a direction change is placed as the operation instruction card. Also, a card 30r is placed as the interrupt setting card. In the example of FIG. 34, the interrupt execution condition is a time interval of two seconds (every two seconds), and the interrupt operation for that interrupt execution condition is recorded. More specifically, the moving object 20 reads the card 30r indicating the interrupt setting and moves forward. Next, the moving object 20 reads the card 30h indicating a direction change diagonally to the right, and stores the operation instruction and angle obtained from the card 30h in association with the interrupt execution condition of a time interval of two seconds in the storage 22.

[0223] Figure 35 is a diagram showing a modified example of an interrupt setting card. As shown in Figure 35, 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 inserted into the opening. In the example of Figure 35, a card 30k showing an action instruction indicating rotation is inserted into the opening. The interrupt execution condition corresponding to the interrupt setting card in Figure 35 is to read an interrupt execution card.

[0224] When the mobile body 20 reads the interrupt setting instruction from the interrupt setting card, it then acquires an operation instruction from an operation instruction card fitted into the opening, associates the operation instruction with an interrupt execution condition of reading the interrupt execution card, and stores the association in a storage 22.

[0225] FIG. 36 is a diagram illustrating an example of the operation based on the interrupt setting shown in FIG. 34. In the example of FIG. 36, an operation instruction for a direction change and information indicating the angle of the diagonal right angle indicating the direction of the change are stored in association with an interrupt execution condition with a time interval of two seconds. The operation instruction is executed every two seconds, and the mobile object 20 changes direction diagonally to the right. After the direction change, the mobile object 20 resumes moving forward in the same manner as before. As a result, the path followed by the mobile object 20 becomes that shown by the dashed line in FIG. 36.

[0226] FIG. 37 is a diagram illustrating an example of an action performed by an interrupt execution card. In FIG. 37, card 30p is arranged as the interrupt execution card. Also, as shown in FIG. 35, an action instruction to rotate once is stored in association with the interrupt execution condition of reading the interrupt execution card. In the example of FIG. 37, when pattern 71 of the interrupt execution card is read after moving object 20 moves straight, moving object 20 rotates. Then, after rotating, moving object 20 moves straight again. The interrupt execution card can be used to perform an action similar to that of rotation card 30k. In this way, it is possible to substantially increase the number of action instruction cards of a specific type.

[0227] Next, the processing for realizing the operations described above will be described in more detail. Figures 38 to 40 are flowcharts showing an example of processing by the mobile object 20. Figures 38 to 40 mainly show processing by the card information acquisition unit 51, the card determination unit 53, the parameter update unit 54, the interrupt setting unit 57, and the interrupt control unit 58. The processing shown in Figures 38 to 40 is repeatedly executed periodically (for example, every 0.1 seconds), but the repetition of the processing may be suppressed while an operation associated with an interrupt setting instruction or an operation corresponding to an interrupt execution condition is being executed.

[0228] First, the interrupt control unit 58 operates the mobile object 20 based on whether or not each of a plurality of interrupt execution conditions is satisfied (S171). Strictly speaking, the plurality of interrupt execution conditions that are the subject of this process exclude reading of an interrupt execution card. Details of this process will be described later.

[0229] Next, the card information acquisition unit 51 acquires an image captured by the camera 24 of the moving object 20 (S172). 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 (S173). More specifically, if a pattern 71 is present in the acquired image and information decoded from the image indicates some instruction (e.g., indicates a value within a range assigned to the instruction), the card information acquisition unit 51 determines that it is possible to acquire the instruction. If it is not possible to acquire the instruction (N in S173), the processing shown in FIGS. 13 to 15 ends. If it is possible to acquire the instruction (Y in S173), the card information acquisition unit 51 acquires the instruction of the card 30 and the angle A of the moving object 20 relative to the card 30 from the image (S174). The processing using the angle A will be described later.

[0230] When an instruction from the card 30 is acquired, the card information acquisition unit 51 determines whether the instruction was acquired from the same card 30 as the previous time (S175). If the instruction was acquired from the same card 30 (Y in S175), the processing of Figures 13 to 15 ends. Whether the instruction was acquired from the same card 30 may be determined based on whether the same instruction was read. Furthermore, if no instruction was read last time, it may be determined that the instruction was not 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.

[0231] If the instruction is not read from the same card 30 as the previous time (N in S175), the card determination unit 53 determines whether the acquired instruction is an operation instruction (S176). The process when the acquired instruction is not an operation instruction will be described later.

[0232] If the acquired instruction is an operation instruction (Y in S176), the card determination unit 53 determines whether the acquired operation instruction belongs to a state change group (S181). If the acquired operation instruction belongs to a state change group (Y in S181), the parameter update unit 54 updates the driving parameters in accordance with the operation instruction (S182).

[0233] On the other hand, if the acquired operation instruction does not belong to the state change system (N in S181), the card determination unit 53 determines (S183) whether the acquired operation instruction indicates an instruction to stop the moving object 20. If the operation instruction indicates an instruction to stop the moving object 20 (Y in S183), the travel processing unit 55 ends the travel processing and stops the moving object 20 (S184).

[0234] On the other hand, if the action instruction does not indicate an instruction to stop the moving object 20 (N in S183), the card determination unit 53 determines that the acquired action instruction belongs to the action group (S185). If the action instruction does not belong to the action group (N in S185), the processing of Figures 38 to 40 ends. If the action instruction belongs to the action group (Y in S185), the card determination unit 53 determines whether the running process of the running processing unit 55 or the action process of the action processing unit 56 is currently being executed (S186). If the running process or action process is currently being executed (Y in S186), the running running process or action process is stopped (S187). If the running process or action process is not currently being executed (N in S186), the processing of S187 is skipped. Then, the action processing unit 56 starts action processing in response to the action instruction (S188). Examples of action processing will be described later.

[0235] In S176, if the instruction acquired by the card information acquisition unit 51 is not an operation instruction (N in S176), the card determination unit 53 determines whether the acquired instruction is an interrupt setting instruction (S191). If the acquired instruction is an interrupt setting instruction (Y in S191), the interrupt setting unit 57 controls the travel device so that the moving object 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 (S192). The next card 30 is placed by the user in a predetermined direction relative to the interrupt setting card (e.g., to the right of the card 30 in Figures 26 and 27). 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 object 20 turns in a predetermined direction and moves forward in that direction. By turning 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.

[0236] When the operation instruction is read, the interrupt setting unit 57 associates the operation instruction and angle with the interrupt execution condition corresponding to the interrupt setting instruction and stores them in the storage 22 (S193). The interrupt setting unit 57 also stops the motor 25 (S194), and the processing of Figures 38 to 40 ends.

[0237] If the acquired instruction is not an interrupt setting instruction (N in S191), the card determination unit 53 determines whether the acquired instruction is an execution instruction for a predetermined interrupt execution condition (S195). If the acquired instruction is an execution instruction (Y in S195), the interrupt control unit 58 acquires from the storage 22 the operation instruction and angle stored in association with the interrupt execution condition, and controls at least a part of the traveling device and the speaker 26 to execute an operation according to the operation instruction (S197).

[0238] The processing described so far 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 increases the degree of freedom in programming, and makes it possible to provide a more diverse and sophisticated programming experience by arranging the cards 30.

[0239] The driving process by the driving processing unit 55 is the same as that described in Fig. 11. The process shown in Fig. 11 is executed periodically except while the vehicle is stopped, an operation associated with action processing, an operation associated with an interrupt setting instruction, or an operation corresponding to an interrupt execution condition is being executed.

[0240] The action processing is the same as that explained with reference to FIG. 16, and therefore a detailed explanation will be omitted.

[0241] FIG. 41 is a flowchart showing an example of a process for operating the mobile object 20 in accordance with an interrupt execution condition.

[0242] First, the interrupt control unit 58 determines whether the acceleration sensor has detected an impact on the mobile object 20 (S401). Impact detection is one of multiple 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 impact detection (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.

[0243] If no impact is detected (N in S401), the interrupt control unit 58 determines whether the magnetic sensor has detected a magnetic field having a strength exceeding a threshold (S403). This detection of a magnetic field is one of a plurality 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 command (and angle) associated with the interrupt execution condition for the detection of the magnetic field (S404).

[0244] If no magnetism exceeding the threshold is detected (N in S403), the interrupt control unit 58 determines in S405 whether the interrupt execution condition for a 3-second interval is satisfied. In practice, the interrupt control unit 58 determines 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, when the mobile object 20 is placed on a desk. The execution time T3 is the time when this interrupt execution condition was satisfied the previous time. The interrupt control unit 58 may determine whether the interrupt execution condition for a 3-second interval is satisfied simply by determining whether the elapsed time from the start of the operation is divisible by 3 seconds. If 3 seconds have elapsed since the start of travel or the previous execution time T3 (Y in S405), the interrupt control unit 58 executes the operation according to the operation instruction (and angle) associated with the interrupt execution condition for a 3-second interval (S406).

[0245] If three seconds have not yet elapsed since the start of travel or the previous execution time T3 (N in S405), the interrupt control unit 58 determines in S407 whether the two-second interrupt execution condition is met. In practice, the interrupt control unit 58 determines whether two seconds have elapsed since the start of the operation or the previous execution time T2. The execution time T2 is the time at which this interrupt execution condition was met the previous time. The interrupt control unit 58 may determine whether the two-second interrupt execution condition is met simply by determining whether the elapsed time from the start of the operation is divisible by two seconds. If two seconds have elapsed since the start of travel 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 two-second interrupt execution condition (S408).

[0246] If two seconds have not yet elapsed since the start of travel or the previous execution time T2 (N in S407), the interrupt control unit 58 determines in S409 whether the interrupt execution condition at one-second intervals is satisfied. In practice, the interrupt control unit 58 determines whether one second has elapsed since the start of the operation or the previous execution time T1. The execution time T1 is the time at which this interrupt execution condition was satisfied last time. The interrupt control unit 58 may simply determine whether the time elapsed since the start of the operation is divisible by one second or not. If one second has elapsed since the start of travel 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).

[0247] The processing order of S401-S402, S403-S404, and S405-S410 may be different from that shown in FIG. 18 . However, it is desirable that the processing order from S405 to S410 be such that the execution priority is given to the longer time intervals. For example, if two seconds have passed since the start of an operation, not only the two-second interval but also the one-second interval interrupt execution conditions are met. 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. Furthermore, by combining operations at multiple time intervals, complex operations with least common multiple periods can be realized, enabling more diverse programming.

[0248] As can be seen from the above explanation, the moving object 20 can be operated not only according to instructions from the cards 30, but also according to interrupt execution conditions such as a specific card, a time interval, impact detection, or timing detection. Time intervals can be used to incorporate changes into the movement, and various other possibilities are possible, such as programming movements that respond to obstacles using impact detection or timing detection. This increases the degree of freedom in programming, making it possible to make the programming experience by arranging the cards 30 more diverse and sophisticated.

Claims

1. A toy system comprising: a plurality of action instruction cards, each of which is printed with an encoded image indicating one of a plurality of action instructions and which are each placed anywhere by a user; and a moving body, said moving body comprising: a driving means for enabling the moving body to move; a reading means for reading the image when said moving body moves over any of said plurality of action instruction cards; and an action control means for controlling said moving body in accordance with the action instructions indicated by the read image, wherein, if the encoded image is not read, said action control means controls said moving means to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read as said moving body moves over a new action instruction card among said plurality of action instruction cards, and, if the new encoded image is read, controls said moving means in accordance with the new action instructions indicated by the new image.

2. A toy system as described in claim 1, wherein the plurality of operation instructions are classified into a plurality of groups, and the operation control means updates the setting of the group to which the operation instruction indicated by the read image belongs, to information indicated by that operation instruction.

3. A toy system as described in claim 1 or 2, wherein the plurality of operation instructions include a steering instruction for continuously changing the direction of travel to the right or left, and the operation control means controls the traveling means to continuously change the direction of travel of the moving object to the right or left after an image indicating the steering instruction is read.

4. A toy system as described in claim 1 or 2, wherein the plurality of operation instructions include a speed at which the moving body runs, and the operation control means controls the running means so that the moving body runs in accordance with the speed after an image indicating the speed is read.

5. A toy system as described in claim 1 or 2, wherein the plurality of operation instructions include a braking instruction for continuously reducing the speed of the moving object, and the operation control means continuously reduces the speed of the moving object after an image indicating the braking instruction is read.

6. A toy system as described in claim 2, wherein the operation control means controls the traveling means based on the information set for each of the plurality of groups in response to an operation instruction indicated by a previously read image.

7. A toy system as described in claim 1, wherein the plurality of operation instructions include a direction of travel, and when the operation control means reads an image indicating the direction of travel, the operation control means controls the traveling means so that the moving body turns toward the direction of travel and continues the operation before the turn.

8. A mobile body comprising: a driving means for enabling travel; a reading means for reading an encoded image indicating one of a plurality of action instruction cards printed thereon and placed at any location by a user when the mobile body travels over one of a plurality of action instruction cards; and an action control means for controlling the travel means in accordance with the action instructions indicated by the read image, wherein if the encoded image is not read, the action control means controls the travel means to continue operation in accordance with the action instructions indicated by the previously read image until a new encoded image is read by traveling over a new action instruction card among the plurality of action instruction cards, and if the new encoded image is read, controls the travel means in accordance with the new action instructions indicated by the new image.

9. A control method for controlling the travel of a mobile body having a reading means and a traveling means, comprising: a step of, when the mobile body travels over one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed on it and which are placed in a location of your choice by a user, reading the image by the reading means; and a step of controlling the traveling means in accordance with the action instructions indicated by the read image, wherein in the step of controlling the traveling means, if the encoded image is not read, the traveling means is controlled to continue operation in accordance with the action instructions indicated by the previously read image until a new encoded image is read as the mobile body travels over a new action instruction card among the plurality of action instruction cards, and when the new encoded image is read, the traveling means is controlled in accordance with the new action instructions indicated by the new image.

10. A program for operating a computer including a traveling means as: a reading means for reading an image when the traveling means runs over one of a plurality of action instruction cards, each of which has an encoded image indicating one of a plurality of action instructions printed thereon and which are placed in a location of your choice by a user; and an action control means for controlling the traveling means in accordance with the action instructions indicated by the read image, wherein, if the encoded image is not read, the action control means controls the traveling means to continue operating in accordance with the action instructions indicated by the previously read image until a new encoded image is read by running over a new action instruction card among the plurality of action instruction cards, and, if the new encoded image is read, controls the traveling means in accordance with the new action instructions indicated by the new image.

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