Claims
- 1. A method of estimating accumulated heat for a device subject to coil heating during activations thereof, comprising:initializing a heat quantity value for said device at ambient conditions; periodically adding a quantity of heat to the heat quantity value if the associated device coil is active; periodically reducing the heat quantity value toward ambient by an amount in response to said heat quantity value as subject to a heat dissipation factor; determining a temperature compensating gain value based on said accumulated heat value for said device as modified by a gain constant; wherein said gain value is applied to the drive signal being output for each device to compensate device operation based on temperature changes; and wherein said gain value is weighted with other devices toward an average value.
- 2. A method as recited in claim 1:wherein reducing the heat quantity value comprises reducing the quantity of heat by a fractional portion of said heat value.
- 3. A method as recited in claim 2:wherein the fractional portion is determined in response to a heat dissipation factor for the device.
- 4. A method as recited in claim:wherein the heat quantity is reduced according to the equation: Heat[coil]=heat[coil]−heat[coil]/heatConstant; and wherein heat[coil] is an array of heat quantity values for each coil within the array and the heatConstant is determined according to the heat dissipation for a given coil.
- 5. A method as recited in claim 1:wherein the process of adding a quantity of heat is performed according to the equation: Heat[coil]=heat[coil]+force; wherein heat[coil] is an array of heat quantity values for each coil within the array; and wherein force is a value corresponding to the amount of energy supplied to the coil of said device.
- 6. A method as recited in claim 1, wherein determining said gain value comprises:adding a gain constant to weighted heat values for a device and one or more additional associated devices to arrive at an average weighted heat value; and dividing the average weighted heat value by said gain constant to arrive at said gain value.
- 7. A method as recited in claim 1:wherein the process of determining the gain value is performed according to the equation: gain=(gainConst+heat[coil]/CONST1+heat[coil+1]/CONST2)/gainConst; wherein said gain value may be used to temperature compensate the drive signals to said device, gainConst is associated with the drive circuit of the system; wherein said gain is averaged over at least two coils each having a separate weighting constant CONST1, CONST2.
- 8. A method as recited in claim 7:wherein the gain calculation is limited to a maximum gain value associated with a thermal equilibrium value for said device.
- 9. A method as recited in claim 7:wherein the device subject to coil heating is a solenoid.
- 10. A method as recited in claim 9:wherein the solenoid is adapted for use within the player mechanism of a piano as controlled by a player system.
- 11. In an electronic player-piano system having an electronic controller to control the force with which keys are activated by a solenoid driver in response to music composition data, the improvement comprising:a temperature compensation routine executable by said electronic controller; wherein said temperature compensation routine maintains a heat value for each solenoid being driven; wherein said heat value is periodically increased in response to activation forces applied to the solenoid of each key; wherein said heat value is periodically decreased by an amount in response to the thermal heat dissipation of each solenoid; wherein the thermal dissipation value to be subtracted from said heat value is determined by dividing said heat value by a heat dissipation factor; wherein said routine calculates a gain value for each solenoid based on said heat value; and wherein said gain value utilized within the routine modulates the outputs for driving said solenoids to prevent thermally induced force roll-off within the solenoids.
- 12. An improvement as recited in claim 11:wherein said heat value is periodically increased in response to the percentage of full power which is applied to said solenoid.
- 13. An improvement as recited in claim 11:wherein said heat value is periodically decreased by an amount which is calculated from said heat value as divided by a heat constant.
- 14. An improvement as recited in claim 11:wherein said gain value is calculated from the equation gain=(gainConst+heat[coil]/CONST1+heat [coil+1]/CONST2)/gainConst; wherein said gain value may be multiplied times the power value to be applied to said solenoid of said device, and gainConst is associated with the drive circuit of the system; and wherein said gain is averaged over at least two solenoid coils each having a separate weighting constant CONSTx.
- 15. An improvement as recited in claim 14:wherein the gain value is limited to a maximum gain value associated with a thermal equilibrium state for said solenoid.
- 16. A method of temperature compensating the power being applied to a solenoid based on an estimate of the heat accumulated within said solenoid, comprising:initializing a heat quantity value for said solenoid at ambient conditions; reducing said heat quantity value by a given percentage; accumulating heat within said heat quantity value by adding a quantity of heat in response to the power applied to said solenoid; calculating a temperature compensation gain value based on said heat quantity value; multiplying the power value to be applied to said solenoid by said temperature compensation gain value to prevent solenoid force roll-off as solenoid temperature increases; and periodically repeating the above steps following said initialization to maintain an updated value of temperature compensation.
- 17. A method as recited in claim 16:wherein said reduction of said heat quantity value by a given percentage comprises subtracting a quantity from said heat value given by the accumulated heat value divided by a heat dissipation value.
- 18. A method as recited in claim 16:wherein the temperature compensation is being performed for multiple solenoids.
- 19. A method as recited in claim 16:wherein said temperature compensation gain value is based on said heat value of a given solenoid averaged with one or more additional solenoids.
- 20. A method of estimating accumulated heat for a device subject to coil heating during activations thereof, comprising:initializing a heat quantity value for said device at ambient conditions; periodically adding a quantity of heat to the heat quantity value if the associated device coil is active; periodically reducing the heat quantity value toward ambient by an amount in response to said heat quantity value as subject to a heat dissipation factor, wherein the heat quantity is reduced according to the equation: Heat[coil]=heat[coil]−(heat[coil]/heatConstant); and wherein heat[coil] is an array of heat quantity values for each coil within the array and the heatCostant is determined according to the heat dissipation for a given coil.
- 21. A method as recited in claim 20: wherein the process of adding a quantity of heat is performed according to the equation: Heat[coil]=heat[coil] fame;wherein heat[coil] is an array of heat quantity values for each coil within the array; and wherein force is a value corresponding to the amount of energy supplied to the coil of said device.
- 22. A method as recited in claim 20, further comprising:determining a temperature compensating gain value based on said accumulated heat value for said device as modified by a gain constant; wherein said gain value may be applied to the drive signal being output for each device to compensate device operation based on temperature changes.
- 23. A method as recited in claim 22:wherein said gain value is weighted with other devices toward an average value.
- 24. A method as recited in claim 22, wherein determining said gain value comprises:adding a gain constant to weighted heat values for a device and one or more additional associated devices to arrive at an average weighted heat value; and dividing the average weighted heat value by said gain constant to arrive at said gain value.
- 25. A method as recited in claim 22:wherein the process of determining the gain value is performed according to the equation: gain =(gain Const+heat[coil]/CONST1+heat[coil]/CONST2)/gainConst wherein said gain value may be used to temperature compensate the drive signals to said device, gainConst is associated with the drive circuit of the system; wherein said gain is averaged over at least two coils each having a separate weighting constant CONST1, CONST2.
- 26. A method as recited in claim 25:wherein the gain calculation is limited to a maximum gain value associated with a thermal equilibrium value for said device.
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority from U.S. provisional application serial No. 60/282,696 filed on Apr. 9, 2001, incorporated herein by reference.
US Referenced Citations (4)
Number |
Name |
Date |
Kind |
4169401 |
Walker |
Oct 1979 |
A |
4872124 |
Shimizu et al. |
Oct 1989 |
A |
5831809 |
Schmitz et al. |
Nov 1998 |
A |
6153819 |
Yorba |
Nov 2000 |
A |
Foreign Referenced Citations (1)
Number |
Date |
Country |
2000-266610 |
Sep 2000 |
JP |
Provisional Applications (1)
|
Number |
Date |
Country |
|
60/282696 |
Apr 2001 |
US |