Electronic percussion instrument, control device, velocity calculation program and velocity calculation method
Patent Information
- Application Number
- JP2023125312
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-08-01
- Publication Date
- 2025-02-14
Smart Images

Figure 2025021539000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an electronic percussion instrument, a control device, a velocity calculation program, and a velocity calculation method. [Background technology]
[0002] Patent Document 1 discloses an electronic percussion instrument having a head 5 configured as a striking surface to be struck with a stick or the like, and a head sensor 21 provided below the center of the head 5. A cushion member 24 is provided between the head 5 and the head sensor 21, and vibrations generated when the head 5 is struck with a stick or the like are transmitted to the head sensor 21 via the cushion member 24. A velocity is calculated from an output value based on the vibrations from the head 5 detected by the head sensor 21, and a musical tone is output according to the calculated velocity. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2004-198657 A Summary of the Invention [Problem to be solved by the invention]
[0004] Incidentally, the head sensor 21 is provided below the center of the head 5. Therefore, even if the strike is of the same strength, the sensitivity of the head sensor 21 to strikes on the periphery of the head 5 is lower than that to strikes on the center of the head 5. The velocity of a strike on the periphery of the head 5 calculated from the output value of such a head sensor 21 is smaller than the velocity of a strike on the center of the head 5 by a strike of the same strength for which the same velocity should be calculated. This causes a problem in that the accuracy of the velocity for strikes on the periphery of the head is reduced.
[0005] The present invention has been made to solve the above-mentioned problems, and aims to provide an electronic percussion instrument, a control device, a velocity calculation program, and a velocity calculation method that can improve the accuracy of the velocity for strikes on the periphery of the head. [Means for solving the problem]
[0006] In order to achieve this object, the electronic percussion instrument of the present invention comprises a housing, a head attached to the housing and constituting a striking surface, a head sensor that detects strikes on the head, a housing sensor that detects vibrations of the housing, a head result acquisition means that acquires detection results from the head sensor, a housing result acquisition means that acquires detection results from the housing sensor, and a velocity calculation means that calculates the velocity when the head is struck based on the detection results acquired by the head result acquisition means and the detection results acquired by the housing result acquisition means.
[0007] The control device of the present invention controls a sound source unit based on the detection results of a head sensor that detects a strike on the head that constitutes the striking surface of a percussion instrument and the detection results from a housing sensor that detects vibrations of the housing of the percussion instrument, and is equipped with a head result acquisition means that acquires the detection results from the head sensor, a housing result acquisition means that acquires the detection results from the housing sensor, and a velocity calculation means that calculates the velocity when the head is struck based on the detection results acquired by the head result acquisition means and the detection results acquired by the housing result acquisition means.
[0008] The velocity calculation program of the present invention is a program that causes a computer to execute a velocity calculation process to calculate a velocity, and causes the computer to execute a head result acquisition step that acquires detection results from a head sensor that detects an impact on the head that constitutes the striking surface of an electronic percussion instrument, a housing result acquisition step that acquires detection results from a housing sensor that detects vibrations of the housing of the electronic percussion instrument, and a velocity calculation step that calculates the velocity of the impact based on the detection results acquired in the head result acquisition step and the detection results acquired in the housing result acquisition step.
[0009] In addition, the velocity calculation method of the present invention includes a head result acquisition step of acquiring detection results from a head sensor that detects an impact on the head that constitutes the striking surface of the electronic percussion instrument, a housing result acquisition step of acquiring detection results from a housing sensor that detects vibrations of the housing of the electronic percussion instrument, and a velocity calculation step of calculating the velocity of the impact based on the detection results acquired in the head result acquisition step and the detection results acquired in the housing result acquisition step. [Brief description of the drawings]
[0010] [Figure 1] FIG. 2 is a diagram illustrating the structure of an electronic drum. [Diagram 2] (a) is a diagram showing the output waveforms of the head sensor and rim sensor when the impact position is the center of the head (diameter 12 inches), (b) is a diagram showing the output waveforms of the head sensor and rim sensor when the impact position is 70 mm away from the center of the head (diameter 12 inches), and (c) is a diagram showing the output waveforms of the head sensor and rim sensor when the impact position is 140 mm away from the center of the head (diameter 12 inches). [Diagram 3] FIG. 2 is a functional block diagram of the electronic drum. [Figure 4] 1A is a block diagram showing the electrical configuration of an electronic drum, FIG. 1B is a diagram showing a model of rim coefficient data, and FIG. 1C is a diagram showing the relationship between striking position and weighting coefficient. [Diagram 5]13 is a flowchart of a main process. [Figure 6] FIG. 10 is a block diagram showing an electrical configuration of a control device in a modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Preferred embodiments will now be described with reference to the accompanying drawings. First, the structure of an electronic drum 1 according to this embodiment will be described with reference to FIG. 1. FIG. 1 is a diagram for explaining the structure of the electronic drum 1. FIG. 1 shows a cross section of the electronic drum 1, with some parts omitted. The upper side of FIG. 1 is the upper side of the electronic drum 1, and the lower side is the lower side of the electronic drum 1.
[0012] As shown in Fig. 1, the electronic drum 1 is an electronic percussion instrument that imitates a drum that is played by a player using sticks, etc. The electronic drum 1 has a body 2, a sensor frame 4, a head 5, and a rim 6, and is configured to be assembled by stacking these components in order and fixing the rim 6 to the body 2.
[0013] The body 2 is a member that forms the skeleton (casing) of the electronic drum 1, and is formed into a cylindrical shape from, for example, wood or resin material. A sensor frame 4 (described later) is housed in the inner periphery of the body 2, and a head 5 and a rim 6 (described later) are provided on the upper end side of the body 2. In addition, a plurality of engagement portions 3 are provided on the outer periphery of the body 2.
[0014] Sensor frame 4 is a member that attaches head sensor 8 and rim sensor 9 (described later) to electronic drum 1, and transmits vibrations caused by striking rim 6 to rim sensor 9. Head 5 is the part configured as a striking surface that is struck by a stick or the like, and is configured by adhering striking member 5a, which is made of synthetic fibers woven into a net shape, to frame 5b.
[0015] The striking surface of the electronic drum 1 formed by the head 5 is circular when viewed from above, with a diameter of 12 inches (approximately 305 mm). The shape of the striking surface of the electronic drum 1 is not limited to a circle, and may be other shapes such as an oval or a rectangle. The diameter of the striking surface of the electronic drum 1 is also not limited to 12 inches, and may be greater than or less than 12 inches.
[0016] The rim 6 is a member that secures the sensor frame 4 and head 5 to the body 2, and also surrounds the outer periphery of the head 5 to apply tension to the head 5. The rim 6 is provided with a rim fitting 6a and a cover member 6b. The rim fitting 6a is a member to which an engagement bolt 7, which will be described later, is attached. The cover member 6b is a member made of an elastic material such as rubber that covers the upper end of the rim fitting 6a. The cushioning effect of the elastic cover member 6b reduces the impact sound of the rim 6 generated when a rim shot is made.
[0017] The engagement bolts 7 are members that secure the rim 6 to the body 2. The engagement bolts 7 are provided in the same number as the engagement portions 3 provided on the body 2, and are arranged at approximately the same intervals around the circumferential direction of the rim fitting 6a. When these engagement bolts 7 are screwed into the engagement portions 3, the rim 6 is secured to the body 2 as described above, and the rim 6 and sensor frame 4 are connected via the head 5, forming a transmission path for vibrations during a rim shot to the rim sensor 9, which will be described later.
[0018] A head sensor 8 and a rim sensor 9 are provided in the center of the sensor frame 4. The head sensor 8 is a sensor that detects that the striking member 5a of the head 5 has been struck, and is composed of a piezoelectric element. The head sensor 8 is provided in the upper center of the sensor frame 4. A cushion member 10 made of an elastic member such as sponge is inserted between the head sensor 8 and the striking member 5a of the head 5, and vibrations generated when the striking member 5a of the head 5 is struck with a stick or the like are transmitted to the head sensor 8 via the cushion member 10. The state of the transmitted vibrations is then detected by the head sensor 8. Note that the head sensor 8 is not limited to being provided in the center of the sensor frame 4, i.e., in the center of the head 5, and may be provided, for example, in a position shifted from the center of the head 5 toward the body 2.
[0019] The rim sensor 9 is a sensor that detects vibrations caused by striking the rim 6, and is composed of a piezoelectric element like the head sensor 8. The rim sensor 9 is provided at the bottom and center of the sensor frame 4. The sensor frame 4 is in contact with the rim 6 via the head 5, so vibrations generated when the cover member 6b of the rim 6 is struck with a stick or the like are transmitted to the rim sensor 9 via the sensor frame 4, and the state of the transmitted vibration is detected by the rim sensor 9.
[0020] In addition, since the sensor frame 4 is also in contact with the striking member 5a of the head 5 and the body 2, vibrations of the striking of the head 5 on the striking member 5a are transmitted to the sensor frame 4 directly to the striking member 5a or via the body 2 and detected by the rim sensor 9. Hereinafter, "the striking of the striking member 5a of the head 5" will be abbreviated as "the striking of the head 5" etc., and similarly, "the striking of the cover member 6b of the rim 6" will be abbreviated as "the striking of the rim 6" etc. Note that the head sensor 8 and rim sensor 9 are not limited to those constituted by piezoelectric elements, and may be constituted by those that detect other vibrations.
[0021] In electronic drum 1, musical tones are generated and output when head 5 is struck based on the strike position, which is the position where head 5 is struck, and velocity Vc, which represents the strength of the strike calculated when head 5 is struck. In this embodiment, velocity Vc used to generate such musical tones is calculated using not only the output value of head sensor 8, which detects the vibration state of head 5, but also the output value of rim sensor 9. A method of calculating velocity Vc in this embodiment will be described with reference to FIG. 2.
[0022] Figure 2(a) shows the output waveforms hs1 and rs1 of the head sensor 8 and the rim sensor 9 when the impact position is the center of the head 5 (diameter 12 inches), Figure 2(b) shows the output waveforms hs2 and rs2 of the head sensor 8 and the rim sensor 9 when the impact position is 70 mm from the center of the head 5 (diameter 12 inches), and Figure 2(c) shows the output waveforms hs3 and rs3 of the head sensor 8 and the rim sensor 9 when the impact position is 140 mm from the center of the head 5 (diameter 12 inches).
[0023] 2(a) to 2(c) show output waveforms which are waveforms showing the transition of the output values outputted from the head sensor 8 and the rim sensor 9 when the same strength of impact is applied to each impact position of the head 5. The output waveform of the head sensor 8 is shown by a dashed line, and the output waveform of the rim sensor 9 is shown by a solid line.
[0024] The output waveforms hs1 and rs1 in Fig. 2(a) represent the waveforms of the output values detected by the head sensor 8 and the rim sensor 9, respectively, when the impact position is the center of the head 5, that is, directly above the head sensor 8. In addition to these, Fig. 2(a) also shows the scan time ScT, which is a predetermined period from the point when the start of the impact is detected. The scan time ScT is also shown in Figs. 2(b) and (c).
[0025] In this embodiment, the length of the scan time ScT is set to "2 milliseconds". The length of the scan time ScT is not limited to 2 milliseconds, and may be 2 milliseconds or more or 2 milliseconds or less. For example, the scan time ScT may be set according to the size (diameter) of the head 5 or the material of the head 5, or the scan time ScT may be configured to be arbitrarily set by the user. In addition, since the start of an impact is detected in this embodiment using existing technology, a detailed description will be omitted.
[0026] When the head 5 is struck, the head 5 is first pushed downward by the strike, and the head sensor 8, to which this push is transmitted via the cushion member 10, outputs a negative output value according to the amount of push. After detecting output value Pv1 at peak P1, where the head 5 is pushed furthest downward, the restoring force of the striking member 5a, which is made of synthetic fiber, causes the head 5 to return to its original position before it was struck. Accordingly, the output value detected by the head sensor 8 also increases after peak P1.
[0027] On the other hand, in the case of the rim sensor 9, since there is a distance between the center of the head 5, which is the impact position, and the sensor frame 4, after a short interval after the output waveform hs1 from the head sensor 8 begins to change, the output waveform rs1 from the rim sensor 9 gradually begins to change, and eventually the amplitude of the output waveform rs1 becomes larger.
[0028] The output waveform rs1 frequently goes up and down, in other words, the frequency of the output waveform rs1 is higher than the frequency of the output waveform hs1 from the head sensor 8. This is because the rigidity of the rim 6, sensor frame 4 and body 2, which are the transmission path from the head 5 to the rim sensor 9, is higher than the striking member 5a whose vibrations are detected by the head sensor 8. Note that the head sensor 8 and rim sensor 9 are sensors that output positive or negative output values, but are not limited to this and may be sensors that output only positive values.
[0029] Next, as shown in Figure 2(b), when the impact position is 70 mm from the center of the head 5, which is outside the center of the head 5, the output waveforms hs2 and rs2 from the head sensor 8 and rim sensor 9 are similar to the above-mentioned output waveforms hs1 and rs2, respectively. However, since the impact position is farther away from the head sensor 8 than in the case of Figure 2(a), the output value Pv2 detected at peak P2 of the output waveform hs2 is smaller than the output value Pv1 detected at peak P1 of the output waveform hs1 in Figure 2(a) above.
[0030] On the other hand, since the impact position in Figure 2(b) is closer to the sensor frame 4 than in Figure 2(a), the timing at which the rim sensor 9 detects the start of vibration and the output waveform rs2 begins to change is earlier than the output waveform rs1 in Figure 2(a).
[0031] As shown in Figure 2(c), when the impact position is further outward, 140 mm from the center of the head 5, the output waveforms hs3 and rs3 from the head sensor 8 and rim sensor 9 have waveform shapes similar to the above-mentioned output waveforms hs1, hs2 and output waveforms rs1, rs2, respectively, and because the impact position is further away from the head sensor 8 than in the case of Figure 2(b), the output value Pv3 detected at peak P3 of the output waveform hs3 is smaller than the output value Pv2 detected at peak P2 of the output waveform hs2 in Figure 2(b) above.
[0032] On the other hand, since the impact position in Figure 2(c) is closer to the sensor frame 4 than in Figure 2(b), the timing at which the rim sensor 9 detects the start of vibration and the output waveform rs3 begins to change is earlier than the output waveform rs2 in Figure 2(b).
[0033] Conventionally, the velocity Vc was calculated based on the maximum value of the amplitude detected by the head sensor 8 within the scan time ScT, that is, the output values Pv1 to Pv3 of the peaks P1 to P3 in Fig. 2(a) to (c). However, as described above, even when the head 5 is struck with the same strength, the output value of the head sensor 8 becomes smaller as the striking position becomes farther from the head sensor 8. In other words, the sensitivity of the head sensor 8 to the striking decreases as the striking position becomes farther from the head sensor 8. If the velocity Vc is calculated based on such an output value of the head sensor 8, even when the head 5 is struck with the same strength, the calculated velocity Vc becomes smaller as the striking position becomes farther from the head sensor 8, and the accuracy of the calculated velocity Vc decreases.
[0034] Here, as shown in Figures 2(a) to (c), the output waveform of the rim sensor 9 is such that the farther the impact position is from the head sensor 8, the earlier the start of the impact on the head 5 is detected, and therefore the output value of the rim sensor 9 detected during the scan time ScT can be said to accurately reflect the impact situation in the peripheral part of the head 5 away from the head sensor 8.
[0035] Therefore, in this embodiment, the velocity Vc when the head 5 is struck is calculated by combining the output value of the head sensor 8 and the output value of the rim sensor 9. Specifically, if the maximum absolute value of the output values detected by the head sensor 8 during the scan time ScT from when the start of the strike on the head 5 is detected is taken as the peak value Ph, that is, the absolute value of the output values Pv1 to Pv3 detected at the peaks P1 to P3 in Figures 2(a) to 2(c) is taken as the peak value Ph, and the energy of the output value detected by the rim sensor 9 during the energy calculation period, which is a predetermined period during the scan time ScT, is taken as the energy value Er, the velocity Vc is calculated by the following formula 1.
[0036]
number
[0037] In this way, the velocity Vc is calculated based on the energy value Er of the rim sensor 9 in addition to the peak value Ph of the head sensor 8. The rim sensor 9 detects vibrations of the rim 6 and body 2 on which the head 5 is mounted, and is therefore more sensitive to strikes on the periphery of the head 5 than the head sensor 8. By using this energy value Er of the rim sensor 9 in calculating the velocity Vc, the accuracy of the velocity Vc calculated for strikes on the periphery of the head 5 can be improved.
[0038] The energy value Er of the rim sensor 9 used to calculate the velocity Vc is an integral value obtained by adding up the absolute values of the output values of the rim sensor 9. As shown in Figures 2(a) to (c), the output waveforms rs1 to rs3 of the rim sensor 9 have a higher frequency and fluctuate frequently up and down compared to the output waveforms hs1 to hs3 of the head sensor 8. Therefore, if the output values of the rim sensor 9 are added as is, the positive and negative values of the output values will cancel each other out, making it impossible to accurately represent the state of the impact detected by the rim sensor 9.
[0039] Therefore, by setting the energy value Er of the rim sensor 9 to an integral value obtained by adding the absolute value of the output value of the rim sensor 9, the magnitude of the output value, not limited to whether the detection value is positive or negative, can be reflected in the energy value Er, thereby accurately reflecting the impact situation detected by the rim sensor 9.
[0040] Furthermore, since such an energy value Er is generally proportional to the square of the magnitude of the amplitude of the output waveforms rs1 to rs3 (i.e., the magnitude of the output value), it is also a value that reflects the strength of the impact (i.e., the magnitude of the amplitude of the output waveforms rs1 to rs3) on the periphery of the head 5. As a result, the strength of the impact on the head 5 is accurately reflected in the energy value Er, which also improves the accuracy of the calculated velocity Vc.
[0041] A rim sensor 9 that detects strikes on the rim 6 (rim shots) is used as a sensor that particularly detects strikes on the periphery of the head 5. In other words, the rim sensor 9 can detect not only rim shots but also strikes on the periphery of the head 5, so even if the number of sensors mounted on the electronic drum 1 is minimal (two, the head sensor 8 and the rim sensor 9 in this embodiment), it is possible to accurately calculate the velocity Vc of the strike on the head 5 and detect the rim shots.
[0042] Furthermore, by using the peak value Ph of the head sensor 8 to calculate the velocity Vc as in the conventional method, it is possible to calculate with high accuracy the velocity Vc due to a strike on the center of the head 5. In this way, by calculating the velocity Vc by combining the peak value Ph of the head sensor 8 and the energy value Er of the rim sensor 9, it is possible to calculate with high accuracy the velocity Vc over the entire area of the head 5 struck by a stick or the like.
[0043] Next, the function of the electronic drum 1 will be described with reference to Fig. 3. Fig. 3 is a functional block diagram of the electronic drum 1. The electronic drum 1 has a head result acquisition means 200, a housing result acquisition means 201, and a velocity calculation means 202.
[0044] The head result acquisition means 200 is a means for acquiring a detection result (output value) from the head sensor 8, and is realized by the CPU 20 described later in FIG. 4(a). The case result acquisition means 201 is a means for acquiring a detection result (output value) from the rim sensor 9, and is realized by the CPU 20. The velocity calculation means 202 is a means for calculating a velocity Vc when the head 5 is struck based on the detection result acquired by the head result acquisition means 200 and the detection result acquired by the case result acquisition means 201, and is realized by the CPU 20.
[0045] In electronic drum 1, the velocity Vc when head 5 is struck is calculated based on the detection results from head sensor 8 and rim sensor 9. Rim sensor 9 detects vibrations of body 2 on which head 5 is mounted, and is therefore more sensitive to strikes on the periphery of head 5 than head sensor 8. By using such detection results from rim sensor 9 in calculating velocity Vc, the accuracy of velocity Vc for strikes on the periphery of head 5 can be improved.
[0046] Next, the electrical configuration of the electronic drum 1 will be described with reference to Fig. 4. Fig. 4(a) is a block diagram showing the electrical configuration of the electronic drum 1. The electronic drum 1 has a CPU 20, a flash ROM 21, and a RAM 22, which are all connected via a bus line 23. The head sensor 8 and rim sensor 9, as well as an external input / output terminal 24, are also connected to the bus line 23. A sound source 25 is connected to the external input / output terminal 24. An amplifier 26 is connected to the sound source 25, and a speaker 27 is connected to the amplifier 26.
[0047] The CPU 20 is a calculation device that controls each part connected by a bus line 23. The flash ROM 21 is a rewritable non-volatile storage device that stores programs executed by the CPU 20, fixed value data, etc., and includes a control program 21a and rim coefficient data 21b. When the control program 21a is executed by the CPU 10, the main processing of Fig. 5 is performed. The rim coefficient data 21b is a data table that stores the weighting coefficient α described above in Fig. 2. The rim coefficient data 21b will now be described with reference to Figs. 4(b) and (c).
[0048] Fig. 4(b) is a diagram showing a schematic representation of rim coefficient data 21b, and Fig. 4(c) is a diagram showing the relationship between the impact position and weighting coefficient α. As shown in Fig. 4(b), the rim coefficient data 21b stores weighting coefficient α corresponding to the impact position of the head 5. As the "impact position of the head 5" in the rim coefficient data 21b, the distance between the impact position and the center of the head 5 (represented as "distance from the head center" in the figure) is used.
[0049] As shown in Fig. 4(c), the relationship between the impact position and the weighting coefficient α stored in the rim coefficient data 21b is such that the weighting coefficient α increases as the impact position moves away from the center of the head 5. In other words, the value of the weighting coefficient α output from a weighting function, which is a function that uses the impact position as an input, is stored in the rim coefficient data 21b.
[0050] More specifically, the weighting coefficient α output by the weighting function is divided into a first section α1, a second section α2, and a third section α3 depending on the impact position. The first section α1 is a section in the central part of the head 5, from the center of the head 5 to a position ra (for example, a position 20 mm from the center of the head 5). In this first section α1, the weighting coefficient α is always set to "0". That is, the velocity Vc is calculated only from the peak value Ph of the head sensor 8 by the above-mentioned formula 1. As a result, it is possible to calculate an accurate velocity Vc by calculating the velocity Vc of the impact at the central part of the head sensor 8 using only the head sensor 8 that has good sensitivity at that impact position.
[0051] The second section α2 is a section of the middle of the head 5 from the impact position ra to the position rb (for example, a position 40 mm from the center of the head 5), and in this section, the weighting coefficient α increases in proportion to the distance from the center of the head 5. That is, in the second section α2 of the weighting function, the relationship between the distance from the center of the head 5 and the weighting coefficient α is linear.
[0052] As a result, even if the impact sensitivity of the head sensor 8 decreases and the peak value Ph decreases as the impact position moves away from the center of the head 5, the energy value Er of the rim sensor 9, which has high impact sensitivity at the periphery of the head 5, is added when calculating the velocity Vc, and this energy value Er is further multiplied by a weighting coefficient α, which becomes larger the further the impact position moves away from the center of the head 5, so that an accurate velocity Vc can be calculated even in the second section α2.
[0053] The third section α3 is a section on the periphery of the head 5 where the impact position is greater than the position rb, and in this section as well, following the second section α2, the weighting coefficient α increases in proportion to the distance from the center of the head 5. In the third section α3 of the weighting function as well, the relationship between the distance from the center of the head 5 and the weighting coefficient α is linear, but the slope is set smaller than in the second section α2.
[0054] This is because the difference between the output value of the head sensor 8 when striking at striking position A3 in the third section α3 and the output value of the head sensor 8 when striking at striking position B3, which is moved 10 mm outward in the radial direction of the head 5 from striking position A3, is smaller than the difference between the output value of the head sensor 8 when striking at striking position A2 in the second section α2 and the output value of the head sensor 8 when striking at striking position B2, which is moved 10 mm outward in the radial direction of the head 5 from striking position A2 (note that striking position B2 is also within the second section α2).In other words, the drop in sensitivity of the head sensor 8 is smaller in the third section α3 than in the second section α2.
[0055] In this way, by taking into account the characteristics of the output value of the head sensor 8 relative to the impact position in the slope of the weighting function, the peak value Ph of the head sensor 8 can be complemented by the energy value Er of the rim sensor 9 when calculating the velocity Vc, so that a highly accurate velocity Vc can be calculated regardless of the impact position of the head 5.
[0056] The shape of the weighting function in this embodiment, i.e., the positions ra and rb and the gradient of the weighting function, are set in advance based on experiments. Note that the positions ra and rb and the gradient of the weighting function are not limited to those described above, and other positions and gradients may be used depending on, for example, the size and material of the head 5, the material of the body 2 and the sensor frame 4, etc.
[0057] In addition, the weighting function has three intervals, α1 to α3, but is not limited to this and may have less than three or more than three. Furthermore, the relationship between the impact position and the weighting coefficient α in the weighting function is linear, but is not limited to this. The relationship between the impact position and the weighting coefficient α in the weighting function may be nonlinear, such as a quadratic function or an exponential function, or the weighting coefficient α may change stepwise with respect to the impact position.
[0058] Returning to Fig. 4(a), the RAM 22 is a memory for rewritably storing various work data, flags, etc. when the CPU 20 executes a program, and includes a head ring buffer 22a, a rim ring buffer 22b, a peak value memory 22c in which the above-mentioned peak value Ph is stored, an energy value memory 22d in which the above-mentioned energy value Er is stored, an impact position memory 22e in which the above-mentioned impact position is stored, and a velocity memory 22f in which the above-mentioned velocity Vc is stored.
[0059] The head ring buffer 22a is a buffer that stores the output values of the head sensor 8 for the past 5 milliseconds. The head ring buffer 22a stores the output values of the head sensor 8 in the order in which they were input. When a new output value of the head sensor 8 is input while 5 milliseconds' worth of output values of the head sensor 8 are stored in the head ring buffer 22a, the oldest output value among the output values stored in the head ring buffer 22a is deleted, and the newly input output value is added to the head ring buffer 22a.
[0060] The rim ring buffer 22b is a buffer that stores the output values of the rim sensor 9 for the past 5 milliseconds. The output values of the rim sensor 9 are also stored in the rim ring buffer 22b in the order in which they were input, and if a new output value of the rim sensor 9 is input while 5 milliseconds' worth of output values of the rim sensor 9 are stored in the rim ring buffer 22b, the oldest output value among the output values stored in the rim ring buffer 22b is deleted, and the newly input output value is added to the rim ring buffer 22b.
[0061] In addition, the period of output values that can be stored in the head ring buffer 22a and the rim ring buffer 22b is not limited to 5 milliseconds, but may be less than 5 milliseconds or more than 5 milliseconds as long as it is equal to or greater than the above-mentioned scan time ScT (2 milliseconds in this embodiment).
[0062] The external input / output terminal 24 is an interface for transmitting and receiving data to and from a sound source 25 (described later) or other computers. Instructions for generating musical sounds generated by the electronic drum 1 are transmitted to the sound source 25 via the external input / output terminal 24.
[0063] The sound source 25 is a device that controls the tone color and various effects of musical sounds (percussion sounds) according to instructions from the CPU 20, and has a built-in DSP (Digital Signal Processor) 25a that performs arithmetic processing such as filtering and effects on waveform data. The musical sounds processed by the sound source 25 are output as analog musical sound signals. The amplifier 26 is a device that amplifies the analog musical sound signals output by the sound source 25, and outputs the amplified analog musical sound signals to a speaker 27. The speaker 27 outputs the analog musical sound signals amplified by the amplifier 26 as musical sounds.
[0064] Next, the processing executed by CPU 20 will be described with reference to Fig. 5. Fig. 5 is a flowchart of the main processing. The main processing is processing executed by CPU 20 after electronic drum 1 is powered on. The main processing first obtains an output value from head sensor 8 and adds it to head ring buffer 22a, and obtains an output value from rim sensor 9 and adds it to rim ring buffer 22b (S1). After the processing of S1, it is confirmed whether the elapsed time, which is the time measured from when the start of the impact of head 5 is detected, has been measured (S2).
[0065] In the process of S2, if the elapsed time has not been counted (S2: No), the head ring buffer 22a and the rim ring buffer 22b are referenced to check whether the start of an impact has been detected by the head sensor 8 or the rim sensor 9 (S3). Note that an existing technique is used to detect the start of an impact in the process of S3, so a description thereof will be omitted. In the process of S3, if the start of an impact is detected (S3: Yes), the counting of the above-mentioned elapsed time is restarted from 0 (S4).
[0066] In the process of S2, if the elapsed time is being counted (S2: Yes), it is confirmed whether the elapsed time is equal to or longer than the scan time ScT (2 milliseconds) (S5). In the process of S5, if the elapsed time is equal to or longer than the scan time ScT (S5: Yes), the maximum absolute value of the output values added during the scan time ScT from the start of counting the elapsed time among the output values stored in the head ring buffer 22a, that is, the above-mentioned peak value Ph, is obtained and stored in the peak value memory 22c (S6).
[0067] After the process of S6, the absolute values of the output values stored in the rimming buffer 22b that are added during the scan time ScT from the start of timing the elapsed time and within the energy calculation period described above in FIG. 2 are integrated (added) to calculate the above-mentioned energy value Er, and the result is stored in the energy value memory 22d (S7).
[0068] After the process of S7, the head ring buffer 22a and the rim ring buffer 22b are referenced to calculate the impact position of the head 5 and store it in the impact position memory 22e (S8). Note that the calculation of the impact position in the process of S8 also uses existing technology, so a description thereof is omitted. After the process of S8, the weighting coefficient α corresponding to the impact position in the impact position memory 22e is obtained from the rim coefficient data 21b (S9).
[0069] After the process of S9, the peak value Ph in the peak value memory 22c is added to the product of the weighting coefficient α obtained in the process of S9 and the energy value Er in the energy value memory 22d, i.e., the above-mentioned velocity Vc, and is stored in the velocity memory 22f (S10).
[0070] After the process of S10, an instruction to generate a musical tone according to the velocity in the velocity memory 22f and the striking position in the striking position memory 22e is output to the sound source 25 (S11). The sound source 25 generates the musical tone instructed by the CPU 20 and outputs it to the amplifier 26, and the generated musical tone is output from the speaker 27 connected to the amplifier 26. If the start of a strike is not detected in the process of S3 (S3: No), if the elapsed time in the process of S5 is less than the scan time ScT (S5: No), or after the processes of S4 and S11, the processes from S1 onwards are repeated.
[0071] Although the above description is based on the above embodiment, it can be easily imagined that various improvements and modifications are possible.
[0072] In the above embodiment, the rim sensor 9 is used to detect an impact on the periphery of the head 5, but this is not limited to the above. For example, a sensor that detects vibrations of the body 2 may be added in addition to the rim sensor 9, and the velocity Vc may be calculated according to an output value based on the impact of the head 5 detected by the sensor.
[0073] In the above embodiment, the head sensor 8 and the rim sensor 9 are provided adjacent to each other on the sensor frame 4 which is the same member, but this is not limited to the above. For example, in order to prevent vibrations detected by the rim sensor 9 from leaking into the head sensor 8, a distance may be provided between the position where the head sensor 8 is provided on the sensor frame 4 and the position where the rim sensor 9 is provided, or a member that inhibits the transmission of vibrations between the head sensor 8 and the rim sensor 9 on the sensor frame 4 may be provided. Also, instead of providing the head sensor 8 and the rim sensor 9 on the same sensor frame 4, they may be provided on separate frames.
[0074] In the above embodiment, one head sensor 8 and one rim sensor 9 are provided, but the present invention is not limited to this. Two or more head sensors 8 and two or more rim sensors 9 may be provided. When multiple head sensors 8 are provided, the peak value Ph used in calculating the velocity Vc in formula 1 may be, for example, an average value of the peak values detected by each head sensor 8, or a weighted average value obtained by multiplying the peak values of each head sensor 8 by a corresponding weighting coefficient and averaging the multiplied values may be used.
[0075] Furthermore, when multiple rim sensors 9 are provided, the energy value Er used in calculating the velocity Vc in formula 1 may be, for example, the average value of the energy values calculated based on the output values of each rim sensor 9, or a weighted average value of the energy values based on the output values of each rim sensor 9.
[0076] In the above embodiment, the velocity Vc is calculated based on the peak value Ph of the head sensor 8 and the energy value Er of the rim sensor 9, but this is not limited to the above. For example, in calculating the velocity Vc, an energy value of the head sensor 8 similar to the energy value Er of the rim sensor 9 may be used instead of the peak value Ph of the head sensor 8. Also, in calculating the velocity Vc, a peak value of the rim sensor 9 similar to the peak value Ph of the head sensor 8 may be used instead of the energy value Er of the rim sensor 9.
[0077] Also, the energy value Er of the rim sensor 9 is set to an integral value obtained by adding up the absolute values of the output values of the rim sensor 9, but is not limited to this. For example, the energy value Er of the rim sensor 9 may be set to the average value of the absolute values of the output values of the rim sensor 9, or may be set to the median value of the absolute values of the output values of the rim sensor 9, or may be set to any other statistical index related to the output value of the rim sensor 9.
[0078] In the above embodiment, the weighting coefficient α is set to a value equal to or greater than 0 (see FIG. 4(b)), but this is not limited to this. The weighting coefficient α may be set to a value smaller than 0. For example, by setting the weighting coefficient α for the first section α1 in FIG. 4(b) to a value smaller than 0, the peak value Ph of the head sensor 8 is subtracted by the energy value Er of the rim sensor 9 in Equation 1. As a result, even if the output value of the head sensor 8 becomes excessively large due to a strike to the center of the head 5, where the sensitivity of the head sensor 8 is high, the excess can be corrected by subtracting the energy value Er of the rim sensor 9, so that a highly accurate velocity Vc can be calculated.
[0079] In addition, in the calculation of the velocity Vc, the energy value Er of the rim sensor 9 is multiplied by the weighting coefficient α, but this is not limited to the above. For example, the weighting coefficient α may be added to the energy value Er of the rim sensor 9, the weighting coefficient α may be subtracted from the energy value Er, or the energy value Er may be divided by the weighting coefficient α. In these cases, the weighting coefficient α may be set so that the velocity Vc can be appropriately calculated when the energy value Er is added.
[0080] Alternatively, the peak value Ph of the head sensor 8 may be multiplied by a weighting factor α. In this case, the weighting factor α may be set so that the velocity Vc can be appropriately calculated when the weighting factor α is multiplied by the peak value Ph. For example, the weighting factor α may be set based on the inverse function of the weighting function in FIG. 4(c).
[0081] In the above embodiment, the electronic drum 1 that simulates a drum has been exemplified as an electronic percussion instrument, but the present invention is not limited to this and may be applied to simulate other percussion instruments such as a bass drum, snare, tom-tom, etc. Also, the control program 21a may be made executable by an information processing device (computer) such as another personal computer or mobile terminal.
[0082] In the above embodiment, the electronic drum 1 is provided with a head sensor 8 and a rim sensor 9, and the velocity Vc is calculated according to the output values of the head sensor 8 and the rim sensor 9, but this is not limited to the above. For example, as shown in Fig. 6, a control device 50 may be connected to a drum 60, which is a percussion instrument provided separately from the control device 50, and the control device 50 may calculate the velocity Vc according to the strike of the drum 60.
[0083] More specifically, control device 50 is provided with a CPU 51, flash ROM 52, RAM 53, a bus line 54 and an external input / output terminal 55, each of which has the same functions as CPU 20, flash ROM 21, RAM 22, bus line 23 and external input / output terminal 24 of the electronic drum 1 described above in Figure 4 (see Figure 2 (a) respectively).
[0084] The drum 60 is provided with a head sensor 61 that detects when the striking surface of the drum 60 is struck, and a rim sensor 62 that detects vibrations caused by striking the rim of the drum 60. The head sensor 61 and rim sensor 62 are connected to an external input / output terminal 55 of the control device 50, and output values from the head sensor 61 and rim sensor 62 are input to the control device 50 via the external input / output terminal 55.
[0085] With the control device 50 and drum 60 configured in this way, the velocity Vc can be calculated by executing the main process described above in Fig. 5 in the CPU 51 of the control device 50. In this case, in steps S1 and the like of the main process, instead of using the output values from the head sensor 8 and rim sensor 9 of the electronic drum 1, the output values from the head sensor 61 and rim sensor 62 input from the external input / output terminal 55 can be used.
[0086] Note that an electronic percussion instrument such as the electronic drum 1 may be connected to the control device 50 in Fig. 6 instead of the drum 60, and the velocity Vc may be calculated by the control device 50. In this case, the external input / output terminal 24 of the electronic drum 1 is connected to the external input / output terminal 55 of the control device 50, the output values of the head sensor 8 and rim sensor 9 are output from the external input / output terminal 24 of the electronic drum 1, and the main processing of Fig. 5 is executed using the output values of the head sensor 8 and rim sensor 9 input from the external input / output terminal 55 in the control device 50. [Explanation of symbols]
[0087] 1. Electronic drums (electronic percussion, percussion) 2. Body (casing) 5 Head 6 Rims 8 Head Sensor 9 Rim sensor (chassis sensor) 21a Control program (velocity calculation program) 25 Sound source (sound source section) 50 Control device 60 Drums (Percussion) α weighting factor Vc Velocity Er Energy Value S1 Head result acquisition means, housing result acquisition means, head result acquisition step, housing result acquisition step S8 Impact position detection means S9 Weighting coefficient acquisition means S10 Velocity calculation means, velocity calculation step
Claims
1. A housing and a head provided in the housing and constituting a striking surface; A head sensor that detects an impact on the head; a housing sensor for detecting vibration of the housing; a head result acquiring means for acquiring a detection result from the head sensor; A housing result acquisition means for acquiring a detection result from the housing sensor; and a velocity calculation means for calculating a velocity when the head is struck based on the detection results acquired by the head result acquisition means and the detection results acquired by the housing result acquisition means.
2. 2. The electronic percussion instrument according to claim 1, wherein the velocity calculation means calculates the velocity using an energy value of a waveform based on the detection result acquired by the housing result acquisition means.
3. 3. The electronic percussion instrument according to claim 2, wherein the energy value of the waveform is a value obtained by integrating the detection results acquired by the housing result acquisition means during a predetermined scan time.
4. a striking position detection means for detecting a striking position on the head; a weighting coefficient acquisition means for acquiring a weighting coefficient for the detection result acquired by the case result acquisition means in accordance with the impact position acquired by the impact position detection means, An electronic percussion instrument as described in any one of claims 1 to 3, characterized in that the velocity calculation means calculates the velocity when the head is struck based on the detection results acquired by the head result acquisition means, the detection results acquired by the housing result acquisition means, and the weighting coefficient acquired by the weighting coefficient acquisition means.
5. The electronic percussion instrument according to claim 4, characterized in that the velocity calculation means calculates the velocity when the head is struck based on the detection result acquired by the head result acquisition means and a value obtained by multiplying the detection result acquired by the housing result acquisition means by the weighting coefficient acquired by the weighting coefficient acquisition means.
6. the weighting coefficient acquisition means acquires a weighting coefficient based on an output of a weighting function which is a function for outputting the weighting coefficient corresponding to the input impact position, 5. The electronic percussion instrument according to claim 4, wherein the weighting function outputs a weighting coefficient with a larger value as the input striking position moves from the center of the head toward the periphery.
7. 7. The electronic percussion instrument according to claim 6, wherein the weighting function has a linear relationship between the striking position and the weighting coefficient.
8. The housing is provided with a rim surrounding the head, 2. The electronic percussion instrument according to claim 1, wherein the housing sensor detects an impact on the rim.
9. 2. The electronic percussion instrument according to claim 1, wherein the head sensor is provided approximately at the center of the head.
10. A control device that controls a sound source unit based on a detection result from a head sensor that detects a strike on a head that constitutes a striking surface of a percussion instrument and a detection result from a housing sensor that detects vibrations of a housing of the percussion instrument, a head result acquiring means for acquiring a detection result from the head sensor; A housing result acquisition means for acquiring a detection result from the housing sensor; A control device characterized by comprising: a velocity calculation means for calculating the velocity when the head is struck based on the detection results acquired by the head result acquisition means and the detection results acquired by the case result acquisition means.
11. A velocity calculation program for causing a computer to execute a velocity calculation process for calculating a velocity, a head result acquisition step for acquiring a detection result from a head sensor that detects a strike on a head that constitutes a striking surface of a percussion instrument; a housing result acquisition step of acquiring a detection result from a housing sensor that detects vibrations of the housing of the percussion instrument; A velocity calculation step of calculating an impact velocity based on the detection results obtained in the head result acquisition step and the detection results obtained in the housing result acquisition step.
12. a head result acquisition step for acquiring a detection result from a head sensor that detects a strike on a head that constitutes a striking surface of a percussion instrument; a housing result acquisition step of acquiring a detection result from a housing sensor that detects vibrations of the housing of the percussion instrument; a velocity calculation step of calculating an impact velocity based on the detection results acquired in the head result acquisition step and the detection results acquired in the housing result acquisition step.
Citation Information
Patent Citations
Electronic percussion instrument and oscillation detector
JP2004198657A