1. Field of the Invention
This invention relates to performance operator control apparatuses for controlling various types of apparatuses equipped with performance operators, such as keyboard instruments (e.g., player pianos), which allow users to generate acoustic sounds by depressing keys for striking strings, which allow users to record musical tone data such as MIDI (i.e., Musical Instrument Digital Interface) data, and which are capable of playing automatic performance using acoustic sounds by driving keys based on musical tone data, and multidimensional performance control apparatuses (e.g., music playing devices and game playing devices), which are equipped with performance operators for performing drive controls on musical performance and which are equipped with other types of operators such as joysticks for performing drive controls on musical performance in a multidimensional manner.
This application claims priority on Japanese Patent Applications Nos. 2003-419311, 2003-419312, and 2004-4569, the contents of which are incorporated herein by reference.
2. Description of the Related Art
Conventionally, player pianos (or automatic performance pianos) are each designed to simulate acoustic pianos in which key motions are transmitted to hammers via action mechanisms so that strings are struck by hammers to produce acoustic sounds, wherein they are equipped with solenoids for electronically driving keys and operator I/O control units for controlling electrification with regard to solenoids. For example, when keys are driven using solenoids, an operator I/O control unit turns on or off transistors by drive signals (e.g., PWM signals, namely, pulse-width modulated signals), so that the solenoids are supplied with drive currents (or PWM currents) via transistors. They can be also equipped with feedback controls for driving keys. Japanese Patent Application Publication No. H05-152127 discloses a solenoid abnormality detection circuit for detecting abnormal operation of a solenoid, which upon detection of a short-circuit event (or a semi-short-circuit event) of a transistor, prevents an abnormal current from being supplied to the solenoid, wherein a control circuit inhibits electrification from being applied to the solenoid in response to an abnormality detection signal. In addition, Japanese Patent Application Publication No. H10-177378 discloses a key-touch response control apparatus (or a key-touch sensation control apparatus) that controls reactions of keys when they are depressed and that drives keys (or other performance operators) to play a musical performance.
The aforementioned solenoid abnormality detection circuit may require specific lines for transmitting signals representing the abnormality to the control circuit to inhibit electrification from being applied to the solenoid. This unnecessarily increases the overall area of a circuit board and the total number of lines adapted to a keyboard. Similar problems may occur due to the necessity of the ‘specifically designed’ control circuit. This problem occurs not only in the solenoid abnormality detection circuit detecting the abnormality but in the other circuitry using the configuration for detecting internal monitoring signals, for example, in the circuitry for detecting the temperature of a circuit board of a keyboard so as to output a temperature detection signal to a control circuit and the like.
In addition, the solenoid abnormality detection circuit must be designed such that the abnormality content can be easily determined in order to conduct maintenance for coping with the abnormality. It may be possible to display some message when the control circuit receives an abnormality detection signal, wherein the control circuit must be designed to output signals representing the abnormality to a display circuit and the like. This may require specific lines for transmitting signals representing the abnormality, which in turn unnecessarily increases the overall area of a circuit board and the number of lines adapted to a keyboard. Similar problems may occur due to the necessity of the ‘specifically designed’ control circuit. Normally, it is convenient for users that while an automatic performance is in progress, the temperature control is performed to monitor the temperature of a circuit board of a keyboard, thus notifying users of the occurrence of the temperature abnormality. In addition, it is convenient for users to confirm the occurrence of sensor signals being output from key sensors, hammer sensors, and pedal sensors during the automated drive of keys and/or pedals being automatically operated based on performance data or during the manual drive of keys and/or pedals being manually operated by the player. This also requires specific lines for transmitting signals representing the sensor output, which in turn unnecessarily increases the overall area of a circuit board and the number of lines adapted to the keyboard. That is, the aforementioned modification adapted to the conventional technology causes complication in circuit configurations, which in turn increases the probability that an error may occur in a certain part of the circuitry, whereby it becomes very difficult to precisely notify users of the occurrence of the abnormality.
In addition, the aforementioned operator I/O control unit is constituted by a plurality of integrated circuits (or ICs) having numerous output ports, which output drive signals for driving the prescribed number of keys, and numerous input ports, which input feedback signals regarding servo controls from velocity sensors of solenoids. It may be necessary to perform inspection as to whether or not ICs operate normally; however, the provision of a ‘specifically designed’ inspection circuit increases the overall area of a circuit board and the number of lines adapted to a keyboard.
It is an object of the invention to provide a performance operator control apparatus, which allows an operator I/O control unit having numerous ports to effectively use internal monitoring signals regarding key motions in a player piano and the like without increasing the overall area of a circuit board and the number of lines adapted to a keyboard.
It is another object of the invention to provide a performance operator control circuit having an operator I/O control unit, which allows an internal control circuit thereof to output indicator signals, sensor signals, and inspection signals without increasing the overall area of a circuit board and the number of lines adapted to a keyboard.
It is a further object of the invention to provide a performance operator control apparatus having an operator I/O control unit comprising ICs having numerous ports, which allows inspection to be performed on ICs with ease, regardless of conditions of ports whether they are operating or not.
In a first aspect of the invention, a performance operator control apparatus comprises one or a plurality of performance operators; a plurality of sensors that are attached to the performance operators so as to detect physical parameters regarding the operations of the performance operators; a control unit circuit for performing calculations to produce drive data for driving the performance operators based on the physical parameters; and an operator I/O control unit comprising a plurality of ICs each having an input port and an output port with respect to a plurality of channels, wherein the operator I/O control unit sends the physical parameters from the sensors to the control unit circuit, and wherein at least one channel of the input port that is not assigned to any one of the performance operators is used to input a monitoring signal.
In the above, the control unit circuit detects the operations of the performance operators through communication with the operator I/O control unit via lines. That is, the ‘existing’ lines regarding ICs of the operator I/O control unit, which is designed for the performance operator control apparatus adapted to a player piano, can be used for communication of monitoring signals; therefore, it is possible to prevent the overall area of a circuit board and the total number of lines arranged for the performance operator control apparatus from being increased so much. In addition, it is possible to commonly share the same control routine of the software for controlling the entry of data and signals with the detection of the operation of the performance operator; that is, it is possible to simplify the software; hence, it is possible to reduce the burden of processing with regard to a CPU and the like. By using unoccupied channels that are not assigned to the performance operators (e.g., keys), it is possible to receive a variety of monitoring signals, which can be selected by the software.
In the case of the player piano in which keys are driven by solenoids respectively electrified based on drive data (or performance data), it is possible to list a variety of monitoring signals such as abnormality detection signals representing the electrification abnormality of solenoids, temperature detection signals representing the temperature of the operator I/O control unit, voltage detection signals representing the detected voltage of a drive power source for driving solenoids, and signals representing the user's manipulation of performance operators as well as sensor signals given from key sensors, hammer sensors; and pedal sensors. In the player piano, it is necessary to precisely set the distances between keys and solenoids in order that plungers of solenoids will not interrupt key motions in a manual performance mode. That is, a relatively high precision in assembly is required with respect to the height direction of the keyboard (matching the moving direction of the plunger). Therefore, it is possible to further incorporate ‘optical’ distance sensors in the keyboard so that distance detection signals can be used as monitoring signals in an assembling mode or in a maintenance mode.
In addition, the performance operator control apparatus further includes a plurality of drive components (e.g., solenoids) for driving the performance operators (e.g., keys) and an electrification abnormality detector for detecting the electrification abnormality with regard to the drive component, wherein upon the detection of the electrification abnormality, an abnormality detection signal is produced and used as a monitoring signal.
Furthermore, the performance operator control apparatus further includes a plurality of drive components for driving the performance operators, wherein the operator I/O control unit has an output port paired with the input port with respect to a plurality of channels so that drive data from the control unit circuit is supplied to the drive component via the output port so as to drive the performance operator, wherein the control unit circuit and the operator I/O control unit are connected together in a loop so that the physical parameters of the performance operator are included in serial data and are sent from the operator I/O control unit to the control unit circuit, and the drive data regarding the performance operator together with an inspection signal are included in serial data and are sent from the control unit circuit to the operator I/O control unit, wherein the operator I/O control unit outputs the drive data to the drive component via the output port in parallel, while the operator I/O control unit receives the physical parameters from the sensors via the input port in parallel, and wherein the control unit circuit produces the inspection signal based on information that is input into the input port of the operator I/O control unit and is sent thereto.
The aforementioned performance operator control apparatus allows multidimensional servo controls on one performance operator or plural performance operators by use of a relatively small number of signals, wherein it is capable of receiving monitoring signals during the execution of servo controls; in other words, it is capable of accurately making determination on abnormality in real time by use of a simple configuration. Since the control unit circuit and the operator I/O control unit are connected together in a loop, the physical parameters can be collectively sent from the operator I/O control unit to the control unit circuit in the form of serial data, and the drive data and inspection signals can be collectively sent from the control unit circuit to the operator I/O control unit in the form of serial data. This further simplifies the software; hence, it is possible to further reduce the burden of processing in the CPU and the like.
In a second aspect of the invention, a performance operator control apparatus comprises at least one performance operator; at least one drive component for driving the performance operator; a control unit circuit for performing calculations to produce drive data for driving the performance operator; and an operator I/O control unit that has a output port with respect to a plurality of channels, wherein the drive data from the control unit circuit is sent to the drive component via the output port so as to drive the performance operator, and wherein at least one of the channels that is not assigned to the drive component is used to output an inspection signal via the output port.
In addition, it is possible to further include a temperature abnormality detector for detecting the abnormality of the temperature of the operator I/O control unit, wherein upon detection of the abnormality of the temperature, an inspection signal representing the abnormality of the temperature is output via the output port.
In a third aspect of the invention, a performance operator control apparatus includes at least one performance operator; a plurality of sensors that are attached to the performance operator so as to detect physical parameters regarding an operation of the performance operator; at least one drive component for driving the performance operator; a control unit circuit for performing calculations to produce drive data for driving the performance operator based on the physical parameters; and an operator I/O control unit that has a pair of an input port and an output port in connection with the drive component and the sensors of the performance operator with respect to a plurality of channels, wherein the drive data from the control unit circuit are sent to the drive component via the output port so as to drive the performance operator, and the physical parameters from the sensors are received by the input port and are then sent to the control unit circuit, wherein at least one of the channels that is not assigned to the performance operator is used as a loop connection channel for connecting together the input port and the output port, and wherein the control unit circuit outputs pre-inspection data to the operator I/O control unit in which the pre-inspection data are transferred via the input port of the operator I/O control unit with respect to the loop connection channel and are then supplied to the control unit circuit as post-inspection data, so that the control unit circuit performs an inspection on the operator I/O control unit through the comparison between the pre-inspection data and the post-inspection data.
In the above, the pre-inspection data from the control circuit unit is fed back to the input port from the output port with respect to the loop connection channel as the post-inspection data; then, the control unit circuit compares the pre-inspection data with the post-inspection data. Through the comparison, when the pre-inspection data and post-inspection data do not match each other, or when they differ from each other, it is possible to determine the occurrence of the abnormality in the operator I/O control unit. In addition, the control unit circuit performs communication with the operator I/O control unit via lines so as to drive and control the operator I/O control unit and the keyboard. Furthermore, the loop connection channel can be easily established by merely connecting the input port and output port because it is an unoccupied channel that is not assigned to the performance operator.
In addition, the output port of the operator I/O control unit performs digital-to-analog conversion on the pre-inspection data, while the input port of the operator I/O control unit performs analog-to-digital conversion on analog signals input thereto. That is, the pre-inspection data are converted into analog signals in the output port, and the analog signals are converted into the post-inspection data in the input port, whereby it is possible to detect the abnormality that occurs in the output port performing the digital-to-analog conversion and the input port performing the analog-to-digital conversion. Herein, it is possible to set a prescribed allowable range for the determination of the abnormality with respect to an error (or a difference) between the pre-inspection data and the post-inspection data.
These and other objects, aspects, and embodiments of the present invention will be described in more detail with reference to the following drawings, in which:
This invention will be described in further detail by way of examples with reference to the accompanying drawings.
The second communication port 50 performs data input/output operations with a key drive unit 2 (serving as an operator I/O control unit . The key drive unit 2 comprises a plurality of key I/O control ICs (denoted as “key I/O”) 21-1, 21-2, 21-3, 21-4, 21-5, and 21-6 for controlling the keys of the keyboard 4. Specifically, the key I/O control IC 21-1 is attached to a first board 221; the key I/O control ICs 21-2 and 21-3 are attached to a second board 222; the key I/O control IC 21-4 is attached to a third board 223; and the key I/O control ICs 21-5 and 21-6 are attached to a fourth board 224. The motion control unit 1 (particularly, the second communication port 50) and the key drive unit 2 (comprising the key I/O control ICs 21-1 to 21-6) are connected together in a loop via a serial bus 5. All the key I/O control ICs 21-1 to 21-6 have substantially the same circuit configuration, which inputs and receives various signals with respect to various circuit elements ‘3’ incorporated in the keyboard 4. As the circuit elements 3, it is possible to list solenoid drive circuits (for driving keys), velocity sensors for detecting velocities of plungers of solenoids, solenoid abnormality detection circuits for detecting ‘abnormal’ electrification of solenoids, temperature sensors for detecting the temperature of the key drive unit 2 (i.e., operator I/O control unit), and LED drive circuits for driving LEDs (i.e., light-emitting diodes) making alerts upon detection of the abnormality. The solenoid abnormality detection circuit can be configured similarly to one disclosed in Japanese Patent Application Publication No. H05-152127; hence, the detailed description thereof will be omitted.
The D/A output port 21A performs digital-to-analog conversion (i.e., D/A conversion) on digital data (i.e., sixteen bits per each channel) serially input thereto, so that digital data are converted into analog signals, which are output in parallel with respect to sixteen channels. The A/D input port 21B performs analog-to-digital conversion (i.e., A/D conversion) on analog signals supplied thereto in parallel, so that analog signals are converted into digital data, which are processed in a serial form and are then output to the other key I/O control IC or the motion control unit 1. Herein, the keyboard drive control in the automatic performance mode is performed as similar to the conventional player piano in such a way that the D/A output port 21A performs D/A conversion on digital data for driving solenoids, which are supplied from the motion control unit 1 with respect to sixteen channels, so as to produce drive signals (i.e., pulse-width modulated signals or PWM signals), which are then output to the solenoid drive circuits in parallel. In addition, the A/D input port 21B performs A/D conversion on ‘analog’ velocity signals from velocity sensors attached to solenoids, thus producing digital data, which are then sent to the motion control unit 1. Velocity signals are used for feedback controls on solenoids. Specifically, in the case of the first key I/O control IC 21-1, velocity signals of twelve channels and temperature detection signals of four channels are processed into ‘serial’ digital data (i.e., 16-bit×16ch=256 bits), which are then sent to the motion control unit 1 via the other key I/O control ICs 21-2 to 21-6. With respect to the key I/O control ICs 21-1 to 21-6, there are provided six sets of digital data of 256 bits, all of which are processed into a serial form so as to realize a data length of 1536 bits.
The present embodiment performs data communication between the motion control unit 1 and the key drive unit 2 in the automatic performance mode as follows:
In a single transmission time slot, the CPU 10 of the motion control unit 1 produces data for all channels with respect to each of the D/A output ports of the key I/O control ICs 21-1 to 21-6, thus making setup of the data in the key drive unit 2. Thus, solenoids corresponding to the designated keys are adequately driven, and the prescribed processing is performed in response to inspection signals. In addition, monitoring signals and velocity signals of solenoids are supplied to each of the A/D input ports of the key I/O control ICs 21-1 to 21-6, wherein they are subjected to the A/D conversion to produce digital data, which are then received by the CPU 10 of the motion control unit 1 in a single reception time slot.
The specific numbers of the occupied channels and unoccupied channels differs with respect to each of the key I/O control ICs 21-1 to 21-6. They can be summarized in Table 1 with respect to four boards 221 to 224 respectively.
That is, as shown in
Details of the monitoring signals input into the corresponding key I/O control ICs and the inspection signals output from the corresponding key I/O control ICs are as follows:
In the present embodiment, the key I/O control ICs input abnormality detection signals, representing the electrification abnormality of solenoids detected by solenoid abnormality detection circuits, as monitoring signals. In addition, they also input temperature detection signals detected by temperature sensors, which are fixed to prescribed positions of the key drive unit 2, as monitoring signals. It is possible for them to further input voltage detection signals (representing the detection result of the drive power source for driving solenoids) and operator signals (representing the user's manual operation on performance operators) as monitoring signals. Furthermore, in the present embodiment, the key I/O control ICs output LED drive signals (for driving LEDs upon the detection of the abnormality of electrification regarding solenoids and upon the detection of the abnormality of temperature regarding the key drive unit 2) as inspection signals.
It is possible to send various types of sensor signals output from keyboard sensors such as key sensors and hammer sensors, which are arranged in the keyboard 4, and other sensor signals given from pedal sensors to the motion control unit 1, wherein the sensor signals are stored in a hard-disk unit and the like connected with the motion control unit 1 via a bus, so that they are output as inspection signals for maintenance, for example. In addition, it is possible to use other data representing control values for controlling various circuits and devices of the player piano as inspection signals. It is possible to use all the eight unoccupied channels so as to provide eight types of monitoring signals and inspection signals; it is also possible to use the prescribed number of channels within the eight unoccupied channels for the reception and transmission of monitoring signals and inspection signals.
The player piano of the present embodiment is designed such that the operator I/O control unit (i.e., key drive unit 2) comprises a plurality of ICs (i.e., key I/O control ICs 21) having plural input/output ports (each consisting of sixteen channels), wherein the prescribed number of ICs are arranged to provide the prescribed number of I/O ports, which exceeds the total number of keys (i.e., eighty-eight keys) of the keyboard 4, so that a certain number of channels of the ICs remains as unoccupied channels that are not assigned to keys. The aforementioned ICs each having substantially the same specification are used to cope with different types of player pianos (having different numbers of keys), wherein the number of ICs is adequately set in response to the number of keys. Therefore, the basic design and configuration of the present embodiment can be applied to different types of player pianos except that the number of ICs should be adequately determined.
First, the flow proceeds to step S1 in which a decision is made as to whether or not an automatic performance mode is designated. If the automatic performance is not designated, the flow proceeds to step S2 in which the CPU 10 performs other processing. In the automatic performance mode, the CPU 10 performs processing in accordance with prescribed clock cycles. In step S3, MIDI data from the MIDI controller (see
In step S6, the CPU 10 receives data regarding all the A/D input channels from the key drive unit 2. In step S7, the CPU 10 performs feedback control processing on solenoids in response to velocity signals. In step S8, a decision is made as to whether or not inspection signals (within the received data) include an abnormality detection signal (representing the electrification abnormality of a solenoid). When such an abnormality detection signal is included, the CPU 10 sets up a certain flag and the like so as to inhibit the corresponding solenoid from being electrified in step S9. Such solenoid flag set information is used to prevent the corresponding solenoid from being driven when the CPU 10 creates transmitting data for the key drive unit 2 (see step S4).
In step S10, a decision is made as to whether or not the temperature abnormality occurs on the basis of temperature detection signals within the received data. When the temperature abnormality is detected, the flow proceeds to step S11 in which the CPU 10 creates data for turning on the prescribed LED. Such LED drive data are included in the transmitting data for all channels of the key drive unit 2, which are created in step S4, by designating certain unoccupied D/A output channels. In step S12, a decision is made as to whether or not the CPU 10 detects the end of the MIDI data transmitted thereto. Thereafter, the CPU 10 repeats the aforementioned steps counted from step S3 unless it detects the end of the MIDI data.
The CPU 10 repeatedly performs the aforementioned steps (i.e., steps S3 to S12) in each clock period, so that the player piano plays automatic performance based on MIDI data, wherein upon detection of abnormality, the player piano automatically stops driving the corresponding solenoid or turns on the LED indicating the temperature abnormality. In addition, it is possible to arrange indicators and the like with respect to keys to cope with the detection of the electrification abnormality of the corresponding solenoids.
In a maintenance mode, when keys are driven based on MIDI data, or when the keyboard 4 is manually performed by the user, the motion control unit 1 inputs various sensor signals from the keyboard sensors such as the key sensors and hammer sensors, wherein the sensor signals are output from the ‘unoccupied’ D/A output channels of the key I/O control ICs 21-1 to 21-3 as inspection signals. By examining the inspection signals, it is possible to make determination as to whether or not various parts of the player piano operate normally.
In the above, the present embodiment is described such that the channel configuration of the key drive unit 2 is determined with reference to Table 1. Of course, it is possible to adequately change the channel configuration of the key drive unit 2. For example, it is possible to adopt the channel configuration as shown in Table 2.
The content of Table 2 is determined such that the hardware configurations of the key I/O control ICs attached to the first and third boards 221 and 223 are each identical to the hardware configuration shown in
Incidentally, the present embodiment can be modified in a variety of ways within the scope of the invention. That is, the present embodiment is designed such that each key I/O control IC has sixteen channels, whereas it is possible to use other types of ICs having different numbers of channels. For example, when the key drive unit 2 is designed using other key I/O control ICs each having twelve channels, it is necessary to provide eight ICs to cope with eighty-eight keys of the keyboard 4, wherein it is possible to provide in total eight unoccupied channels (i.e., 12×8−88=8), which can be used for inputting monitoring signals and for outputting inspection signals. The number of keys incorporated in the keyboard 4 is not necessarily limited to eighty-eight; hence, it is possible to use other types of keyboards that can allow key I/O control ICs to provide the prescribed number of unoccupied channels.
Monitoring signals are not necessarily limited to those used in the present embodiment. It is possible to use distance detection signals for detecting the distance (or position) of the keyboard in its height direction in the maintenance mode or in the assembling mode. In addition, distance information regarding distance detection signals can be output as inspection signals.
The present embodiment is designed to output inspection signals, whereas this invention is not necessarily designed to output inspection signals, that is, this invention requires at least monitoring signals input thereto.
The present embodiment is adapted to the player piano, whereas this invention is not necessarily limited to the player piano. That is, this invention can be applied to other types of keyboard instruments for performing key-touch controls and multidimensional performance control apparatuses using multidimensional performance operators such as joysticks that are operated to perform drive controls on musical performance. In the case of the multidimensional performance control apparatus, a plurality of channels are arranged to perform multidimensional control on musical performance wherein each single channel is used for detection and drive control on the performance operator in one dimension.
This invention can be applied to other types of automatic performance apparatuses (e.g., an electronic orgel, or an electronic music box) driven by solenoids, other than the aforementioned player piano. The present embodiment teaches the feedback-control-type player piano having IN/OUT terminals each having the 32-channel configuration or 16-channel configuration realized by key I/O control ICs. Of course, this invention can be applied to other types of player pianos each having only the input channels, e.g., so-called performance data recording pianos and other electronic musical instruments that do not drive keys. In this case, it is possible to easily modify them to serve as feedback-control-type player pianos by externally providing ICs for outputting inspection signals and the like.
Next, a player piano incorporating a performance operator control apparatus in accordance with a second embodiment of the invention will be described with reference to
The present embodiment performs data communication between the motion control unit 1 and the key drive unit 2 in an automatic performance mode as follows:
The CPU 10 of the motion control unit 1 creates data for all channels with regard to each of the D/A output ports of the key I/O control ICs 21-1 to 21-6 in a single transmission time slot, so that the created data are set to the key drive unit 2. Thus, solenoids corresponding to the designated keys are adequately driven; then, pre-inspection data are output from the key I/O control IC 21, and post-inspection data are input to the key I/O control IC 21. In addition, velocity signals of solenoids are supplied to each of the A/D input ports of the key I/O control ICs 21-1 to 21-6, wherein the velocity signals and the post-inspection data are subjected to the A/D conversion so as to produce digital data for all channels, which are received by the CPU 10 of the motion control unit 1 in a single reception time slot.
With respect to one of the two ‘unoccupied’ channels, an output terminal ‘O1’ of the D/A output port 21A is connected with an input terminal ‘I1’ of the A/D input port 21B in a loop. That is, in the key drive unit 2 (i.e., the operator I/O control unit), no key (or no performance operator) is assigned to the unoccupied channels, one of which forms a loop connection channel for connecting together the prescribed input terminal and the prescribed output terminal. The D/A output port 21A converts pre-inspection data from the motion control unit 1 into an analog signal, which is then output from the output terminal O1. This analog signal (i.e., an inspection signal) is supplied to the input terminal I1 of the A/D input port 21B, wherein it is converted into a digital signal, which is then sent to the motion control unit 1. With respect to another unoccupied channel, a temperature detection signal from the temperature sensor is input into an input terminal I2 of the A/D input port 21B, while a LED drive signal for driving a LED is output from an output terminal O2 of the D/A output port 21A.
Table 3 shows the hardware channel configuration adapted to the present embodiment as well as the numbers of the occupied channels and the numbers of the unoccupied channels with respect to the six key I/O control ICs 21-1 to 21-6 respectively.
Table 3 shows that each of the key I/O control ICs 21-1 and 21-2 has fourteen occupied channels and two unoccupied channels as shown in
First, the flow proceeds to step S11 in which a decision is made as to whether or not an automatic performance mode is designated. If the automatic performance is not designated, the flow proceeds to step S12 in which the CPU 10 performs other processing. In the automatic performance mode, the CPU 10 performs processing in accordance with prescribed clock cycles. In step S13, MIDI data from the MIDI controller (i.e., performance data and event data) are read from a prescribed buffer (not shown). In step S14, the CPU 10 creates data for all channels including drive signals for driving designated keys and pre-inspection data regarding the unoccupied channels based on the MIDI data. In step S15, the created data are sent to the key drive unit 2, and pedal drive signals are output from the first communication port 40 to the other unit.
In step S16, the CPU 10 receives data regarding all the A/D input channels from the key drive unit 2. In step S17, the CPU 10 performs feedback control processing on solenoids in response to velocity signals. In step S18, the pre-inspection data, which are previously output from the D/A output port 21A, are compared with post-inspection data included in the received data with respect to the loop connection channel, so that a decision is made as to whether or not the abnormality occurs in the key I/O control IC 21. That is, the CPU 10 detects the occurrence of the abnormality by making a decision as to whether or not an absolute value of the difference between the pre-inspection data and the post-inspection data belongs to a prescribed allowable range. For example, when the absolute value of the difference is ‘1’ or ‘0’ (which can be represented by one bit), the CPU 10 determines that the key I/O control IC 21 operates normally, whereas when it is ‘2’ or more, the CPU 10 detects the occurrence of the abnormality with respect to the key I/O control IC 21. When a decision result of step S18 is “YES” representing the occurrence of the abnormality, the flow proceeds to step S19 in which the CPU 10 produces LED drive data for turning on the corresponding LED. Such LED drive data are included in the transmitting data for all channels of the key drive unit 2, which are created in step S14, by designating the unoccupied D/A output channel (i.e., output terminal O2). In step S20, a decision is made as to whether or not the temperature abnormality occurs based on the temperature detection signal included in the received data. When a decision result of step S20 is “YES” representing the occurrence of the temperature abnormality, the flow proceeds to step S19 in which the CPU 10 produces LED drive data for turning on the corresponding LED. In step S21, a decision is made as to whether or not the CPU 10 detects the end of the MIDI data transmitted thereto. Thereafter, the CPU 10 repeats the aforementioned steps counted from step S13 unless it detects the end of the MIDI data.
The CPU 10 repeatedly performs the aforementioned steps (i.e., steps S13 to S21) in each clock period, so that the player piano plays automatic performance based on MIDI data, wherein upon detection of the abnormality of the key I/O control IC 21, the corresponding LED is turned on to indicate the occurrence of the key I/O control IC 21. In addition, the present embodiment is also capable of indicating the occurrence of the temperature abnormality in the key drive unit 2.
The present embodiment can be modified in a variety of ways as follows:
The aforementioned allowable range for the determination of the abnormality of ICs is not necessarily limited to one described in conjunction with the present embodiment; hence, it can be adequately set in consideration of the required precision of the D/A conversion and A/D conversion.
The present embodiment is designed to detect the abnormality of ICs during an automatic performance mode, whereas it can be modified such that the abnormality is detected during a maintenance mode.
The present embodiment is designed such that a temperature detection signal of the temperature sensor incorporated in the key drive unit 2, which is input with respect to the ‘unoccupied’ A/D input channel, is used as a monitoring signal, whereas it can be modified such that abnormality detection signals representing the electrification abnormality of solenoids, voltage detection signals representing the detected voltage of a drive power source for driving solenoids, and operator manipulation signals representing the user's manipulation of performance operators can be used as monitoring signals. For example, sensor signals from keyboard sensors such as key sensors and hammer sensors installed in the keyboard and other sensor signals from pedal sensors are input into the motion control unit 1, wherein they are stored in a hard-disk unit connected with the motion control unit 1 via a bus and are then used as inspection signals in a maintenance mode. In addition, other control values set for various controls can be output to an external device and the like. The present embodiment at least requires input/output operations regarding pre-inspection data by use of the loop connection channel; hence, it is not always required to allow monitoring signals to input thereto.
The present embodiment is designed with reference to the aforementioned hardware channel configuration and input/output channel assignments as shown in Table 3, which can be adequately modified to realize the prescribed number of unoccupied channels. The present embodiment is designed using key I/O control ICs each having the 16-channel configuration, which can be changed as necessary. For example, when the key drive unit 2 is configured using other key I/O control ICs each having the 12-channel configuration, it is necessary to provide in total eight ICs to cope with eighty-eight keys, wherein it is possible to realize in total eight unoccupied channels (i.e., 12×8−88=8), which can be used for input/output operations regarding inspection signals. Of course, the total number of keys of the keyboard 4 adapted to the present embodiment is not necessarily limited to ‘88’; hence, the present embodiment can be easily modified to cope with any number of keys unless as long as the prescribed number of unoccupied channels can be realized using key I/O control ICs.
As this invention may be embodied in several forms without departing from the spirit or essential characteristics thereof, the aforementioned embodiments are therefore illustrative and not restrictive, since the scope of the invention is defined by the appended claims rather than by the description preceding them, and all changes that fall within metes and bounds of the claims, or equivalents of such metes and bounds are therefore intended to be embraced by the claims.
Number | Date | Country | Kind |
---|---|---|---|
2003-419311 | Dec 2003 | JP | national |
2003-419312 | Dec 2003 | JP | national |
2004-004569 | Jan 2004 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
5291011 | Mantani | Mar 1994 | A |
5345181 | Mantani et al. | Sep 1994 | A |
5922983 | Muramatsu | Jul 1999 | A |
6121535 | Muramatsu | Sep 2000 | A |
6737571 | Furukawa | May 2004 | B2 |
20020156509 | Cheung | Oct 2002 | A1 |
Number | Date | Country |
---|---|---|
05-152127 | Jun 1993 | JP |
10-177378 | Jun 1998 | JP |
Number | Date | Country | |
---|---|---|---|
20050132871 A1 | Jun 2005 | US |