Spacecraft attitude control with avoidance constraint

Abstract: The attitude of a space vehicle (10) is controlled to direct an instrument (24) in a particular direction. For certain maneuvers, the reorientation may temporarily result in an undesirable orientation of the spacecraft. For example, the instrument may be a telescope which, during slewing of the spacecraft from one direction (26) in space to another (28), may pass through an attitude in which it is directed (30) toward the Sun (12). A control system is provided which performs the attitude control with an avoidance constraint. The control system generates a first error signal represent­ ative of the difference between the current and desired final orientations, and slews the attitude in response thereto. An avoidance error signal is also generated which represents the difference between the current orientation of a vector associated with the spacecraft and a vector in space which it is to avoid. A threshold signal is generated when the difference between the last two vectors reaches a particular value, whereupon the control system slews in response to a combination of the two error signals.

Description: This invention relates to attitude control systems for satellites in which undesired attitudes are avoided during manoeuvers. Many spacecraft include instruments or devices which are to be directed toward particular objects in space. Such an instrument might be a telescope, camera, or the like, and the objects being examined by such instruments might be particular celestial objects, objects orbiting the Earth, or particular portions of the Earth itself. When examination of one object has been completed, an examination of another, different object is desired, the spacecraft itself is often controlled in attitude so as to slew the instrument to the desired attitude in space. If the instrument is directed at a source of radiation which is harmful to the instrument, it may be damaged or become unusable. US-A-4758957 discloses a system for simultaneously damping precession and nutation of a spinning spacecraft, including a computer, thrusters and gyros. However, the system is not concerned with attitude control systems in which undesired attitudes are avoided. The present invention provides a spacecraft including an attitude control system in which undesired attitudes are avoided during manoeuvers, the system comprising: controllable torquing means adapted for torquing said spacecraft in space under control of a torque command signal; sensing means adapted for determining the orientation of first, second and third spacecraft coordinate axes relative to first, second and third spatial coordinate axes associated with the environment of said spacecraft; first error signal generating means for generating a first error signal representative of the angular error between said spacecraft coordinates and target coordinates associated with said spatial coordinates; characterized by second error signal generating means for generating a second error signal related to the angle between a first avoidance vector in said spacecraft coordinates and a second avoidance vector; and combining means coupled to said first and second error signal generating means for generating a torque command signal for controlling said torquing means in response to said first and second error signals, said combining means combining said first and second error signals in proportion to said angle between said first and second avoidance vectors. The present invention permits control of the attitude of a spacecraft from a first orientation to a second orientation relative to an environment by a path which avoids an undesired orientation. In a preferred embodiment, a first error signal or slew error signal is generated which is representative of the difference between the current spacecraft orientation and the target orientation. An avoidance error signal is generated which represents at least the difference between the orientation of a first vector associated with the spacecraft coordinate axes relative to its environment and a second vector. A control arrangement reorients or slews the spacecraft to null a combination of the first and second error signals, tending to cause the spacecraft coordinate axes to rotate toward alignment with the target coordinate axes while avoiding the undesired attitude. In a particular embodiment of the invention, a comparison is made between the avoidance error signal and a threshold value, which threshold represents the closest desired approach of the first vector to the second vector. A threshold signal is generated in response to the comparison. The spacecraft is torqued in response to the first error signal when the threshold signal is in a first state to slew the spacecraft coordinate axes toward the target coordinate axes. The spacecraft is torqued in response to a combination of the first and avoidance error signals when the threshold signal is in a state other than the first state, to thereby cause the first vector to tend to avoid the second vector while the spacecraft coordinate axes slew toward the target coordinate axes. In the accompanying drawings: FIGURE 1 illustrates a satellite in space with an instrument mounted thereon, and also illustrates the Sun and a target in the form of a space vehicle; FIGURE 2a illustrates coordinate systems associated with the spacecraft and with inertial space which relate to FIGURE 1, and FIGURE 2b is a similar coordinate system illustrating the paths taken by certain vectors during slewing in accordance with the invention; FIGURE 3 is a simplified block diagram of a prior art spacecraft attitude control system; FIGURE 4 is a simplified block diagram of a spacecraft attitude control system in accordance with the invention; and FIGURES 5 is a flow chart illustrating a control method associated with the paths of FIGURE 2b. In FIGURE 1, a spacecraft designated generally as 10 is located in space at a distance from the Sun illustrated as 12, and is oriented in an arbitrary attitude relative to the Sun. A spacecraft body 16 is associated with and fixed to body coordinate axes x b , y b , and z b . The body coordinate axes of spacecraft 10 are oriented arbitrarily relative to target coordinates x t , y t , z t , which are associated with the orientation of a target vehicle 32 relative to spacecraft 10. Body 16 of satellite 10 includes mutually orthogonal magnetic torquing coils 18, 20 and 22, which are wound for torquing the spacecraft relative to ambient magnet fields (not illustrated). An instrument illustrated as 24 is fixedly supported on body 16 by a mounting 25 with its line of sight directed along a line 26 arbitrarily oriented and skewed relative to the x b , y b , and z b body coordinate axes. A line 28 defines a line of sight from target 32 to spacecraft 10. It is desired to reorient spacecraft 10 to direct the line of sight 26 of instrument 24 toward target 32. Line of sight 26 must be made to coincide with line 28, which requires that spacecraft 10 body coordinate axes x b , y b and z b be made to coincide with the target coordinate frame of axes x t , y t and z t . When body 16 is in the target orientation, line of sight 26 will be coincident with line of sight 28, and instrument 24 will be pointed toward target 32. The shortest angular rotation necessary to reorient spacecraft 10 results from torquing body 16 so as to rotate about a single axis such as 34, which is fixed to body 16. In general, this requires torquing body 16 so as to move instrument line of sight 26 angularly through the plane in which both instrument line of sight 26 and target line of sight 28 lie. As illustrated in FIGURE 1, line of sight 30 extending between Sun 12 and spacecraft 10 also lies on or near the plane in which lines-of-sight 26 and 28 lie. If body 16 of spacecraft 10 is rotated about axis 34 to align the body coordinate frame to the target coordinate frame, line of sight 26 will move along the path illustrated as 36. During this reorientation, instrument line of sight 26 will closely coincide or substantially coincide with Sun line of sight 30. Some instruments, such as telescopes, may have their detectors damaged by such an orientation. Consequently, it is not desirable to perform the maneuver as described above. A reasonable prior art alternative might be to delay the desired maneuver until such time as target 32 or Sun 12 have moved relative to the spacecraft in such a manner that the maneuver can be made without harming the instrument. FIGURE 2a illustrates coordinate axes and vectors related to spacecraft attitude control. In FIGURE 2a, the coordinate axes fixed in the spacecraft body are designated as x b , y b and z b . Coordinate axes x i , y i and z i , are inertial coordinates which remain fixed with respect to the environment surrounding the spacecraft. As illustrated in FIGURE 2a, inertial coordinate axes x i , y i and z i initially coincide with the spacecraft body x b , y b and z b axes. A vector 34 designated represents the axis in the body coordinate system about which torquing occurs to rotate the spacecraft by an angle Φ in order to align the body axes x b , y b and z b with the target coordinate axes as x t , y t , and z t . FIGURE 2a also illustrates a vector designated fixed in the spacecraft body coordinate system x b , y b , z b . A vector illustrated as represents a vector fixed in the inertial coordinates x i , y i and z i , and which lies generally between vectors and p t . During the reorientation of the spacecraft, spacecraft avoidance vector must move to target vector p t without passing through or near the inertial avoidance vector , toward which vector may not be directed. FIGURE 3 illustrates a prior art control system with which spacecraft body 16 is associated. The control system includes 3-axis gyroscopes (gyros) illustrated as a block 52. The gyros represented by block 52 produce signals representative of the spacecraft angular rates, which are coupled over a data path 54 to a slew attitude control logic circuit illustrated as a block 55. Block 55 uses the gyro signals to propagate the transformation from the inertial to the body coordinate frame, and also calculates a control error signal which is proportional to the angular separation between the body and target coordinate frames. The control error signal is applied to a control logic circuit 56, which includes additional logic which compensates the control error signal so that the attitude control system as a whole is stable. Control logic circuit 56 produces control signals for controlling torquers 18, 20 and 22 (FIGURE 1), illustrated together in FIGURE 3 as a block 58. The torquing is a manner which is roughly proportional to the angular difference between vectors and p t . It will be readily understood that such a control scheme simply directs the vector toward the p t vector, and the undesired attitude cannot be avoided when is close to . FIGURE 2b illustrates the inertial coordinates of FIGURE 2a, together with the , p t and the vectors. A dotted line 60 illustrates the path taken by the vector in moving toward vector p t during a spacecraft reorientation according to an embodiment of the invention. As illustrated, path 60 includes straight-line portions 60a and 60b, and a circular or curved portion 60c which avoids vector by a predetermined angle. FIGURE 4 is a simplified block diagram of a control system embodying the invention which achieves the control illustrated in FIGURE 2b. Elements of FIGURE 4 corresponding to those FIGURE 3 are designated by the same reference numerals. In FIGURE 4, the spacecraft rates sensed by gyro(s) 52 are applied over a data path 54 to slew control error generator block 55. The control error signal output of block 55 is applied to a first input port 76 of a combiner and avoidance logic arrangement illustrated as a block 78. A Sun sensor illustrated as a block 80 is mounted on spacecraft body 16 and moves therewith, and produces on a data path illustrated as 82 information about the relative orientation of the Sun in the spacecraft body frame. This Sun data is applied to a second input port 84 of combiner and avoidance logic block 78. In general, combiner and avoidance logic circuit block 78 combines the slew error from block 55 with information about the relative location of the Sun from sensor 80 to produce control error signals on a data path 86. The control error signal at the output of block 78 may be chiefly or exclusively the control error signal from slew control error generator block 55 when the spacecraft body avoidance vector is far from the inertial avoidance vector, and may be a combination of the control error signal from block 55 with a significant amount of an avoidance error signal when the spacecraft body avoidance vector is near the inertial avoidance vector. The control error signals at the output of avoidance control logic block 78 are compensated by control logic 56 and applied to the torquers illustrated by block 58. The torquers torque the spacecraft to cause vector to follow path 60 of FIGURE 2b during the reorientation maneuver, thereby avoiding the sun-representative arrow . FIGURE 5 is a simplified flow chart representing the steps performed by block 78 of FIGURE 4 to generate the control error signals on data path 86. In FIGURE 5, the logic flows from a START block 510 to a block 512, which represents calculation of the angle between the spacecraft body avoidance vector (instrument line-of-sight 26 of FIGURE 1) and the avoidance vector in the spacecraft body coordinate frame (line of sight 30 between spacecraft 10 and Sun 12), and comparison of that angle with a predetermined threshold angle ϑ₁. If the angle between and is greater than ϑ₁, the logic flows by the NO output of block 512 to a block 514, which represents the coupling of the error signal generated by slew control error generator 55 of FIGURE 4 without modification to control logic block 56. In effect, this implements the prior art control scheme described in conjunction with FIGURE 3. The logic then flows from block 514 back to block 512 by way of a logic path 538. During a particular attitude control maneuver, the avoidance vectors may not approach each other, whereupon the logic continues to loop around blocks 512 and 514. During at least some maneuvers, the avoidance vectors will eventually approach each other so that the angle between spacecraft avoidance vector and avoidance vector is less than or equal to ϑ₁, in which case the logic of FIGURE 4 exits from block 512 by the YES path and flows to a block 516, which represents the decoupling of slew control error generator 55 of FIGURE 4 from control logic block 56. The logic flows to a block 518, which represents the calculation of ϑ₂, the angle between the vector and , where is the nominal slew axis in the spacecraft body coordinate frame, and ϑ₃, the angle between vectors and . The quantities ϑ₂ and ϑ₃ are calculated only once each time the avoidance control logic is invoked. Block 520 represents the calculation of the unsigned vector where x represents a vector cross product. Vector represents the torquing axis needed to cause the avoidance (instrument) vector to take a circular path around the avoidance (Sun) vector . This vector is perpendicular to both and a tangent to the avoidance region boundary. The semicircular path is illustrated as 60c in FIGURE 2b. Referring to FIGURE 2b, semicircular path 60c passes "below" avoidance vector . Clearly, the same avoidance could have been achieved by a complementary circular path (not illustrated) which passed the vector "above" avoidance vector . The direction or sign of the spacecraft rate is selected to minimize the path length. In the flow chart of FIGURE 5, the logic flows from block 520 to a decision block 522, in which angle ϑ₃ is compared with angle ϑ₂. If angle ϑ₃ is greater than or equal to angle ϑ₂, the logic flows to a block 524, which represents the changing of the sign of vector from positive to negative. The logic then flows from block 524 to a block 526. If ϑ₃ is less than ϑ₂, the logic flows from decision block 522 directly to block 526 without changing the sign of . Block 526 represents the calculation of vector where "·" represents a vector dot product, and q e is the slew control error vector produced by slew control error generator 55 of FIGURE 4. The logic flows from block 526 to a block 528. Block 528 represents the calculation of vector cross-product The cross product was calculated in block 520, but is illustrated again as a separate calculation for the sake of clarity. Once the vector is calculated, the logic flows to a block 530, which represents calculation of the avoidance error component : The error components and are added in a block 532 to produce a composite or total error signal . Block 534 represents the application of and a spacecraft rate command about the vector to control logic 56 of FIGURE 4 for compensation. The logic then flows to a decision block 540, in which an avoidance control end condition is evaluated to determine whether has reached the end of the avoidance segment, corresponding to path portion 60c of FIGURE 2b. This is simply accomplished by determining whether or not the angle ϑ between vector and vector is greater than the threshold. If not, the logic exits from decision block 540 by the NO path, and returns to block 520 by way of a logic path illustrated as 542. If the angle between and is then greater than the threshold, the avoidance maneuver is at an end, and the logic flows by the YES output of decision block 540 and logic path 536 back to block 512, to again begin the control. Since the angle between and is greater than the threshold, block 512 will direct the logic into a loop including block 514 for normal control of the spacecraft attitude. Other embodiments of the invention will be apparent to those skilled in the art. For example, instead of torquing coils 18, 20 and 22 spacecraft 10 of FIGURE 1 may use thrusters or reaction wheels to produce torques, or it may use combinations thereof. While a threshold has been described, on one side of which torquing is performed in response to only one error signal and on the other side of which torquing is performed in response to a combination of error signals, the torquing could as easily be always in response to both error signals, with the avoidance error signal being multiplied by a factor which is proportional to the proximity of the instrument-line-of-sight to the orientation to be desired.

Claims: A spacecraft (10) including an attitude control system in which undesired attitudes are avoided during manoeuvers, the system comprising: controllable torquing means (18,20,22) adapted for torquing said spacecraft (10) in space under control of a torque command signal; sensing means (52) adapted for determining the orientation of first, second and third spacecraft coordinate axes (X b , Y b , Z b ) relative to first, second and third spatial coordinate axes (X i , Y i , Z i ) associated with the environment of said spacecraft (10); first error signal generating means (55) for generating a first error signal representative of the angular error between said spacecraft coordinates (X b , Y b , Z b ) and target coordinates (X t , Y t , Z t ) associated with said spatial coordinates (X i ,Y i , Z i ); characterized by second error signal generating means (80) for generating a second error signal related to the angle between a first avoidance vector ( ) in said spacecraft coordinates and a second avoidance vector ( ); and combining means (78) coupled to said first and second error signal generating means (55,80) for generating a torque command signal for controlling said torquing means (18,20,22) in response to said first and second error signals, said combining means (78) combining said first and second error signals in proportion to said angle between said first and second avoidance vectors ( , ). A spacecraft according to claim 1, wherein said combining means (78) comprises: threshold means coupled to said second error signal generating means (80) for generating a threshold signal when said second error signal reaches a threshold representative of a predetermined angle between said first and second avoidance vectors ( , ); said combining means (78) including a first port (76) coupled to said first error signal generating means (55) and also including a second input port (84), for combining a signal applied to said second input port (84) with said first error signal for generating said torque command signal; and gating means (56) coupled to said second error signal generating means (80), to said threshold means, and to said combining means (78), for gating said second error signal to said second input port of said combining means in a predetermined condition of said threshold signal. A method for controlling the attitude of a spacecraft (10) from a first orientation to a second orientation relative to an environment by a path which avoids an undesired orientation, comprising the steps of: establishing the current orientation of first, second and third spacecraft coordinate axes (X b , Y b , Z b ) relative to first, second and third spatial coordinate axes (X i , Y i , Z i ) associated with the environment of said spacecraft (10); generating a first error signal representative of the angular difference between the orientation of said spacecraft coordinates (X b , Y b , Z b ) and target coordinates (X t , Y t , Z t ) associated with said spatial coordinates; characterized by generating an avoidance error signal representing the difference between the orientation of a first vector associated with said spacecraft coordinates (X b , Y b , Z b ) and a second vector; combining said first error signal with said avoidance error signal to produce a combined error signal; and torquing said spacecraft in response to said combined error signal. A method according to claim 3 wherein said combining step includes the steps of: comparing said avoidance error signal with a threshold value representing the closest desired approach of said first vector to said second vector, and generating a threshold signal at least in response to the identity of said avoidance error signal with said threshold value; torquing said spacecraft in response to said first error signal when said threshold signal is in a first state to slew said spacecraft coordinate axes toward said target coordinate axes; and torquing said spacecraft in response to a combination of said first and avoidance error signals when said threshold signal is in a state other than said first state, to thereby cause said spacecraft coordinate axes to slew toward said target coordinate axes while avoiding having said first vector approach said second vector. A method according to claim 4, wherein said step of comparing said avoidance error signal with a threshold value comprises the step of generating said first state of said threshold signal when said avoidance error signal is identical with said threshold value and generating a state other than said first state of said threshold signal when said avoidance error signal is one of greater than and less than said threshold value.

Inventors: GOODZEIT NEIL EVAN, GOODZEIT, NEIL EVAN
Applicants: GEN ELECTRIC, GENERAL ELECTRIC COMPANY
Application year: 1990
Main classification: G05D1
IPC codes: G05D1, B64G1, G01C21