1. Field of the Invention
The present invention generally relates to the field of data tape transport devices. The present invention specifically relates to dynamic reconfiguration-switching of winding in a motor used as a generator in a turbine.
2. Description of the Related Art
In recent years, advances in technology have led to substantial changes in the design of storage devices having revolving media, for example, disk drives, tape drive, hard disk drives (HDD), and the like. For example, magnetic tape provides a means for physically storing data. As an archival medium, tape often comprises the only copy of the data. Tape may be used to restore data lost in a disk-drive crash. A tape drive is used to store and retrieve data with respect to the magnetic tape. An example of a tape drive is the IBM TotalStorage Enterprise Tape Drive 3592 manufactured by IBM Corporation. Storage devices, such as disk drives, tape drive, hard disk drives (HDD), and the like are typically used in combination with a data storage library. For example, the IBM TotalStorage Enterprise Tape Library 3494 manufactured by IBM Corporation is an automated data storage library that may include one or more tape drives and data storage media for storing data with respect to the tape drives.
Disk drive, hard disk drives (HDD), and/or tape drives frequently employ DC motors and feedback control systems with motor drivers for operating the DC motors, to produce well-controlled motion parameters such as position, velocity, and/or tape tension. While the motors rotate, a back electromotive force (“BEMF”) is produced by the disk drive, hard disk drives (HDD), and/or tape drive electric motors. This BEMF voltage is produced because the electric motors generate an opposing voltage while rotating. For example, in tape drives such as the aforementioned IBM 3592 used in the Enterprise range, and the Linear Tape Open used in the mid-range, the current tape linear velocity is limited by the tape reel's angular-velocity. The tape reel's angular-velocity approaches a maximum when the BEMF produced by the reel motor approaches the voltage of the power supply to the reel motors. Tape drives typically operate from +5 and +12 V power supplies; therefore it is not possible to increase the power supply voltage to increase the tape reel angular-velocity. In light of the foregoing, a need exists for a mechanism by which angular-velocity may be increased in disk drives, tape drives, hard disk drives (HDD), and the like incorporating fixed-voltage power supplies.
While it is not possible to increase power supply voltage to increase tape reel angular-velocity in tape transport systems implementing a fixed-voltage power supply, it is possible to decrease the BEMF in order to increase the tape reel angular-velocity by reducing the torque constant and voltage constant of the reel motor. However, reducing the torque constant of the reel motor decreases the tape reel angular-acceleration, thereby impacting performance. The present invention discloses apparatus and method embodiments of mechanisms to selectively either reduce the BEMF from the reel motor, therefore increasing the allowable tape reel angular-velocity for a fixed power supply voltage, or maintain a higher tape reel angular-acceleration. By use of the following mechanism, either the tape linear velocity or tape linear acceleration may be selectively increased relative to present implementations.
Accordingly, and in view of the foregoing, various exemplary method, system, and computer program product embodiments for dynamic and optimal reconfiguration-switching of motor windings are provided. In one embodiment, by way of example only, for a motor used as a generator, employing a dynamic reconfiguration-switching of motor windings upon the generator, used in a turbine, exceeding a maximum usable constraint of a first direct current (DC)-to-alternating current (AC) inverter in order to reduce a voltage constant of the motor thereby limiting one of a produced voltage and a produced power.
In addition to the foregoing exemplary method embodiment, other exemplary system and computer product embodiments are provided and supply related advantages. The foregoing summary has been provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in the background.
In order that the advantages of the invention will be readily understood, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings, in which:
The illustrated embodiments below provide mechanisms for increasing maximum angular-velocity in an electric motor by use of a motor control switching circuit. The motor control switching circuit reduces the total Back-EMF (BEMF) produced by the motor by bypassing a portion of the motor coils when high angular-velocity is needed. Although bypassing a portion of the motor coils reduces the angular-acceleration capability of the motor because the torque constant of the motor is reduced in the effort to reduce the voltage constant of the motor, the motor control switching circuit is able to produce the necessary angular-acceleration when needed by switching in the previously bypassed motor coils.
Motors (not shown) operatively coupled to the reels 104 and 108 pull the tape 106 across the tape head 110 which reads/writes information to/from the tape in a known manner. The motors may also move the tape 106 from one reel to another at high speed in fast forward and rewind operations. The motors may be directly coupled to first tape reel, 104 and second tape reel, 108 or there may be a mechanical drive system between the reels and the motor(s). Whether directly coupled or coupled through a mechanical drive system, the type of coupling determines a mechanical relationship between the motor(s) and the tape reels. The mechanical drive system could be for example, gears, belts, pulleys, clutches, etc.
All tape operations may occur with the tape 106 moving in either direction, due to the serpentine format of the tape 106. Thus, either first tape reel 104 or 108 may serve as the supply reel or the take-up reel, depending upon the direction of the tape 106. In
Typically, tape 106 moves at a constant linear velocity VTAPE across head 110. Hence, as the radius of the outer wrap of tape R104 and R108, of reels 104 and 108, changes, the angular-velocity W104 and W108 of reels 104 and 108 also change, per equation (1). Also, as VTAPE increases, such as during a high speed search, W104 and W108 increase per the following relationship:
W104*R104=W108*R108=VTAPE (1).
Per equation (1) above, as the radius of one reel shrinks to its minimum, which is at beginning-of-tape (BOT) for reel 108 and end-of-tape (EOT) for reel 104, that is where the respective motor is spinning at its maximum angular-velocity and generates the maximum BEMF. This maximum BEMF is further increased as VTAPE is increased from the normal data I/O velocity to the high-speed search velocity. BEMF is the angular-velocity W of a reel motor multiplied by the voltage constant Kvoltage of the motor, which is equal to the torque constant Ktorque of the motor when SI (metric) units are employed. It is the enclosed invention, which reduces these two constants by using selective switching to bypass motor coils, in order to reduce the BEMF:
BEMF=Kvoltage*W (2).
The rotational acceleration capability of the motor is reduced per equation (3) when selectively bypassing motor coils because the torque constant Ktorque of the motor is reduced at the same time that the voltage constant Kvoltage is reduced. Reduction of the torque constant Ktorque reduces the torque provided by the motor, and that torque divided by the rotational inertia of the motor and tape reel gives the rotational acceleration of the motor and tape reel, equation (4). However, these bypassed coils may be selectively re-engaged when that higher acceleration (or deceleration) is desired, preferably when the angular-velocity of the motor is in the range that permits an increase in back-EMF (BEMF).
Torque=Ktorque*Motor_Current (3).
Rotational Acceleration=Torque/(Rotational Inertia of Motor+Reel) (4).
Current error amp and compensator 226 compares current sense signal 228 to current reference 227 and provides an error signal 229 to Pulse Width Modulation (PWM) modulator 224. Current error amp and compensator 226 also provides servo loop compensation to ensure a stable feedback loop for PWM modulator 224. Commutator 202 accepts hall sensor inputs HA, HB, HC from hall sensors 203A, 203B, and 203C, respectively. Commutator 202 also accepts enable loop 230, Enable high velocity 231 which provides Velocity select input, PWM input 232 to control the reel motors 306 and 308 (
The output from hall sensors 304A and 304B are coupled to hall sensor detection logic 310. During normal servo operation hall sensor detection logic 310 decodes the output signals from hall sensors 304A and 304B to provide motor rotation information for servo software 350. Hall sensor detection logic 310 may be implemented for example by software, firmware, hardware circuits (such as a field programmable gate array (FPGA) 314 as shown), a CPU, ASIC, etc., or a combination thereof. Servo software 350 processes the output from hall sensor detection logic 310 using control system laws to produce primary motor control signals that are transferred through motor assist ASIC (Application Specific Integrated Circuit) 355 and delivered to motor driver circuits 200A and 200B. Motor assist ASIC 355 provides current control logic.
A description of the operation of servo control system for the two reel motors 306 and 308 is given in application Ser. No. 10/223,967 entitled “Direction detection and count method for three channel commutation sensor”, filed on Aug. 8, 2002, by the assignee of the present invention, of which is hereby incorporated by reference in its entirety.
Servo software 350 operates within the microcode section 325 of CPU 316. Other software components, including host interface 330 and error recovery 335 also operate within the microcode section 325 of CPU 316. Host interface 330 provides communication between external hosts and CPU 316. Error recovery 335 provides software procedures to enable CPU 316 to direct operations to recover from errors that may occur during operation of the tape drive. In addition, a wireless communication device 375, such as cell phone telepathy, Bluetooth or GPS-location, may be used to input changes of N and m (as described below with particular reference to
During periods of higher velocity, velocity switch output 235 controls velocity switches 410, 411, and 412 in a position to enable parallel connection of motor coils 420-425. This provides the minimum BEMF to allow the maximum velocity from reel motors 306 and 308.
During periods of higher velocity, velocity switch output 235 controls velocity switches 510, 511, and 512 in a position to enable bypass of motor coils 520, 522, and 524 (coils 520, 522, and 524 are left open). This provides the minimum BEMF to allow the maximum velocity from reel motors 306 and 308.
Turning to
Control flows from step 611 or 612 to step 615. At step 615, reel motors 306 and 308 are stopped, then control flows to step 630 to end, otherwise control flows to step 610, to receive another command from the tape drive.
In certain embodiments, more than two motor coils per phase may be used to provide multiple maximum velocities for a given motor and power supplies. For conceptual purposes, the mechanisms of the present invention may be thought to be analogous to a transmission in a car. For slower speeds and more torque (to provide greater acceleration) multiple motor coils are electronically switched in like low gears of a transmission, such as all coils 520-525 being electrically engaged as shown in
The mechanisms of the present invention may be adapted for a variety of tape transport systems including a variety of tape media and tape drives, as one skilled in the art will anticipate. While one or more embodiments of the present invention have been illustrated in detail, the skilled artisan will appreciate that modifications and adaptations to those embodiments may be made without departing from the scope of the present invention as set forth in the following claims. For example, this same invention may be applied to hard disk drives and optical disk drives, as both of which use DC motors to spin a disk and both of which could benefit from faster spinning disks to reduce latency times for data I/O. Additionally, this invention may be applied to both optical tape as well as magnetic tape.
Moreover, the illustrated embodiments provide for optimal dynamic-reconfiguration-switching of coils within an electric motor of either a Y or Delta connection. More specifically, optimizing the dynamic reconfiguration-switching between individual motor windings occurs between multiple winding-configurations for increasing angular-velocity upon detecting the electric motor is at an optimal angular-velocity for an inductance switch, thereby preventing a total back electromotive force (BEMF) from inhibiting further increase in angular-velocity. The dynamic reconfiguration-switching of motor windings occurs between each of the winding-configurations at a minimal, optimal time for allowing a dynamic trade-off between the angular-velocity and angular-acceleration. In other words, the dynamic reconfiguration-switching of motor windings is optimized between winding-configurations for trading off angular-acceleration in favor of higher angular-velocity upon detecting an electric motor is at an optimal angular-velocity for switching to an optimal lower torque constant and voltage constant (the two being equal in SI units), thereby preventing a total back electromotive force (BEMF) from inhibiting further acceleration to a higher angular-velocity.
As illustrated below, as used in the SI (System International, commonly known as “metric”) units, the Voltage Constant (Kv) equals the Torque Constant (Kt). The symbol “K” is used to denote either the Voltage Constant (Kv) or Torque Constant (Kt) when all of the motor windings are in use, since Kv and Kt are both equal when measured in SI (System International or “metric” units). For example, the equation K=Kv=Kt illustrates K is equal to the voltage constant “Kv” and the also equal to the torque constant “Kt”. “K” is used for simplicity. Also, as will be described below, a list of Parameters used are described as:
K=voltage constant Kv=torque constant Kt (Kv=Kt for SI units),
V=Maximum Angular-velocity of Motor under full voltage constant K, in radians per second,
A=Angular-acceleration of Motor under full voltage constant K, in radians per second
T=V/A=units of time in seconds, for V and A defined above
m=number of equations=number of unknowns in the analysis,
j=index, 1≦j≦m,
Xj=x(j)=unknown, 1≦j≦m,
N=Multiplicative factor that V is multiplied by, N>1,
[A]=symmetric, tridiagonal coefficient matrix, size m-by-m,
{X}=vector of unknowns Xj, length of m,
{b}=right hand side vector={1 0 0 . . . 0 N}T,
Fj=F(i)=factor used in the solution of [A] {X}={b},
Gj=G(i)=factor used in the solution of [A] {X}={b},
{KF}=vector of fractional voltage and torque constants={K, K/Xj, K/N}T,
{Max_V}=vector of angular velocities for switching={V, XjV, NV}T,
WC=Number of possible winding-configurations in the motor=m+2, and
“m” denotes the number of simultaneous linear equations and number of unknowns. It should be noted that throughout the specification the term “winding-configuration” may also be referred to as state, switch-state, configuration-state, switch-configuration-state, and winding-configuration-state. In all tables of the description, the initial voltage and torque constant will always be the maximum K because all of the voltage and torque constant are to be used. Similarly, the final value of voltage and torque constant is always K divided N (e.g., K/N). Thus, there are m+2 winding-configurations in a motor analyzed by m simultaneous linear equation and m unknowns, and the other two winding-configurations (initial and final) are known; however, it is not known at what angular-velocity to optimally transition between the m+2 winding-configurations and vector {Max_V}, and the present invention solves that optimal-control challenge.
Turning now to
By adding up the right-most column (labeled as “Delta Time”) in
where X is unknown coefficient and is unitless, and the algebraic expression has the units of time from the quotient V/A, where V/A is a delta time, V is angular-velocity and A is angular-acceleration when all motor windings are engaged, 3V is the final angular-velocity in radians per second (used only as an example representing N=3) and X is the unknown value.
By differentiating the total time (equation 5) with respect to X, to find the optimal value of X, and setting that derivative to zero, the following linear algebraic equation in unknown X is attained:
whereby solving for X yields the unknown value of X, and it is determined that X equals 2 (e.g., X=2). By taking a second derivative of the total time with respect to unknown X in equation 5, the second derivative is derived to be 2V/A, which is a positive constant:
This positive-second derivative indicates the optimal time for performing the dynamic reconfiguration-switching between individual motor windings in order to minimize the total time to ramp up to the angular velocity 3V. Because the second derivative is positive, it means that the algorithm has found the value of K/X equals (a) K/2 to switch to, (b) the time and angular-velocity to switch from K to K/2, and (c) the time and angular-velocity to switch from K/2 to K/3 in order to minimize the time to ramp up to the final angular-velocity 3V radians per second. In other words, the positive second derivative means the optimal time to perform the dynamic switching is determined, which is indeed the optimal solution for a 3-winding-configuration motor (the winding-configurations are defined in
At this point, it is essential to introduce a generic value of “m” to denote the number of simultaneous, linear equations and to denote the number of unknowns, as will be used throughout the description. Also, it should be noted that “m=1” equations and “m=1” unknowns were used to derive the table in
Having produced a methodology of m simultaneous equations and m unknowns, as described above,
where X, Y, and Z are unknown coefficients of the total time (equation 8) and are unitless, and the algebraic expression has the units of time from the quotient V/A, where V is the maximal angular-velocity and A is the angular-acceleration when all motor windings are engaged, and 3V is the final angular-velocity (N=3 used only as an example so that we get numerical answers). The unknown coefficients X, Y, and Z are unit-less and this algebraic expression has the units of time from the quotient V/A. (It should be noted that the variables X, Y, and Z may also be illustrated with other variable such as X1, X2, and X3 as used and applied throughout the specification.) By successively differentiating the total time with respect to X, Y, and then Z, to find their optimal values by setting the respective derivatives to zero, these m=3 simultaneous linear equations (e.g., 3 simultaneous linear equations) are obtained and m=3 unknowns (e.g., 3 unknowns) are also obtained. In other words, by differentiating the total time with respect to X, Y, and Z to find optimal values of X, Y, and Z and setting each derivative for X, Y, and Z equal to zero, these m=3 simultaneous linear equations are attained:
whereby solving for X, Y, and Z yields an optimal value for each of X, Y, and Z. The m=3 simultaneous linear equations and m=3 unknowns to solve are shown below, and it should be noted that these simultaneous equations take on the form of a tridiagonal matrix, which is derived in a “general” form in
d[(V/A)*[total time]/dX1=(V/A)*[2X1−1−X2]=0, (9B),
d[(V/A)*[total time]/dX2=(V/A)*[2X2−X1−X3]=0, (10B),
d[(V/A)*[total time]/dX3=(V/A)*[2X3−X2−3]=0, (11B),
The reason for the tridiagonal matrix is because each “interior” winding-configuration “j” in the electric motor is only affected by its neighboring winding-configuration “j−1” and “j+1,” hence the coefficient matrix [A] has zero values everywhere except in the main diagonal, which is all 2's (e.g, the number “2”), and diagonals immediately adjacent to the main diagonal, which are both all −1's (e.g., the negative number “1”). In other words, the solution to the problem that is being solved uses matrix algebra with a characteristic form, namely a tridiagonal matrix. The coefficient matrix [A] is symmetric as well as tridiagonal. There are problems (but not in the present invention) that use “penta-diagonal” matrices and non-symmetric matrices, so being able to define the coefficient matrix of the present invention, as both tridiagonal and symmetric, are important mathematical properties of the present invention. Thus, the m=3 simultaneous linear equations and m=3 unknowns to solve results in these three simultaneous equations:
2X−Y=1, (12),
−X+2Y−Z=0, (13),
−Y+2Z=3, (14),
and these equations yield the solution vector as X=3/2, Y=2, and Z=5/2. This solution vector is then used in
Taking the second derivatives, of the total time in equation (8) with respect to X, Y, and Z (or using the variable Xj, where j is equal to 1, 2, 3 “j=1, 2, 3” as used and applied in the specification), all second-derivatives are equal to 2V/A which is positive, indicating that the present invention has solved for the optimal fractional voltage and torque constants, optimal angular velocities, and optimal times to switch to these optimal fractional voltage and torque constants.
d
2[(V/A)*[1+X*(X−1)+Y*(Y−X)+Z*(Z−Y)+3(3−Z)]/dX2=2(V/A)>0 (15),
d
2[(V/A)*[1+X*(X−1)+Y*(Y−X)+Z*(Z−Y)+3(3−Z)]/dY2=2(V/A)>0 (16),
d
2[(V/A)*[1+X*(X−1)+Y*(Y−X)+Z*(Z−Y)+3(3−Z)]/dZ2=2(V/A)>0 (17),
or the following equation may be generically used where the variable Xj replaces the variables X, Y, and Z:
d
2[(V/A)*[total_time]/dX2=2(V/A)>0 (18),
The unknown coefficients X, Y, and Z (and/or Xj) are unitless, and the algebraic expression for total time in equation (8) has the units of time from the quotient V/A. By taking second derivatives of the total time with respect to X, Y, and Z, (and/or Xj) a positive-second derivative is achieved in each case, which indicates a minimal time and thus optimal time for performing the dynamic reconfiguration-switching to achieve an angular velocity of 3V. The delta time is T, where T=(V/A), 3T/4, T, 5T/4, and 3T/2 giving a total time of 11T/2 seconds to ramp up (e.g., accelerate) to an angular-velocity of 3V radians per second, where T is the total time, for the five winding-configurations progressing from winding-configuration-1, winding-configuration-2, winding-configuration-3, winding-configuration-4, and winding-configuration-5 in successive order. Thus, with a five-winding-configuration motor (e.g., m+2=5 “five” different voltage constants), the optimal total time to ramp up (e.g., accelerate) is 11T/2 (5.5T) seconds, which is slightly faster than the 6T seconds obtained by the optimal three-winding-configuration motor, and definitely faster than 9T seconds obtained for a motor with no switching (a one-winding-configuration motor).
As the speed of the electric motor is ramped up (e.g., accelerated), the motor torque constant, which is equal to the voltage constant in SI units and thus is equal to the angular-acceleration, monotonically decreases, as the angular-acceleration is traded-off for a higher maximum angular-velocity in that particular state. Thus, the m simultaneous-equations, with m unknowns (e.g., multiple unknowns represented by the variable “m”) as described in
As will be illustrated below, further analysis is provided for two-winding-configurations (2 different voltage constants) and four-winding-configurations (4 different voltage constants) showing improved performance. An optimal two-winding-configuration motor (e.g. m+2=2 where m=0) is analyzed in
Turning now to
By adding up the right-most column (labeled as “Delta Time”), the total time to accelerate via the switching algorithm is expressed by the following simple, algebraic, and quadratic equation in X and Y:
where X and Y are unknown coefficient of the total time and are unitless, and the algebraic expression for total time has the units of time from the quotient V/A, V is the maximal angular-velocity and A is the angular-acceleration when all motor windings are being used, 3V radians per second is the final angular-velocity (N=3 is used only as an example). By successively differentiating the total time with respect to X and Y to find optimal values of X and Y and setting the derivatives for X and Y equal to zero, these m=2 equations (e.g., 2 equations) and m=2 unknowns are attained:
whereby solving for X and Y yields an optimal value for X and Y. The unknown coefficients X and Y are unitless and these algebraic expressions have the units of time from the quotient V/A. By taking second derivatives of the total time with respect to X and Y, a positive-second derivative (2V/A) is achieved in each case, which indicates a minimal-optimal time for performing the dynamic reconfiguration-switching. For simplicity, using the variables X1, and X2, X1 and X2 respectively in place of the variables X and Y and also substituting equation 19 (total time) into the formula, these same equations (20) and (21), may appear as:
d[(V/A)*[total_time]/dX1=(V/A)*[2X1−1−X2]=0, (20B),
d[(V/A)*[total_time]/dX2=(V/A)*[2X2−X1−3]=0, (21B),
and the m=2 simultaneous equations to solve are only the top and bottom rows of the general tridiagonal matrix solved for in the table of
2X−Y=1, (22),
−X+2Y=3, (23),
and these equations yield a solution vector as X=5/3 and Y=7/3. This solution vector is then used in
d
2[(V/A)*[1+X*(X−1)+Y*(Y−X)+3(3−Y)]/dX2=2(V/A)>0 (24),
d
2[(V/A)*[1+X*(X−1)+Y*(Y−X)+3(3−Y)]/dY2=2(V/A)>0 (25),
the following equation may be used generically where the variable Xj (where j=1 or 2) replaces the variables X and Y, as in equation (19) and (20):
d
2[(V/A)*[total_time]/dX2=2(V/A)>0 (26),
thus, with a four-winding-configuration motor (four different voltage constants), the optimal total time to ramp up (e.g., accelerate) is 51T/9 (5.67T) seconds which is slower than 11T/2 (5.5T) seconds for a five-winding-configuration motor, but faster than the 6T seconds obtained by the optimal three-winding-configuration motor, and also faster than 9T seconds obtained for a motor with no switching (a one-winding-configuration motor). To visualize this particular solution process, the total_time in equation (19) for a four winding-configuration motor is a parabolic surface (like the reflective surface of a telescope mirror or an automobile headlight) which is concave, meaning that it would “hold water” like a soup bowl. Taking the first derivatives of the parabola with respect to X and Y and setting those first derivatives equal to zero, plus the fact that the second derivatives of the parabola with respect to X and Y are positive, results in the values of X=5/3 and Y=7/3 where the total_time in equation (19) is minimized and thus the performance of the four winding-configuration motor is optimized.
As illustrated in column 1 (labeled as the total number of WC), the total number of available winding configurations are 1, 2, 3, 4, and 5. As stated above, the total time for a motor only having 1 winding configuration is 9T. But a motor with 2 winding configurations has a total time of 7T. Thus, as more available winding configurations are added to the motor, the faster it reaches its 3V angular velocity. The idea here is that as the motor has more winding configurations to choose from, the total time is reduced, and this is illustrated in both
Turning now to
By adding up the right-most column (labeled as “Delta Time”), the total time to accelerate via the switching algorithm is expressed by the following single, algebraic, and quadratic equation in unknown X:
where X is unknown coefficient and is unitless, and the algebraic expression for total_time has the units of time from the quotient V/A, V is the maximal angular-velocity, and A is the angular-acceleration when all motor windings are being used, N is an arbitrary value greater than unity (e.g., N=3 as used above for illustration purposes for the previous calculations) representing a multiplier of the angular-velocity V to give the final angular-velocity as NV, and X is an unknown coefficient.
By differentiating the total time with respect to X, to find the optimal value of X, and setting that derivative to zero, the following linear equation is attained:
whereby solving for X yields the unknown value of X, it is determined that X equals (N+1)/2. By taking a second derivative of the total time with respect to X, the second derivative is derived to be:
whereby this positive-second derivative which is achieved, indicates that the solution for X provides an optimal time for performing the dynamic reconfiguration-switching of the motor windings to achieve the minimal time to achieve an angular-velocity of NV. Because the second derivative is positive, the minimum time (e.g., the minimal-optimal time) to perform the dynamic reconfiguration-switching of the motor windings is determined, which is indeed the optimal solution for a 3-winding-configuration motor going from 0 radians per second to NV radians per second. In other words, because the second derivative is positive, the second derivative with respect to X means (a) the value of the K/X equals 2K/(N+1) to switch to, (b) the time and angular-velocity to switch from K to 2K/(N+1), and (c) the time and angular-velocity to switch from 2K/(N+1) to K/N are optimal, in order to minimize the time to ramp up to the final angular-velocity NV is determined. These results are consistent with above calculations where N=3 was used. In terms of introductory algebra, to help visualize this particular solution process, the total_time in equation (27) for a three winding-configuration motor is a simple parabola (a conic section) which is concave, meaning that it would “hold water” like a soup bowl. Taking the first derivative of the parabola with respect to X and setting that first derivative equal to zero, plus the fact that the second derivative of the parabola with respect to X is positive, results in the value of X=(N+1)/2 where the total_time in equation (27) is minimized and thus the performance of the three winding-configuration motor is optimized. This value of X=(N+1)/2 is equivalent to the value of X=2 for the special case of N=3 for the total_time equation (5).
Total Time=(V/A)*[1+X1*(X1−1)+X2*(X2−X1)+X3*(X3−X2)+ . . . +Xm*(Xm−Xm-1)+N*(N−Xm)] (30),
where {X} is the vector of unknown X1, X2, X3, . . . , Xm that are unitless, and this single algebraic expression for total time has the units of time from the quotient V/A, and N is an arbitrary multiplier representing the final angular-velocity NV, and X is an unknown coefficient of the total time. By successively differentiating the total_time with respect to X1, X2, X3, . . . Xm, to find their optimal values by setting the respective derivatives to zero, these m simultaneous equations and m unknowns are attained:
d[(V/A)*[Total_Time]/dX1=(V/A)*[2X1−1−X2]=0 (31),
d[(V/A)*[Total_Time]/dXj=(V/A)*[2Xj−Xj−1−Xj+1]=0 for j=2 . . . m−1 (32),
d[(V/A)*[Total_Time]/dXm=(V/A)*[2Xm−Xm−1−N]=0 (33),
and taking second derivatives, of total time for X1, X2, X3, . . . Xm, all second-derivatives are positive (and equal to each other), indicating that the present invention has solved for the optimal fractional voltage and torque constants, optimal angular velocities, and optimal times to switch to these optimal fractional voltage and torque constants, by using the following equations for the taking the second derivative, which are positive (e.g., greater than zero):
d
2[(V/A)*[Total_Time]/dX12=2(V/A)>0 (34),
d
2[(V/A)*[Total_Time]/dX2=2(V/A)>0 for j=2 . . . m−1 (35),
d
2[(V/A)*[Total_Time]/dXm2=2(V/A)> (36),
or the following equation may generically used where the variable Xj is used and replaces the variables X1, Xj, Xm, as used in equations (34), (35), and (36):
d
2[(V/A)*[Total_Time]/dX2=2(V/A)>0 for j=1 . . . m (37).
The m simultaneous linear equations to solve for the m unknowns are (31), (32), and (33). These m simultaneous linear equations form a tridiagonal system of equations where all entries of the coefficient matrix are 2 along the main diagonal, and −1 along the diagonals immediately adjacent the main diagonal, and all other entries in the coefficient matrix are zero. As stated before, coefficient matrix [A] is symmetric as well as tridiagonal, meaning that coefficient matrix [A] has specific mathematical characteristics. The m simultaneous linear equations to solve for the m unknowns are:
2X1−X2=1, (38),
X
j−i+2Xj−Xj+1=0 for j=2 . . . m−1, (39),
−Xm−1+2Xm=N, (40),
where these simultaneous linear equations to be solved are placed in the tridiagonal coefficient matrix [A], as seen in
One of the values of coefficient matrix [A] being both symmetric and tridiagonal is that a simple solution algorithm can be written, one decidedly less complicated than if coefficient matrix [A] was fully populated with non-zero elements which did not fit any pattern. For example, a solution algorithm may begin with the calculation of factors Fj and Gj. The order of the progression is starting from index j equals 1 and ending at j equals m. In other words, the calculation of factors Fj and Gj are calculated by the following recursive algorithm:
F
1=2 and G1=½, (41),
F
j=2−1/Fj−1 from j=2 to m, (42),
G
j
=G
j−1
/F
j from j=2 to m−1, and (43),
G
m=(N+)/Fm, (44),
as will be shown below in
The elements of solution vector {Xj} are now obtained, with the order of the progression in the reverse direction, namely starting from index j equals m and ending at j equals 1, Xm=Gm, Xj=Gj+Xj+1/2. Thus, the solution vector {Xj} is now in a simple algorithm, for m≧2 (e.g., m is greater than and/or equal to two), since that is the lowest value of m yielding a coefficient matrix [A] with multiple simultaneous linear equations and multiple unknowns. If m=1, there is only one equation to be solved and the above upper-triangularization and back-substitution algorithm is unnecessary. Also, the solution for m=1 from tables as seen in
At this point, a need exists to analyze the case for m=1 equation and m=1 unknown. The following Fig.'s give the construction of the switching algorithm, assuming that the final angular-velocity is NV (N is an undetermined constant greater than unity) and m+2=3 winding-configurations are used, and there is only m=1 equation and m=1 unknown, hence the tridiagonal matrix approach of
giving a total time to accelerate up to an angular-velocity of
which is faster than the N2T required without coil switching, again, where
is the total time, for the three winding-configurations progressing from winding-configuration-1, winding-configuration-2 and winding-configuration-3 in successive order.
Thus, as illustrated in Fig.'s above, in one embodiment, the present invention performs this process for a motor with WC-winding-configurations, where WC=m+2, of the electric motor in order to optimally achieve an angular-velocity NV which is N times a capability of the electric motor with a one hundred percent torque constant and voltage constant K. Calculating an optional time for performing the dynamic reconfiguration-switching by first finding a total time for acceleration to an angular velocity of NV and differentiating that total time with respect to vector of unknowns {X} and setting each of those first derivatives to zero to find an optimal value of the vector of unknowns {X} to minimize the total time. Finally, taking a second derivative of that total time with respect to vector of unknowns {X}, wherein a positive-second derivative indicates that the value of the vector of unknowns {X} indeed minimizes and optimizes the total time for performing the dynamic reconfiguration-switching, where vector of unknowns {X} represents one or more unknowns used for subdividing the one hundred percent torque constant and voltage constant of the electric motor into smaller units of a torque constant and a voltage constant (Kt=Kv in SI units) which allows the electric motor to go faster than V angular-velocity and up to an angular-velocity of NV where V is a maximum angular-velocity achieved with the one hundred percent torque constant, and N is an arbitrary value greater than 1, where WC is the a number of possible winding-configurations of the electric motor, and WC=m+2, where m is the number of equations and number of unknowns being solved for.
Moreover, the illustrated embodiments as described in herein may be applied to a variety of types of electric motors (e.g., an electric motor used in the automotive industry). For example, in one type of electric motor, the electric motor may be comprised of an armature bearing three windings. The armature rotates in a magnetic field and current is generated in the three windings and drawn from them in turn through brushes. Such an electrical motor is shown in
F
1=2 and G1=½, (41),
F
j=2−1/Fj−1 from j=2 to m, (42),
G
j
=G
j−1
/F
j from j=2 to m−1, and (43),
G
m=(N+Gm−1)/Fm (44).
From step 2510, the method 2500 then calculates the solution vector {X} starting from j=m and going down to j=1, X(m)=G(m) and X(j)=G(j)+X(j+1)/2 (step 2512). Returning to step 2508, if yes the method 2500 the variable X(1) is set equal to (N+1)/2 (step 2514). From both steps 2512, and 2514, the method 2500 calculates the vector {KF} of fractional voltage and torque constants (step 2516). The vector {KF} has m+2 entries for the m+2 winding-configuration motor. KF(1)=K, KF(j+1)=K/X(j) for j=1 to m, and KF(m+2)=K/N. Next, the method 2500 calculates the vector of maximum angular velocities {Max_V}, where switching to the next winding-configuration (next KF) occurs (step 2518), with Max_V(1)=V, Max_V(j+1)=X(j)*V for j=1 to m, and Max_V(m+2)=NV. In one embodiment, the method 2500 ends at step 2518, whereby the method 2500 for dynamic coil switching is configured once for a motor and never changed again.
One example of method 2500 could apply to DVD-ROM and Blu-Ray-ROM disk drives, both of which read data from the respective optical disk at a constant linear velocity (CLV). The layout of a DVD-ROM disk 2600 is shown in
However, method 2500 permits an additional embodiment, whereby the algorithm for dynamic coil switching is itself dynamically reprogrammable, thus allowing continual change of multiplicative factor N and/or number of equations m. Method 2500 continues to step 2520 where a check is made whether to increase the number of equations m, as that permits higher performance, or to decrease the number of equations m, for lower performance. If the answer is yes in step 2520, method 2500 transfers to step 2522 and the new value of m is obtained, where m is greater than or equal to one (e.g., m≧1), and a flag is set that m has been changed. If the answer is no in step 2520, method 2500 transfers to step 2524, where a check is made whether to increase multiplicative factor N for higher maximum motor speed and simultaneously less motor torque, or to reduce multiplicative factor N for lower maximum motor speed, and simultaneously more motor torque (step 3524). If the answer is yes in step 2524, method 2500 transfers to step 2526 and a new value of m (where m is greater than m, m>1) is obtained and method 2500 proceeds to step 2508 to begin recalculation of the switching algorithm. If the answer is no in step 2524, method 2500 transfers to step 2528 where the flag is checked from step 2520. If the answer is yes in step 2528, method 2500 proceeds to step 2508 to begin recalculation of the switching algorithm. If the answer is no in step 2528, the algorithm loops back to step 2520, searching for changes in m and N.
There are numerous applications for dynamically altering control method 2500 with additional steps 2520-2528. In one embodiment, the constant angular-velocity of disks in a hard disk drive (HDD) is run at a low angular-velocity V to save on power expended during low disk SIOs (Start Input/Output Activities). Running at a low angular-velocity V permits the storage array of hard disk drives to address workload as the storage array is not in a sleep mode but it is clearly in a power-saving mode. As the queue of pending SIOs builds, N is dynamically increased to accommodate the increased workload at the higher angular-velocity of NV. Once the workload becomes quiescent, the value of N is correspondingly reduced.
Another application for dynamically altering control method 2500 involves automobiles, trucks, and motorcycles. Parents may wish to downgrade the performance of the car, if their teenage son or daughter was taking out the car, and V (an angular-velocity) was equivalent to 15 MPH, then the parent or guardian could set N=4, meaning that 4V=60 MPH and the car would be speed limited to 60 MPH (fast enough for any teenage driver). Additionally, the motor could have a limited number of winding-configurations (e.g., switching-states), say m+2=3, meaning that the car would take longer to accelerate to the maximum velocity (the automotive equivalent of a 3-speed transmission) rather than m+2=5 (for example) which would be reserved for the parents (the automotive equivalent of a 5-speed transmission). Thus, the parents have tuned down the performance of the car, given the lack of experience of the driver. The parents would have a password, one allowing the parents to set N=5 (allowing the parents to go 75 MPH) and m+2=5 (faster acceleration). The idea here is not that we merely have a control algorithm for coil switching “on the fly”, but that algorithm itself can be reconfigured on the fly (nearly instantaneously), depending upon (a) age of the driver, (b) driving conditions such as weather, and (c) time of day. The car could go to a lower performance mode for night driving (3N=45 MPH), especially if the weather was bad and road traction was poor due to rain, snow, or ice.
The embodiments are going beyond steps 2502-2518 of method 2500 of simply dynamically reconfiguring the motor coils. Now the present invention is dynamically reconfiguring the algorithm/calculations itself, which is easily done, given the tridiagonal set of equations has an easily programmed solution that avoids the complexity of inverting an m-by-m matrix because the tridiagonal [A] matrix is “sparse” (mostly zeros). Yet another embodiment is that the maximum velocity of a car is determined by N*V*wheel radius. N could be fed to the car via wireless communication such as cell phone telepathy, or Bluetooth communication, or GPS-location, and thus, speeding would be impossible in school zones, construction zones, residential streets, etc. Bluetooth is an advantageous method of communication, given its intentionally short-range distance of communication. Essentially, the car would receive the legal value of N via Bluetooth transmitters in the roadway, or via GPS-location, and the maximum velocity of the car is set that way. N=1 gives 15 MPH for school zones. N=2 or N=3 gives 30 or 45 MPH for residential or business zones. N=4 (60 MPH) or N=5 (75 MPH) gives “expressway” speeds. Bluetooth or GPS-location gives N to the car, and the car resets its algorithm in a fraction of a second, to accommodate the newly allowed speed limit). To allow for varying models of cars, the same Bluetooth network may send out N based on the model of the car, e.g. Honda_N=2, Toyota_N=3, Ford N=1, F150N=4, etc.
In yet another automobile, truck, bus, or motorcycle embodiment, if an accident occurs, the Bluetooth network lowers the value of N to speed regulate motorists past the accident scene, to prevent massive chain reaction accidents, especially when visibility is limited.
In a medical embodiment, the DC brushless motor turns an Archimedes screw blood-flow assist of an artificial heart. The DC brushless motor could be held in place by being part of a medical stent used in arteries. As the oxygen content goes down, as measured by a medical oxygen sensor, N is dynamically increased to allow more blood flow through the lungs. Similarly, N could be increased for dental drill applications requiring a higher angular-velocity.
As mentioned above, the embodiments of the present invention may apply to a motor, an electric motor, a brushless DC motor, a tape drive system, an electric motor in an electric vehicle or motorcycle, a wind turbine, and/or a variety of other types of motors. However, each of these various motor types have physical properties and/or hardware configurations that are separate and distinct. For example, an electric car runs with a constant wheel radius so each of the 4 motors in an electric car should run at the same angular velocity (except when making a right or left hand turn). Interestingly enough, if one wheel is spinning at a significantly faster speed than the others, a change in winding configuration, as described above in each of the Fig's, such as engaging additional motor windings, could be performed to compensate for a loss of traction, hydroplaning, and/or skidding, etc. In such a scenario, it would not be desired to facilitate high speed to a wheel losing fraction, which is counterintuitive to what you'd do in a tape drive when one tape motor needs to spin faster than the other.
Moreover, the two motors in a tape drive system almost never run at the same angular velocity. Only at middle-of-tape (MOT) do the two drive motors run at the same angular velocity. At a beginning of tape (BOT), the supply reel includes all of the tape, and hence has a large radius, and thus, rotates more slowly than the take-up reel (with its small radius because it has no tape). Hence, as tape is spun off of the supply reel, the supply reel speeds up, and as tape is added to the takeup reel, the take up reel slows down. A tape drive may have N=3 for a normal data I/O speed. However, N=6 (or some other value) may be used for high speed searching or rewinding. Hence, the tape drive is a good example of where multiple values of N may be used.
In addition, the following illustrates other differences in the physical properties of the motor types for applying the embodiments of the present invention. 1) A hard disk drive or an optical disk drive has 1 (and only 1) drive motor and the drive motor spins the single stack of disks comprising one or more disks. 2) A tape drive has only 2 motors, one for the supply reel and one for the takeup reel. It should be noted that belts and pulleys have been used to allow only one motor, however, a tape drive, having 2 motors, only run at the same angular velocity at the special case of MOT (middle of tape). The supply reel always increases in angular velocity as it sheds tape and the takeup reel always decreases in angular velocity as it gains tape (delta angular velocities of the opposite sign). A high-speed seek may require a higher “N” than normal data I/O. 3) An electric car typically has a minimum of 3 motors (tricycle approach) or 4 motors (typical car), but a motorcycle may have 2 motors. Typically, all motors run at the same angular velocity, except when a turn is made (as the outer wheels in a turn have to spin faster than the inner wheels as they have further to go. An error condition exists (such as hydroplaning, skidding, etc.) when one wheel turns significantly faster than the others, and rather than enabling a higher angular velocity by shedding windings it is possible to add windings to slow down the motor and get more fraction, using the embodiments described above in the Fig.'s, but in a torque-control mode rather than a velocity-enabling mode.
As described above, the “coil switching” has been used and described from an electromechanical perspective for a motor being used as motors and not generators with a control algorithm for the motor (e.g., DC brushless motor and/or an electric motor) being used as motors and not as a motor acting as a generator, namely the use of a symmetric and tri-diagonal matrix established by differentiation to find a global-minimum optimal-time and associated angular-velocities to switch from one coil-configuration to another to achieve that global-minimum optimal-time. At this point, the illustrated embodiments are applied for the coil-switching to motors acting/behaving as generators. In one embodiment, the present invention makes use of that part of the calculus, as illustrated above involving optimal control, from a boundary perspective for the use of motors acting as “generators” (e.g., generators in one of a variety of types of turbines such as wind turbines, etc.). The algorithm, as described above, involved a global-minimum at an interior point of the operational space when the motor (e.g., DC brushless motor and/or electric motors) is used as a motor. From a topological standpoint, such optimization problems may alternately involve the minimum being at the boundary of the problem, and not at an “interior point,” and it is that boundary condition that is the novelty in the present invention when a motor (e.g., DC brushless motor and/or electric motors) is used as a generator.
Returning now to
As mentioned above, as used in the SI (System International, commonly known as “metric”) units, the Voltage Constant (Kv) equals the Torque Constant (Kt). The symbol “K” is used to denote either the Voltage Constant (Kv) or Torque Constant (Kt) when all of the motor windings are in use, since Kv and Kt are both equal when measured in SI (System International or “metric” units). For example, the equation K=Kv=Kt illustrates K is equal to the voltage constant “Kv” and the also equal to the torque constant “Kt”. “K” is used for simplicity. Also, as will be described below, in addition to the list of Parameters described above, the parameters used below are described as:
Voltage Generated=Kv*Angular velocity of Turbine,
Vm=angular velocity in revolutions per second of a shaft (see
Vmax=the maximum angular velocity in revolutions per second of a shaft (see
Fm=Magnetic Flux (see
Z=total number of individual conductor loops/windings (see
Average_Voltage_GEN=Z*Fm*Vm, which may be an average voltage or EMF generated,
Average_Voltage_GEN=Kv*Vm, which may be an average voltage or EMF generated, Solving for the voltage constant Kv, the present invention derives that Kv=Z*Fm, which indicates that the voltage constant Kv is directly proportional to the number of loops/windings Z, for a given magnetic flux Fm.
Zmax is a maximum number of individual conductor loops/windings,
Braking Torque=Kt*I, for braking electric cars and using the power to recharge the electric car's batteries,
Rc is the resistance of one loop in generator, such as loop 3408 in
R_LOAD is the internal resistance of a DC-to-AC inverter, such as inverter 3410 in
R_total=Z*Rc+R_LOAD. In this equation, the total resistance R_total is the sum of the resistances of Z loops/windings times Rc plus the internal resistance R_LOAD of a DC-to-AC inverter or rechargeable battery.
Current_Gen=Z*Fm*Vm/[Z*Rc+R_LOAD], which is derived based on the current generated being voltage generated divided by the total resistance. If R_LOAD<<Z*Rc, then Current_Gen=Fm*Vm/Rc, which is constant with regards to the number of loops/windings Z, thus indicating a constant current situation during coil switching as depicted in configuration 3301 of
Power_GEN is a total amount of power without coil switching, which is the product of voltage generated times current generated=Z2*Fm2*Vm2/[Z*Rc+R_LOAD]. If R_LOAD<<Z*Rc, then Power_GEN=Z*Fm2*Vm2/Rc, indicating that the power generated is directly proportional to the number of loops/windings Z.
Power_GEN—1=(Z1/Z)*Power_GEN, is an amount of generated power by Z1 loops/windings to first DC-to-AC inverter and/or rechargeable battery being recharged when R_LOAD<<Z1*Rc, and
Power_GEN—2=[(Z−Z1)/Z]*Power_GEN, is an amount of generated power by Z−Z1 loops/windings to an alternative DC-to-AC inverter and/or rechargeable battery being recharged, when R_LOAD<<(Z−Z1)*Rc, regarding configuration 3301,
In
In one embodiment, as observed in
Power_GEN—1+Power_GEN—2=(Z1/Z)*Power_GEN+[(Z−Z1)/Z]*Power_GEN=Power_GEN (45).
When R LOAD is negligible and at least two DC-to-AC inverters or two rechargeable batteries are used, the above conservation of power applies when coil switching in the generator prevents excessive voltage to prevent inverter and/or rechargeable battery burnout. This shows the value of using a second DC-to-AC inverter or a second rechargeable battery. From Faraday's Law, the average voltage “electro magnetic force” Voltage_LOOP 3410 generated per conductor loop 3408 is Voltage_LOOP=dFm/dt. The magnetic flux 3406 cut per conductor loop 3402 (e.g., the spinning shaft 3402) in one revolution is dFm=Fm and the time for one revolution dt=1/Vm, give Average_Voltage_LOOP 3410 of conductor 3408=dFm/dt=Fm*Vm. Adding up the voltage due to Z serial loops gives the voltage for the DC generator: Average_Voltage_GEN=Z*Fm*Vm. The resistance of one conductor loop 3408=Rc. Again, adding up the resistance of Z serial loops gives us the generator resistance. Generator_Resistance=Z*Rc. In one embodiment, this generator is connected to a DC-to-AC inverter, or a rechargeable battery being recharged, with an internal resistance of R_LOAD 3414, which is assumed to be constant. Adding the generator resistance and the load resistance gives the total resistance in the circuit in
A special case of Average_I_GEN—1=Average_I_GEN (identical current regardless of coils shed) occurs when Z*Rc>Z1*Rc>>R_LOAD or when R_load essentially zero as compared to the resistance of the coils in the generator. However, Average_I_GEN—1>Average_I_GEN is never obtained.
Moreover, it is observed from the above that Power_GEN—1<Power_GEN when Z1<Z. When Z*Rc>Z1*Rc>>R_LOAD and or when R_load essentially zero, then Power_GEN—1=(Z1/Z)*Power_GEN. This means that the output power with coil shedding is always less than the output power without the coil shedding. Thus, as coil shedding occurs, the Average_Voltage_GEN—1 and Power_GEN—1 decrease. Average_I_GEN—1 may decrease or remain essentially constant under special conditions. This coil shedding is performed to keep from blowing out the first DC-to-AC inverter, or rechargeable battery as the case may be.
As mentioned above, the present invention uses the “shed” Z2=Z−Z1 conductor loops to power a second DC-to-AC inverter (or recharge a second rechargeable battery). Thus, the second (e.g., alternative) DC-to-AC inverter has an Average_Voltage_GEN—2=(Z−Z1)*Fm*Vm, an Average_I_GEN—2=(Z−Z1)*Fm*Vm/[(Z−Z1)*Rc+R_LOAD], and the power salvaged via the second DC-to-AC inverter (or second rechargeable battery) is Power_GEN—2=[(Z−Z1)*Fm*Vm]2/[(Z−Z1)*Rc+R_LOAD]. Power_GEN—2 represents the power rescued by using a second DC-to-AC inverter in
It should be noted that in alternative embodiments, the present invention applies equally to DC-to-AC inverters and recharging batteries, including lead-acid, sealed-lead-acid (SLA), valve-regulated lead-acid (VRLA), lithium, nickel cadmium, and nickel metal hydride rechargeable batteries. In one embodiment, a capacitor is used as a battery. Other parallel-configurations than the two halves shown in
Moreover, the present invention as described herein, applies to a motor (e.g., DC brushless motor and/or electric motors) as a generator in a variety of applications. In one embodiment, the present invention as described herein, applies to a motor (e.g., DC brushless motor and/or electric motors) used as a generator for the braking action in electric cars. The use of the motor (e.g., DC brushless motor and/or electric motors) as a generator could be applied to electric cars, where the “generator” action puts electricity back into the storage batteries during the braking action (applying reverse torque to the wheels to slow/stop the electric car). To keep from blowing out the batteries, the DC voltage to the batteries would have to be limited during rapid deceleration (rapid braking). Thus, in the above described figures, the reference to DC-to-AC inverters may be described and replaced with rechargeable batteries. For example, for an electric motor used as a generator in an electric vehicle for dynamic braking, the dynamic reconfiguration-switching of motor windings may be employed upon the generator in the electric vehicle exceeding one of a maximum usable constraint of a first rechargeable battery in order to reduce a voltage constant of the electric motor thereby limiting one of a produced voltage and a produced power. Thus, for a parallel configuration of the plurality of motor windings, the dynamic reconfiguration-switching of the motor windings in an electric motor in an electric vehicle may be employed upon the generator exceeding the maximum usable voltage of the first rechargeable battery in order to reduce the voltage constant of the electric motor thereby limiting the produced voltage. For a serial configuration of the motor windings, the dynamic reconfiguration-switching of the motor windings in an electric motor in an electric vehicle may be employed upon the generator exceeding one of the maximum usable voltage and the maximum usable power of the first rechargeable battery and a second rechargeable battery in order to reduce the voltage constant of the electric motor thereby limiting one of the produced voltage and the produced power.
In one embodiment, the present invention as described herein, applies to a motor (e.g., DC brushless motor and/or electric motors) used as a generator for scavenging electricity from hard disk drives (HDD) spinning disks of storage arrays. This same generator action could be used to obtain power from the spinning disks of no-longer used hard disk drives or optical disk drives. Instead of allowing the disks to slow down due to air friction (which generates unwanted heat), the DC brushless motor is put into “generator mode” and the kinetic energy of the spinning disks creates electricity which is placed back into the power grid of IBM's® SONAS®, TS7700, or DS8000 storage arrays, to help make these “green products.”
In an additional embodiment is that if the coil switching was done in integral portions (two halves, three thirds, four quarters, etc.), then the subsets could be applied in parallel, to provide reduced voltage but increased current, thus scavenging more power out of the generator while still limiting the DC voltage output.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical fiber cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention have been described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, programmable data processing apparatus, or other device to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks. The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or device to cause a series of operational steps to be performed on the computer, other programmable apparatus or device, to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the above figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
While one or more embodiments of the present invention have been illustrated in detail, the skilled artisan will appreciate that modifications and adaptations to those embodiments may be made without departing from the scope of the present invention as set forth in the following claims.
This application is a continuation in part, and claims priority to copending U.S. application Ser. No. 13/614,887, 13,614,896, 13,614,905, and 13/614,915 all of which were filed Sep. 13, 2012, which are all continuations in part and claim priority to copending U.S. application Ser. No. 12/202,854, filed Sep. 2, 2008, now Published U.S. Application 2010/0052584A1, the entire contents of which is incorporated herein by reference and is relied upon for claiming the benefit of priority. This application is also a continuation in part, and claims priority to copending U.S. application Ser. No. 13/099,276 filed on Jun. 2, 2011, which is a divisional application and claims priority to copending U.S. application Ser. No. 12/202,854, filed Sep. 2, 2008, now Published U.S. Application 2010/0052584A1, the entire contents of which is incorporated herein by reference and is relied upon for claiming the benefit of priority.
Number | Date | Country | |
---|---|---|---|
Parent | 12202854 | Sep 2008 | US |
Child | 13099276 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13099276 | May 2011 | US |
Child | 13782411 | US | |
Parent | 13614887 | Sep 2012 | US |
Child | 12202854 | US | |
Parent | 12202854 | Sep 2008 | US |
Child | 13614887 | US | |
Parent | 13614896 | Sep 2012 | US |
Child | 12202854 | US | |
Parent | 12202854 | Sep 2008 | US |
Child | 13614896 | US | |
Parent | 13614905 | Sep 2012 | US |
Child | 12202854 | US | |
Parent | 12202854 | Sep 2008 | US |
Child | 13614905 | US | |
Parent | 13614915 | Sep 2012 | US |
Child | 12202854 | US | |
Parent | 12202854 | Sep 2008 | US |
Child | 13614915 | US |