Keyboard device, controller, key drive device and program
Patent Information
- Application Number
- JP2020209527
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-12-19
- Filing Date
- 2020-12-17
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2040-12-17
AI Technical Summary
【0009】 本発明によれば、鍵駆動装置を有しているにもかかわらず、特定の鍵が駆動できなくても、所定の処理によって発音することができる。
Smart Images

Figure 0007643033000001 
Figure 0007643033000002 
Figure 0007643033000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a keyboard device that drives the keys of a keyboard instrument and a sound generation control method thereof.
[0002] To give an acoustic piano an automatic playing function, a space is created by carving out the shelf below the keys, and a key drive unit with a solenoid that drives the keys is installed in that space. This key drive unit operates the solenoid with a control signal according to the content of the performance, and transmits a driving force from the underside of the key near the rear end (back check side) of each key. This drives the key as if it had been pressed by the player, and the string is struck by the hammer to produce sound. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2004-252302 A [Patent Document 2] JP 2001-343972 A Summary of the Invention [Problem to be solved by the invention]
[0004] In some acoustic pianos, both ends of the keyboard are located on the upper part of the legs. In this case, it is necessary to process the upper part of the legs and insert a key drive device for driving both ends of the keyboard, but due to the structure of the acoustic piano, it may not be possible to process the upper part of the legs. For example, if there is a connecting part such as a bolt that connects the shelf board and the leg beam, it is not possible to process the upper part of the legs, and it is not possible to provide a key drive device for driving both ends of the keyboard. In addition, if the safety device is activated due to overheating or malfunction of the key drive device itself, the operation of the key drive device may be locked. In this case, the key cannot be driven by the key drive device.
[0005] One of the objects of the present invention is to provide a keyboard device having a key drive device that can produce sound even if the keys cannot be driven, for example, because it is not possible to provide a key drive device for driving the keys. [Means for solving the problem]
[0006] According to one embodiment of the present invention, there is provided a keyboard device comprising a plurality of keys and a drive unit for driving at least some of the plurality of keys, and when performance data of a first pitch is received, the drive unit produces sound based on a first pronunciation process in which the drive unit produces sound by driving a key corresponding to the first pitch, and when performance data of a second pitch different from the first pitch is received, the keyboard device produces sound based on a second pronunciation process different from the first pitch.
[0007] Furthermore, according to one embodiment of the present invention, there is provided a sound production control method including receiving performance data, and if the received performance data is performance data of a first pitch, producing sound based on a first sound production process that activates a key corresponding to the first pitch, and if the received performance data is performance data of a second pitch different from the first pitch, producing sound based on a second sound production process different from the first sound production process.
[0008] Furthermore, according to one embodiment of the present invention, a program is provided for causing a computer to receive performance data, and if the received performance data is performance data for a first pitch, produce sound based on a first pronunciation process that drives a key corresponding to that pitch, and if the received performance data is performance data for a second pitch different from the first pitch, produce sound based on a second pronunciation process that is different from the first pronunciation process. Effect of the Invention
[0009] According to the present invention, even if a key driving device is provided and a specific key cannot be driven, sound can be generated by a predetermined process. [Brief description of the drawings]
[0010] [Figure 1] FIG. 2 is a diagram illustrating the external appearance of the keyboard device. [Diagram 2] 10 is a diagram illustrating the positional relationship between a shelf board, a leg beam, and a key driving device when the keyboard device is viewed from the front. FIG. [Figure 3A] FIG. 2 is a diagram illustrating a cross-sectional configuration of a portion of the keyboard device that does not include a leg beam. [Figure 3B] FIG. 2 is a diagram illustrating a cross-sectional configuration of a portion including a leg beam in the keyboard device. [Figure 4] FIG. 2 is a diagram illustrating the configuration of a lock driving device. [Diagram 5] FIG. 2 is a block diagram showing a functional configuration of the keyboard device. [Figure 6] 5 is a flowchart showing the process of an automatic performance function according to the first embodiment executed by a controller. [Figure 7] FIG. 2 is a block diagram showing the configuration of an automatic performance function according to the first embodiment. [Figure 8] 10 is a flowchart showing the process of an automatic performance function according to a second embodiment executed by a controller. [Figure 9] FIG. 11 is a block diagram showing the configuration of an automatic performance function according to a second embodiment. [Figure 10] 13 is a flowchart showing the process of an automatic performance function according to the third embodiment, which is executed by a controller. [Figure 11] 13 is a flowchart showing the process of an automatic performance function according to the third embodiment, which is executed by a controller. [Figure 12] FIG. 11 is a block diagram showing the configuration of an automatic performance function according to a third embodiment. [Figure 13] FIG. 13 is a block diagram showing the configuration of an automatic performance function according to a fourth embodiment. [Figure 14] 13 is a flowchart showing the process of an automatic performance function according to a fourth embodiment executed by a controller. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] First Embodiment [Structure of the keyboard device] 1 is a diagram illustrating the appearance of a keyboard device 1 according to a first embodiment of the present invention. The keyboard device 1 has a keyboard 2 on which a number of keys 20 (88 in this example) are arranged in a row on the front side, a shelf 3 located below the keyboard 2, a leg 4 connecting the leg 5 and the shelf 3, a pedal 8, and a controller 11. The leg 4 is located on both ends of the keyboard 2 in the direction in which the keys 20 are arranged (on the left and right end sides of the keyboard device 1). In other words, a part of both ends of the keyboard 2 is configured to be located via the shelf 3 above the leg 4. In this embodiment, the keyboard device 1 is configured by attaching a key drive device for driving the keys 20 to a general grand piano.
[0012] [Key drive mechanism structure] The key driving device 10 attached to the keyboard device 1 will be described. First, the position of the key driving device 10 will be described with reference to Figs. 2, 3A, and 3B. Fig. 2 is a diagram illustrating the positional relationship of the shelf board 3, the leg beam 4, and the key driving device 10 when the keyboard device 1 in this embodiment is viewed from the front. The key driving device 10 has a solenoid storage section 100 and a board storage section 200. The solenoid storage section 100 stores a solenoid, which is an example of an actuator that applies a driving force to the key 20 (see Fig. 3A) to drive the key 20. The board storage section 200 stores a printed wiring board for supplying a control signal from the controller 11, etc. As shown in Fig. 2, the key driving device 10 is not provided in the portion where the leg beam 4 is attached.
[0013] 3A is a diagram illustrating the cross-sectional configuration of a portion of the keyboard device 1 according to this embodiment that does not include the leg beam 4. This cross-sectional configuration shows the cross section along the direction in which the keys 20 extend, as viewed from the direction in which the keys 20 are arranged. The keys 20 are supported so as to be freely rotatable by balance pins 7. When the front end of the key 20 (the side pressed by the player (left side in FIG. 3A)) is pressed, the key 20 rotates around the balance pin 7, and the rear end of the key 20 (the end opposite the front end with respect to the balance pin 7) rises. Then, the action mechanism 6 operates, causing the hammer to strike the string, generating sound.
[0014] A space 30 is defined in the shelf 3 below the rear end of the key 20. The space 30 is defined by cutting a part of the shelf 3 so as to penetrate it in the vertical direction. The space 30 is a substantially rectangular parallelepiped shape extending in the direction in which the keys 20 are arranged. The key drive device 10 is fixed to the shelf 3 by screws 15 so that the solenoid storage unit 100 is stored in the space 30. The key drive device 10 operates the solenoid based on a control signal from the controller 11, and pushes up the rear end of the key 20 to rotate the key 20, thereby achieving the same action as when the player presses down the front end of the key 20.
[0015] 3B is a diagram illustrating the cross-sectional configuration of a portion including the leg beam 4 in the keyboard device 1 of this embodiment. Unlike the case shown in FIG. 3A, the leg beam 4 is present below the shelf 3. As shown in FIG. 3, in the keyboard device 1, an embedded nut 32 is provided at the portion of the shelf 3 where the leg beam 4 is attached. A mounting bolt 36 is provided, via a washer 34, at a position facing the embedded nut 32 of the leg beam 4. The leg beam 4 is fixed to the shelf 3 by attaching the mounting bolt 36 to the embedded nut 32 provided in the shelf 3 and tightening it. A cushioning material (not shown) made of resin or the like may be provided between the washer 34 and the leg beam 4.
[0016] FIG. 4 is a diagram for explaining the configuration of the lock driving device 10 in this embodiment. FIG. 4 is a perspective view of the lock driving device 10. The lock driving device 10 has an opening 400 on the upper surface side (solenoid storage section 100 side) of the board storage section 200, which is used for screwing when connecting and fixing to the shelf board 3. In addition, the tip portion of the plunger 110 of the solenoid 101 that applies a driving force to the key 20 protrudes from the upper surface side of the solenoid storage section 100. The solenoid storage section 100 has a shape that extends in one direction so that these solenoids 101 are stored in two rows along the line direction of the keys 20. Note that in FIG. 4, some of the solenoids 101 stored in the solenoid storage section 100 are omitted. In addition, the lock driving device 10 is provided with an electrically connected drive unit 300. The drive unit 300 includes a PWM generator 102 that generates a drive current for operating the solenoid based on a control signal from the controller 11, a control circuit, and the like.
[0017] When a driving current is supplied to the solenoid 101, the plunger 110 rises and pushes up one end (the end toward the rear end) of the key 20, thereby rotating the key 20 and pushing down the other end (the end toward the front end) of the key 20. This causes the hammer 9 to rotate and strike the string, producing sound. Using the operation of the solenoid 101 in this way to cause the keyboard device 1 to produce sound in accordance with music data is called automatic performance. On the other hand, manual performance is when a player presses the other end (the end toward the front end) of the key 20, causing the hammer (not shown) to rotate and strike the string, producing sound.
[0018] As shown in FIG. 3B, when there is a connecting part such as a mounting bolt 36 that connects the shelf board 3 and the leg beam 4, the shelf board 3 located above the leg beam 4 cannot be processed. Therefore, it is not possible to provide a space 30 for storing the key driving device 10. Therefore, it is not possible to provide a solenoid 101 for driving the key 20 located above the leg beam 4. Since the keyboard device 1 has the leg beams 4 at both ends in the direction in which the keys 20 are arranged, it is not possible to provide solenoids 101 for driving both ends of the keyboard 2, that is, some of the keys 20 corresponding to the treble range and some of the keys 20 corresponding to the bass range located at both ends of the keyboard 2. Therefore, the keys 20 without the corresponding solenoids 101 are not driven during automatic playing.
[0019] [Keyboard device configuration] The functional configuration of the keyboard device 1 will now be described. Fig. 5 is a block diagram showing the functional configuration of the keyboard device 1. The keyboard device 1 comprises a key drive device 10, a controller 11, and a storage unit 12. The keyboard device 1 may also optionally comprise a sound source unit 13, a speaker 14, an operation unit 16, and a communication unit 18. These components are connected to each other via a bus 17.
[0020] The controller 11 has an arithmetic processing circuit such as a CPU (Central Processing Unit). The controller 11 executes a control program 12a stored in the storage unit 12 by the CPU to realize various functions in the keyboard device 1. The realized functions include an automatic performance function. Specifically, the controller 11 acquires performance information in a MIDI (Musical Instrument Digital Interface) format or the like, and outputs a control signal to the key drive device 10 to instruct the driving mode of the key 20 according to the performance information. The performance information may be input from the outside via the communication unit 18, or may be stored in the storage unit 12 in advance.
[0021] The storage unit 12 is a storage device such as a non-volatile memory or a hard disk. The storage unit 12 stores a control program 12a for implementing the automatic performance function. The control program 12a may be provided in a state where it is stored in a computer-readable recording medium such as a magnetic recording medium, an optical recording medium, a magneto-optical recording medium, or a semiconductor memory. In this case, the keyboard device 1 only needs to be equipped with a device for reading the recording medium. The control program 12a may also be downloaded via a network such as the Internet through the communication unit 18.
[0022] The storage unit 12 may also store performance information. The performance information is music piece data to be played by the keyboard device 1. The performance information may be data expressed in a MIDI format such as SMF. The performance information may be downloaded via a network such as the Internet through the communication unit 18. The performance information may be classified and stored into a master track, a plurality of note sequence tracks, and an effect track.
[0023] The master track stores beat event data, tempo event data, pedal event data, and the like over time as the music progresses. The beat event data includes timing data indicating the timing of changing the beat in the music, and beat data indicating the beat after the change. This timing data and various other timing data described later indicate the progression position in the music, and are composed of data indicating the number of bars from the beginning of the music, the number of beats from the beginning of each bar, and timing within a beat. The tempo data includes timing data indicating the timing of changing the tempo of the music, and tempo data indicating the tempo of the music after the change. The pedal event data includes timing data indicating the timing of operating the damper pedal or soft pedal in the music.
[0024] In the note sequence track, a series of note event data for controlling the generation of sounds is stored over time in accordance with the progress of the music piece. Each note event data includes timing data indicating the timing of sound generation, pitch data indicating the pitch of the sound, velocity data indicating the operating speed of a performance operator for controlling the volume of the sound, etc. (i.e., key pressing speed), and gate time data indicating the key-on time of the sound.
[0025] The effect track stores effect event data over time as the music progresses. Each effect event data includes effect data for changing the effect that represents the manner of changing the elements of the sound to be generated, such as the timing of sound generation according to the pitch data, velocity (volume), and gate time (key-on time), and timing data that represents the timing of the change. Hereinafter, the performance information including the master track, note sequence track, and effect track is also referred to as event data.
[0026] The storage unit 12 may also store parameters, waveform data, etc. used in the sound source unit 13. This waveform data is waveform data obtained by sampling the sound of an acoustic piano (the sound produced by striking a string when a key is pressed). Waveform data of different pitches is stored in correspondence with key numbers (note numbers).
[0027] The sound source unit 13 generates a sound signal based on the performance information and outputs it to the speaker 14. Specifically, the sound source unit 13 reads out waveform data representing the sound of a piano string being struck, stored in the storage unit 12, based on the performance information. The speaker 14 amplifies the sound signal output from the sound source unit 13 and outputs it, thereby generating a sound corresponding to the sound signal.
[0028] The operation unit 16 includes operators for adjusting the volume and other settings. The operation unit 16 may also include a display unit (not shown) that displays the control state, settings, and control contents of the keyboard device 1. The display unit may be configured with a liquid crystal display (LCD), an organic electroluminescence (EL), or the like.
[0029] The communication unit 18 is an interface for transmitting and receiving control programs, various data related thereto, and event information corresponding to performance operations between the keyboard device 1 and an external device (not shown) (for example, a server or a MIDI device). The communication unit 18 may be, for example, an interface such as a MIDI interface, a LAN, the Internet, or a telephone line. The communication unit 18 may also be a wired interface or a wireless interface.
[0030] [Auto-play function] We will now explain the automatic performance function executed by the keyboard device 1. The automatic performance function is realized by the controller 11 of the keyboard device 1 executing a control program 12a stored in the storage unit 12. A part or all of the configuration for realizing the automatic performance function described below may be realized by hardware.
[0031] FIG. 6 is a flowchart showing the process executed by the controller 11. The process of the automatic performance function 60 executed by the controller 11 will be described with reference to FIG. 6. The controller 11 executes the performance process based on instruction information input by the user via the operation unit 16 of the keyboard device 1 or the like. The instruction information includes music designation information for designating a music piece to be played and playback information for instructing the execution of the performance process. The instruction information may be information in a MIDI format. When the performance process is started, reading of event data corresponding to the music designation information from the storage unit 12 is started, and counting of timing data including step time and gate time (timing data subtraction process) is performed (S610). Then, it is determined whether the timing data being read out has reached the processing timing for processing the event (S620). If the processing timing has not been reached (S620; NO), the controller 11 continues to determine whether the timing data being read out has reached the processing timing.
[0032] When it is determined that the timing data has reached the processing timing (S620; YES), the corresponding event data (performance information) is read from the storage unit 12 (S630). Next, it is determined whether the read event data includes note event data (S640).
[0033] If the event data does not include note event data (S640; NO), a control signal is generated based on the read event data (S670). On the other hand, if the event data includes note event data (S640; YES), it is determined whether the note number of the pitch data included in the note event data is included in the drivable range or the non-drivable range (S650). As described above, due to its structure, the keyboard device 1 cannot be provided with solenoids 101 for driving some of the keys 20 corresponding to the high range and some of the keys 20 corresponding to the low range located at both ends (on the footboards 4) of the keyboard 2. Therefore, the keys 20 not provided with the corresponding solenoids 101 are not driven during automatic playing. Here, the range in which the keys provided with the corresponding solenoids 101 can sound and which can be driven by the corresponding solenoids 101 during automatic playing are called the drivable range, and the range in which the keys which cannot be driven by the solenoids 101 can sound are called the non-drivable range. The pitches included in the drivable range may be pitches between the first note number and the second note number. A pitch included in the non-driveable range may be a pitch less than the first note number or greater than the second note number. A pitch included in the driveable range is called a first pitch, and a pitch included in the non-driveable range, i.e., a pitch other than the first pitch, is called a second pitch.
[0034] If the note number of the pitch data included in the note event data is the first pitch, i.e., if it is included in the actuable range (S650; YES), a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data (S670). On the other hand, if the note number of the pitch data included in the note event data is the second pitch, i.e., if it is included in the non-actuable range (S650; NO), the note number of the pitch data is converted to another note number (S660). In other words, the pitch of a key that does not have a corresponding solenoid is converted to the pitch of another key. For example, the note number of the pitch data may be converted to a note of the same note name so that the pitch is lowered or raised by one octave.
[0035] Next, it is determined again whether the note number of the converted pitch data is within the driveable range or the non-driveable range (S650). If the note number of the converted pitch data is the first pitch, i.e., within the driveable range, a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data including the converted pitch data (S670). On the other hand, if the note number of the converted pitch data is the second pitch, i.e., within the non-driveable range, the note number of the pitch data is further converted. This process is repeated until it is determined that the note number of the converted pitch data is the first pitch, i.e., within the driveable range.
[0036] It is determined whether the read event data includes an unprocessed event (S680), and if an unprocessed event is included (S680; YES), the process returns to S640. The processes of S640 to S680 are repeated until there are no more unprocessed events. If there are no more unprocessed events (S680; NO), the controller 11 returns to S610 and subtracts from the timing data until the next processing timing is reached, thereby determining the next processing timing.
[0037] As described above, in this embodiment, the automatic performance function is realized by different sound generation processes according to the pitch (note number) of the pitch data included in the note event data. When the pitch data included in the note event data is a first pitch, that is, when it is included in the driveable range, a first sound generation process is performed in which the solenoid 101 drives a key corresponding to the pitch data. On the other hand, when the pitch data included in the note event data is a second pitch, that is, when it is included in the non-driveable range, a second sound generation process different from the first sound generation process is performed. In this embodiment, the second sound generation process includes a third sound generation process in which the note number of the pitch data is converted to another note number included in the driveable range, and the solenoid 101 drives a key corresponding to the converted note number.
[0038] Fig. 7 is a block diagram showing the configuration of the automatic performance function 60 of this embodiment. Referring to Fig. 7, the automatic performance function 60 includes a control unit 701, a timing determination unit 702, a performance information reading unit 703, a performance information analysis unit 705, a pitch data conversion unit 707, and a control signal generation unit 709.
[0039] The control unit 701 generates performance reproduction information based on instruction information input by the user via the operation unit 16 of the keyboard device 1, and supplies the generated performance reproduction information to a timing determination unit 702. The control unit 701 also supplies music designation information for designating the performance information to be read to a performance information reading unit 703 based on the instruction information input by the user. Note that the instruction information input by the user may be information in MIDI format.
[0040] The timing determination unit 702 receives the performance playback information, counts the timing data, and determines whether or not the processing timing for processing the event has arrived. If the processing timing has arrived, the timing determination unit 702 transmits a start signal to the performance information reading unit 703 to start reading the performance information (event data).
[0041] When the performance information reading unit 703 receives the start signal, it reads out the event data corresponding to the processing timing from the storage unit 12 based on the music designation information. The performance information reading unit 703 transmits the read event data to the performance information analysis unit 705.
[0042] The performance information analysis unit 705 analyzes the event data received from the performance information reading unit 703. The performance information analysis unit 705 determines whether the received event data includes note event data. If the received event data does not include note event data, the performance information analysis unit 705 transmits the event data to the control signal generation unit 709.
[0043] When the event data includes note event data, the performance information analysis unit 705 judges whether the note number of the pitch data included in the note event data is the first pitch, i.e., whether it is included in the driveable range, or the second pitch, i.e., whether it is included in the non-driveable range. When the note number of the pitch data is the first pitch, i.e., in the driveable range, the performance information analysis unit 705 transmits the note event data as is to the control signal generation unit 709. On the other hand, when the note number of the pitch data is the second pitch, i.e., in the non-driveable range, the performance information analysis unit 705 transmits the note event data to the pitch data conversion unit 707.
[0044] The pitch data conversion unit 707 converts pitch data whose note number is the second pitch, i.e., the pitch data included in the non-driveable range, into a first pitch, i.e., a note number included in the driveable range. In other words, the pitch data conversion unit 707 converts the pitch of a key that does not have a corresponding solenoid into the pitch of a key that has a corresponding solenoid and can be automatically played by a solenoid. The pitch data conversion unit 707 may convert the note number of the pitch data, for example, so that the pitch is lowered or raised by one octave. The pitch data conversion unit 707 transmits note event data including the converted pitch data to the control signal generation unit 709.
[0045] The control signal generating unit 709 generates a control signal based on the received event data. The control signal includes various control signals for automatically playing a piece of music. For example, the control signal includes a control signal for driving the solenoid 101 of the key driving device 10, a control signal for driving a pedal driving device (not shown), and the like. The control signal generating unit 709 can generate a control signal for driving the solenoid 101 based on the note event data. When the note number of the pitch data included in the original note event data is the first pitch, i.e., is included in the driveable range, the control signal generating unit 709 generates a control signal for driving the solenoid 101 of the key driving device 10 based on the original note event data. On the other hand, when the note number of the pitch data included in the original note event data is the second pitch, i.e., is included in the driveable range, the control signal generating unit 709 generates a control signal based on the note event data including the pitch data converted by the pitch data converting unit 707. The control signal generating unit 709 transmits the generated control signal to the key driving device 10 and the pedal driving device (not shown).
[0046] The control signal transmitted from the control signal generating unit 709 to the lock driving device 10 is supplied to the PWM generator 102 and converted into a PWM format excitation current, which is then supplied to the corresponding solenoid 101. Note that, although this embodiment describes a case in which a PWM format signal is applied as the current signal supplied to the solenoid 101, the format of the current signal is not limited to PWM format.
[0047] The above-described series of processes of the automatic performance function 60 by the controller 11 may be performed sequentially each time event data is read out, or may be performed all at once after all event data of the music piece to be played has been read out.
[0048] In the above, an example has been described in which the pitch data conversion unit 707 changes the note number of the pitch data so that the pitch is lowered or raised by one octave, but the change in pitch is not limited to this. The pitch data conversion unit 707 may also change the note number so that the pitch is lowered or raised by several octaves. Furthermore, the pitch data conversion unit 707 may change the note number so that the pitch is lowered or raised by, for example, a fifth.
[0049] As described above, in this embodiment, if a piece of music played by the keyboard device 1 using the automatic performance function 60 contains a key pitch that cannot be driven by a solenoid, the pitch is changed to a key pitch that can be driven by a solenoid. This makes it possible for the keyboard device 1 to produce sound even if the piece of music being played contains a key pitch that cannot be driven by a solenoid, thereby achieving higher quality automatic performance.
[0050] <Second embodiment> Next, the automatic performance function according to the second embodiment of the present invention will be described. The automatic performance function according to this embodiment can be realized by the keyboard device 1 according to the first embodiment, which has been described with reference to Figures 1 to 5. Therefore, detailed descriptions of the keyboard device and key drive device that execute the automatic performance function according to this embodiment will be omitted.
[0051] FIG. 8 is a flowchart showing the process executed by the controller 11. The process of the automatic performance function 80 executed by the controller 11 will be described with reference to FIG. 8. The controller 11 executes the performance process based on instruction information input by the user via the operation unit 16 of the keyboard device 1 or the like. The instruction information includes music designation information for designating a music piece to be played and playback information for instructing the execution of the performance process. The instruction information may be information in a MIDI format. When the performance process is started, reading of event data corresponding to the music designation information from the storage unit 12 is started, and counting of timing data including step time and gate time (timing data subtraction process) is performed (S810). Then, it is determined whether the timing data being read out has reached the processing timing for processing the event (S820). If the processing timing has not been reached (S820; NO), the controller 11 continues to determine whether the timing data being read out has reached the processing timing.
[0052] When it is determined that the timing data has reached the processing timing (S820; YES), the corresponding event data (performance information) is read from the storage unit 12 (S830). Next, it is determined whether the read event data includes note event data (S840).
[0053] If the event data does not include a note event (S840; NO), a control signal is generated based on the event data (S870). On the other hand, if the event data includes note event data (S840; YES), it is determined whether the note number of the pitch data included in the note event data is included in the driveable range or the non-driveable range (S850).
[0054] If the note number of the pitch data included in the note event data is the first pitch, i.e., if it is included in the driveable range (S850; YES), a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data (S870). On the other hand, if the note number of the pitch data included in the note event data is the second pitch, i.e., if it is included in the driveable range (S850; NO), a sound source event signal is generated (S860) including a waveform read signal for reading out waveform data showing the struck string sound corresponding to the pitch data, timing data showing the sound generation timing of the sound corresponding to the pitch data, velocity data for controlling the volume etc. of the sound, and gate time data showing the key-on time of the sound. Also, a sound source event generation signal may be generated to indicate that the sound source event signal has been generated.
[0055] As described above, when the note number of the pitch data is the first pitch, that is, when it is included in the driveable range, a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data (S870). It is determined whether or not the read event data includes an unprocessed event (S880), and if an unprocessed event is included (S880; YES), the process returns to S840. The processes of S840 to S880 are repeated until there are no more unprocessed events. If there are no more unprocessed events (S880; NO), the controller 11 returns to S810 and subtracts the timing data until the next processing timing is reached, and determines the next processing timing.
[0056] In the present embodiment, as in the first embodiment, the automatic performance function is realized by different sound generation processes according to the pitch (note number) of the pitch data included in the note event data. When the pitch data included in the note event data is a first pitch, that is, when it is included in the driveable range, a first sound generation process is performed in which the solenoid 101 drives the key corresponding to the pitch data. On the other hand, when the pitch data included in the note event data is a second pitch, that is, when it is included in the non-driveable range, a second sound generation process different from the first sound generation process is performed. In the present embodiment, the second sound generation process includes a fourth sound generation process in which a sound source event signal is generated that includes a waveform read signal for reading out waveform data indicating a striking sound corresponding to the pitch data, timing data indicating the sound generation timing, velocity data, and gate time data, and a sound corresponding to the pitch data is generated by the sound source unit 13 based on the generated sound source event signal.
[0057] FIG. 9 is a block diagram showing the configuration of the automatic performance function 80 of this embodiment. Referring to FIG. 9, the automatic performance function 80 includes a control unit 901, a timing determination unit 902, a performance information reading unit 903, a performance information analysis unit 905, a sound source event signal generation unit 907, and a control signal generation unit 909.
[0058] The control unit 901 generates performance reproduction information based on instruction information input by the user via the operation unit 16 of the keyboard device 1, and supplies the generated performance reproduction information to a timing determination unit 902. The control unit 901 also supplies music designation information for designating a music piece to be read out to a performance information reading unit 903 based on the instruction information input by the user. Note that the instruction information input by the user may be information in MIDI format.
[0059] The timing determination unit 902 receives the performance playback information, counts the timing data, and determines whether or not the processing timing for processing the event has arrived. If the processing timing has arrived, the timing determination unit 902 transmits a start signal to the performance information reading unit 903 to start reading the performance information (event data).
[0060] When the performance information reading unit 903 receives the start signal, it reads out the event data corresponding to the processing timing from the storage unit 12 based on the music designation information. The performance information reading unit 903 transmits the read event data to the performance information analysis unit 905.
[0061] The performance information analysis unit 905 analyzes the event data received from the performance information reading unit 903. The performance information analysis unit 905 determines whether the received event data includes note event data. If the received event data does not include note event data, the performance information analysis unit 905 transmits the event data to the control signal generation unit 909.
[0062] When the received event data includes note event data, the performance information analysis unit 905 judges whether the note number of the pitch data included in the note event data is a first pitch, i.e., in the driveable range, or a second pitch, i.e., in the non-driveable range. As described in the first embodiment, the first pitch is the pitch of a key with a corresponding solenoid, and the second pitch is the pitch of a key with no corresponding solenoid.
[0063] If the note number of the pitch data is the first pitch, i.e., within the driveable range, the performance information analysis unit 905 transmits the note event data as is to the control signal generation unit 909. On the other hand, if the note number of the note event data is the second pitch, i.e., within the driveable range, the performance information analysis unit 905 transmits the note event data to the sound source event signal generation unit 907.
[0064] The sound source event signal generating unit 907 generates a sound source event signal including a waveform read signal for reading out waveform data indicating a struck string sound corresponding to the pitch data whose note number is the second pitch, timing data indicating the sound production timing of the sound corresponding to the pitch data, velocity data for controlling the volume etc. of the sound, and gate time data indicating the key-on time of the sound, and transmits the generated signal to the sound source unit 13. The sound source event signal generating unit 907 also transmits a sound source event generation signal indicating that the sound source event signal has been generated to the control signal generating unit 909.
[0065] The control signal generating unit 909 generates a control signal based on the received event data. The control signal includes various control signals for automatically playing a piece of music. For example, the control signal includes a control signal for driving the solenoid 101 of the key driving device 10, a control signal for driving a pedal driving device (not shown), and the like. When the note number of the pitch data included in the original note event data is the first pitch, that is, is included in the driving range, the control signal generating unit 909 generates a control signal for driving the solenoid 101 of the key driving device 10 based on the original note event data. Note that the control signal generating unit 909 does not generate a corresponding control signal for note event data for which a sound source event signal has been generated by the sound source event signal generating unit 907. The control signal generating unit 909 transmits the generated control signal to the key driving device 10.
[0066] When the sound source unit 13 receives a sound source event signal from the sound source event signal generating unit 907, it reads waveform data from the memory unit 12 based on the sound source event signal and gate time data, amplifies the read waveform data based on the velocity data, and outputs the amplified waveform data to the speaker 14 based on the timing data.
[0067] The above-described series of processes of the automatic performance function 80 by the controller 11 may be performed sequentially each time event data is read, or may be performed collectively after all event data of the music to be played is read. When the process is performed collectively after all event data of the music is read and the note event data included in the event data includes pitch data of the second pitch, the sound source event signal generating unit 907 may attach a flag indicating that the sound source event signal is generated to the pitch data from which the sound source event signal is generated. The sound source event signal generating unit 907 transmits the event data including the flagged pitch data to the control signal generating unit 909. The control signal generating unit 909 may not generate a control signal corresponding to the flagged pitch data.
[0068] As described above, in this embodiment, when a piece of music to be automatically played by the keyboard device 1 includes a key pitch that cannot be driven by a solenoid, waveform data corresponding to that pitch is read from the storage unit 12 and output from the sound source unit 13. The waveform data output from the sound source unit 13 is generated as an electronic sound from the speaker 14. This makes it possible for the keyboard device 1 to generate sound even when a piece of music to be automatically played includes a key pitch that cannot be driven by a solenoid, thereby achieving higher quality automatic performance.
[0069] <Third embodiment> When the musical piece automatically played by the keyboard device 1 includes a pitch of a key that cannot be driven by a solenoid, the first embodiment changes the pitch to a pitch of a key that can be driven by a solenoid, and the second embodiment reads out waveform data corresponding to the pitch and produces an electronic sound. On the other hand, when the pitch of a key that cannot be driven by a solenoid is changed to a pitch of a key that can be driven by a solenoid, as in the first embodiment, depending on the changed pitch, the user may recognize that a sound different from the sound of the actual musical piece is being produced. In particular, when the pitch of a high-pitched range is shifted to the low-pitched side, the user may recognize that the sound produced is different from the sound of the actual musical piece. In such a case, a higher quality automatic performance can be realized by executing the first and second embodiments in combination.
[0070] The following describes the automatic performance function of the third embodiment, which combines the processes of the first and second embodiments. The automatic performance function of this embodiment can be realized by the keyboard device 1 of the first embodiment, which has been described with reference to Figures 1 to 5. Therefore, detailed descriptions of the keyboard device and key drive device that execute the automatic performance function of this embodiment will be omitted.
[0071] 10 and 11 are flowcharts showing the process executed by the controller 11. The process of the automatic performance function 1000 executed by the controller 11 will be described with reference to FIG. 10 and FIG. 11. The controller 11 executes the performance process based on instruction information input by the user via the operation unit 16 of the keyboard device 1 or the like. The instruction information includes music designation information for designating a music piece to be played and playback information for instructing the execution of the performance process. The instruction information may be information in a MIDI format. When the performance process is started, reading of event data corresponding to the music designation information from the storage unit 12 is started, and counting of timing data including step time and gate time (timing data subtraction process) is performed (S1010). Then, it is determined whether the timing data being read out has reached the processing timing for processing the event (S1020). If the processing timing has not been reached (S1020; NO), the controller 11 continues to determine whether the timing data being read out has reached the processing timing.
[0072] When it is determined that the timing data has reached the processing timing (S1020; YES), the event data corresponding to the processing timing is read from the storage unit 12 (S1030). Next, it is determined whether the read event data includes note event data (S1040).
[0073] If the event data does not include a note event (S1040; NO), a control signal is generated based on the event data (S1070). On the other hand, if the event data includes note event data (S1040; YES), it is determined whether the note number of the pitch data included in the note event data is included in the driveable range or the non-driveable range (S1050).
[0074] If the note number of the pitch data included in the note event data is the first pitch, i.e., if it is within the actuable range (S1050; YES), a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data (S1070). If the note number of the pitch data included in the note event data is the second pitch, i.e., if it is within the non-actuable range (S1050; NO), a process according to the note event is executed (S1060).
[0075] If the note number of the pitch data included in the note event data is the second pitch, that is, if it is included in the non-driveable range (S1050; NO), it is determined whether or not the note number of the pitch data is less than the first note number (S1061). The keys corresponding to the second pitch, which is less than the first note number or greater than the second note number, correspond to some of the keys 20 corresponding to the low range or some of the keys 20 corresponding to the high range, which are located at both ends of the keyboard 2 of the keyboard device 1 and do not have a corresponding solenoid. That is, in S1061, it is determined whether the note number of the pitch data is on the low range side or the high range side. In S1061, it is determined whether or not the note number of the pitch data is less than the first note number. However, since the pitch data is the second pitch, if the pitch data is not less than the first note number, it indicates that the pitch data is substantially greater than the second note number, that is, on the high range side. Incidentally, in S1061, it is determined whether or not the note number of the pitch data is less than the first note number, but it may be determined whether or not the note number of the pitch data is greater than the second note number.
[0076] If the note number of the pitch data is less than the first note number, i.e., if the note number of the pitch data is on the lower range side (S1061; YES), the note number of the pitch data included in the note event data is changed (S1062). Next, it is determined whether the note number of the converted pitch data is included in the drivable range (S1063). If the note number of the converted pitch data is included in the drivable range (S1063; YES), a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data including the converted pitch data (S1070). On the other hand, if the note number of the converted pitch data is not included in the drivable range (S1063; NO), the change of the note number (S1062) is repeated until the note number of the converted pitch data is included in the drivable range.
[0077] On the other hand, if the note number of the pitch data is greater than the second note number, i.e., the note number of the pitch data is on the higher range side (S1061; NO), a sound source event signal is generated and output (S1064) including a waveform read signal for reading out waveform data indicative of a struck string sound corresponding to the pitch data, timing data indicative of the sound production timing of the sound corresponding to the pitch data, velocity data for controlling the volume etc. of the sound, and gate time data indicative of the key-on time of the sound. Also, a sound source event generation signal may be generated to indicate that the sound source event signal has been generated.
[0078] As described above, when the note number of the pitch data is the first pitch, that is, when it is included in the drivable range, a control signal for driving the solenoid 101 of the key driving device 10 is generated based on the note event data (S1070). It is determined whether or not the event data includes an unprocessed event (S1080), and if an unprocessed event is included (S1080; YES), the process returns to S1040. The processes of S1040 to S1080 are repeated until there are no more unprocessed events. If there are no more unprocessed events (S1080; NO), the controller 11 returns to S1010 and subtracts the timing data until the next processing timing is reached, and determines the next processing timing.
[0079] As in the first and second embodiments described above, in this embodiment, the automatic performance function is realized by different sound generation processes according to the pitch (note number) of the pitch data included in the note event data. When the pitch data included in the note event data is a first pitch, that is, when it is included in the driveable range, a first sound generation process is performed in which the key corresponding to the pitch data is driven by the solenoid 101. On the other hand, when the pitch data included in the note event data is a second pitch, that is, when it is included in the non-driveable range, a second sound generation process different from the first sound generation process is performed. In this embodiment, when the note number of the pitch data is on the low-pitched side of the non-driveable range, the second sound generation process includes a third sound generation process in which the note number of the pitch data is converted to another note number included in the driveable range and the solenoid 101 drives a key corresponding to the converted note number. On the other hand, when the note number of the pitch data is on the higher side of the non-driveable range, the second sound production process includes a fourth sound production process in which a waveform read signal for reading out waveform data indicating a striking string sound corresponding to the pitch data, a sound source event signal including timing data indicating the sound production timing, velocity data, and gate time data, and a sound corresponding to the pitch data is generated by the sound source unit 13 based on the generated sound source event signal.
[0080] Fig. 12 is a block diagram showing the configuration of the automatic performance function 1000 of this embodiment. Referring to Fig. 12, the automatic performance function 1000 includes a control unit 1001, a timing determination unit 1002, a performance information reading unit 1003, a performance information analysis unit 1005, a pitch data conversion unit 1006, a sound source event signal generation unit 1007, and a control signal generation unit 1009.
[0081] The control unit 1001 generates performance reproduction information based on instruction information input by the user via the operation unit 16 of the keyboard device 1, and supplies the generated performance reproduction information to the timing determination unit 1002. The control unit 1001 also supplies music designation information for designating a music piece to be read out to the performance information reading unit 1003 based on the instruction information input by the user. Note that the instruction information input by the user may be information in MIDI format.
[0082] The timing determination unit 1002 receives the performance playback information, counts the timing data, and determines whether or not it is time to process the event. If it is time to process the event, the timing determination unit 902 transmits a start signal to the performance information reading unit 903 to start reading the performance information (event data).
[0083] When the performance information reading unit 1003 receives the start signal, it reads out the event data corresponding to the processing timing from the storage unit 12 based on the music designation information. The performance information reading unit 1003 transmits the read event data to the performance information analysis unit 1005.
[0084] The performance information analysis unit 1005 analyzes the event data received from the performance information reading unit 1003. The performance information analysis unit 1005 determines whether the received event data includes note event data. If the event data does not include note event data, the performance information analysis unit 1005 transmits the event data to the control signal generation unit 1009.
[0085] When the received event data includes note event data, the performance information analysis unit 1005 judges whether the note number of the pitch data included in the note event data is a first pitch, i.e., is included in the driveable range, or is a second pitch other than the first pitch, i.e., is included in the non-driveable range. As described in the first embodiment, the first pitch is the pitch of a key that has a corresponding solenoid, and the second pitch is the pitch of a key that does not have a corresponding solenoid.
[0086] When the note number of the pitch data is the first pitch, that is, included in the driveable range, the performance information analysis unit 1005 transmits the note event data as it is to the control signal generation unit 1009. On the other hand, when the note number of the pitch data is the second pitch, that is, included in the driveable range, the performance information analysis unit 1005 judges whether the note number of the pitch data is less than the first note number or greater than the second note number. The keys corresponding to the second pitch less than the first note number or greater than the second note number correspond to some of the keys 20 corresponding to the treble range and some of the keys 20 corresponding to the bass range located at both ends of the keyboard 2 of the keyboard device 1 where no corresponding solenoid is provided. That is, the performance information analysis unit 1005 judges whether the note number of the pitch data is on the bass range side or the treble range side. When the note number of the pitch data is less than the first note number, that is, the note number of the pitch data is on the bass range side, the performance information analysis unit 1005 transmits the note event data to the pitch data conversion unit 1006. On the other hand, if the note number of the pitch data is greater than the second note number, that is, if the note number of the pitch data is on the higher range side, the performance information analyzer 1005 transmits note event data to the sound source event signal generator 1007 .
[0087] The pitch data conversion unit 1006 converts the pitch data, which is a second pitch on the lower range side. That is, the pitch data conversion unit 1006 converts the pitch of a key that does not have a corresponding solenoid to a first pitch that can be automatically played by a solenoid, that is, the pitch of a key that has a corresponding solenoid. The pitch data conversion unit 1006 may convert the note number of the pitch data, for example, so that the pitch is raised by one octave. The pitch data conversion unit 1006 transmits note event data including the converted pitch data to the control signal generation unit 1009. Note that the change in pitch by the pitch data conversion unit 1006 is not limited to this. The pitch data conversion unit 1006 may change the note number so that the pitch is raised by several octaves. The pitch data conversion unit 1006 may also change the note number so that the pitch is raised by a fifth, for example.
[0088] The sound source event signal generating unit 1007 generates a sound source event signal including a waveform read signal for reading out waveform data indicative of a struck string sound corresponding to the pitch data which is the second pitch on the higher register side, timing data indicative of the sound production timing of the sound corresponding to the pitch data, velocity data for controlling the volume etc. of the sound, and gate time data indicative of the key-on time of the sound, and transmits the generated signal to the sound source unit 13. The sound source event signal generating unit 1007 also transmits a sound source event generation signal indicative of the generation of the sound source event signal to the control signal generating unit 1009.
[0089] The control signal generating unit 1009 generates a control signal based on the received event data. The control signal includes various control signals for automatically playing a piece of music. For example, the control signal includes a control signal for driving the solenoid 101 of the key driving device 10, a control signal for driving a pedal driving device (not shown), and the like. When the note number of the pitch data included in the original note event data is the first pitch, i.e., included in the driveable range, the control signal generating unit 1009 generates a control signal for driving the solenoid 101 of the key driving device 10 based on the original note event data. On the other hand, when the note number of the pitch data is the second pitch on the lower range side, the control signal generating unit 1009 generates a control signal based on the note event data including the pitch data converted by the pitch data converting unit 1006. Note that the control signal generating unit 1009 does not generate a control signal corresponding to the pitch data for which the sound source event signal is generated by the sound source event signal generating unit 1007. The control signal generating unit 1009 transmits the generated control signal to the key driving device 10 and the pedal driving device (not shown).
[0090] The operation of the key driving device 10 when supplied with the control signal and the sound source unit 13 when supplied with the sound source event signal is the same as in the first and second embodiments described above, and therefore a detailed description will be omitted. The series of processes of the automatic performance function 1000 by the controller 11 described above may be performed sequentially each time event data is read out, or may be performed all at once after all event data of the music to be played has been read out.
[0091] As described above, in this embodiment, when a musical piece to be automatically performed by the keyboard device 1 includes a pitch of a key that cannot be driven by a solenoid, the pitch is changed to a pitch of a key that can be driven by a solenoid, or an electronic sound is generated. In particular, by generating an electronic sound for a high-pitched pitch that is easily recognized by the user as being out of tune, a higher quality automatic performance can be achieved.
[0092] <Variation 1> In the third embodiment, the pitch (note number) of the pitch data included in the music data is used to classify whether the pitch of the key that can be driven by a solenoid is changed or whether an electronic sound is generated. However, regardless of the pitch (note number) of the pitch data included in the music data, it is also possible to generate an electronic sound for all the pitches of the keys that cannot be driven by a solenoid and to drive another key that can be driven by a solenoid (fifth sound generation process). In this case, a sound silencing device is driven to block the string striking by the hammer corresponding to each key 20 of the keyboard device 1.
[0093] <Variation 2> In the second and third embodiments described above, the keyboard device 1 is configured to include the sound source unit 13 and the speaker 14, but the sound source and speaker may be provided outside the keyboard device 1. In other words, when a key pitch that cannot be driven by a solenoid is included, the keyboard device 1 may read waveform data corresponding to that pitch from the storage unit 12, output the read waveform to an external sound source, and generate sound from a separately provided speaker.
[0094] <Fourth embodiment> In the above embodiments and modifications, examples have been described in which the solenoids are not provided at both ends of the keys of the keyboard device, and the keys cannot be driven. However, if the safety device is activated due to overheating or malfunction of the key drive device itself having a solenoid, the operation of the solenoid may be temporarily stopped. In such a case, even if the key has a corresponding solenoid, the key cannot be driven by the key drive device. In the fourth embodiment of the present invention, a keyboard device that can play automatically even if the operation of the solenoid is stopped will be described.
[0095] The automatic performance function according to the fourth embodiment of the present invention will be described below. The automatic performance function according to this embodiment can be realized by the keyboard device 1 according to the first embodiment, which has been described with reference to Figures 1 to 5. Therefore, detailed descriptions of the keyboard device and key drive device that execute the automatic performance function according to this embodiment will be omitted.
[0096] Fig. 13 is a block diagram showing the configuration of an automatic performance function 1300 of this embodiment. Referring to Fig. 13, the automatic performance function 1300 includes a control unit 1301, a timing determination unit 1302, a performance information reading unit 1303, a performance information analysis unit 1305, a sound source event signal generation unit 1307, a control signal generation unit 1309, and a temperature measurement unit 1311.
[0097] The temperature measurement unit 1311 measures the temperature of the lock driving device 10. Specifically, the temperature measurement unit 1311 measures the temperature change of the solenoid 101 of the key driving device 10. For example, the temperature rise of the coil may be measured by a resistance method using the resistance temperature coefficient of copper. If the coil generates heat and the temperature inside the solenoid 101 rises, there is a risk of fire, smoke, or the like occurring. Therefore, when the temperature rise of the coil exceeds a predetermined threshold, the temperature measurement unit 1311 supplies a stop signal to the key driving device 10 to stop the operation of the corresponding solenoid 101. In addition, the temperature measurement unit 1311 supplies to the control unit 1301 a signal indicating that the stop signal has been supplied to the key driving device 10 and information indicating the pitch of the key corresponding to the stopped solenoid 101 (for example, a note number). The temperature measurement unit 1311 may measure the temperature change of the solenoid 101 by a thermometer.
[0098] The control unit 1301 generates performance reproduction information based on instruction information input by the user via the operation unit 16 of the keyboard device 1, and supplies the generated performance reproduction information to the timing determination unit 1302. The control unit 1301 also supplies music designation information for designating a music piece to be read out to the performance information reading unit 1303 based on the instruction information input by the user. The instruction information input by the user may be information in MIDI format. The control unit 1301 also acquires a signal indicating that a stop signal has been supplied from the temperature measurement unit 1311 to the key driving device 10, and supplies a signal to the performance information analysis unit 1305 to instruct the sound source event signal generation unit 1307 to transmit note event data including pitch data corresponding to the note number of the key corresponding to the stopped solenoid 101.
[0099] The timing determination unit 1302 receives the performance playback information, counts the timing data, and determines whether or not it is time to process the event. If it is time to process the event, the timing determination unit 1302 transmits a start signal to the performance information reading unit 1303 to start reading the performance information (event data).
[0100] When the performance information reading unit 1303 receives the start signal, it reads out the event data corresponding to the processing timing based on the music designation information from the storage unit 12. The performance information reading unit 1303 transmits the read event data to the performance information analysis unit 1305.
[0101] The performance information analysis unit 1305 analyzes the event data received from the performance information reading unit 1303. The performance information analysis unit 1305 judges whether the received event data includes note event data. If the received event data does not include note event data, the performance information analysis unit 1305 transmits the event data to the control signal generation unit 1309. On the other hand, if the received event data includes note event data, the performance information analysis unit 1305 judges whether the note number of the pitch data included in the note event data is a non-drivable sound (second pitch) that is a pitch corresponding to the note number of the inactive solenoid 101, or a drivable sound (first pitch) that is a pitch corresponding to the note number of the operable solenoid 101. The performance information analysis unit 1305 transmits the note event data including the pitch data that is a non-drivable sound to the sound source event signal generation unit 1307, and transmits the note event data including the pitch data that is a drivable sound to the control signal generation unit 1309.
[0102] The sound source event signal generating unit 1307 generates a sound source event signal including a waveform read signal for reading out waveform data indicating a struck string sound corresponding to the pitch data of the received note event data, timing data indicating the sound production timing of the sound corresponding to the pitch data, velocity data for controlling the volume etc. of the sound, and gate time data indicating the key-on time of the sound, and transmits the generated sound source event signal to the sound source unit 13. The sound source event signal generating unit 1307 also transmits a sound source event generation signal indicating that the sound source event signal has been generated to the control signal generating unit 1309.
[0103] The control signal generating unit 1309 generates a control signal based on the received event data. The control signal includes various control signals for automatically playing a piece of music. For example, the control signal includes a control signal for driving a pedal driving device (not shown). When the note number of the pitch data included in the original note event data is the first pitch, that is, the note is a driveable note, the control signal generating unit 1309 generates a control signal for driving the solenoid 101 of the key driving device 10 based on the original note event data. Note that the control signal generating unit 1309 does not generate a corresponding control signal for note event data for which a sound source event signal has been generated by the sound source event signal generating unit 1307. The control signal generating unit 1309 transmits the generated control signal to the key driving device 10.
[0104] When the sound source unit 13 receives a sound source event signal from the sound source event signal generating unit 1307, it reads waveform data from the memory unit 12 based on the sound source event signal and gate time data, amplifies the read waveform data based on the velocity data, and outputs the amplified waveform data to the speaker 14 based on the timing data.
[0105] The temperature measurement unit 1311 may measure a change in temperature of the solenoid 101 of the lock driving device 10, and when the temperature of the stopped solenoid 101 drops and it becomes possible to safely operate the solenoid 101, may supply to the lock driving device 10 a stop release signal that releases the stop of the operation of the solenoid 101 whose temperature has dropped. In addition, the temperature measurement unit 1311 may supply to the control unit 1301 a signal indicating that the stop release signal has been supplied to the lock driving device 10.
[0106] The control unit 1301 receives a signal indicating that a stop release signal has been supplied from the temperature measurement unit 1311 to the key driving device 10, and supplies the note number of the key corresponding to the released solenoid 101 to the performance information analysis unit 1305. In response to this, when determining the pitch data included in the note event data, the performance information analysis unit 1305 determines that the pitch corresponding to the note number of the key corresponding to the released solenoid 101 is a drivable note (first pitch).
[0107] The processing flow executed by the controller 11 is substantially the same as that of the second embodiment described above, except that a sound source event signal is generated for note event data including a note number corresponding to the pitch of the key corresponding to the solenoid 101 that is deactivated.
[0108] 14 is a flow chart showing the processing of this embodiment executed by the controller 11. The processing of the automatic performance function 1300 executed by the controller 11 will be described with reference to FIG.
[0109] The controller 11 executes the performance process based on instruction information input by the user via the operation unit 16 of the keyboard device 1. The process from counting the timing data (timing data subtraction process) (S1410) to judging whether or not the event data includes note event data (S1440) is the same as the process S810 to S840 of the automatic performance function 800 described in the second embodiment, so a detailed description will be omitted.
[0110] If the event data does not include a note event (S1440; NO), a control signal is generated based on the event data (S1470). On the other hand, if the event data includes note event data (S1440; YES), it is determined whether the note number of the pitch data included in the note event data is a drivable sound (first pitch) or an inoperable sound (second pitch) (S1450). Here, an drivable sound is a sound corresponding to the note number of an operable solenoid 101, and an inoperable sound is a sound corresponding to the note number of an inoperable solenoid 101.
[0111] If the note number of the pitch data included in the note event data is the first pitch, i.e., the solenoid 101 of the key driving device 10 is generated based on the note event data (S1470). On the other hand, if the note number of the pitch data included in the note event data is the second pitch, i.e., the solenoid 101 is not capable of being driven (S1450; NO), a sound source event signal is generated (S1460) including a waveform read signal for reading out waveform data indicating a striking sound corresponding to the pitch data, timing data indicating the timing of sound generation of the sound corresponding to the pitch data, velocity data for controlling the volume of the sound, and gate time data indicating the key-on time of the sound. A sound source event generation signal may also be generated to indicate that the sound source event signal has been generated.
[0112] Thereafter, it is determined whether or not the read event data includes an unprocessed event (S1480), and if an unprocessed event is included (S1480; YES), the process returns to S1440. If there are no more unprocessed events (S1480; NO), the controller 11 returns to S1410 and subtracts from the timing data until the next processing timing is reached, and determines the next processing timing.
[0113] In this embodiment, a case where a sound source event signal is generated for some of the note event data has been described, but this embodiment is not limited to this. For example, if a failure occurs in some of the solenoids 101 of the lock driving device 10, not only the operation of the solenoids 101 where the failure occurs but also the operation of the entire lock driving device 10 may stop.
[0114] In this case, the control unit 1301 supplies a signal to the performance information analysis unit 1305 to instruct it to transmit all the note event data to the sound source event signal generation unit 1307. In response to this, the performance information analysis unit 1305 transmits all the note event data to the sound source event signal generation unit 1307, and the sound source event signal generation unit 1307 generates a sound source event signal based on the received note event data.
[0115] As described above, in this embodiment, even if a fault occurs in the key driving device 10 and the operation of the key driving device 10 stops, the waveform data corresponding to the note event data is read from the storage unit 12 and output from the sound source unit 13. The waveform data output from the sound source unit 13 is generated as an electronic sound from the speaker 14. This makes it possible for the keyboard device 1 to generate sound even if the operation of the solenoid 101 has stopped, thereby achieving higher quality automatic performance.
[0116] Although the above describes an example in which the embodiments and modified examples are implemented in a typical grand piano-type keyboard device, the present invention is not limited to this and can also be implemented in an upright piano or a key-operable electronic piano. Also, the present invention is not limited to a piano and can also be implemented in a celesta or glockenspiegel.
[0117] Furthermore, in each of the above embodiments and modified examples, examples have been described in which the keys of the keyboard device cannot be driven by a solenoid, but in a device in which all keys can be driven by solenoids, each of the above embodiments and modified examples can be applied when automatically playing music data that includes note event data for notes outside the range that can be produced by the keys.
[0118] In the above embodiments and modifications, the automatic performance function is executed in the keyboard device. However, the automatic performance function may be executed in a device other than the keyboard device. For example, when performing automatic performance in the keyboard device, a data conversion device other than the keyboard device may download performance information of a piece of music to be played by the automatic performance, execute the above-mentioned automatic performance function based on the acquired performance information, and supply the generated various control signals to the keyboard device. [Explanation of symbols]
[0119] 1: keyboard device, 2: keyboard, 3: shelf, 4: leg beam, 5: leg, 6: action mechanism, 7: balance pin, 8: pedal, 10: key drive device, 11: controller, 12: memory unit, 13: sound source unit, 14: speaker, 15: screw, 16: operation unit, 17: bus, 18: communication unit, 20: key, 30: space, 32: nut, 34: washer, 36: mounting bolt, 100: solenoid storage unit, 101: solenoid, 200: board storage unit, 300 : Drive unit, 701, 901, 1001, 1301: Control unit, 702, 902, 1002, 1302: Timing determination unit, 703, 903, 1003, 1303: Performance information reading unit, 705, 905, 1005, 1305: Performance information analysis unit, 707, 1006: Pitch data conversion unit, 907, 1007, 1307: Sound source event signal generation unit, 709, 909, 1009, 1309: Control signal generation unit, 1311: Temperature measurement unit
Claims
1. Multiple keys and a drive unit for driving a part of the plurality of keys; Equipped with When performance data of a first pitch corresponding to a key that can be driven by the drive unit is received, the drive unit produces a sound based on a first sound production process in which the drive unit produces a sound by driving the key that corresponds to the first pitch; When performance data of a second pitch corresponding to a key that cannot be driven by the drive unit is received, the keyboard device produces sound based on a second sound production process different from the first sound production process.
2. The keyboard device according to claim 1 , wherein the second sound generation process includes a third sound generation process in which the drive unit generates sound by driving a key corresponding to a pitch different from the second pitch.
3. The keyboard device according to claim 1 , wherein the second sound generation process includes a fourth sound generation process that controls a sound source to generate a sound signal corresponding to the second pitch.
4. 2. The keyboard device according to claim 1, wherein the second sound generation process includes a fifth sound generation process for controlling a sound source to generate a sound signal corresponding to the second pitch by driving a key corresponding to a pitch different from the second pitch.
5. the second sound generation process includes a third sound generation process in which the drive unit generates a sound by driving a key corresponding to a pitch different from the second pitch, and a fourth sound generation process in which a sound source is controlled to generate a sound corresponding to the second pitch, When the second pitch is in a range higher than the third pitch, the fourth sound generation process is performed. When the second pitch is in a range lower than the third pitch, the tone is generated by a pre-third tone generation process.
2. The keyboard device according to claim 1, wherein the keyboard device is controlled as follows.
6. On the computer, Receives performance data, When the received performance data is a first pitch corresponding to a key that can be driven by a drive unit for driving the key, a sound is generated based on a first sound generation process that generates a sound by driving the key that corresponds to the first pitch; when the received performance data is a second pitch corresponding to a key that cannot be driven by the drive unit, generating sound based on a second sound generation process different from the first sound generation process; A program for executing the above.
7. the first pitch is a pitch included in a first range, The program according to claim 6 , wherein the second pitch is a pitch included in a second range different from the first range.
8. 8. The computer-readable medium according to claim 6, wherein the second sound generation process includes a third sound generation process for generating a sound by activating a key corresponding to a pitch different from the second pitch.
9. 8. The computer-readable storage medium according to claim 6, wherein the second sound generation process includes a fourth sound generation process for controlling a sound source to generate a sound signal corresponding to the second pitch.
10. 8. The program according to claim 6 or 7, wherein the second sound production process includes a fifth sound production process that drives a key having a pitch different from the second pitch and controls a sound source to generate a sound signal corresponding to the second pitch.
11. the second sound generation process includes a third sound generation process for generating a sound by activating a key corresponding to a pitch different from the second pitch, and a fourth sound generation process for controlling a sound source to generate a sound corresponding to the second pitch, When the second pitch is in a range higher than the third pitch, the fourth sound generation process is performed.
8. The program according to claim 6, further comprising control for sounding the second pitch by a pre-third sounding process when the second pitch is in a range lower than the third pitch.
12. A controller executing a program according to any one of claims 6 to 11.
13. a drive unit for driving at least some of the keys; A controller according to claim 12; A key driving device comprising:
Citation Information
Patent Citations
Mulsical sound information input device
JP1998288983A
Electronic instrument
JP2001209380A
Solenoid device and automatic playing device for keyboard instrument
JP2001343972A
Playing practice device, method for controlling the playing practice device, program for playing aid and recording medium
JP2002333877A
Method and device to mount automatic player
JP2004252302A