Abstract:
Apparatus to exercise electrical motor drivers by electrically simulating a geared electric or electrical motor by providing an electronic load for the power signals that are applied to it. Current levels in the load are monitored in real-time using gate array logic and digital signal processing (DSP) algorithms to determine torque, acceleration, velocity and/or position data of the motor and gear train. Motor and gear train positional signals are generated and fed back to the motor driver device to close the servo loop. Control algorithms within the gate array and DSP accurately simulate the motor inertia and act to simulate a physical motor under varying load conditions. A control interface modifies critical motor parameters such as inertia, losses, gear ratio, and loading.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application claims priority under 35 U.S.C. §119(e) of U.S. provisional patent application Ser. No. 60/748,544 filed Dec. 8, 2005, incorporated by reference herein. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates generally to an electronic apparatus capable of simulating a motor or motor-driven system and more particularly to an electronic apparatus capable of simulating a motor-driven mechanical system which rotates an antenna mass. 
     The present invention also relates to an electronic apparatus for interpreting motor drive signals and generating motor rotor and gear-train shaft information in real time to provide a simulation of multi-phase electric motors so that motor driver devices may be tested without requiring the presence of the multi-phase electric motors. 
     BACKGROUND OF THE INVENTION 
     Motor driver devices are traditionally tested by driving an electric motor under varying load conditions. The electric motor has many built in factors such as inertia, torque-to-drive current ratios and gear-train ratios that may not be changed. In addition, a loaded motor driver for multi-horsepower motor systems requires a large stationary motor load assembly. 
     It is, however, inconvenient to have each and every electric motor being tested physically present for testing the motor driver devices. Often, motors are large and heavy, and difficult to readily and easily transport from the site at which they are being used and the testing site. 
     It would therefore be desirable to be able to simulate an electric motor for testing purposes so that the electric motor does not have to be present for testing purposes and moreover, does not have to be transported to a particular testing site. Rather, the electric motor can be kept at the site at which it is being used and simulated at the testing site. 
     OBJECTS AND SUMMARY OF THE INVENTION 
     It is an object of one or more embodiments of the present invention to provide a new electronic apparatus capable of simulating one or more motors or motor-driven systems to thereby avoid the need to have each motor physically present for testing its driver devices. 
     It is another object of one or more embodiments of the present invention to provide a new electronic apparatus capable of simulating a motor-driven mechanical system which rotates an antenna mass. 
     It is still another object of one or more embodiments of the present invention to provide a new electronic apparatus for interpreting motor drive signals and generating motor rotor and gear-train shaft information in real-time to provide a simulation of multi-phase electric motors so that motor driver devices may be tested without requiring the presence of the multi-phase electric motors. 
     It is yet another object of one or more embodiments of the present invention to provide a new electronic apparatus capable of simulating motors which enables motor characteristics to be tailored by modifying the values of motor parameters to satisfy a feedback control algorithm. 
     Another object of one or more embodiments of the present invention is to provide a new electronic apparatus capable of simulating motors which is considerably smaller than a typical motor load assembly. 
     Yet another object of one or more embodiments of the present invention is to provide a new electronic apparatus capable of simulating motors which enables very large motor systems to be tested by properly sizing driver resistive and inductive load. 
     In order to achieve one or more of these objects and others, a first embodiment of an electronic apparatus which simulates an electric or electrical motor for testing electrical motor driver devices in accordance with the invention comprises a digital signal processing unit which is configured to simulate the electronic and electro-mechanical environment necessary for testing motor driver systems and includes an analog-to-digital acquisition system with a fixed point, digital signal processing microcomputer and analog signal synthesis using digital-to-analog converters (ADCs). The digital signal processing unit includes a field programmable gate array (FPGA), or other comparable hardware component, to aid the signal processing in hardware. With this topology, one or more of the objects of the invention are realized including, for example, benefits of repeatability and accuracy through mathematical algorithms (no sensitivity to analog processing) and the fact that the passive motor loads (resistor/inductor) are closely matched to the actual motor electrically. 
     One embodiment of a method for simulating, in real-time, an electro-mechanical motor system for testing a motor driver for the motor system in accordance with the invention entails coupling a load fixture to the motor driver to be controlled thereby, coupling at least one current detector to the load fixture, each current detector being arranged to detect current of a respective drive phase of the motor driver, configuring a digital signal processing unit to simulate the motor system, and directing current readings from the current detector(s) to the digital signal processing unit which generate motor characteristic signals indicative of characteristics of the motor system in the presence of the same current readings. 
     Configuration of the digital signal processing unit to simulate the motor system can be implemented as a simulation of the electronic and electro-mechanical environment necessary for testing motor driver systems and includes, for example, an analog-to-digital acquisition system with a fixed point digital signal processing microcomputer and analog signal synthesis using digital-to-analog converters (DACs). An implementation of this configuration is described above. 
     The digital signal processing unit can be selectively configured to simulate different motor systems. This can be achieved by adjusting motor parameters such as inertia, losses, loading and gear-train ratios. 
     The motor characteristic signals may be directed as feedback signals to a processor which controls the motor driver to ascertain the functionality of the motor driver. Also, the motor driver can be adjusted based on the feedback signals. 
     Functionality of the digital signal processing unit is preferably enabled by converting the current readings from each current detector into digital form for processing by the field programmable gate array in the digital signal processing unit, or other comparable hardware component or components, and representing the simulated motor system by mathematical algorithms embedded in the digital signal processing unit. The algorithms are preferably designed to derive angular velocity and position of an antenna mass upon excitation by the motor drivers based on input of the detected current readings and stored motor rotational position, as well as possibly other parameters relating to the motor system. 
     Other and further objects, advantages and features of the present invention will be understood by reference to the following specification in conjunction with the annexed drawings, wherein like parts have been given like numbers. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The following drawings are illustrative of embodiments of the invention and are not meant to limit the scope of the invention as encompassed by the claims. 
         FIG. 1  is a block diagram showing an exemplifying system in accordance with the invention. 
         FIG. 2  is a functional block diagram of an exemplifying system in accordance with the invention. 
         FIG. 3  shows a load and current detection circuitry for use in the invention. 
         FIG. 4  shows a software model of the individual motors of one embodiment of a processor used in the invention. 
         FIG. 5  shows a software model of the individual motor gear heads, that generates the parametric data at the interface of the gear head and the drive shaft of a processor used in the invention. 
         FIG. 6  shows a software model of the shaft midpoint between the two individual motor gear heads of a processor used in the invention. 
         FIG. 7  shows a circuit design used to produce the motor position synchro signals. 
         FIG. 8  is a schematic showing an exemplifying motor-driven system, i.e., a motor-driven antenna mass, being simulated. 
         FIG. 9  is a flow chart showing the manner in which a simulation in accordance with the invention is realized. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Referring to the accompanying drawings wherein like reference numerals refer to the same or similar elements,  FIG. 1  shows a general outline of an exemplifying system in accordance with the invention for testing a driver device for a motor, and specifically an electric or electrical motor. The system is designated generally as  10  and comprises a motor driver device  12  under test, one or more load fixtures  14 , a simulated motor system  16  on which the driver device  12  is operative, a processing module, unit or system referred to simply as a processor  18  which controls the driver device  12  and the simulated motor system  16  and a display  20  on which information about the testing of the driver device  12  is displayed. System  10  can be segmented into two components, one is the system to be tested which includes the driver device  12 , processor  18  and display  20 , and the other is the motor/mass simulator which includes the load fixture(s)  14  and the simulated motor system  16  (these components being indicated in  FIG. 1  by the two smaller rectangular sets of dotted lines). 
     In operation, processor  18  tests the driver device  12  by directing the driver device  12  to perform certain functions on the simulated motor system  16  and then receives data from the simulated motor system  16 , e.g., in the form of signals, as to the extent to which the functions have been performed. This feedback, indicated by an arrow in  FIG. 1  with the notation “feedback signals”, is continuously used to test the driver device  12  to ascertain its functionality. Display  20  may be controlled by the processor  18  to show information about or based on the feedback and the functionality of the driver device  12 . Typically, the processor  18  would have a set number of routines to execute to test various modes of operation of the driver device  12  and the intermediate status of the execution of these routines as well as the final status of the test can be displayed on display  20 . 
     Processor  18  controls the simulated motor system  16  in that it causes the simulated motor system  16  to simulate the particular motor on which the driver device  12  operates. To this end, the processor  18  provides control commands or signals to the simulated motor system  16  to cause it to be configured in a desired way (see the arrow in  FIG. 1  with the notation “control signals”). Thus, simulated motor system  16  is configurable by processor  18  to simulate different motors depending on which driver device  12  is being tested, i.e., it is a re-configurable electronic apparatus which is configured by the processor  18  to simulate whatever motor the driver device  12  being tested is operative on. In this manner, the same system and assembly of equipment can be used to test different driver devices  12  simply by directing the processor to re-configure the simulated motor system  16 . 
     Simulated motor system  16  represents any one of a variety of different types of motors, including an assembly of multiple motors. For example, motor system  16  can represent a single brushless motor, coupled brushless motors, single-gear motor(s), multiple-geared motor(s), single-phase motor(s) or multi-phase motor(s), as well as combinations of these types of motors. 
     Load fixtures  14  may comprise one or more resistor/inductor assemblies and one or more current sensors arranged to detect current in the different phases of the simulated motor system  16 . The current sensors may be arranged on substrates in a common housing with the resistor/inductor assemblies. 
     Referring now to  FIGS. 2-9 , an exemplifying embodiment of the invention will be described in an application to motors which control rotation of an antenna mass. As shown in  FIG. 8 , the physical construction of the motor-driven system includes a base structure  22  having a pair of supports  24  on opposite sides of an elongate shaft  26 . A flywheel  28  or other heavy mass is arranged on the shaft  26  and one or more mechanical stops  30  are arranged to prevent radial movement of the flywheel  28  beyond design specifications. Mounted on each support  24  is a brushless DC motor  32  connected to a respective end portion of the shaft  26  through a reduction gear system  34 . Motors  32  rotate the respective end of the shaft  26  to which they are connected. A position encoder  36  and a velocity feedback transducer  38  are arranged at some position along the shaft  26 . 
     Bearings are preferably arranged at several locations on the antenna mass shaft  26  to support it and allow rotational movement of its ends via the two DC motors  32 . The DC motors  32  are multi-phase motors. 
       FIG. 8  also shows the variables, type of data and the source or recipient of the variables and type of data using a system in accordance with the invention. As discussed more fully below, the motor system being tested provides drive signals and brake signals to the motors  32 , the motor system being tested being referred to as the Unit Under Test, abbreviated as UUT. The simulator system  10  receives motor position feedback (synchros) from the motors  32  and a mass (antenna) position feedback from the position encoder  36  as well as a mass (antenna) velocity feedback velocity feedback from transducer  38 . 
       FIG. 2  shows a functional block diagram of an embodiment of the system in accordance with the invention for use with the simulated motor system  16  described immediately above. Driver device  12  directs signals to the load fixtures  14  and currents are generated in each phase A, B and C of each motor  32 . Current sensor assemblies  40  include sensors which measure the instantaneous ‘motor’ current in each phase A, B and C of the motors  32 , designated I_A, I_B and I_C. In  FIGS. 2-7 , the abbreviations MTR — 1_PH_A, MTR — 1_PH_B and MTR — 1_PH_C represent the different phases of the motors  32  and the abbreviations V I     —     A , V I     —     B  and V I     —     C  are voltage representations of the different measured currents of the motors  32 . The actual current sensors in current sensor assemblies  40  are preferably constructed to be sensitive, accurate and inherently safe (not electrically connected to the high voltage inverters used in the system). 
     For simulation of the motor-driven system shown in  FIG. 8 , the load fixtures  14  preferably comprise two sets of three resistors and three inductors connected in pairs (an RL unit) and all are mounted together on a thermally conductive substrate, such as aluminum, and two current sensor assemblies  40 , one for each antenna DC motor  32 , arranged on a different substrate. In particular, high power capacity RL loads simulate the actual motor loads. Each current sensor assembly  40  detects currents in the different phases of the simulated motor system  16 . 
     A digital signal processing unit (DSP)  42  is electrically coupled to the current sensor assemblies  40  and includes a set of analog-to-digital converters (ADCs)  44  which convert the current signals measured by the current sensor assemblies  40  into 16 bit digital representations to enable digital processing thereof. DSP  42  also interfaces to a field programmable gate array (FPGA)  46  which is programmed to sample analog current waveforms via the ADCs  44  and pre-process current vector signals in the FPGA  46 . 
     Simulated motor system  16  is represented by mathematical algorithms embedded in the DSP  42 . These algorithms thus simulate the operation of the brushless DC motors  32  upon input of the measured currents and determine the angular velocity and position of the antenna mass upon excitation by the motor drivers  12 . More specifically, the DSP  42  is programmed to calculate effective motor force (torque) (T mtr ) from current vector signals (I mtr ) and stored motor rotational (angular) position (θ mtr . Torque (T mtr ) is mathematically integrated to obtain motor angular velocity (ω mtr ). An angular velocity vector (ω mtr ) is mathematically integrated to obtain angular position vector (θ mtr ). Angular velocity and position (ω mtr ) and (θ mtr ) are then used to compute drive shaft angular velocity and position (ω ant ) and (θ ant ) using a shaft mechanical mass simulation algorithm. 
     The motor position feedback signals are comprised of synchro signals {S1, S2, S3} for each motor and for each phase thereof are generated by the DSP  42  in conjunction with the digital-to-analog converters  48 . The IMU rate data (ω ant ) (drive shaft rate- 50 ) is generated via DSP  42  and a digital-to-analog converter  48 . The serial antenna position data (θ ant )(position data, serial- 52 ) is generated via FPGA  46 . Synchro ‘envelopes’ and phase relationships are synthesized using a look-up table (LUT) and motor angular position (θ mtr  (see  FIG. 7 ). The feedback signals for the IMU rate data and position data are derived from the parameters (ω ant ) and (θ ant ). 
     Relay/LCD driver circuit  54  interfaces to the DSP  42  and controls the high power relays used to protect the electrical loads. Driver circuit  56  also converts the native DSP interface to signals useable by the status-monitoring display  20 , i.e., the LCD. 
     DSP  42  is preferably designed to apply an offset value to null the A/D input reading from ADCs  44  to the FPGA  46  and/or the D/A output value from the FPGA  46  to DACs  48 . The offset value can be directed to the motor driver  12  during a calibration process. 
     Other, unidentified components shown in  FIG. 2  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
       FIG. 3  shows the load and current detection circuitry wherein the RL loads are designated  58  and the current detectors are designated  60 . The current in each phase A, B and C is measured by a respective current detector  60 . Part 46A of the FPGA  46  is configured as a current averager which generates signed current amplitude, while software part 42A in the DSP  42  resolves the current vector direction (polarity) with respect to the motor position. The current polarity determines the direction of motor torque. 
     It is pointed out that the circuitry shown in  FIG. 3  is for each motor, i.e., there will be two such circuits for the antenna mass motor system shown in  FIG. 8 . Other, unidentified components shown in  FIG. 3  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
     The motor current output from the circuitry shown in  FIG. 3  is applied to a non-limiting software model of each motors shown in  FIG. 4 , i.e., two such software models would be provided, one for each motor  32 . The software simulation computes input torque from the motor current multiplied by the torque constant (the elements in box  62 ), subtract out the static frictional force from the applied torque (the elements in box  64 ), subtract out the spring force that will be present when the antenna mass reaches the end stop (the elements in box  66 ), subtract out the losses proportional to the motor speed times the damping constant (the elements in box  68 ) and subtract out braking force when these conditions occur (the elements in box  70 ). Also included is the reflected force due to the antenna/reduction gear components  72 . 
     The net torque is used to accelerate the motor  32 . Acceleration is integrated by integrator  74  to obtain motor speed. Motor speed is integrated by integrator  76  to obtain motor position. Motor position is provided to the current resolver part 26A of the DSP  42  shown in  FIG. 3 . 
     The remaining components shown in  FIG. 4  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
       FIG. 5  shows a non-limiting, exemplifying software model of the individual motor gear heads that computes the parametric data along two nodes (n and m) at the mass drive shaft. This software simulation entails computing the difference between the gear-train (reduction gear) position and the position at node ‘n’ or ‘m’ along the antenna drive shaft  78 . ‘n’ or ‘m’ represent two distinct nodes along the shaft which houses the mass. Also computed is the difference between the gear-train velocity and the velocity at mass node ‘n’ or ‘m’ via  80 . The mechanical stop spring force is added to the above two signals and subtracting the torque at mass midpoint node of ‘n’ or ‘m’ produces the instantaneous acceleration at that node. Mass node ‘n’ or ‘m’ velocity is computed by integrating the quantity at  82  via integrator  84 . Mass node at position ‘n’ or ‘m’ is computed by integrating the mass node ‘n’ or ‘m’ velocity via integrator  86 . A difference between the mass node ‘n’ or ‘m’ position and the “sys midpoint” position (Shaft position  88 ) is computed at element  90 . A difference between the mass node ‘n’ or ‘m’ velocity and the “sys midpoint” velocity is computed at element  92 . The “sys midpoint” torque is computed by summing the last two differences. 
     Other, unidentified components shown in  FIG. 5  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
       FIG. 6  shows a non-limiting, exemplifying software model of the shaft midpoint between the two individual motor gear-trains. This software simulation entails computing the shaft torque by summing the Motor #1 and Motor #2 mass midpoint torque signals (the elements in  94 ), computing the shaft midpoint velocity by integrating the mass midpoint torque via integrator  96 , and computing the shaft midpoint position by integrating mass midpoint velocity via integrator  98 . The “sys midpoint” position is compared to an angular position constant (in radians) to determine if the spring stop has been reached and if so, the program engages the spring force signal and tests the mass midpoint position to determine if the end stop has been reached and if so, it engages the hit-stop signal (the elements in  100 ). 
     Other, unidentified components shown in  FIG. 6  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
       FIG. 7  illustrates a circuit design used to produce the motor feedback position synchro signals mentioned above. It is noted that there are two sets of synchro signals  102  used to determine the shaft position of the two drive motors  32  in the example of simulated motor system  16  being used for the purposes of the description of  FIGS. 2-8 . The reference signal  104  is selected to be a 15 VAC @ 50 KHz Sine wave, but may be any frequency or amplitude compatible with the motor driver device  12  being tested. Synchro ‘envelopes’ and phase relationships are synthesized using a look-up table (LUT)  106  for each Synchro signal S1, S2, S3 and motor angular position (θ mtr , with the reference signal  104  and phase relationships from the look-up tables  106  being converted from digital form to analog form in DACs  108  to provide the Synchro signals S1, S2, S3. Synchro signals {S1, S2, S3} are thus selected as amplitude modulated signals that use the reference signal as the carrier. 
     Other, unidentified components shown in  FIG. 7  and their function and cooperation with the components identified above are readily known to those skilled in the art. 
     Referring now to  FIG. 9 , a simulation in accordance with the invention starts with reading the average currents of the motors  32 , and resolving the current vectors therefor. A determination is made whether each motor is enabled and for each enabled motor, the angular position, angular velocity and angular synchro position are computed or otherwise determined. When a mass is deemed to be present, the angular position and velocity of the mass are computed at two nodes and at a midpoint, as described above. The antenna velocity is output to a digital-to-analog converter while the antenna position is output to a serial shift register. The simulation is then complete. Use of the apparatus and method described above is not limited to testing motor drivers for the mechanical system shown in  FIG. 8  and can be used to test motor drivers for any types and configuration of motors or motor systems. 
     While particular embodiments of the invention have been shown and described, it will be obvious to those skilled in the art that changes and modifications may be made without departing from the invention in its broader aspects, and, therefore, the aim in the appended claims is to cover all such changes and modifications as fall within the true spirit and scope of the invention.