This application claims priority from Japanese Patent Application No. 2013-137508 filed Jun. 28, 2013. The entire content of this priority application is incorporated herein by reference.
The present invention relates to a music box, and particularly to a music box that reduces imprecision in the meshingly engagement between wheels.
Music boxes for playing music are well known in the art. One such music box includes a plurality of vibration valves, star wheels provided with claws for plucking each of the vibration valves, and stoppers corresponding to the star wheels. The vibration valves correspond to different pitches and, when plucked by a claw on a star wheel, produce sound at the corresponding pitch. By providing this music box with a mechanism capable of selectively plucking the vibration valves, the music box can play any music. According to the technology of this music box, the star wheel rotates upon the disengagement of the corresponding stopper therefrom and is brought into engagement with a sun wheel. In this condition, the claws on the star wheels can be made to pluck desired vibration valves to produce arbitrary sounds. The rotational speed of the motor is changed based on the tempo of the music.
However, in the conventional technology described above, a certain delay occurs after the stopper is brought into disengagement from the star wheel until the star wheel is actually disengaged and begins to rotate. The rotational amount of the sun wheel during the certain delay varies according to the tempo of the music. Thus, depending on the tempo of the music, the teeth on the sun wheel and the star wheel may become out of alignment, generating impact noise therebetween upon the engagement of the teeth on the respective wheels.
In view of the foregoing, it is an object of the present disclosure to provide a music box that suppresses imprecision in the meshingly engagement between wheels.
In order to attain the above and other objects, the present disclosure provides a music box. The music box may include a star wheel, a stopper, a sun wheel, a motor, a sensor, and a controller. The star wheel may be configured to rotate about a first shaft. The star wheel may include a claw. The stopper may be configured to halt a rotation state of the star wheel. The sun wheel may be fixed on a second shaft extending along the first shaft. The sun wheel may be configured to engage the star wheel which has been released from a halt by the stopper. The motor may be configured to rotate the first shaft and the second shaft. The sensor may be configured to detect a rotation state of the sun wheel. The controller may be configured to: read a music data specifying a sound output timing and a tempo from a storage unit; control the motor to rotate at a rotational speed based on the tempo of the music data; determine a start timing at which the stopper starts to release a halt of the rotation of the star wheel based on the sound output timing and the rotation state of the sun wheel detected by the sensor; calibrate the start timing to a calibrated start timing based on a value related to the rotational speed of the motor; and control the stopper to release the halt of the rotation of the star wheel at the calibrated start timing.
According to another aspect, the present disclosure provides a music box. The music box may include a star wheel, a stopper, an electromagnet, a sun wheel, a motor, a sensor, and a control unit. The star wheel is configured to rotate about a first shaft. The star wheel may include a claw. The stopper may be configured to halt a rotation of the star wheel. The electromagnet may be configured to attract the stopper to distance the claw away from the star wheel. The sun wheel may be fixed on a second shaft extending along the first shaft. The sun wheel may be configured to engage the star wheel which has been released from a halt by the stopper. The motor may be configured to rotate the first shaft and the second shaft. The sensor may be configured to detect a rotation state of the sun wheel. The control unit may be configured to: read a music data specifying a sound output timing and a tempo from a storage unit; control the motor to rotate at a rotational speed based on the tempo of the music data; determine a start timing at which the stopper starts to release a halt of the rotation of the star wheel based on the sound output timing and the rotation state of the sun wheel detected by the sensor; calibrate the start timing to a calibrated start timing based on a value related to the rotational speed of the motor; and energize the electromagnet at the calibrated start timing.
According to still another aspect, the present disclosure provides a music box. The music box may include a star wheel, a stopper, a sun wheel, a motor, a sensor, and a control unit. The star wheel may be configured to rotate about a first shaft. The star wheel may include a claw. The stopper may be configured to halt a rotation of the star wheel. The sun wheel may be fixed on a second shaft extending along the first shaft. The sun wheel may be configured to engage the star wheel which has been released from a halt by the stopper. The motor may be configured to rotate the first shaft and the second shaft. The sensor may be configured to detect a rotational amount of the sun wheel. The control unit may be configured to: read a music data specifying a sound output timing and a tempo from a storage unit; control the motor to rotate at a rotational speed based on the tempo of the music data; determine a start timing at which the stopper starts to release a halt of the rotation of the star wheel based on the sound output timing and the rotational amount of the sun wheel detected by the sensor; calibrate the start timing to a calibrated start timing based on a value related to the rotational speed of the motor; and control the stopper to release the halt of the rotation of the star wheel at the calibrated start timing.
For a more complete understanding of the present disclosure, and the objects, features, and advantages thereof, reference now is made to the following descriptions taken in connection with the accompanying drawings.
Next, a music box 10 according to a preferred embodiment of the present disclosure will be described while referring to the accompanying drawings.
As shown in
The torque from the output shaft of the motor 32 is preferably transferred to the first shaft 12 and the second shaft 26 through a well-known gear mechanism or the like. The first shaft 12 and the second shaft 26 should be driven to rotate at the same rotational speed (angular velocity). Specifically, the corresponding star wheel 14 and the sun wheel 28 are coupled through drive gears provided on their respective axial ends, with a suitable reduction ratio being employed so that the star wheel 14 and the sun wheel 28 rotate at the same speed when driven by output from the motor 32. Alternatively, individual motors may be provided for the first shaft 12 and the second shaft 26 and may be configured to drive the shafts to rotate at the same rotational speed.
The music box 10 is provided with a sensor for detecting the amount of displacement in the sun wheel 28, i.e., the amount of rotation of the sun wheel 28. The sensor should be provided adjacent to the sun wheel 28 and is configured of an encoder 80 for detecting the rotation state of the second shaft 26. The encoder 80 may detect an amount of displacement of the motor 32, i.e., the rotational amount of the output shaft thereof. The encoder 80 is preferably a rotary encoder that detects rotation in prescribed angles corresponding to the spacing of gear teeth 40 on the sun wheel 28. In other word, the encoder 80 is adapted to detect the rotational position of the sun wheel 28. The encoder 80 includes a rotating disk 82, and a timing sensor 86.
The rotating disk 82 is fixed to the second shaft 26 so as to rotate in association with the same. A plurality of slits 84 are formed in the rotating disk 82 at prescribed angular intervals in a circumferential direction thereof so as to penetrate the same in the axial direction of the second shaft 26, i.e., in a direction in which the plurality of sun wheels 28 is arranged. Each of the plurality of slits 84 corresponds to the arrangement of the gear teeth 40 on the sun wheels 28.
The timing sensor 86 detects the passing of the slits 84 in the rotating disk 82. The timing sensor 86 should be provided at a prescribed position relative to the rotating disk 82 and is preferably configured of an optical sensor, e.g. photosensor, detects slits by receiving light emitted from an LED or the like provided on the opposite side of the rotating disk 82. Alternatively, the timing sensor 86 may be a magnetic sensor that detects changes in magnetic flux at prescribed angular intervals around the rotating disk 82.
The sun wheel 28 has twenty gear teeth 40 arranged around its periphery such that the angle between neighboring teeth is 18 degrees. Ten of the slits 84 are formed in the rotating disk 82 such that an angle ∠1 between neighboring slits 84 (an angle centered on the axial center C3 of the second shaft 26) is 36 degrees. The gear teeth 40 on the sun wheel 28 have a prescribed positional relationship with the slits 84 on the rotating disk 82. Specifically, the single slit 84 is formed to correspond to the two gear teeth 40 formed on the sun wheel 28. In the example of
As shown in
As shown in
As indicated by a chain line in
The viewing window 34b is provided in the flat upper wall constituting the enclosure 34 to reveal the components inside the enclosure 34. The viewing window 34b is provided with a cover part (not shown) formed of glass or another transparent material. As shown in
As shown in
The gear teeth 38 are arranged between the star wheel 14 and the adjacent star wheel 14 in the first shaft 12 and, hence, are disposed at different positions from the claws 36 with respect to the axial direction of the first shaft 12. In other words, the gear teeth 38 are positioned between pairs of neighboring claws 36 with respect to the axial direction of the first shaft 12.
Each sun wheel 28 is provided with a plurality of gear teeth 40 around its peripheral edge. That is, the sun wheel 28 is a gear having a plurality of teeth on outer circumferential surface thereof. When the star wheel 14 is assembled on the first shaft 12 as shown in
As illustrated in the enlarged view of
The star wheel 14 is configured so that when assembled on the first shaft 12, a prescribed frictional force is exerted between the inner peripheral surface of the assembly hole 46 and the outer peripheral surface of the first shaft 12. Specifically, the star wheel 14 is preferably provided with a friction spring for producing a frictional force between the inner peripheral surface of the assembly hole and the outer peripheral surface of the first shaft 12. The frictional force between the star wheel 14 and the first shaft 12 is stronger than the force acting to rotate the star wheel 14 and weaker than the force for disengaging the star wheel 14 from the stopper 22. With this configuration, the star wheel 14 is mounted on the first shaft 12 and can rotate about the same.
When the stopper 22 is in a non-anchoring state described later, the frictional force generated at the area of contact between the star wheel 14 and the first shaft 12 causes the star wheel 14 to rotate along with the first shaft 12. If the frictional force between the star wheel 14 and the first shaft 12 is weaker than the force for rotating the star wheel 14, there is a danger that the star wheel 14 will spin out (i.e., slide over rather than rotate together with the first shaft 12) while the star wheel 14 is disengaged from the stopper 22. Conversely, if the frictional force is stronger than the force required to extract the star wheel 14 from the stopper 22 while the stopper 22 is in the anchored state, there is a danger that the star wheel 14 will force a plate member 50 (described later) of the stopper 22 to move leftward in
As shown in
The electromagnet 24 is preferably configured of a cylindrical coil disposed around an iron core or other magnetic material. When electricity is supplied to the coil, the electromagnet 24 enters an excitation state in which a magnetic force (magnetic field) is produced. When electricity is not flowing through the coil, the electromagnet 24 remains in a non-excitation state. In other words, the electromagnet 24 is a common electromagnet known in the art.
As shown in
The torsion coil spring 56 preferably urges the stopper 22 and the plate member 50 toward the star wheel 14 when the electromagnet 24 is in the non-excitation state. Then, the plate member 50 is an anchoring state (see
As illustrated in
As described above, the star wheel 14 is configured to follow the rotation of the first shaft 12 through the frictional force generated at the point of contact with the first shaft 12. In the state shown in
When the stopper 22 is in the non-anchoring state shown in
In this operation, the stopper 22 is set to the non-anchoring state, causing the plate member 50 to disengage from the claw 36. Subsequently, the star wheel 14 begins to follow the rotation of the first shaft 12 due to the frictional force generated at the area of contact between the first shaft 12 and the star wheel 14. When the star wheel 14 is near a phase in which one of the claws 36 contacts the corresponding vibration valve 18 on the vibration plate 16, the corresponding gear teeth 38 adjacent to the claw 36 in the rotating direction (at a phase difference of 90 degrees in the rotating direction) are engaged with the gear teeth 40 on the sun wheel 28. In this state, the rotation of the sun wheel 28 drives the star wheel 14 in the direction of the arrow indicated in
After the vibration valve 18 is plucked in this way, the star wheel 14 continues following the rotation of the first shaft 12 and the sun wheel 28 follows the rotation of the second shaft 26 until the gear teeth 38 are again no longer engaged with the gear teeth 40 on the sun wheel 28. During the process of transitioning from the state shown in
As shown in
The controller 60 is electrically connected to a music database 96, the encoder 80, and the motor 32. The music database 96 holds music data (musical score data) for a plurality of music that the music box 10 can play. The music database 96 is stored on a storage medium, such as an SD card (Secure Digital card) detachable from the music box 10, and the controller 60 is capable of reading the music data stored on the storage medium. Music data may be stored in a data format such as MIDI and may include a plurality of tracks (channels) for a predetermined plurality of instrument types, wherein the sound output timing, tone, and the like for sounds is specified for each instrument. In the following description, MIDI data is used as an example of the music data.
The music data stored in the music database 96 includes the tempo (playback tempo) of the corresponding music in the music data. The playback tempo is a value specified in the conductor track found in the header (header chunk) of the MIDI data and is within 40-120 bpm (bit per minute), for example. The music data stored in the music database 96 also includes timing data specifying the note-playing timing at which prescribed notes are played. The note-playing timing is specified by Note On events in the MIDI data, for example. The sound length between a Note On event for a prescribed sound specified in the music data and a Note On event for the next sound is represented in units of time called “ticks,” for example. Ticks are determined based on the tempo and time base (resolution) of the music data. The length of one tick (in seconds) is equal to 60/(tempo×time base), for example. If a reference time base corresponding to a quarter note in length is set to 480 ticks in the score specified by the music data, the length of the sixteenth note should correspond to 120 ticks.
The shortest length of a sound in the music data is set to a length equivalent to one-third the length of a sixteenth note in the preferred embodiment. In other words, the time elapsed after the encoder 80 detects the passage of one slit 84 and until the encoder 80 detects the passage of the next slit 84 is 40 ticks. Thus, the shortest sound length in the musical score defined in the music data preferably corresponds to 40 ticks. When the time base is set to a prescribed value, the time elapsed between playing a prescribed note and the next note is determined based on the playback tempo and the sound length between Note On events for two notes. Hence, it is possible to find the time interval between the moment a vibration valve 18 on the vibration plate 16 is plucked and the moment the next vibration valve 18 (the same or a different vibration valve 18) is plucked. The time between the playing of one note and the next note as specified in the music data differs according to the playback tempo. Thus, the time between notes corresponding to a prescribed sound length becomes shorter as the tempo becomes faster and longer as the tempo becomes shorter. In other words, the length of time for tick is determined from the time base and the tempo stored in the music data. The sun wheels 28 are driven to rotate based on this determined length of time so that the time elapsed after the encoder 80 detects the passage of one slit 84 until the encoder 80 detects the passage of the next slit 84 corresponds to the target tempo. Further, a modified tempo for changing the playback tempo of music data while the music is playing may be specified in the music data as a Tempo Change event.
When the music box 10 plays music, the data-reading unit 101 reads music data corresponding to the desired music to be played from the music database 96. For example, the data-reading unit 101 reads MIDI data corresponding to music data for the desired music from the music database 96 and develops this data in the RAM 63 of the controller 60, for example. The data-reading unit 101 may also be configured to read sequential portions of MIDI data to be played corresponding to the desired music from the music database 96 as needed while the music box 10 is playing the music.
The motor controller 102 controls the rotational speed of the motor 32 and, hence, the speed at which the first shaft 12 and the second shaft 26 are driven to rotate by the motor 32. Thus, when the music box 10 plays music corresponding to prescribed music data stored in the music database 96, the motor controller 102 controls the rotational speed of the motor 32 so that the first shaft 12 and the second shaft 26 are rotated at a speed based on the tempo set in the music data. The motor controller 102 controls the motor 32 to rotate at a faster rotational speed as the tempo in the music data becomes faster. In other words, the first shaft 12 and the second shaft 26 are driven to rotate at a speed based on the tempo at which the music data is to be played. The music box 10 is preferably provided with a speed control table (not shown) that stores the rotational speed of the motor 32 corresponding to each tempo. The motor controller 102 determines the rotational speed of the motor 32 by referencing the speed control table based on the tempo specified in the MIDI data read by the data-reading unit 101 and drives the motor 32 so that the motor 32 rotates at this speed. Alternatively, the motor controller 102 may calculate the rotational speed of the motor 32 based on the tempo set in the MIDI data using a preset equation or the like.
The motor controller 102 uses feedback control to control the rotational speed of the motor 32. Preferably, the motor controller 102 detects the rotational speed of the drive shaft in the motor 32 at short intervals (every complete rotation, for example) and controls the rotation of the motor 32 so that the speed of the drive shaft matches the target rotational speed corresponding to the playback tempo. Particularly, when the motor 32 rotates a plurality of times to rotate the sun wheel 28 one time owing to the reduction ratio, controlling the rotational speed of the motor 32 through feedback on the rotational speed of the drive shaft enables the motor controller 102 to control the rotation of the sun wheel 28 more accurately. Preferably, the reduction ratio is determined such that the motor 32 is rotated a plurality of times while the sun wheel 28 rotates from the point that the encoder 80 detects one slit 84 to the point that the encoder 80 detects the next slit 84. In this case, feedback on the rotation of the motor 32 can be received a plurality of times in the interval between detected slits 84 to achieve more accurate control of the rotational speed. Thus, in the interval between the moment that the encoder 80 detects one slit 84 and the moment the encoder 80 detects the next slit 84, the motor controller 102 can drive the sun wheel 28 to rotate at an accurate speed.
Another encoder or resolver separate from the encoder 80 that has a high resolution of slits provided at equal intervals around its circumference may also be used to detect the rotational speed of the drive shaft in the motor 32. Further, if the motor 32 is rotated based on a prescribed drive pulse (output pulse from an encoder or the like), the motor controller 102 may calculate the rotational speed of the drive shaft in the motor 32 based on the actual drive pulse. With this configuration, the motor controller 102 can drive the sun wheel 28 to rotate accurately at a speed by which the interval between slits 84 detected by the encoder 80 is one-third the sound length of a sixteenth note in the music data. The motor controller 102 preferably drives the sun wheel 28 to rotate accurately at a speed by which the interval between slits 84 detected by the encoder 80 is equivalent to the shortest sound length (40 ticks in this example).
When the tempo specified in the music data is modified, the motor controller 102 changes the rotational speed of the motor 32 according to the change in tempo. For example, when the tempo change event is read by the data reading unit 101 during a performance based on MIDI data, the motor controller 102 modifies the rotational speed of the motor 32 based on the tempo change in the tempo change event when the timing for executing the tempo change event has arrived and, hence, modifies the rotational speeds of the first shaft 12 and the second shaft 26 driven by the motor 32 based on the changed tempo.
The music box 10 is preferably provided with an input operation unit (not shown) through which a user can input a command to change the playback tempo of the mechanical performance unit 100. By performing an input operation on this input operation unit, the user can modify the tempo played by the mechanical performance unit 100 to a slower or faster tempo than the playback tempo set in the MIDI data in a plurality (seven, for example) of steps at prescribed intervals. Alternatively, the input operation unit may be configured to accept input of a numeral corresponding to the tempo (bit per minute), such as 40 or 120, enabling the user to modify the tempo freely rather than by steps. By performing an input operation on the input operation unit to modify the playback tempo, the user can change the tempo played by the mechanical performance unit 100 even though the tempo is fixed in the music data. Specifically, when the user inputs a command on the input operation unit to modify the playback tempo, the motor controller 102 changes the rotational speed of the motor 32 based on this change in tempo.
The timing determination unit 104 determines a start timing (timing for starting an operation) for each of the stoppers 22. At this timing, the stopper 22 releases the claw 36 on the corresponding star wheel 14. More specifically, the timing determination unit 104 determines the start timing for an operation to switch the state of the electromagnet 24 corresponding to one of the stoppers 22 to the excitation state or the non-excitation state (the timing to start or halt the supply of electricity to the electromagnet 24). For example, as the music box 10 is playing music corresponding to prescribed music data stored in the music database 96, the timing determination unit 104 performs the above determinations based on the note-playing timing (sound output timing, Note ON event) and tone specified in the music data. More specifically, the timing determination unit 104 determines the timings at which the stoppers 22 release corresponding claws 36 on star wheels 14 in order that the star wheels 14 can pluck vibration valves 18 corresponding to the musical tones at sound output timings specified in the music data.
The timing determination unit 104 controls the start timing of each stopper 22 for releasing the corresponding star wheel 14, allowing the star wheel 14 to rotate, based on the passage of the slit 84 detected by the encoder 80. Specifically, the timing determination unit 104 determines the rotational amount of the sun wheels 28 based on the passage of the slit 84 detected by the encoder 80 and determines the start timing of each stopper 22. Since the encoder 80 is provided on the second shaft 26, which is the rotational shaft of the sun wheels 28, the slit positions in the encoder 80 are relative to the positions of the tips of the gear teeth 40 provided on the sun wheels 28. The timing determination unit 104 sets the timing at which each star wheel 14 is to begin rotating by identifying the tip positions of gear teeth 40 on the sun wheels 28 based on the passage of the slit 84 detected by the encoder 80. In other words, the timing determination unit 104 controls the start timing of each stopper 22 for releasing the corresponding star wheel 14 based on the tempo specified in the music data (i.e., the rotational speed of the second shaft 26), and the rotational amount of the sun wheels 28. Alternatively, the encoder 80 may detect the rotational amount of the sun wheel 28 and the timing determination unit 104 may determines the start timing of each stopper 22 based on the rotational amount detected by the encoder 80.
The timing determination unit 104 sets the start timing for the stopper 22 to release the corresponding star wheel 14 based on the timing at which the encoder 80 detects the passing of slits 84 such that the gear teeth 38 of the star wheel 14 engage precisely with the gear teeth 40 on the sun wheel 28. For example, the timing determination unit 104 sets the start timing at which the stopper 22 releases the halt of the rotation of the star wheel 14 when the encoder 80 detects the passing of at least one slit 84 after the sound output timing of a prescribed note in the music data has passed. In the preferred embodiment, the timing determination unit 104 preferably sets the timing at which the stopper 22 releases the halt of the rotation of the star wheel 14 to the timing at which the timing determination unit 104 determines a rotational amount corresponding to the shortest sound length in the music data based on the passage of the slit 84 detected by the encoder 80, i.e., a rotational amount equivalent to one-third the sound length of a sixteenth note in the music data. For example, the timing determination unit 104 determines the timing at which each stopper 22 is to release the halt of the rotation of the star wheel 14 based on a rotational amount that is equivalent to 40 ticks (approximately 40 ms for a playback tempo of 120) specified in the music data. When the mechanical performance unit 100 is playing a sound whose sound length is specified as 40 ticks in the music data, as illustrated in the example of
The timing determination unit 104 preferably determines the start timing at which the stopper 22 releases the halt of the rotation of the star wheel 14 when the encoder 80 has detected a passage of the slits 84 corresponding to the sound length of a note in the music data to be played based on the tempo at which the music data is to be played, the length of the note specified in the music data, and the rotational amount of the sun wheel 28. For example, the timing determination unit 104 determines the start timing at which the stopper 22 releases the halt of the rotation of the corresponding star wheel 14 based on the rotational amount of the sun wheel 28 that is equivalent to 120 ticks specified in the music data (approximately 120 ms at a playback tempo of 120). In the example illustrated in
In the mechanical performance unit 100 described above, a prescribed time (dead time) passes after the operation of the stopper 22 is initiated to release the halt of the star wheel 14 until the stopper 22 is actually disengaged from the corresponding star wheel 14 and the star wheel 14 actually begins to rotate. That is, the prescribed time is required after the electromagnet 24 is placed in the excitation state (turned on) in order to release the anchoring state of the stopper 22 (switch the stopper 22 to the non-anchoring state) until the magnetic force produced by the electromagnet 24 attracts the synthetic resin member 54 such that the stopper 22 is rotated in the direction away from the star wheel 14 and disengaged therefrom, allowing the star wheel 14 to begin to follow the rotation of the first shaft 12. This prescribed time is determined according to the specifications of the electromagnet 24, the stopper 22, the star wheel 14, and the like, but does not vary significantly as a result of the rotational speed of the motor 32 or the like.
On the other hand, the rotational speed of the sun wheel 28 varies according to the playback tempo. Consequently, the amount that the sun wheel 28 rotates during this prescribed time differs according to the rotational speed of the motor 32 determined by the playback tempo. Hence, when the timing determination unit 104 always sets the start timing (time delay) for an operation to release the stopper 22 from the anchoring state according to this prescribed timing without regard for the playback tempo, the teeth of the star wheel 14 and the sun wheel 28 may become out of alignment because the rotational amount of the sun wheel 28 differs according to the rotational speed thereof.
In the example shown in
The timing calibration unit 106 calibrates the start timing set by the timing determination unit 104 based on a value related to the rotational speed of the motor 32. The rotational speed of the motor 32 is the speed at the point that the encoder 80 detects the passing of the slit 84, for example. The timing calibration unit 106 preferably calculates the difference (time delay) between the start timing set by the timing determination unit 104 and the timing at which the release controller 108 described later actually begins the operation to release the stopper 22 from the anchoring state.
As shown in
Next, the operations of the mechanical performance unit 100 that correspond to the timing chart in
As shown in
The timing calibration unit 106 acquires the calibration amount from the correlations set in the calibration table 98 based on the playback tempo for the song currently played by the music box 10 and calibrates the start timing based on this calibration amount. While the music box 10 is in a constant-speed state during which the playback tempo does not change (a state of uniform tempo), the timing calibration unit 106 acquires the calibration amount from the correlations set in the calibration table 98 (constant rate calibration table) based on the playback tempo at the current time and calibrates the start timing based on the acquired calibration amount.
During a transitional phase in which the playback tempo of the music box 10 is changed, the timing calibration unit 106 acquires the calibration amount from correlations set in the calibration table 98 based on the playback tempo prior to this change (current speed) and the playback tempo after the change (target speed), and calibrates the start timing based on the acquired calibration amount. The calibration values set in the calibration table 98 are designed to delay the start timing from that used at the pre-change playback tempo when the tempo is being changed to a slower tempo, and to advance the start timing from that used at the pre-change playback tempo when the tempo is being changed to a faster tempo.
As shown in
When the playback tempo of the music box 10 is changed, the rotational speed of the motor 32 changes in response to this change in tempo. While the encoder 80 is detecting the passing of slits 84 during this transitional phase, a suitable time delay will vary depending on the direction and range of the change in the rotational speed of the motor 32. A line 20a shown in
As shown in
Since the rotational speed of the motor 32 rises abruptly in response to a speed change command when the playback tempo of the music box 10 is changed in the accelerating direction, as described above, suitable time delays for the start timing of the stopper 22 in response to this increased speed are found through experimentation considering such abrupt rises and recorded in the calibration table 98. Thus, the timing calibration unit 106 determines the actual start timing of the release controller 108 by applying a time delay acquired as described above to the start timing set by the timing determination unit 104.
As shown in
Thus, when changing the playback tempo of the music box 10 in the decelerating direction as described above, the playback tempo may not reach the target speed by the time the claw 36 plucks the corresponding vibration valve 18 due to the gradually reduction of the playback tempo. Accordingly, suitable time delays for the start timing of the stopper 22 are found through experimentation based on the above correlations and recorded in the calibration table 98. The timing calibration unit 106 determines the actual start timing for the release controller 108 by applying a time delay acquired as described above to the start timing set by the timing determination unit 104. Hence, while wheels are particularly susceptible to becoming out of alignment during transitional phase in which the playback tempo is changed, the above control process can suitably suppress such misalignment.
The release controller 108 initiates the operation to release the stopper 22 from the anchoring state at the start timing calibrated by the timing calibration unit 106. Specifically, the timing determination unit 104 determines the start timing at which the stopper 22 releases the claw 36 of the star wheel 14, the timing calibration unit 106 calibrates this start timing, and then the release controller 108 begins conducting electricity to the corresponding electromagnet 24 at the calibrated start timing for switching the electromagnet 24 from the non-excitation state to the excitation state.
For example, after the timing determination unit 104 determines the start timing at which the stopper 22 is to release the claw 36 of the star wheel 14 and the timing calibration unit 106 calculates a calibration amount (time delay) for calibrating the start timing, the release controller 108 starts conducting electricity to the corresponding electromagnet 24 for switching the electromagnet 24 to the excitation state when the time delay has elapsed. After the release controller 108 switches the electromagnet 24 from the non-excitation state to the excitation state, the release controller 108 preferably switches the electromagnet 24 back to the non-excitation state after a predetermined time has elapsed. Hence, electricity supplied to the electromagnet 24 is halted at this time.
The flowchart in
In step S1 (hereinafter “step” will be omitted) of the control process, the CPU 61 reads MIDI data (music data) for the music to be played from the music database 96. In S2 the CPU 61 accelerates the motor 32 to a target speed (playback starting speed) corresponding to the playback tempo set in the MIDI data read in S1. In S3 the CPU 61 determines whether the rotational speed of the motor 32 has reached the target speed. The CPU 61 repeatedly performs the determination of S3 while waiting for the rotational speed of the motor 32 to reach the target speed. Once the motor 32 has reached the target speed, in S4 the CPU 61 determines whether the encoder 80 (timing sensor 86) has detected the passage of the slit 84. The CPU 61 repeatedly executes the determination in S4 while waiting until the encoder 80 detects the slit 84. When the encoder 80 detects the passing of a slit 84 in S4, the CPU 61 executes the remaining process beginning from S5.
In S5 the CPU 61 determines whether there is a note in the MIDI data to be played. For example, the CPU 61 determines whether a Note On event has been detected. The CPU 61 skips to S10 when the determination in S5 is negative. However, if the CPU 61 determines in S5 that there is a note to be played, in S6 the CPU 61 determines whether a speed change has been made when the encoder 80 detected passing of the slit 84 (the positive determination in S4), e.g., whether a Tempo Change event to change the playback tempo has been detected. Alternatively, the CPU 61 may determine whether an input operation for changing the tempo has been performed on the input operation unit. If the negative determination has been made in S6, in S7 the CPU 61 calculates a calibration value (delay value) from the constant rate calibration table in the calibration table 98 based on the playback tempo at the current time, and subsequently executes the process beginning from S9. However, if a positive determination has been made in S6, in S8 the CPU 61 calculates a calibration value from the calibration table 98 based on the pre-change playback tempo and post-change playback tempo, and subsequently executes the process beginning from S9. The CPU 61 temporarily stores the calibration value (delay value) calculated in S7 or S8 in a prescribed memory of the controller 60.
After the delay value calculated in S7 or S8 has elapsed, in S9 the CPU 61 executes an operation to release the corresponding stopper 22 from the anchoring state, where the corresponding stopper 22 is the stopper 22 corresponding to the vibration valve 18 that is to produce the tone of the note determined in S5. In other words, the CPU 61 begins supplying the electricity to the electromagnet 24 corresponding to the stopper 22.
In S10 the CPU 61 determines whether a speed change has been made by detecting whether a Tempo Change event has occurred, for example. Alternatively, the CPU 61 may determine whether an input operation for changing the tempo was inputted through the input operation unit. If a negative determination has been made in S10, the CPU 61 returns the process to S4 described above. However, if a positive determination has been made in S10, in S11 the CPU 61 changes the playback tempo based on the Tempo Change event detected in S10 or a tempo change command inputted in S10, and changes the rotational speed of the motor 32 corresponding to this change.
In S12 the CPU 61 determines whether the music being played has ended. If a negative determination has been made in S12, the CPU 61 returns the process to S4. However, if a positive determination has been made in S12, in S13 the CPU 61 stops driving the motor 32, ending the current routine.
In the control process described above, S1 is an example of the operation of the data-reading unit 101; S2, S11, and S13 is an example of the operation of the motor controller 102 (tempo modification control unit); S4 and S5 is an example of the operation of the timing determination unit 104; S7 and S8 is an example of the operation of the timing calibration unit 106; and S9 corresponds to the operation of the release controller 108.
While the disclosure has been described in detail with reference to specific embodiments thereof, it would be apparent to those skilled in the art that many modifications and variations may be made therein without departing from the spirit of the disclosure, the scope of which is defined by the attached claims.
For example, the timing calibration unit 106 in the preferred embodiment described above applies a calibration value (delay value) corresponding to a value related to the rotational speed of the motor 32 to the start timing set by the timing determination unit 104, the calibration value being a value greater than zero in the example of
In S6 of the flowchart shown in
The playback tempo read by the CPU 61 in S1 may be a tempo specified (inputted) by the user rather than the tempo specified in the music data (MIDI data). In the embodiment described above, the calibration value (time delay) is acquired based on the playback tempo and the like using predetermined correlations recorded in the calibration table 98, but the CPU 61 may acquire the calibration value based on the playback tempo and the like using a predetermined equation rather than a table.
The present disclosure is not limited to the structure described above with reference to
Further, the electromagnets 24 and the stoppers 22 belonging to the first group and the electromagnets 24 and the stoppers 22 belonging to the second group need not be disposed at 90-degree intervals in a circumferential direction around the axial center of the first shaft 12. For example, all electromagnets 24 may be juxtaposed along the same plane. Conversely, if five or more of the claws 36 were provided around the periphery of the star wheel 14, for example, pluralities of the electromagnets 24 and stoppers 22 could be arranged at positions corresponding to three or more phases spaced at prescribed phase differences in a circumferential direction around the axial center of the first shaft 12, depending on the number of claws 36 provided. Further, two or more of the stoppers 22 may be provided for each star wheel 14 as the mechanism for anchoring the star wheel 14.
The ECU 60 may also be connected to the Internet or another communication link and may be configured to download musical score data via the communication link and store this data in the musical score database 62.
In addition, the shape of the star wheel 14, structure of the stopper 22 (shape of the plate member 50), phase positions of the various components, and the like may be modified as needed to suit the design of the music box. For example, the gear teeth 38 need not be provided in pairs, but may be provided in groups of one or three or more, provided that the sun wheel 28 can drive the star wheel 14 a sufficient distance and time interval for allowing the claw 36 to pluck the corresponding vibration valve 18 of the vibration plate 16.
The stopper 22 may also be provided with a permanent magnet as the magnetic member. The permanent magnet reacts to the magnetic force of the electromagnet 24 when the electromagnet 24 is in an excitation state, and produces a force for rotating the stopper 22 in the direction away from the star wheel 14. The permanent magnet is preferably formed in the synthetic resin member 54, which is integrally provided with the plate member 50, through insert molding, and is preferably positioned to produce a repelling force (force of repulsion between like magnetic poles) with the electromagnet 24 when the electromagnet 24 is excited. The magnetic force of the electromagnet 24, i.e., the force of repulsion produced between the electromagnet 24 and the permanent magnet, moves the plate member 50 of the stopper 22 against the urging force of the torsion coil spring 56. Accordingly, the stopper 22 rotates about the third shaft 20 in a direction away from the star wheel 14 (the first rotating direction), thereby disengaging the plate member 50 from the claw 36 and placing the stopper 22 in the non-anchoring state.
Further, the motor controller 102 may control the rotational speed of the motor 32 through feedback control by detecting the rotational speed of the second shaft 26 supporting the sun wheels 28. Preferably a high-resolution encoder is provided on the second shaft 26 for detecting the rotations of the second shaft 26 or the sun wheels 28 at intervals finer than the slits 84 formed in the rotating disc 82. By detecting the rotation of the high-resolution encoder on the second shaft 26 using an optical sensor, such as the timing sensor 86, the motor controller 102 can control the rotational speed of the motor 32 through feedback.
Number | Date | Country | Kind |
---|---|---|---|
2013-137508 | Jun 2013 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
5955687 | Miyagi et al. | Sep 1999 | A |
5962796 | Nakamura et al. | Oct 1999 | A |
6073835 | Ramadan | Jun 2000 | A |
20080184863 | White | Aug 2008 | A1 |
20140202303 | Ikeda | Jul 2014 | A1 |
Number | Date | Country |
---|---|---|
H09-97055 | Apr 1997 | JP |
2002-073013 | Mar 2002 | JP |
2005-17731 | Jan 2005 | JP |
2011-128348 | Jun 2011 | JP |
Entry |
---|
Japanese Office Action dated Mar. 3, 2015 from related Japanese Application No. 2013-137508, together with an English language translation. |
Number | Date | Country | |
---|---|---|---|
20150000507 A1 | Jan 2015 | US |