SEPARATELY EXCITED DC MOTOR WITH BOOST AND DE-BOOST CONTROL

Abstract: A motor control system is provided comprising an electrically charged battery, an electrical motor, a battery voltage sensor, a motor speed sensor, an armature voltage sensor, an armature current sensor, and a microprocessor. The magnitude of the armature current applied to the motor is a function of a predetermined armature current setpoint signal and the magnitude of the field current applied to the motor is a function of a predetermined field current setpoint signal, a field current correction signal, and a field current de-boost signal. The microprocessor programmed to generate an armature current setpoint signal, a field current setpoint signal, and an armature voltage reference signal. Further, the microprocessor is programmed to (i) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; (ii) generate the field current correction signal as a function of the armature voltage error signal; (iii) generate an armature-to-field current check function, wherein the check function defines a set of armature current to field current ratio values as a function of armature current; (iv) calculate a ratio of the measured armature current signal to the field current setpoint signal to establish an operating ratio value, (v) compare the operating ratio value to a corresponding armature current to field current ratio value of the armature-to-field current check function, and (vi) establish the field current de-boost signal, wherein the magnitude of the field current de-boost signal is a function of the measured armature current signal and the comparison of the operating ratio value to the corresponding ratio value.

Description: SEPARATELY EXCITED DC MOTOR WITH BOOST AND DE-BOOST CONTROL BACKGROUND OF THE INVENTION The present invention relates to control of separately excited DC motors and, more particularly, to a control scheme for a separately excited DC motor wherein a field current signal is selectively boosted or de-boosted to expand the power envelope of the DC motor. One problem with microprocessor control of separately excited motors results from the fact that the field flux expected from a given field current, as derived from the motor equations employed, is not always as expected. Specifically, actual field flux will differ from a given value, primarily as a result of magnetic hysteresis in the field poles. This variation in field flux is also attributable to motor-to-motor variations arising from manufacturing tolerances. Thus, while theory may predict optimal motor performance under given torque and speed conditions, in reality, the resulting operation is often not what is expected or desired. Accordingly, there is a need for a motor control scheme for a separately excited DC motor that accounts for the difference between the expected field flux and the actual field flux to improve the operation of the motor. Another problem associated with microprocessor control of battery-powered separately excited motors arises when the voltage of the battery power source decreases with use. As the voltage decreases, the armature current decreases and the performance of the motor suffers. Accordingly, there is a need for a motor control scheme for a separately excited DC motor that additionally accounts for the decrease in battery voltage and armature current. SUMMARY OF THE INVENTION These needs are met by the present invention wherein a motor control system is provided including a microprocessor programmed to modify the field current of a separately excited motor to account for any reduction in battery voltage by increasing the armature current. The microprocessor is also programmed to generate an armature voltage reference signal and a field current setpoint, compare the armature voltage reference signal to a measured armature voltage signal, generate an armature voltage error signal based on the comparison, and generate a field current correction signal as a function of the armature voltage error signal. In a preferred embodiment of a motor control scheme according to the present invention, the field current is de-boosted when battery voltage begins to fall in order to maintain desired motor performance. Field de-boost is a field current modification based on an error signal between an armature current lookup table value and a measured armature current when armature voltage is substantially equal to battery voltage. Improved control over motor torque within the commutation limit of the motor is achieved for battery conditions below 90% state of charge. The field de-boost calculation adjusts the field current lookup table value to increase actual armature current up to the setpoint value. Field de-boost is only active during motoring, armature current positive forward and reverse states. In addition, according to the motor control scheme of the present invention, the microprocessor may be programmed to execute a field current control function wherein optimal field current and armature current setpoints are established in accordance with tabulated values selected for providing a required torque and speed. A table of corresponding armature voltage values is also maintained. Flux losses in the motor are detected indirectly by measuring the motor's armature voltage. Specifically, a reduction of back EMF acting on the armature indicates a flux decrease. A voltage sensor sends measured values of armature voltage to an armature voltage comparator for comparison with expected values thereof as read out from the above-mentioned table. The differences are used for adjusting the field current setpoint and thereby adjusting the flux. More specifically, the controller of this invention compensates for flux losses by using a table of armature voltage values to determine an armature voltage reference point. An armature voltage sensor measures the actual average armature voltage and sends the measured value back to a microprocessor. The microprocessor compares the measured armature voltage with the armature voltage reference point and multiplies the difference by a variable gain factor to obtain a correction term. The correction term then is added to the field current setpoint in order to adjust flux as required. In another preferred embodiment of a motor control scheme according to the present invention, optimal field current and armature current setpoints are established in accordance with tabulated values selected for providing a required torque and speed. A table of corresponding armature voltage values is also maintained. Flux losses in the motor are detected indirectly by measuring the motor's armature voltage. Specifically, a reduction of back EMF acting on the armature indicates a flux decrease. A voltage sensor sends measured values of armature voltage to an armature voltage comparator for comparison with expected values thereof as read out from the above-mentioned table. The differences are used for adjusting the field current setpoint and thereby adjusting the flux. More specifically, the controller of this invention compensates for flux losses by using a table of armature voltage values to determine an armature voltage reference point. An armature voltage sensor measures the actual average armature voltage and sends the measured value back to a microprocessor. The microprocessor compares the measured armature voltage with the armature voltage reference point and multiplies the difference by a variable gain factor to obtain a correction term. The correction term then is added to the field current setpoint in order to adjust flux as required. The look-up tables of the present invention, described in further detail herein, output field and armature current values that are optimized to minimize component heating by minimizing armature current. The tables are generated based on empirical fit functions to dynamometer data on a limited sampling of a particular motor configuration. Since the tables are constructed based on a defined model, component tolerances, wear, heating, and state of battery charge can contribute to sample-to-sample variances in resultant output horsepower or energy conversion. Further, since the tables are built using a nominal battery voltage at 90% state of charge, any level below this will not only lower armature voltage but will also lower armature current, resulting in a reduction in peak torques and a corresponding premature loss in vehicle acceleration. Peak torque reduction can be lessened by holding armature currents to their desired level. In accordance with one embodiment of the present invention, a motor control system is provided comprising an electrically charged battery, an electrical motor, a battery voltage sensor, an armature voltage sensor, an armature current sensor, and a microprocessor. The electrical motor is coupled to the battery and includes an armature assembly responsive to an armature current and a field assembly responsive to a field current. The magnitude of the armature current is a function of a predetermined armature current setpoint signal l a SET . The magnitude of the field current is a function of a predetermined field current setpoint signal l f SET and a field current de-boost signal l f DE-BOOST- The battery voltage sensor is arranged to generate an operating battery voltage signal V BAT . The armature voltage sensor arranged to generate a measured armature voltage signal V a from the electrical potential of the armature assembly. The armature current sensor is arranged to generate a measured armature current signal l a indicative of an amount of current flowing through the armature assembly. The microprocessor is programmed to generate an armature current setpoint signal l a SET , a field current setpoint signal If SET , and an armature-to-field current check function. The check function defines a set of armature current to field current ratio values ( l a / lf )cHECK as a function of armature current. The microprocessor is also programmed to calculate a ratio of the measured armature current signal l a to the field current setpoint signal l f SET to establish an operating ratio value l a / l f SET and to compare the operating ratio value l a / l f SET ^° a corresponding armature current to field current ratio value ( l a / If ) CHECK oτ" the armature-to-field current check function. Finally, the microprocessor is programmed to establish the field current de-boost signal l f DE _ BOOST wherein the magnitude of the field current de-boost signal l f DE-BOOST ιs a function of the measured armature current signal l a and the comparison of the operating ratio value l a / l f SET to the corresponding ratio value ( l a / l f ) CHECK- The microprocessor may be programmed to compare the operating ratio value l a / If SET ^° the corresponding armature current to field current ratio value ( l a / lf )cHECK by determining whether the operating ratio value l a / l f SET is greater than the corresponding ratio value ( l a l lf )cHECK- The microprocessor may be programmed to establish the magnitude of the field current de-boost signal l f DE _ BOOST according to a selected one of two distinct de-boost equations. The identity of the selected equation depends upon the outcome of the comparison of the operating ratio value l a / l f SET to the corresponding armature current to field current ratio value ( 'a I /CHECK- Preferably, the two distinct de-boost equations are as follows: If _ SET = If ' _ SET - I (/α_ ERROR) X If _ GAIN ] where 1/ SET represents a de-boosted field current setpoint signal, where l f GAIN represents a preselected gain parameter, and wherein the microprocessor is further programmed to generate an armature current error signal l a E RROR by comparing the armature current setpoint signal l a SE7 - and the measured armature current signal l a . Preferably, the microprocessor is programmed to select the first equation when the operating ratio value l a / l f SET is greater than the corresponding armature current to field current ratio value ( l a lf )cHECK anc ' o select the second equation when the operating ratio value l a / l f SET is not greater than the corresponding armature current to field current ratio value ( l a / lf )cHECK- The electrical motor is characterized by a set of commutation limits and the microprocessor is preferably programmed to generate the armature-to-field current check function such that the check function simulates the commutation limits as a function of armature current. Preferably, the armature-to-field current check function is defined by the following equations: lyΛ l Λ ΛWλ - [Wλ equation (1) \ / IJ / CHECK 1J J MAX \ 1J I GAIN \ / λJ I SLOPE equation (2) where ( l a / lf )n / iAX represents a maximum armature current to field current ratio within the commutation limits, ( l a If j^m represents a minimum armature current to field current ratio within the commutation limits, ( l a lf)GAiN represents the following product GDE_ BOOST x {VREF - VBAT) where G 'DE-BOOST iS a predetermined gain parameter, V REF represents a reference battery voltage, e.g., 36 volts, and ( l a /l f ) SLOPE represents the following product Iα x niDE _ BOOST where ΓΠ D E-BOOST ' S a predetermined slope parameter. The predetermined gain parameter G E-BOOST represents an allowable increase in armature to field current ratio per battery volts. The predetermined slope parameter represents a maximum ratio of armature to field current per amp of armature current. The microprocessor may be programmed to generate the armature to field current check function such that the check function is defined by equation (1) when and by equation (2) when The microprocessor may further be programmed to: generate a full-on indication signal when the measured armature voltage signal V a is substantially equal to the operating battery voltage signal V BAT ; generate an armature current error signal l a E RROR by comparing the armature current setpoint signal l a S£7 - and the measured armature current signal l a ; generate a low armature current indication signal when the armature current error signal l a E RROR exceeds a predetermined value; and enable the field current de-boost signal establishing step according to whether the full-on indication signal and the low armature current indication signal are generated. Preferably, the microprocessor is further programmed to generate the armature current error signal according to the following equation _ ERROR = - h_sEτ and to generate the full-on indication signal when Vα > VBAT - VBAT_ TOLERANCE , where V BA γ TOLERANCE is a predetermined voltage tolerance. Alternatively, the microprocessor is programmed to generate the low armature current indication when < L_SET - _ TOLERANCE , where l a TOLERANCE ' S a predetermined current tolerance. The field assembly may be further responsive to a field current correction signal l f CORRECTION' the motor control system may further comprise a motor speed sensor arranged to generate an actual motor speed signal CO representative of an actual speed of the electrical motor, and the microprocessor may be further programmed to: generate an armature voltage reference signal V a REF , compare the armature voltage reference signal V a R EF to the measured armature voltage signal V a and generate an armature voltage error signal V a E RROR based on the comparison, and generate the field current correction signal l f CORRECTION as a function of the armature voltage error signal. In accordance with yet another embodiment of the present invention, a motor control system is provided comprising an electrically charged battery, an electrical motor, a battery voltage sensor, a motor speed sensor, an armature voltage sensor, an armature current sensor, and a microprocessor. The electrical motor is coupled to the battery and includes an armature assembly responsive to an armature current and a field assembly responsive to a field current. The magnitude of the armature current is a function of a predetermined armature current setpoint signal l a SE7 - and the magnitude of the field current is a function of a predetermined field current setpoint signal l f SET , a field current correction signal l f CORRECTION' ar) d a field current de-boost signal l f DE-BOOST- The microprocessor programmed to generate an armature current setpoint signal l a SET , a field current setpoint signal l f SET , and an armature voltage reference signal V a REF . Further, the microprocessor is programmed to (i) compare the armature voltage reference signal V a REF to the measured armature voltage signal V a and generate an armature voltage error signal V a E RROR based on the comparison; (ii) generate the field current correction signal If CORRECTION as a function of the armature voltage error signal; (iii) generate an armature-to-field current check function, wherein the check function defines a set of armature current to field current ratio values ( l a / lf )cHECK as a function of armature current; (iv) calculate a ratio of the measured armature current signal l a to the field current setpoint signal l f SET to establish an operating ratio value l a / l f SET , (v) compare the operating ratio value l a / l f SET to a corresponding armature current to field current ratio value ( l a lf )cHECK °f the armature-to-field current check function, and (vi) establish the field current de-boost signal l f DE-BOOST < wherein the magnitude of the field current de-boost signal l f DE-BOOST is a function of the measured armature current signal l a and the comparison of the operating ratio value l a / If SET to the corresponding ratio value ( l a / lf )cHECK- The microprocessor may further be programmed to generate the field current correction signal su c that it is inversely proportional to the actual motor speed signal CO , to generate the field current correction signal l f CORRECTION as a function of the armature voltage error signal V a E RROR and the actual motor speed signal C , or to generate the field current correction signal l f CORRECTION according to the following equation: If _ CORRECπON = Vα_ ERROR X C 1 I X,- I where V a RROR is the armature voltage error signal, C 1 is a constant, G v is a variable gain parameter, and CO is the actual speed of the motor. The microprocessor may be further programmed to modify the measured armature voltage signal V a by summing the measured armature voltage signal V a and the operating battery voltage signal V BAT prior to comparing the measured armature voltage signal V a to the armature voltage reference signal V a REF . The motor control system may further comprise a speed command generator arranged to generate a speed command signal S indicative of a desired speed of the electrical motor and the microprocessor may be further programmed to generate the armature voltage reference signal V a REF , the field current setpoint l f SET , and the armature current setpoint l a SEτ as a function of the speed command signal S and the actual motor speed signal CO . The microprocessor may additionally be programmed to generate the armature voltage reference signal V a REF , the field current setpoint l f SET , and the armature current setpoint l a SE7 -from a look-up table having at least one input value derived from the speed command signal S and the actual motor speed signal CO . The look-up table may be a dual-input look-up table, wherein a first input of the look-up table comprises a torque setpoint signal T SET , and wherein a second input of the look-up table comprises the actual motor speed signal CO . The microprocessor may be programmed to generate the torque setpoint signal T SET as a function of the actual motor speed signal CO and the speed command signal ^ . In accordance with yet another embodiment of the present invention, a motor control system is provided comprising an electrical motor, a motor speed sensor, a speed command generator, an armature voltage sensor, and a microprocessor. The electrical motor includes an armature assembly and a field assembly. The armature assembly is responsive to an armature current, the magnitude of which is a function of a predetermined armature current setpoint. The field assembly is responsive to a field current, the magnitude of which is a function of a predetermined field current setpoint and a field current correction signal. The motor speed sensor is arranged to generate an actual motor speed signal representative of an actual speed of the electrical motor. The speed command generator is arranged to generate a speed command signal indicative of a desired speed of the electrical motor. The armature voltage sensor is arranged to generate a measured armature voltage signal from an electrical potential of the armature assembly. The microprocessor is programmed to: (i) generate an armature voltage reference signal, the field current setpoint, and the armature current setpoint, wherein the armature voltage reference signal, the field current setpoint, and the armature current setpoint as a function of the speed command signal and the actual motor speed signal; (ii) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; and, (iii) generate the field current correction signal as a function of the armature voltage error signal. The microprocessor may further be programmed to generate the field current correction signal such that it is inversely proportional to the actual motor speed signal. The microprocessor may also be programmed to generate the field current correction signal as a function of the armature voltage error signal and the actual motor speed signal. Further, the microprocessor may be programmed to generate the field current correction signal in response to the armature voltage error signal and the actual motor speed signal or to generate the field current correction signal If _ correction according to the following equation: If _ CORKECΉON = V a_ ERROR X C l X I / m I where V a RROR is the armature voltage error signal, C 1 is a constant, G v is a variable gain parameter, and CO is the actual speed of the motor. The constant C 1 preferably includes a motor constant K, unit scaling corrections, and a coefficient for f S /dB ' whe re l f SET is the field current setpoint and B represents the magnetic flux in the air gap of the electrical motor. Where the armature assembly includes high and low voltage nodes, the armature voltage sensor is preferably arranged to measure armature voltage at the low voltage node. Where the electrical motor is driven by a battery voltage characterized by a battery voltage signal, the microprocessor may be programmed to modify the measured armature voltage signal by summing the measured armature voltage signal and the battery voltage signal prior to comparing the measured armature voltage signal to the armature voltage reference signal. The microprocessor may be programmed to generate the armature voltage reference signal, the field current setpoint, and the armature current setpoint from a look-up table. According to one embodiment of the present invention, the look-up table is a dual-input look-up table, wherein a first input of the look-up table comprises a torque setpoint signal, and wherein a second input of the look-up table comprises the actual motor speed signal. The microprocessor may be programmed to generate the torque setpoint signal as a function of the speed command signal and the actual motor speed signal. Additionally, the microprocessor may be programmed to generate the armature voltage reference signal, the field current setpoint, and the armature current setpoint from a look-up table having at least one input value derived from the speed command signal and the actual motor speed signal. In accordance with yet another embodiment of the present invention, a motor control circuit is provided comprising a motor speed sensor, a speed command generator, an armature voltage sensor, and a microprocessor programmed to: (i) generate an armature voltage reference signal, a field current setpoint, and an armature current setpoint, wherein the armature voltage reference signal, the field current setpoint, and the armature current setpoint are generated as a function of the speed command signal and the actual motor speed signal; (ii) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; and, (iii) generate a field current correction signal as a function of the armature voltage error signal. In accordance with yet another embodiment of the present invention, a motor control system is provided comprising an electrical motor, a motor speed sensor, an armature voltage sensor, and a microprocessor programmed to: (i) generate an armature voltage reference signal and the field current setpoint; (ii) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; and, (iii) generate the field current correction signal as a function of the armature voltage error signal. In accordance with yet another embodiment of the present invention, a motor control circuit is provided comprising a motor speed sensor, an armature voltage sensor, and a microprocessor programmed to: (i) generate an armature voltage reference signal and a field current setpoint; (ii) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; and (iii) generate a field current correction signal as a function of the armature voltage error signal. In accordance with yet another embodiment of the present invention, a motor control system is provided comprising an electrical motor, a motor speed sensor, a speed command generator, an armature voltage sensor, and a microprocessor. The electrical motor is driven by a battery voltage characterized by a battery voltage signal, and includes an armature assembly including high and low voltage nodes and a field assembly. The armature assembly is responsive to an armature current, wherein a magnitude of the armature current is a function of a predetermined armature current setpoint. The field assembly is responsive to a field current, wherein a magnitude of the field current is a function of a predetermined field current setpoint and a field current correction signal. The motor speed sensor is arranged to generate an actual motor speed signal representative of an actual speed of the electrical motor. The speed command generator is arranged to generate a speed command signal indicative of a desired speed of the electrical motor. The armature voltage sensor is arranged to generate a measured armature voltage signal from an electrical potential of the armature assembly at the low voltage node. The microprocessor is programmed to: (i) generate an armature voltage reference signal, the field current setpoint, and the armature current setpoint from a dual-input look-up table, wherein a first input of the look-up table comprises a torque setpoint signal, wherein a second input of the look-up table comprises the actual motor speed signal, and wherein the microprocessor is programmed to generate the torque setpoint signal as a function of the speed command signal and the actual motor speed signal; (ii) compare the armature voltage reference signal to the measured armature voltage signal and generate an armature voltage error signal based on the comparison; (ii) modify the measured armature voltage signal by summing the measured armature voltage signal and the battery voltage signal prior to comparing the measured armature voltage signal to the armature voltage reference signal; and, (iii) generate the field current correction signal If correction according to the following equation: C //_ CORRECΏON = Va ERROR X 1 X \ /, . Accordingly, it is an object of the present invention to provide a motor control scheme for a separately excited DC motor that accounts for the difference between the expected field flux and the actual field flux to expand the power envelope of the motor. Further, it is an object of the present invention to provide a motor control scheme for a separately excited DC motor that accounts for the difference between the expected field flux and the actual field flux to improve the operating efficiency of the motor. Other objects of the present invention will be apparent in light of the description of the invention embodied herein. BRIEF DESCRIPTION OF THE DRAWINGS The following detailed description of the present invention can be best understood when read in conjunction with the following drawings, where like structure is indicated with like reference numerals and in which: Fig. 1 is a schematic block diagram illustrating a motor control system of the present invention; Figs. 2 and 3 are complementary portions of a detailed schematic block diagram illustrating a motor control system of the present invention; Fig. 4 illustrates the manner in which Figs. 2 and 3 are combined to form a complete detailed schematic block diagram of the motor control system of the present invention; Fig. 5 is a flow chart illustrating the process by which voltage and current values are determined and stored in look-up tables according to the present invention; Fig. 6 is a graph illustrating a pair of commutation limit plots for a separately excited DC motor; Figs. 7A-C are flow chart illustrating alternate field current modification schemes of the present invention; Fig. 8 is a flow chart illustrating a field current compensation scheme of the present invention; Fig. 9 is a flow chart illustrating a field current de-boost scheme of the present invention; Fig. 10 is a graph illustrating the manner in which an armature-to-field current check function is generated according to the present invention; Fig. 11 is a graph illustrating the behavior of motor speed (left y-axis) and torque (right y-axis) as a function of acceleration time, without field current de-boost; Fig. 12 is a graph illustrating the behavior of armature current as a function of acceleration time, without field current de-boost; Fig. 13 is a graph illustrating the behavior of field current as a function of acceleration time, without field current de-boost; Fig. 14 is a graph illustrating the behavior of armature voltage as a function of acceleration time, without field current de-boost; Fig. 15 is a graph illustrating the behavior of motor speed (left y-axis) and torque (right y-axis) as a function of acceleration time, with field current de-boost; Fig. 16 is a graph illustrating the behavior of armature current as a function of acceleration time, with field current de-boost; Fig. 17 is a graph illustrating the behavior of field current as a function of acceleration time, with field current de-boost; and Fig. 18 is a graph illustrating the behavior of armature voltage as a function of acceleration time, with field current de-boost. DETAILED DESCRIPTION OF THE INVENTION Referring now to Figs. 1-4, a motor control system 100 according to the present invention is illustrated in detail. The motor control system 100 comprises an electrical motor 10 including an armature assembly 12 and a field assembly 14, a speed command generator 16, an armature voltage sensor (see line 45), a microprocessor 15, and a motor control circuit 20. A speed sensor 25, e.g., an encoder or tachometer, provides an output on a line 30 representing the actual speed ω (rad/sec) of the motor 10. Shown within the microprocessor 15 are several blocks that represent functions performed by the microprocessor 15 and the associated hardware. The blocks or routines of particular interest include a speed comparator function 50, a set of two-way look up tables 60, an armature voltage error function 70, an armature current error function 73, and a field current modification function 75. Setpoint Determination. The speed comparator function 50 compares a speed command signal on a line 35 to the actual motor speed signal on the line 30 and, in response thereto, provides a torque command signal on a line 55 to the look up tables 60. Specifically, referring to Figs. 2 and 3, which figures represent respective portions of the entire motor control system 100 and which figures are interconnected to one another as shown in Fig. 4, the speed command signal S on the line 35 and the actual speed signal CO on the line 30 are applied to the speed comparator function 50 in the microprocessor 15. More specifically, the signals S and CO are inputs to a comparator 51 , the output of which is applied to an amplifier function or amplifier 52 which has a gain Kp set to command a torque high enough for rapid response to a speed error but low enough to avoid stability problems. Thus, the output of amplifier 52 is Tp = Kp(s- ω). Proportional plus integral control (PIC) is achieved by integrating the speed error and adding the result to the output of the amplifier 52. This is done by an amplifier function or amplifier 53, which integrates the output of the comparator 51. Thus, its output is Ti = Kif(s-ω)dt. The outputs of the amplifiers 52 and 53 are added by function 54, giving the torque setpoint signal T = Ti + Tp on the line 55. The gain of Kp of the amplifier function 52 and the gain Ki of the amplifier function or amplifier 53 are conditionally proportional to the motor speed signal on the line 30. At low motor speed, the gain is higher than at higher speeds. This provides stability and the necessary torque for hill holding. The amplifier 52 provides the initial response to a new speed command. The response from the integrator amplifier 53 builds up slowly and predominates as the speed error is driven to zero. The steady state output from the integrator amplifier 53 produces torque setpoint values appropriate for handling a steady state load with no error signal from the speed comparator 51. Referring now to the look up tables 60, table 62 contains a matrix of expected armature voltage values V a , table 64 contains a matrix of field current values l f , and table 66 contains a matrix of armature current values l a . Field current and armature current setpoints are produced by the look-up tables 64 and 66, based upon the actual speed signal CO and the torque command or torque setpoint signal on the line 55, and are applied to the motor control circuit 20. The field current setpoint is modified by the field current modification function 75, as will be explained in detail below. It is contemplated by the present invention that, although the embodiment described herein, where the torque setpoint signal and the actual speed signal ω are used as inputs to a look up table to determine the field current and armature current setpoints and the expected armature voltage values, others schemes may be employed to determine the setpoints and expected values without departing from the scope of the present invention. This is particularly the case for embodiments of the present invention where the determination of these values is not the critical aspect of the particular embodiment. Field Current Modification. Referring to Figs. 7A to 7C, three schemes for executing field current modification according to the present invention are illustrated. Generally, the field current modification function 75 includes two distinct components: field current compensation (also identifiable as field current boost) and field current de-boost. The field current compensation component is described in detail herein with reference to Figs. 1-3 and 8. The field current de-boost component is described in detail herein with reference to Figs. 1-3 and 9-18. The first scheme for achieving field current compensation and field current de- boost is illustrated in Fig 7A, wherein the field modification routine 200 first determines whether field compensation is needed, see step 202. If field compensation is needed, it is executed, see step 204, if not, the routine 200 determines whether field de-boost is needed, see step 206. If field de-boost is needed, it is executed, see step 208, if not, the routine returns to step 202. The field modification routine 200' of Fig. 7B is slightly different that the routine 200'. Specifically, the field modification routine 200' first determines whether field compensation is needed, see step 210. If field compensation is needed, it is executed, see step 212, and the routine returns to step 210 without even attempting to determine if de-boost is needed. If, and only if, field compensation is not needed, does the routine 200' attempt to determine whether field de-boost is needed, see step 214. If field de-boost is needed, it is executed, see step 216, if not, the routine returns directly to step 210. The field compensation routine 200" of Fig. 7C is similar to the one illustrated in Fig. 7B. Specifically, the field modification routine 200" first determines whether field de-boost is needed, see step 218. If field de-boost is needed, it is executed, see step 220, and the routine returns to step 218 without even attempting to determine if field compensation is needed. If, and only if, field de-boost is not needed, does the routine 200" attempt to determine whether field compensation is needed, see step 222. If field compensation is needed, it is executed, see step 224. If not, the routine returns directly to step 218. In the field compensation routine 200' of Fig. 7B, field compensation may be identified as the primary modification scheme, while, in the field compensation routine 200" of Fig. 7C, field de-boost may be identified as the primary modification scheme. Selection of an appropriate modification scheme 200, 200', 200" is dependent upon the specific programming preferences of those practicing the present invention. The alternative routines are merely presented herein to provide a clear description of the present invention. The specific steps involved with executing field current compensation and field current de-boost are described in detail below with reference to Figs. 8-10. Field Current Compensation. Referring now to Figs. 1-3, a voltage signal on the line 45 from the armature assembly 12, from which flux level is derived, is fed back to the armature voltage error function 70 of the microprocessor 15. The field current modification function 75 adjusts the field current setpoint in accordance with the signal output from the armature voltage error function 70. Specifically, if the armature voltage on the line 45 is not what is expected, based on the torque command signal on the line 55 and the actual speed of the motor represented on the line 30, then the field current signal on a line 42 is adjusted accordingly. The reason armature voltage will not be as expected is due primarily to hysteresis in the flux characteristics in the motor field poles, and also to motor-to-motor manufacturing tolerances. The armature voltage values V a in table 62 are calculated based on the expected flux. The expected flux is determined as a function of the nominal flux characteristics of the particular motor. The actual flux of the motor will be somewhat different from the expected flux, due primarily to hysteresis. The motor control scheme of the present invention accounts for this difference in flux by adjusting the field current. The armature voltage error function 70 includes a comparator function 72 that receives a signal representing battery voltage on a line 71 and a signal representing the voltage V a1 from the low voltage side of the armature bridge on the line 45. Both lines 45 and 71 include analog to digital, or A-D, converter circuits, 92 and 93, see Fig. 3. The output V a ' of the comparator function 72 is compared with the output V a _ REFERENCE f rom the look-up table 62. If the voltage output signal V a 'of the comparator 72 is less than what is called for by the look-up table 62, then an output signal V a . ERR0 R is generated and applied to an amplifier 74. The amplifier 74 also receives the motor speed signal Cύ. The output of the amplifier 74 is added to the l f setpoint signal on a line 41 in adder function 76 to produce an adjusted or modified l f setpoint on a line 42. Regarding the operation of the amplifier 74, it is initially noted that the back EMF E of a motor is defined as E = K x B x ω where K is a motor design constant, B is the magnetic flux in the air gap of the motor (the gap between the poles of the field assembly 14 and the core of the armature assembly 12), and Cύ is the rotational speed of the armature assembly 12. Differentiating the equation with respect to l f yields dE = K dB / dIf x ω dI f Rearranging the equation for dl f yields In practice, this equation is implemented in a field adjustment gain term G v in the following form: /. CORRECTION — V a ERROR X C l X ω . where V a RROR ' S the armature voltage error signal A (see Fig. 2), C\ is a constant, Gv is a variable gain parameter, and ω is the actual speed of the motor, and where the magnitude of the field current correction signal is inversely proportional to the actual motor speed signal Cύ. The constant C\ includes the motor constant K , unit scaling corrections, and a coefficient for / D where l f is the field current setpoint and B represents the magnetic flux in the air gap of the electrical motor. The motor constant K is computed as follows where Nc is the number of conductors in the armature assembly 12, NP is the number of poles in the armature assembly 12, and NA is the number of parallel armature current paths in the armature assembly 12. The value for Gv , the variable gain parameter, is selected to tune the amplifier 74 for optimum performance. It is noted that, although typical values for Gv range from about 100 to about 500, the specific value for Gv is subject to determination for each individual motor to be controlled by the motor control scheme of the present invention. It is contemplated by the present invention that, in certain embodiments or applications of the present motor control scheme, it may be preferable to establish a threshold motor speed Cύ B00ST below which the armature voltage error function will be inactivated. Further, it is contemplated by the present invention that, in certain embodiments or applications of the present motor control scheme, it may be preferable to establish a maximum armature voltage setpoint threshold slightly below the actual value of the battery voltage, e.g., about 0.03 volts below the actual value of the battery voltage. Finally, it is contemplated by the present invention that, in certain embodiments or applications of the present motor control scheme, the field current will be adjusted only where: (i) the actual motor speed is greater than a minimum speed threshold corresponding to the adjusted field current setpoint; and (ii) the actual armature voltage is less than the armature voltage setpoint. Preferably, there are no limitations placed on the degree to which the field current may be increased by the armature voltage error function 70, with the exception, of course, that the field current and the armature voltage setpoint cannot exceed the physical limitations of the battery power source. Specifically, the maximum field current cannot be greater than the battery voltage divided by the field resistance and the armature voltage setpoint cannot be greater than the battery voltage. Referring now to Fig. 8, certain aspects of a field current compensation routine 300 according to the present invention are illustrated in detail. The routine 300 includes three distinct queries. According to a first query, the routine 300 establishes a maximum value for the armature voltage setpoint when the armature voltage setpoint is close to, or greater than, the actual value of the battery voltage, see steps 302, 304. According to a second query, the routine 300 determines whether the actual motor speed Cύ is greater than the predetermined threshold motor speed Cύ B00Sτ anά generates a command to disable field current compensation if the actual motor speed Cύ is not greater than the threshold motor speed Cύ B00ST , see steps 306, 310. A final query determines whether the actual armature voltage is less than the armature voltage setpoint, see step 308. If the actual armature voltage is less than the armature voltage setpoint, the field current is corrected according to the above-described algorithm, see step 312. If the actual armature voltage not less than the armature voltage setpoint, a command to disable field current compensation is generated, see step 310. Field De-Boost. Referring now to Figs. 1-3, 9, and 10, the field current de-boost component 400 of the field current modification routine of the present invention is described in detail. The armature assembly 12 of the motor 10 is responsive to an armature current, the magnitude of which is a function of a predetermined armature current setpoint signal l a S£7 - (see Fig. 2, line 40). Similarly, the field assembly 14 is responsive to a field current, the magnitude of which is a function of a predetermined field current setpoint signal l f SET (see line 41) and a field current de-boost signal If DE-BOOST (see line 43). The microprocessor 15 is programmed to generate the armature current setpoint signal l a S£7 - and the field current setpoint signal l f SET , in the manner described in detail herein. Further, the microprocessor 15 is programmed to generate the field current de-boost signal l f DE-BOOST ^° accomplish suitable modification of the field current according to the present invention. Generally, referring to the field current de-boost routine 400 illustrated in Fig. 9, as will be described in greater detail in the following paragraphs, the field current de- boost signal l f DE-BOOST ' S generated after performing a set of predetermined threshold queries, see steps 402, 404, and 406. First, an armature-to-field current check function is generated that defines a set of armature current to field current ratio values ( l a lf )cHECK as a function of armature current, see steps 408, 410, and 412. An operating ratio value l a / l f SEτ is established and compared to a corresponding armature current to field current ratio value ( l a / lf )cHECK °f the armature-to-field current check function, see step 414. The operating ratio value l a l If sET iS calculated as a ratio of the measured armature current signal l a to the field current setpoint signal l f SET . The result of the comparison of the operating ratio value l a / l f SET and the field current ratio value ( l a / l f ) CHECK ιs used to establish the field current de-boost signal l f DE-BOOST' see steps 416 and 418. The magnitude of the field current de-boost signal l f DE-BOOST ' S a function of the measured armature current signal l a input from line 36 (see Figs. 2 and 3) and the comparison of the operating ratio value l a / l f SET 0 the corresponding ratio value ( l a lf )cHECK- The first threshold query is designed to generate a "no de-boost" condition unless the motor 10 is being operated in a "full-on" condition, see steps 402 and 406. Specifically, a full-on indication signal is generated when the measured armature voltage signal V a is substantially equal to the operating battery voltage signal V BAT , for example, when Vα > VBAT - VBAT_ TOLERANCE , where ' BATJTOLERANCE ' S a predetermined voltage tolerance. The armature voltage signal V a may be measured directly from the armature or measured indirectly through measurements of the output V a ' of the comparator function 72 on line 69 and the battery voltage signal \/ βΛ7 - on line 71. The field current de-boost signal l f DE-BOOST is not generated under the "no de-boost" condition. The second threshold query is designed to generate a "no de-boost" condition if the armature current is not below a predetermined armature current value, see steps 404 and 406. Specifically, an armature current error signal l a E RROR is generated by comparing the armature current setpoint signal l a SE7 -and the measured armature current signal l a . A low armature current indication signal is generated when the armature current error signal l a E ROR indicates that the measured armature current signal l a is below the predetermined armature current value. The microprocessor 15 is programmed to generate the armature current error signal according to the following equation: _ ERROR = - _ SET . The generation of the low armature current indication signal is conditioned upon whether the armature current error signal l a RROR exceeds a predetermined current tolerance value I aJTOLERANCE- The armature-to-field current check function is generated so as to simulate the commutation limits of the electrical motor 10 being controlled. Specifically, referring to Figs. 6 and 10, the commutation limits of the electrical motor 10 are illustrated. In Fig. 6, the commutation limits of the field and armature currents are plotted for a motor operating at 24 volts and a motor operating at 36 volts. As the graph illustrates, the number of specific armature and field current combinations for operation below the commutation limits of the motor increases as the operating voltage decreases. In Fig. 10, the commutation limit ratio ( l a / l f ) is plotted as a function of armature current, for each operating voltage, to help illustrate the manner in which the check function is determined. Specifically, the check function is generated so as to simulate the commutation limits ratio as a function of armature current for the electrical motor 10 operating at 36 volts. As is described in detail herein appropriately selected gain parameters are utilized to correct the function for operating voltages other than 36 volts. Referring specifically to Fig. 10, a check function according to the present invention is illustrated as the combination of two distinct sub-functions or lines C 1 and C 2 . The lines C^ C 2 are defined so as to represent a close fit approximation of the actual commutation limit ratio plotted as a function of armature current. Specifically, the armature-to-field current check function is defined by the following equations: Y ' l J f) ' CHECK equation (1) Y / l lJ f) / CHECK MIN + equation (2) ( l a If JMAX represents the maximum armature current to field current ratio within the commutation limits, approximately 72 in the Fig. 10 example. ( l a lf )MiN represents the minimum armature current to field current ratio within the commutation limits, approximately 20 in the Fig. 10 example. ( l a / If ) GAIN represents the following product GDE_ BOOST x (VREF - VBAT) , where G dθ . boost is a predetermined gain parameter, approximately 1.7 in the Fig. 10 example, and V REF represents a reference battery voltage of the commutation limit plot to which the sub-functions or lines are fit, 36 volts in the illustrated example. ( ) Slope represents the following product Iα X JflDE_ BOOST where W DE-BOOST ' S a predetermined slope parameter representing the slope of the line C 1 in Fig. 10. The predetermined gain parameter G DE . B00ST represents the allowable increase in armature to field current ratio per battery volts. The predetermined slope parameter Tn DE _ B00ST corresponds to a maximum ratio of armature to field current per amp of armature current. The check function is defined by equation (1) when and by equation (2) when in order to ensure the check function closely approximates the actual armature current to field current ratio as a function of the armature current. Referring now to step 414 of Fig. 9, once the check function has been defined, ( I & I If ) CHECK mus be compared with the operating ratio value / a / I SEτ to determine the value of the de-boosted field current setpoint signal. Specifically, the microprocessor 15 is programmed to determine whether the operating ratio value / a / If SET is greater than the corresponding ratio value ( l a / lf )cHECK- The outcome of this comparison determines the manner in which the de-boosted field current setpoint signal is calculated. The microprocessor 15 is programmed to establish the magnitude of the field current de-boost signal l f DE-BOOST according to a selected one of two distinct de-boost equations, see steps 416 and 418. The identity of the selected equation depends upon the outcome of the comparison of the operating ratio value l a / l f SET ^° the corresponding armature current to field current ratio value ( l a l l f ) CHECK- The two distinct de-boost equations are as follows: If _ SET = equation (3) If _ SET = If SET - [( «_ ERROR) X If _ GAIN ] equation (4) where 1/ SET represents the de-boosted field current setpoint signal on line 42 and where l f GAIN represents a preselected gain parameter that is selected to optimize performance of the motor control scheme. Typically, l { GAIN will range from about 0.1 to about 1.0. The microprocessor is programmed to generate the armature current error signal l a RROR by comparing the armature current setpoint signal l a SET and the measured armature current signal l a . The microprocessor 15 is programmed to select equation (3) when the operating ratio value l a / l f SET is greater than the corresponding armature current to field current ratio value ( l a / lf )cHECK < see steps 414 and 416, and to select equation (4) when the operating ratio value l a / l f SET is not greater than the corresponding armature current to field current ratio value ( l a / lf )cHECK' see steps 414 and 418. In this manner, if l a / l f SET is greater than ( l a lf )cHECK > the magnitude of / SET is tied directly to ( l a / lf )cHECK- On the other hand if l a / l f SET is not greater than ( l a / lf )cHECK < the magnitude of / SET , then / SET is proportional to the armature current error signal l a E RROR- Figs. 11-18 illustrate the effectiveness of the above-described field de-boost control scheme. Specifically, Figs. 11-14 illustrate speed, torque, armature current, field current, armature voltage, and battery voltage values, over time, as a motor is subject to acceleration without field current de-boost control according to the present invention. Referring to Fig. 11 , note that actual speed 500 is significantly lower that the set speed 505 and that actual torque 510 is significantly lower than the set torque 515. Similarly, referring to Fig. 12, note that actual armature current 520 is significantly lower than the armature current set point 525. The field current set point 535 and actual field current 530 are illustrated in Fig. 13. The battery voltage 545, armature voltage 540, and armature voltage setpoint 550 are illustrated in Fig. 14. ln contrast, the values illustrated in Figs. 15-18 correspond to acceleration executed under the field current de-boost control according to the present invention. Referring initially to Fig. 15, with de-boost control, the actual speed 600 comes much closer to the set speed 605 and reaches a higher maximum value than the actual speed 500 in Fig. 11. Similarly, the actual torque 610 is very close to the set torque 615. Fig. 16 illustrates the close correspondence of the actual armature current 620 and the armature current setpoint 625, particularly when compared with Fig. 12. Fig. 17 illustrates the fact that the actual field current 630 is less than the look-up table field current setpoint 635. Fig. 18 illustrates the fact that battery voltage 645, the actual armature voltage 640, and the armature voltage setpoint 650 each closely correspond to each other. Look-up Table Construction. Referring now to Fig. 5, the process by which the values stored in the look-up tables 60 are determined is described in detail. It is contemplated by the present invention, however, that a number of different schemes could be employed to determine preferred values for armature current, field current, and armature voltage setpoints, including schemes that do not utilize any look-up tables. Fig. 5 represents a routine 110 for minimizing armature current. The first step, see block 111 , is to specify model parameter files for the desired motor configuration. The second step, see block 112, is to specify battery power constraints, minimum and maximum speed, minimum and maximum torque and look-up table size. The next step, see block 113 is to specify controller hardware current limits and commutation limits. Next, see block 114, limits on field current range based on power envelope and motor parameters are determined. In block 115, i mιn , j mιn to i max , j max are determined and represent a range of speed and torque setpoints. In block 117, the field excitation current which results in minimum armature current within a given range is determined. The tables are generated based on empirical fit functions to dynamometer data on a limited sampling of a particular motor configuration. Since the tables are constructed based on a defined model, component tolerances, wear, heating, and state of battery charge can contribute to sample-to-sampie variances in resultant output horsepower or energy conversion. Commutation voltage is calculated in block 118 and this data is put into matrices, see block 119. The process is then repeated, see block 120 for each element (i, j) in the tables. Finally, the tables are compiled, see block 130, and stored. Thus, the following items are calculated and stored: armature current l arm (i,j); field current l fld (i,j); armature voltage V a (i,j); calculated torque (i,j); motor efficiency (i,j); and, commutation voltage(ij). Table 1 is an example of a look-up table giving the desired armature current l a for various values of torque T setpoints (left vertical column) and actual speed (top row). Similarly, Table 2 is an example of a look-up table for desired field current / at specified torques and speeds. Table 3 is an example of a look-up table that provides expected armature voltages V a at those specified torques and speeds. Table 4 represents expected torque. The torque value T in newton-meters (Nm) is provided by the speed comparator function 50 of the microprocessor 15 and the actual speed value is provided by the encoder 25. Speed is given in radians/second. In the preferred embodiment of this invention, the torque values in each table are in 5 newton-meter increments and the speed ranges from 0 to 400 radians/second. The data in these specific tables are unique to a given motor configuration or design since they are generated with reference to such factors that include but are not limited to the size, torque, and speed of the motor and internal motor losses. Interpolation may be used to determine values of l f , l a and V g for intermediate speed and torque values. It is important to note that, although the following look-up tables are presented in substantial detail, the information embodied therein could be gleaned, through interpolation and routine experimentation, from a significantly abbreviated reproduction of the tables. Table 1 - 1 ARM Table 1 (Cont.) Table 1 (Cont.) Table 1 (Cont.) CM .2_ -Q CD Table 2 (Cont.) Table 2 (Cont.) Table 2 (Cont.) Table 3 - V Δ Table 3 (Cont.) Table 3 (Cont.) Table 3 (Cont.) Table 4 (Cont.) Table 4 (Cont.) Table 4 (Cont.) It is contemplated by the present invention that, through a conventional interpolation process, the above tables may be expanded to include more values corresponding to more frequent torque and speed intervals. Within the motor control circuit 20 are closed loop control circuits for maintaining both the armature and the field current at desired values, namely, armature current control circuit 80 and field current control circuit 82, see Figs. 1 and 3. The outputs from these circuits are connected to the armature assembly 12 and the field assembly 14 of the motor 10. These circuits receive feedback inputs from current sensors associated with the motor control circuits 80, 82. The armature current and adjusted field current setpoint values on the lines 40 and 42 are applied to closed-loop control circuits 80 and 82 after being converted to analog form by digital-to-analog converters 83 and 84, see Figs. 2 and 3. The two control circuits 80 and 82 include current delivery circuits including a bridge logic arrangement which apply switching signals to an arrangement of MOSFET devices that separately regulate the flow of current from a battery 90 to the field and armature coils F and A, respectively. The current delivery circuits of the control circuits 80 and 82 include current sensors 96 and 97 which generate feedback signals, l a feedback 93 and l f feedback 94, respectively, proportional to the respective measured currents. These feedback signals are applied to a pair of comparators 85 and 86 for comparison with corresponding setpoint values. The comparators 85 and 86 then generate an armature current error signal and a field current error signal, respectively. A pair of amplifiers 87, 88 multiply the field current error signal and the armature current error signal by gain factors K 2 and K 3 , respectively. These circuits cause a pair of pulse width modulated (PWM) drives to supply battery current to the motor coils in pulses of constant amplitude and frequency. The amplitude of the pulses varies as a function of the state of charge of the associated battery. The duty cycles of the pulses correspond to the respective setpoint values. This effectively sets the average field current and the average armature current so as to develop the desired torque in the armature. It should be appreciated that the armature voltage, as represented by the output of the comparator 72, will reflect flux losses. If there has been an unexpected loss of field flux, the torque generated by the motor will decrease. There will also be a concomitant decrease in the back EMF opposing the armature current driver, so the armature driver generates less average voltage to supply the demand for armature current. Therefore, in the present invention, actual armature voltage is compared to a desired armature voltage at a given torque and speed and is used to adjust the nominal field current value to achieve the desired actual torque. Having described the invention in detail and by reference to preferred embodiments thereof, it will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims.

Claims: CLAIMS 1. A motor control system comprising: an electrically charged battery characterized by an operating battery voltage; an electrical motor coupled to said battery, said electrical motor including an armature assembly responsive to an armature current, wherein a magnitude of said armature current is a function of a predetermined armature current setpoint signal l a SET and a field assembly responsive to a field current, wherein a magnitude of said field current is a function of a predetermined field current setpoint signal l f S£7 - and a field current de-boost signal l f D E- BOOST' a battery voltage sensor arranged to generate an operating battery voltage signal \ βj47 -from said operating battery voltage; an armature voltage sensor arranged to generate a measured armature voltage signal V a from an electrical potential of said armature assembly; an armature current sensor arranged to generate a measured armature current signal l a indicative of an amount of current flowing through said armature assembly; a microprocessor programmed to generate an armature current setpoint signal l a SET and a field current setpoint signal l f SET , generate an armature-to-field current check function, wherein said check function defines a set of armature current to field current ratio values ( l a / lf )cHECK as a function of armature current, calculate a ratio of said measured armature current signal l a to said field current setpoint signal l f SET * 0 establish an operating ratio value / a / / LS£7 -, compare said operating ratio value l a / l f SET 0 a corresponding armature current to field current ratio value ( l a / lf)cHECK °f sa ' c ' armature-to-field current check function, and establish said field current de-boost signal l f DE-BOOST wherein the magnitude of said field current de-boost signal l f DE-BOOST ' S a function of said measured armature current signal l a and said comparison of said operating ratio value l a / l f 5 5 to sa 'd corresponding ratio value ( l a I If ) CHECK- 2. A motor control system as claimed in claim 1 wherein said microprocessor is programmed to compare said operating ratio value l a / l f SET ^- 0 sa 'd corresponding armature current to field current ratio value ( l a / lf )cHECK by determining whether said operating ratio value l a / l f SET is greater than said corresponding ratio value ( V lf )cHECK- 3. A motor control system as claimed in claim 1 wherein said microprocessor is programmed to establish the magnitude of said field current de-boost signal l f D E- eoosr accor d 'n 9 to a selected one of two distinct de-boost equations, and wherein the identity of the selected equation depends upon the outcome of the comparison of said operating ratio value l a / l f SET to the corresponding armature current to field current ratio value ( l a / lf )cHECK- 4. A motor control system as claimed in claim 3 wherein said two distinct de-boost equations are as follows: If _ SET = t r / \ equation (3) y CHECK If _ SET = If _ SET - ERROR) x If _ GAIN equation (4) where 1/ SET represents a de-boosted field current setpoint signal, where l f G AIN represents a preselected gain parameter, and wherein said microprocessor is further programmed to generate an armature current error signal / a RROR by comparing said armature current setpoint signal / a S£7 - and said measured armature current signal / a . 5. A motor control system as claimed in claim 4 wherein said microprocessor is programmed to select equation (3) when said operating ratio value l a / l f SET is greater than the corresponding armature current to field current ratio value ( la ' f ) CHECK- 6. A motor control system as claimed in claim 4 wherein said microprocessor is programmed to select equation (4) when said operating ratio value l a / l f SET is not greater than the corresponding armature current to field current ratio value ( 'a 'f JcHECK- 7. A motor control system as claimed in claim 1 wherein said electrical motor is characterized by a set of commutation limits, and wherein said microprocessor is programmed to generate said armature-to-field current check function such that said check function simulates said commutation limits as a function of armature current. 8. A motor control system as claimed in claim 1 wherein said electrical motor is characterized by a set of commutation limits, and wherein said armature-to-field current check function is defined by the following equations: = MAX 1J / ) / GAIN - equation (1) Y / l Λ J f ) /CHECK = MIN + equation (2) where ( l a / If ) MAX represents a maximum armature current to field current ratio within said commutation limits, ( l a I If ) MIN represents a minimum armature current to field current ratio within said commutation limits, ( l a / If ) GAIN represents the following product GDE_ BOOST x [VREF - VBAT) where G D E-BOOST ' S a predetermined gain parameter, V REF represents a reference battery voltage, and ( l a /l f ) SL0P ε represents the following product Iα x mDE_ BOOST where m DE-BOOST ' S a predetermined slope parameter. 9. A motor control system as claimed in claim 8 wherein said predetermined gain parameter G DE .BOOST represents an allowable increase in armature to field current ratio per battery volts. 10. A motor control system as claimed in claim 8 wherein said predetermined slope parameter represents a maximum ratio of armature to field current per amp of armature current. 11. A motor control system as claimed in claim 8 wherein said microprocessor is programmed to generate said armature to field current check function such that said check function is defined by equation (1) when 12. A motor control system as claimed in claim 8 wherein said microprocessor is programmed to generate said armature to field current check function such that said check function is defined by equation (2) when 13. A motor control system as claimed in claim 1 wherein said microprocessor is further programmed to generate a full-on indication signal when said measured armature voltage signal V a is substantially equal to said operating battery voltage signal V BAT , generate an armature current error signal l a E RROR by comparing said armature current setpoint signal l a SE7 - and said measured armature current signal l a , generate a low armature current indication signal when said armature current error signal l a E RROR exceeds a predetermined value, and enable said field current de-boost signal establishing step according to whether said full-on indication signal and said low armature current indication signal are generated. 14. A motor control system as claimed in claim 13 wherein said microprocessor is further programmed to generate said armature current error signal according to the following equation Ia_ ERROR = la - Ia_ SET . 15. A motor control system as claimed in claim 13 wherein said microprocessor is programmed to generate said full-on indication signal when Va > VBAT - VBAT_ TOLERANCE where V BAT TOLERANCE ιs a predetermined voltage tolerance. 16. A motor control system as claimed in claim 13 wherein said microprocessor is programmed to generate said low armature current indication when la < Ia_ SET ~ Ia_ TOLERANCE where / a TOLERANCE is a predetermined current tolerance. 17. A motor control system as claimed in claim 1 wherein: said field assembly is further responsive to a field current correction signal lf_CORRECTION' said motor control system further comprises a motor speed sensor arranged to generate an actual motor speed signal CO representative of an actual speed of said electrical motor; and said microprocessor is further programmed to generate an armature voltage reference signal V a REF , compare said armature voltage reference signal V a R F to said measured armature voltage signal V a and generate an armature voltage error signal V a ER R Q R based on said comparison, and generate said field current correction signal l f CORRECTION as a function of said armature voltage error signal. 18. A motor control system comprising: an electrically charged battery characterized by an operating battery voltage; an electrical motor coupled to said battery, said electrical motor including an armature assembly responsive to an armature current, wherein a magnitude of said armature current is a function of a predetermined armature current setpoint signal l a SE7 - and a field assembly responsive to a field current, wherein a magnitude of said field current is a function of a predetermined field current setpoint signal l f SEτ , a field current correction signal lf_C0RRECTi0N' and a fie ld current de-boost signal l f _ D E-BOOST ' a battery voltage sensor arranged to generate an operating battery voltage signal \ βΛ7 -from said operating battery voltage; a motor speed sensor arranged to generate an actual motor speed signal CO representative of an actual speed of said electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal V a from an electrical potential of said armature assembly; an armature current sensor arranged to generate a measured armature current signal l a indicative of an amount of current flowing through said armature assembly; a microprocessor programmed to generate an armature current setpoint signal l a SET , a field current setpoint signal l f SET , and an armature voltage reference signal V a _REF< compare said armature voltage reference signal V a R EF to said measured armature voltage signal V a and generate an armature voltage error signal V a E RROR based on said comparison, generate said field current correction signal l f CORRECTION as a function of said armature voltage error signal, generate an armature-to-field current check function, wherein said check function defines a set of armature current to field current ratio values ( l a / lf )cHECK as a function of armature current, calculate a ratio of said measured armature current signal l a to said field current setpoint signal l f SET to establish an operating ratio value l a / l LSET , compare said operating ratio value l a / l f SET ^° a corresponding armature current to field current ratio value ( l a / lf )cHECK °f sa ' c ' armature-to-field current check function, and establish said field current de-boost signal l f DE-BOOST' wherein the magnitude of said field current de-boost signal l f DE-BOOST ιs a function of said measured armature current signal l a and said comparison of said operating ratio value l a / l f SET ^° sa 'd corresponding ratio value ( l a I If ) CHECK- 19. A motor control system as claimed in claim 18 wherein said microprocessor is further programmed to generate said field current correction signal l f CORRECTION such that it is inversely proportional to said actual motor speed signal CO . 20. A motor control system as claimed in claim 18 wherein said microprocessor is further programmed to generate said field current correction signal l f CORRECTION as a function of said armature voltage error signal V a E RROR ar) d said actual motor speed signal CO . 21. A motor control system as claimed in claim 20 wherein said microprocessor is further programmed to generate said field current correction signal l f CORRECTION according to the following equation: If _ CORRECTION — Vα_ ERROR X C l X I /_. I where V a E RR Q R is the armature voltage error signal, C 1 is a constant, G v is a variable gain parameter, and CO is the actual speed of the motor. 22. A motor control system as claimed in claim 21 wherein said electrical motor includes a characteristic air gap between poles of said field assembly and an armature core of said armature assembly, and wherein said constant C 1 includes a motor constant K, unit scaling corrections, and a coefficient for f^ S /dβ where lf_ $ ET ' s tne field current setpoint and B represents the magnetic flux in said air gap of said electrical motor. 23. A motor control system as claimed in claim 18 wherein said armature assembly includes high and low voltage nodes, and wherein said armature voltage sensor is arranged to measure armature voltage at said low voltage node. 24. A motor control system as claimed in claim 18 wherein said microprocessor is further programmed to modify said measured armature voltage signal V a by summing said measured armature voltage signal V a and said operating battery voltage signal V BAT prior to comparing said measured armature voltage signal V a to said armature voltage reference signal V a REF . 25. A motor control system as claimed in claim 18 wherein: said motor control system further comprises a speed command generator arranged to generate a speed command signal S indicative of a desired speed of said electrical motor; and said microprocessor is further programmed to generate said armature voltage reference signal V a REF , said field current setpoint l f SET , and said armature current setpoint l a SET as a function of said speed command signal S and said actual motor speed signal CO . 26. A motor control system as claimed in claim 25 wherein said microprocessor is programmed to generate said armature voltage reference signal V a REF , said field current setpoint l f SET , and said armature current setpoint l a SE7 -from a look-up table having at least one input value derived from said speed command signal S and said actual motor speed signal CO . 27. A motor control system as claimed in claim 25 wherein said microprocessor is programmed to generate said armature voltage reference signal, said field current setpoint, and said armature current setpoint from a look-up table. 28. A motor control system as claimed in claim 25 wherein said microprocessor is programmed to generate said armature voltage reference signal V a REF , said field current setpoint l f SET , and said armature current setpoint l a S£7 -from a dual-input look-up table, wherein a first input of said look-up table comprises a torque setpoint signal T SET , and wherein a second input of said look-up table comprises said actual motor speed signal CO . 29. A motor control system as claimed in claim 28 wherein said microprocessor is programmed to generate said torque setpoint signal T SET as a function of said actual motor speed signal CO and said speed command signal . 30. A motor control system comprising: an electrical motor including an armature assembly responsive to an armature current, wherein a magnitude of said armature current is a function of a predetermined armature current setpoint and a field assembly responsive to a field current, wherein a magnitude of said field current is a function of a predetermined field current setpoint and a field current correction signal; a motor speed sensor arranged to generate an actual motor speed signal representative of an actual speed of said electrical motor; a speed command generator arranged to generate a speed command signal indicative of a desired speed of said electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal from an electrical potential of said armature assembly; and a microprocessor programmed to generate an armature voltage reference signal, said field current setpoint, and said armature current setpoint, wherein said armature voltage reference signal, said field current setpoint, and said armature current setpoint are generated as a function of said speed command signal and said actual motor speed signal, compare said armature voltage reference signal to said measured armature voltage signal and generate an armature voltage error signal based on said comparison, and generate said field current correction signal as a function of said armature voltage error signal. 31. A motor control system as claimed in claim 30 wherein said microprocessor is further programmed to generate said field current correction signal such that it is inversely proportional to said actual motor speed signal. 32. A motor control system as claimed in claim 30 wherein said microprocessor is further programmed to generate said field current correction signal as a function of at least one of said armature voltage error signal and said actual motor speed signal. 33. A motor control system as claimed in claim 32 wherein said microprocessor is further programmed to generate said field current correction signal as a function of said armature voltage error signal and said actual motor speed signal. 34. A motor control system as claimed in claim 32 wherein said microprocessor is further programmed to generate said field current correction signal If CORRECTION according to the following equation: //_ CORRECΏON where V a E RROR is the armature voltage error signal, C\ is a constant, Gv is a variable gain parameter, and CO is the actual speed of the motor. 35. A motor control system as claimed in claim 34 wherein said electrical motor includes a characteristic air gap between poles of said field assembly and an armature core of said armature assembly, and wherein said constant C\ includes a motor constant K , unit scaling corrections, and a coefficient for f~ S / iB wnere If SET is the field current setpoint and B represents the magnetic flux in said air gap of said electrical motor. 36. A motor control system as claimed in claim 30 wherein said armature assembly includes high and low voltage nodes, and wherein said armature voltage sensor is arranged to measure armature voltage at said low voltage node. 37. A motor control system as claimed in claim 30 wherein said electrical motor is driven by a battery voltage characterized by a battery voltage signal, and wherein said microprocessor is further programmed to modify said measured armature voltage signal by summing said measured armature voltage signal and said battery voltage signal prior to comparing said measured armature voltage signal to said armature voltage reference signal. 38. A motor control system as claimed in claim 30 wherein said microprocessor is programmed to generate said armature voltage reference signal, said field current setpoint, and said armature current setpoint from a look-up table. 39. A motor control system as claimed in claim 30 wherein said microprocessor is programmed to generate said armature voltage reference signal, said field current setpoint, and said armature current setpoint from a dual-input look-up table, wherein a first input of said look-up table comprises a torque setpoint signal, and wherein a second input of said look-up table comprises said actual motor speed signal. 40. A motor control system as claimed in claim 39 wherein said microprocessor is programmed to generate said torque setpoint signal as a function of said speed command signal and said actual motor speed signal. 41. A motor control system as claimed in claim 30 wherein said microprocessor is programmed to generate said armature voltage reference signal, said field current setpoint, and said armature current setpoint from a look-up table having at least one input value derived from said speed command signal and said actual motor speed signal. 42. A motor control circuit comprising: a motor speed sensor arranged to generate an actual motor speed signal representative of an actual speed of an electrical motor; a speed command generator arranged to generate a speed command signal indicative of a desired speed of said electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal corresponding to an armature potential of said electrical motor; and a microprocessor programmed to generate an armature voltage reference signal, a field current setpoint, and an armature current setpoint, wherein said armature voltage reference signal, said field current setpoint, and said armature current setpoint are generated as a function of said speed command signal and said actual motor speed signal, compare said armature voltage reference signal to said measured armature voltage signal and generate an armature voltage error signal based on said comparison, and generate a field current correction signal as a function of said armature voltage error signal. 43. A motor control system comprising: an electrical motor including an armature assembly responsive to an armature current, wherein a magnitude of said armature current is a function of a predetermined armature current setpoint and a field assembly responsive to a field current, wherein a magnitude of said field current is a function of a predetermined field current setpoint and a field current correction signal; a motor speed sensor arranged to generate an actual motor speed signal representative of an actual speed of said electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal from an electrical potential of said armature assembly; and a microprocessor programmed to generate an armature voltage reference signal and said field current setpoint, compare said armature voltage reference signal to said measured armature voltage signal and generate an armature voltage error signal based on said comparison, and generate said field current correction signal as a function of said armature voltage error signal. 44. A motor control circuit comprising: a motor speed sensor arranged to generate an actual motor speed signal representative of an actual speed of an electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal corresponding to an armature potential of said electrical motor; and a microprocessor programmed to generate an armature voltage reference signal and a field current setpoint, compare said armature voltage reference signal to said measured armature voltage signal and generate an armature voltage error signal based on said comparison, and generate a field current correction signal as a function of said armature voltage error signal. 45. A motor control system comprising: an electrical motor driven by a battery voltage characterized by a battery voltage signal, said electrical motor including an armature assembly including high and low voltage nodes, said armature assembly being responsive to an armature current, wherein a magnitude of said armature current is a function of a predetermined armature current setpoint and a field assembly responsive to a field current, wherein a magnitude of said field current is a function of a predetermined field current setpoint and a field current correction signal; a motor speed sensor arranged to generate an actual motor speed signal representative of an actual speed of said electrical motor; a speed command generator arranged to generate a speed command signal indicative of a desired speed of said electrical motor; an armature voltage sensor arranged to generate a measured armature voltage signal from an electrical potential of said armature assembly at said low voltage node; and a microprocessor programmed to generate an armature voltage reference signal, said field current setpoint, and said armature current setpoint from a dual-input look-up table, wherein a first input of said look-up table comprises a torque setpoint signal, wherein a second input of said look-up table comprises said actual motor speed signal, and wherein said microprocessor is programmed to generate said torque setpoint signal as a function of said speed command signal and said actual motor speed signal, compare said armature voltage reference signal to said measured armature voltage signal and generate an armature voltage error signal based on said comparison, modify said measured armature voltage signal by summing said measured armature voltage signal and said battery voltage signal prior to comparing said measured armature voltage signal to said armature voltage reference signal, and generate said field current correction signal l f correc tj 0 n according to the following equation: wherein V a E RR Q R is the armature voltage error signal, C\ is a constant, Gv is a variable gain parameter, and CO is the actual speed of the motor, wherein said electrical motor includes a characteristic air gap between poles of said field assembly and an armature core of said armature assembly, and wherein said constant O includes a motor constant K , unit scaling corrections, and a coefficient for f S /dB wnere If SET ' S tne field current setpoint and B represents the magnetic flux in said air gap of said electrical motor.

Inventors: HAMMER JOSEPH K, HARMAN JOHN R, KILLIAN CHRISTOPHER M, LANKIN ROBERT GORDON, STANG DAVID B, HAMMER, JOSEPH, K., HARMAN, JOHN, R., KILLIAN, CHRISTOPHER, M., LANKIN, ROBERT, GORDON, STANG, DAVID, B.
Applicants: CROWN EQUIP CORP, CROWN EQUIPMENT CORPORATION
Application year: 1998
Main classification: H02P5
IPC codes: H02P7