CN101830290A - Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing - Google Patents

Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing Download PDF

Info

Publication number
CN101830290A
CN101830290A CN 201010109463 CN201010109463A CN101830290A CN 101830290 A CN101830290 A CN 101830290A CN 201010109463 CN201010109463 CN 201010109463 CN 201010109463 A CN201010109463 A CN 201010109463A CN 101830290 A CN101830290 A CN 101830290A
Authority
CN
China
Prior art keywords
task
detector
flag
attitude
sam
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 201010109463
Other languages
Chinese (zh)
Other versions
CN101830290B (en
Inventor
崔平远
高艾
崔祜涛
朱圣英
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN 201010109463 priority Critical patent/CN101830290B/en
Publication of CN101830290A publication Critical patent/CN101830290A/en
Application granted granted Critical
Publication of CN101830290B publication Critical patent/CN101830290B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention relates to an autonomous navigation and guidance control programming dispatching method for small celestial body impact probing, and relates to an autonomous navigation and control programming dispatching method for a deep space probe, which solves the problems of multiple tasks, poor replaceability and poor expandability of the autonomous navigation and guidance control programming dispatching methods in the prior art. The method consists of the following five modular tasks, namely a main task, a GNC programming task, a data acquisition task, a GNC task and a track confirming task, wherein the priority level of the main task is the highest, the priority level of the GNC programming task is only second to that of the main task; the priority level of the data acquisition task is only second to that of the GNC programming task; the data acquisition task is divided into four sub-tasks according to different types of data measured by a sensor; the priority level of the GNC task is only second to that of the data acquisition task; the priority level of the track confirming task is the lowest; and the mall celestial body impact probing tasks are decomposed modularly, and the synchronous mode and communication means among task modules are provided so as to complete the mall celestial body impact probing tasks finally.

Description

Small celestial body impact probing autonomous navigation and guidance control programming dispatching method
Technical field
The present invention relates to a kind of autonomous navigation and control programming dispatching method of deep space probe.
Background technology
Autonomous navigation and guidance control system are implemented in the state that does not need ground station to support just can independently determine detector by software, and the guiding detector is finished predetermined bump task.The small celestial body impact probing flying distance is far away, and the operation phase is many, and each stage, environmental difference of living in was big, and this requires the navigation and guidance control system need finish complicated loaded down with trivial details operating at rail, to guarantee the smooth realization of engineering duty and science task.Numerous and diverse makes spaceborne software become big because of task makes scale more in the rail operation, and each task has different real-time requirements, and the contact between task increases.Be primarily aimed at single task or a small amount of task in the past when carrying out the software structure design of Navigation, Guidance and Control system, generally adopt sequential programming to add interrupt method.The complicated high request that reaches real-time of system makes the software design of conventional serial no longer satisfy practical application request, if still use method of designing, the development tool of traditional spaceborne software, many, the complex structure, improper arrangement of main threads during system design then, and the advanced experience that is difficult to use for reference other software is unfavorable for the continuity development of detector technology.Simultaneously for the comformability that enlarges detection mission and the function of detector, and the inheritance of being convenient to the subsequent probe task, need autonomous navigation and guidance control system software will have stronger replaceability and extensibility.Embedded real-time operating system (RTOS) then has its outstanding advantage in this regard.Vxworks operating system is exactly a kind of embedded real-time operating system, and functions such as real-time task scheduling efficiently, interrupt management, real-time system resource and intertask communication are provided.Performance-oriented operating system micro-kernel Wind supports real-time characteristic, and its design has reduced system overhead, and task management has efficiently guaranteed external event is reacted fast and accurately; Allow independently task in real-time system, to coordinate mutually with interprocess communication between the task of fast and flexible with its action.The VxWorks embedded real-time operating system is through checking widely, the successful key area that is applied in the Aeronautics and Astronautics.
Summary of the invention
The present invention proposes a kind of small celestial body impact probing autonomous navigation and guidance control programming dispatching method in order to allow the autonomous navigation that solves prior art and guidance control programming dispatching method have that task is numerous, replaceability is poor, the problem of poor expandability.
Small celestial body impact probing autonomous navigation and guidance control programming dispatching method, it realizes that by main task main_task and four subtasks described four subtasks are that GNC planning tasks Task_GNC_pro, data acquisition task task _ SAM_X, GNC task task _ GNC and track set the tasks;
The priority of main task main_task is the highest, be used to finish the initialization of each several part, system clock interruption frequency, current time in system and task scheduling strategy are set, finish establishment to each binary signal amount, subtask and timer, and when acquiring the coherent signal amount, start the timer relevant, finish inter-related task with described semaphore;
The priority of GNC planning tasks Task_GNC_pro is only second to main task main_task, be used for when each performance period begins, track and attitude quantity of state according to current ram, provide detector orbit maneuver flag flag_mot_orb, detector attitude maneuver flag flag_mot_ati and motor-driven igniting flag flag_mot_ign, for determining to provide basis for estimation with the execution sequence of the power function under cycle GNC task task _ GNC;
The priority of data acquisition task task _ SAM_X is only second to GNC planning tasks Task_GNC_pro, is used for reading in the different sampling periods take off data of each sensor; Described data acquisition task task _ SAM_X comprises 4 data collection subtasks, is respectively rate gyro data acquisition task task _ SAM_omega, accelerometer data acquisition tasks Task_SAM_acel, star sensor data acquisition task task _ SAM_q and optical guidance camera data acquisition tasks Task_SAM_p; The priority of described 4 subtasks is identical, adopts the Time Slice Circular Scheduling algorithm to carry out scheduled for executing between described 4 subtasks;
The priority of GNC task task _ GNC is only second to data acquisition task task _ SAM_X, offline mode is determined in the combination of each zone bit that provides according to GNC planning tasks Task_GNC_pro, and the current time sensor that obtains according to data acquisition task task _ SAM_X new data more, finish in each performance period Navigation, Guidance and Control task to the ram state;
The set the tasks priority of Task_ORB_fuse of track is minimum, the described track Task_ORB_fuse that sets the tasks carries out once every 15s, when executing the task, judge at first whether track and attitude have power operated situation, when track and attitude all do not have motor-driven, then little celestial body is in stabilized conditions, utilizes the optical guidance camera data that little sphere parameter is revised; Otherwise withdraw from task.
The present invention is directed to the small celestial body impact probing task, use the VxWorks embedded real-time operating system, propose a kind of small celestial body impact probing autonomous navigation and guidance control programming dispatching method.Master mode to autonomous navigation and guidance control system designs; On this basis, take all factors into consideration the coupled relation of the real-time requirement of small celestial body impact probing task, different offline mode, the mathematical operation amount that track is determined and many-sided factors such as periodicity control that different sensor datas are gathered, the small celestial body impact probing task is carried out modularization decomposes, propose the method for synchronization and means of communication between each task module, finally finish the small celestial body impact probing task.
Description of drawings
Fig. 1 is to be the task scheduling flow process and function execution scheme drawing of small celestial body impact probing autonomous navigation and single performance period of guidance control programming dispatching method.Fig. 2 is main task main_task realization flow figure; Fig. 3 is GNC planning tasks Task_GNC_pro realization flow figure; Fig. 4 is rate gyro data acquisition task task _ SAM_omega realization flow figure; Fig. 5 is accelerometer data acquisition tasks Task_SAM_acel realization flow figure; Fig. 6 is star sensor data acquisition task task _ SAM_q realization flow figure; Fig. 7 is optical guidance camera data acquisition tasks Task_SAM_p realization flow figure; Fig. 8 is GNC task task _ GNC realization flow figure; Fig. 9 is for carrying out the diagram of circuit of GNC task task _ GNC first; Figure 10 is for carrying out for the second time the diagram of circuit of GNC task task _ GNC; Figure 11 is a diagram of circuit of carrying out GNC task task _ GNC for the second time later on; Figure 12 is the track Task_ORB_fuse realization flow figure that sets the tasks; Figure 13 is a 25ms timer processing function diagram of circuit; Figure 14 is a 2s timer processing function diagram of circuit; Figure 15 is a 15s timer processing function diagram of circuit.
The specific embodiment
The specific embodiment one, present embodiment is described in conjunction with Fig. 1, small celestial body impact probing autonomous navigation and guidance control programming dispatching method, it realizes that by main task main_task and four subtasks described four subtasks are that GNC planning tasks Task_GNC_pro, data acquisition task task _ SAM_X, GNC task task _ GNC and track set the tasks;
The priority of main task main_task is the highest, be used to finish the initialization of each several part, system clock interruption frequency, current time in system and task scheduling strategy are set, finish establishment to each binary signal amount, subtask and timer, and when acquiring the coherent signal amount, start the timer relevant, finish inter-related task with described semaphore;
The priority of GNC planning tasks Task_GNC_pro is only second to main task main_task, be used for when each performance period begins, track and attitude quantity of state according to current ram, provide detector orbit maneuver flag flag_mot_orb, detector attitude maneuver flag flag_mot_ati and motor-driven igniting flag flag_mot_ign, for determining to provide basis for estimation with the execution sequence of the power function under cycle GNC task task _ GNC;
The priority of data acquisition task task _ SAM_X is only second to GNC planning tasks Task_GNC_pro, is used for reading in the different sampling periods take off data of each sensor; Described data acquisition task task _ SAM_X comprises 4 data collection subtasks, is respectively rate gyro data acquisition task task _ SAM_omega, accelerometer data acquisition tasks Task_SAM_acel, star sensor data acquisition task task _ SAM_q and optical guidance camera data acquisition tasks Task_SAM_p; The priority of described 4 subtasks is identical, adopts the Time Slice Circular Scheduling algorithm to carry out scheduled for executing between described 4 subtasks;
The priority of GNC task task _ GNC is only second to data acquisition task task _ SAM_X, offline mode is determined in the combination of each zone bit that provides according to GNC planning tasks Task_GNC_pro, and the current time sensor that obtains according to data acquisition task task _ SAM_X new data more, finish in each performance period Navigation, Guidance and Control task to the ram state;
The set the tasks priority of Task_ORB_fuse of track is minimum, the described track Task_ORB_fuse that sets the tasks carries out once every 15s, when executing the task, judge at first whether track and attitude have power operated situation, when track and attitude all do not have motor-driven, then little celestial body is in stabilized conditions, utilizes the optical guidance camera data that little sphere parameter is revised; Otherwise withdraw from task.
Track sets the tasks and is subjected to the restriction that camera image is handled length consuming time and propagation delay time, is satisfying under the situation of photographical condition, and track determines that every 15s carries out once, to improve navigation accuracy.
The Time Slice Circular Scheduling basic idea is under the prerequisite that the higher priority task scheduling is still preferentially moved, to pursue the justice under certain meaning when dispatching between the same priority task.Each task in one group task is carried out a predetermined time period, becomes a time slice; Another task is carried out a time slice that equates then, once carries out.This distribution is just, and it guarantees that before all tasks all obtained a time slice, the task that do not have obtained second time slice in the priority groups.More precisely, if use the robin scheduling algorithm, each task in the system all has a running time counter.This counting machine increases all the time with system and increases.When reaching the value of specific time sheet, that is to say that a specific time sheet finishes, this counter O reset, the Time Slice Circular Scheduling algorithm is put into the afterbody of corresponding task priority query with this task, gives correct task with CPU and carries out.The new task of adding a priority groups formation will be put into rear of queue, and counting machine is initialized as 0.If by the task preemption of high priority, the Time Slice Circular Scheduling algorithm is preserved its running time counter to task in its time slice, when it meets executive condition again, the Time Slice Circular Scheduling algorithm time counter that resumes operation.
The specific embodiment two, in conjunction with Fig. 2 present embodiment is described, present embodiment is that the working process of further specifying the main task main_task in the specific embodiment one: main task main_task is as follows:
Step 1A, initialization time specification, timer signal incident, timer ID sign, timer signal is handled and the task ID sign;
Step 1B, system clock terminal frequency and task scheduling strategy are set, described system clock terminal frequency is 200Hz, the dispatching method that described task scheduling strategy changes for the round-robin that adopts based on task priority;
Step 1C, be set the current time;
Step 1D, create the binary signal amount, described binary signal amount comprises state index semaphore semaphore, main task is upgraded synchronized data signal amount semb1_sam, the GNC planning tasks is upgraded synchronized data signal amount semb2_sam, the GNC task is upgraded synchronized data signal amount semb3_sam, upgrade star sensor data-signal semb_q, renewal rate gyro data semaphore semb_omega, upgrade optical guidance camera data semaphore semb_p, upgrade accelerometer data signal semb_acel, rate gyro control sampling period semaphore semb_sam_omega, accelerometer control sampling period semaphore semb_sam_acel, star sensor control sampling period semaphore semb_sam_q, star sensor control sampling period temporary signal amount semb_sam_q_temp, optical guidance camera control sampling period semaphore semb_sam_p, optical guidance camera control sampling period temporary signal amount semb_sam_p_temp and the every 25ms of control GNC planning tasks Task_GNC_pro carry out semaphore at first, and the every 25ms of described control GNC planning tasks Task_GNC_pro carries out semaphore at first and comprises 25ms performance period semaphore semb and the 25ms timer semaphore semb_tm that expires that is finished;
Step 1E, create four subtasks: GNC planning tasks Task_GNC_pro, data acquisition task task _ SAM_X, GNC task task _ GNC and the track Task_ORB_fuse that sets the tasks;
Step 1F, timer signal is set handles function, be respectively 25ms timer processing task time_handler, 2s timer processing task time_handler_one and 15s timer processing task time_handler_two;
Step 1G, establishment timer;
Step 1H, obtain the content that main task is upgraded synchronized data signal amount semb1_sam;
Step 1I, start timer, set three sampling periods to be respectively 25ms, 2s and 15s;
Step 1J, obtain the content of state index semaphore semaphore;
Step 1K, when the ram state satisfies the bump condition, carry out the deletion of semaphore, the deletion of timer, the deletion action of task.
The priority of main task main_task (101) is the highest, be used to finish the initialization of each several part, system clock interruption frequency (200Hz) and current time in system are set, task scheduling strategy (based on the Time Slice Circular Scheduling of task priority) is set, finish establishment to each semaphore, subtask and timer, and after acquiring the coherent signal amount respectively, start timer and carry out the task termination processing.
The initial value of binary signal amount is empty among the step 1D, represents unavailablely, is blocked on the semaphore, according to first-in first-out order wait-semaphore.
Upgrade sensor data semaphore main task renewal synchronized data signal amount semb1_sam and be used to guarantee that target machine and external interface start synchronously, promptly externally after the system start-up, after target machine receives the transmission data of external interface for the first time, restart the target machine timer and pick up counting, control data collection period and task performance period; After obtaining quantity of state that state index semaphore semaphore is used to guarantee collision detector and reaching the requirement index, carry out the task termination relevant treatment again.
The specific embodiment three, in conjunction with Fig. 3 present embodiment is described, present embodiment is further specifying the GNC planning tasks Task_GNC_pro in the specific embodiment one: the working process of described GNC planning tasks Task_GNC_pro is as follows:
Step 2A, judge whether to represent to carry out number of times with i,, represent execution in step 2B with i=0 if carry out first into carrying out first; If not carrying out first, execution in step 2C then;
Step 2B, obtain the current time in system; Execution in step 2G then;
Step 2C, judge whether to be first performance period, judge promptly whether i is 1; If, execution in step 2D then; If not, execution in step 2E then;
Step 2D, obtain and upgrade the content that sensor data semaphore GNC planning tasks is upgraded synchronized data signal amount semb2_sam; Execution in step 2F then;
Step 2E, obtain 25ms performance period the expire content of semaphore semb_tm of semaphore semb and 25ms timer that is finished; When be finished semaphore semb or 25ms timer of 25ms performance period expires semaphore semb_tm when effective;
Wait for during step 2F, calculating are carried out first that outside replicating machine dSpace starts computing and data transmission period, and utilize it that system time is revised;
Step 2G, estimate on attitude, estimated angular velocity, detector expectation attitude, detector expectation cireular frequency, expectation increment speed, acceleration measurement and the detector state of flight of living in constantly according to detector estimated position, detector estimating speed, detector, calculate detector orbit maneuver flag flag_mot_orb, detector attitude maneuver flag flag_mot_ati, motor-driven igniting flag flag_mot_ign, thereby judge the residing state of flight of current detector;
Number of times i=i+1 is carried out in step 2H, order, and this subtask is finished, and the semaphore semb set that is finished of 25ms performance period is effective.
The priority (101) of GNC planning tasks Task_GNC_pro is only second to main task main_task, be intended to the stem of each 25ms performance period, track/attitude quantity of state according to current collision detector, provide the track/attitude/motor-driven zone bit of lighting a fire, for providing basis for estimation with the power function execution sequence under cycle GNC task task _ GNC.Mission flow diagram as shown in Figure 7.
The setting of Rule of judgment i=0 is necessary for solving target machine and external interface startup stationary problem, when after target machine starts, carrying out each task first not with external interface generation data transmission relations, but carrying initial value data, utilization carries out a step computing, for preparing with external interface synchronized operation; For identical purpose Rule of judgment " whether being first performance period " is set and is used to guarantee that the startup of target machine and external interface is synchronous, promptly externally after the system start-up, after target machine receives the transmission data of external interface for the first time (realize showing as acquire semaphore GNC planning tasks upgrade synchronized data signal amount semb2_sam) herein, the mission planning that enters first 25ms performance period again; Semaphore semb_tm then is in order to guarantee that GNC planning tasks Task_GNC_pro takies the CPU operation in the stem of each 25ms performance period, semaphore semb is used to guarantee that a 25ms performance period finishes the operation of all tasks, enters the next performance period again; In order to make the used time of calculating in the target machine consistent with the operation time of external system, in each performance period, the GNC mission planning will wait for that the time of external interface transmission data revises to carrying out first of being used in the target machine system time that two machines that guarantee start synchronously behind GNC task task _ GNC.
The main analog prober dynam of outside replicating machine dSpace part.
The specific embodiment four, present embodiment are further specifying the data acquisition task task _ SAM_X in the specific embodiment one: it is the mode of operation that timer triggers that 4 data among data acquisition task task _ SAM_X are gathered the subtask, wherein the data sampling cycle of rate gyro data acquisition task task _ SAM_omega and accelerometer data acquisition tasks Task_SAM_acel is 25ms;
The sampling period of star sensor data acquisition task task _ SAM_q is 2s, when carrying out star sensor data acquisition task task _ SAM_q, judge at first whether track and attitude have power operated situation, if it is motor-driven that track or attitude have, then withdraw from this task of task, otherwise gather the star sensor data;
The sampling period of optical guidance camera data acquisition tasks Task_SAM_p is 15s, when carrying out optical guidance camera data acquisition tasks Task_SAM_p, at first judge whether organic emotionally condition of track and attitude, under track and all inorganic emotionally condition of attitude, carry out the data acquisition tasks, and write down take pictures constantly track/attitude status information of described camera, otherwise withdraw from task.
The priority of data acquisition task task _ SAM_X (102) is only second to GNC planning tasks Task_GNC_pro, is used for reading in the different sampling periods take off data of each sensor.
The specific embodiment five, present embodiment is described in conjunction with Fig. 4, present embodiment is that the working process of rate gyro data acquisition task task _ SAM_omega is as follows to the further specifying of the rate gyro data acquisition task task _ SAM_omega in the specific embodiment four:
Step 3A, obtain rate gyro control sampling period semaphore semb_sam_omega;
Step 3B, the gyro data that collects is write the data buffer;
Gyro data semaphore semb_omega is upgraded in step 3C, release.
The specific embodiment six, present embodiment is described in conjunction with Fig. 5, present embodiment is that the working process of accelerometer data acquisition tasks Task_SAM_acel is as follows to the further specifying of the accelerometer data acquisition tasks Task_SAM_acel in the specific embodiment four:
Step 3D, obtain accelerometer control sampling period semaphore semb_sam_acel;
Step 3E, the accelerometer data that collects is write the data buffer;
Accelerometer data signal semb_acel is upgraded in step 3F, release.
The specific embodiment seven, in conjunction with Fig. 6 present embodiment is described, present embodiment is that the working process of star sensor data acquisition task task _ SAM_q is as follows to the further specifying of the star sensor data acquisition task task _ SAM_q in the specific embodiment four:
Step 3G, obtain star sensor control sampling period semaphore semb_sam_q and star sensor control sampling period temporary signal amount semb_sam_q_temp;
The content of step 3H, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=0 and detector attitude maneuver flag flag_mot_ati=0, then execution in step 3I; Otherwise, be left intact this task termination;
Step 3I, will call zone bit flag_tm interior ccontaining 1 that attitude is determined power function, even flag_tm=1;
Step 3J, the gyro data that collects is write the data buffer;
Star sensor data-signal semb_q is upgraded in step 3K, release.
The specific embodiment eight, present embodiment is described in conjunction with Fig. 7, present embodiment is that the working process of optical guidance camera data acquisition tasks Task_SAM_p is as follows to the further specifying of the optical guidance camera data acquisition tasks Task_SAM_p in the specific embodiment four:
Step 3L, obtain optical guidance camera control sampling period semaphore semb_sam_p and optical guidance camera control sampling period temporary signal amount semb_sam_p_temp;
The content of step 3M, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=0 and detector attitude maneuver flag flag_mot_ati=0, then execution in step 3N; Otherwise, be left intact this task termination;
Step 3N, obtain the system time constantly of taking pictures, and the record cooresponding bump track/attitude quantity of state constantly of taking pictures, described bump track/attitude quantity of state comprises ram position and speed;
Step 3O, the optical guidance camera data that collects is write the data buffer;
Optical guidance camera data semaphore semb_p is upgraded in step 3P, release.
The specific embodiment nine, in conjunction with Fig. 8, Fig. 9, Figure 10 and Figure 11 present embodiment is described, present embodiment is that the concrete steps in GNC task task _ GNC one-period are as follows to the further specifying of the GNC task task _ GNC in the specific embodiment one:
Step 4A, judge whether to be to carry out first, if, execution in step 4B then, if not, execution in step 4L then;
It is as follows to carry out GNC task task _ GNC situation first:
Step 4B, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector according to orbital plane normal direction vector, detector;
Step 4C, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, execution in step 4D then, otherwise, i.e. flag_mot_ati=1, then execution in step 4E;
Step 4D, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 4G then;
Step 4E, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 4F, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100;
Step 4G, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby recursion goes out the attitude matrix in detector relative inertness space;
Step 4H, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby recursion goes out detector position and speed according to detector;
Step 4I, the instruction that will calculate write the corresponding instruction buffer zone;
Step 4J, receive the sensor data that outside replicating machine dSpace dynam module is imported into, and the data that collect are write corresponding data buffer;
Step 4K, release main task are upgraded synchronized data signal amount semb1_sam, and the GNC planning tasks upgrades synchronized data signal amount semb2_sam and the GNC task is upgraded synchronized data signal amount semb3_sam;
Step 4L, judge whether to be to carry out for the second time; If, execution in step 4M then, if not, execution in step 4Z then;
It is as follows for the second time to carry out GNC task task _ GNC situation:
Step 4M, obtain the GNC task and upgrade synchronized data signal amount semb3_sam;
The instruction of step 4N, task execution is first sent, and the command adapted thereto buffer zone is put 0;
Step 4O, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector according to orbital plane normal direction vector, detector;
Step 4P, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, execution in step 4Q then, otherwise, i.e. flag_mot_ati=1, then execution in step 4R;
Step 4Q, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 4T then;
Step 4R, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 4S, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100;
Step 4T, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby recursion goes out the attitude matrix in detector relative inertness space;
Step 4U, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby recursion goes out detector position and speed according to detector;
Step 4V, serial communication is lost several zone bit flag_sam put 1, even flag_sam=1;
Step 4W, write down this performance period orbit maneuver zone bit flag_mot_orb_temp, the content that makes performance period orbit maneuver zone bit flag_mot_orb_temp is the content of detector orbit maneuver flag flag_mot_orb, i.e. flag_mot_orb_temp=flag_mot_orb;
Step 4X, will calculate instruction and write the corresponding instruction buffer zone, and after instruction is sent, the corresponding instruction buffer zone be put 0;
Step 4Y, discharge the 25ms performance period semaphore semb that is finished;
It is as follows to carry out GNC task task _ GNC situation for the second time:
Step 4Z, obtain and upgrade gyro data semaphore semb_omega and upgrade accelerometer data signal semb_acel; Execution in step 41 then;
The content that attitude is determined the zone bit flag_tm of power function is called in step 41, judgement, if flag_tm=1, then execution in step 42; Otherwise, execution in step 45;
Step 42, will call attitude and determine that the zone bit flag_tm of power function puts 0, even flag_tm=0;
Step 43, obtain and upgrade star sensor data-signal semb_q;
Step 44, according to the attitude quaternion of star sensor output, the attitude angular velocity of gyro output, calculate detector and estimate attitude, detector estimated angular velocity, gyro wander updating value, thereby realize proofreading and correct collision detector attitude and gyro wander by Kalman filtering;
The content of step 45, judgement detector orbit maneuver flag flag_mot_orb, if flag_mot_orb=0, then execution in step 46; Otherwise, i.e. flag_mot_orb=1, execution in step 411;
Step 46, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation according to orbital plane normal direction vector, detector, thus the expectation attitude of the directed attitude of calculating detector;
Step 47, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, then execution in step 48, otherwise, i.e. flag_mot_ati=1, then execution in step 49;
Step 48, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 416 then;
Step 49, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector; Execution in step 410 then;
Step 410, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100; Execution in step 416 then;
Step 411, judge the content of performance period orbit maneuver zone bit flag_mot_orb_temp, if flag_mot_orb_temp=0, then execution in step 412, otherwise, i.e. flag_mot_orb_temp=1, then execution in step 413;
Step 412, according to detector estimated position, detector estimating speed and expectation bump object point, calculate expectation increment speed, thereby obtain the increment speed that needs near track;
Step 413, according to detector estimated position and guidance increment speed, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector;
Step 414, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 415, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100; Execution in step 416 then;
Step 416, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby obtain the attitude matrix in detector relative inertness space;
Step 417, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby obtain detector position and speed according to detector;
Step 418, write down this performance period orbit maneuver zone bit flag_mot_orb_temp, the content that makes performance period orbit maneuver zone bit flag_mot_orb_temp is the content of detector orbit maneuver flag flag_mot_orb, i.e. flag_mot_orb_temp=flag_mot_orb;
Step 419, will calculate instruction and write the corresponding instruction buffer zone, and after instruction is sent, the corresponding instruction buffer zone be put 0;
Step 420, discharge the 25ms performance period semaphore semb that is finished.
The priority of GNC task (103) is only second to the data acquisition task, the various combination of each zone bit that should provide according to the GNC planning tasks in this task is determined different offline mode, and the current time sensor that obtains according to data acquisition task new data more, finish the Navigation, Guidance and Control task to the bump detector's status in the performance period at each 25ms.Concrete offline mode is divided as follows:
1) offline mode I
Detector orbit maneuver flag be 0 and detector attitude maneuver flag be 0 (flag_mot_orb==0﹠amp; ﹠amp; Flag_mot_ati==0).
There is more new data of star sensor:
In this pattern, because the star sensor data have updating value, therefore, carry out star sensor+rate gyro+EKF associating filtering this moment, and the collision detector attitude is determined.
There is not more new data of star sensor:
In this pattern, merely utilize gyro information to learn equation the detector attitude is estimated in conjunction with attitude motion.
2) offline mode II
Detector orbit maneuver flag be 0 and detector attitude maneuver flag be 1 (flag_mot_orb==0﹠amp; ﹠amp; Flag_mot_ati==1).
This pattern is mainly used in collision detector attitude is turned to the expectation firing attitude, and finishes after the igniting in the process that attitude is gone back to the target celestial body orientation.Under this pattern, adopt nozzle that attitude is controlled, utilize orthodox flight pattern Attitude Guidance algorithm to provide the expectation attitude.
3) offline mode III
Detector orbit maneuver flag is 1 (flag_mot_orb==1).
This pattern is the orbit maneuver pattern, is at first provided the igniting direction of expectation by bump guidance rule, and the attitude that the Attitude Guidance function produces expectation makes driving engine point to this igniting direction, utilizes the appearance controlled nozzle to finish attitude maneuver.Because under this pattern, attitude is in motor-driven and thick stabilized conditions, the star sensor data can not be applied, and therefore under this pattern, can only utilize rate gyro to carry out attitude and estimate.
Judge whether to be to carry out first, when after target machine starts, carrying out each task first not with external interface generation data transmission relations, carry initial value data and carry out a step computing but utilize, for preparing with external interface synchronized operation; And semaphore GNC task renewal synchronized data signal amount semb3_sam is used to guarantee that the startup of target machine and external system is synchronous, promptly externally after the system start-up, after target machine received the more new data of external interface transmission for the first time, the GNC task that enters first 25ms performance period was again carried out; Variable t_ati is used to solve the time that needs to stablize behind the attitude maneuver about 100s, to guarantee that this Post Orbit determines to carry out under the metastable situation of attitude, the setting of t_ati is and judges whether that in track sets the tasks being fit to carry out track determines to provide foundation; Zone bit flag_sam loses several problems for the solution serial communication and is provided with, its initial value is 0 (flag_sam=0), then data acquisition function function revbyte enters endless loop and waits for that external system starts when program is carried out first, up to receiving first group of data that external interface transmits (owing to be to carry out timer first not start, so do not have regularly limit value), and when entering first performance period, timer starts, then with this mark position 1 (flag_sam=1), this moment, function revbyte was not if also successfully receive data more than three circulations, then continued to use the previous step data.
The specific embodiment ten, present embodiment is described in conjunction with Figure 12, present embodiment is to the further specifying of Task_ORB_fuse that set the tasks of the track in the specific embodiment one, and the concrete steps that track sets the tasks in the Task_ORB_fuse one-period are as follows:
Step 5A, obtain and upgrade optical guidance camera data semaphore semb_p;
Step 5B, judge to carry out attitude wide-angle control back required stabilization time t_ati with current time in system structure data in second grade component t_current.tv_sec magnitude relationship; If t_current.tv_sec>t_ati, then execution in step 5C; Otherwise, be left intact this task termination;
Step 5C, estimate attitude, detector predicted position, detector predetermined speed and predicated error variance battle array, calculate detector estimated position, detector estimating speed and estimation error variance battle array according to target celestial body photocentre pixel coordinate, detector;
Step 5D, the motor-driven zone bit fag_orb_fuse=1 of minute book Post Orbit.
The priority that track sets the tasks (104) is minimum, and this task is used under stabilized conditions (being that track/attitude does not all have motor-driven), utilizes the optical guidance camera data that track is revised.Be subjected to the camera image processing and the restriction in transmission time, satisfying under the situation of photographical condition, track determines that every 15s carries out once, to improve navigation accuracy.
Upgrade optical guidance camera data semaphore semb_p and be used to guarantee that the 15s timer expires, and satisfy optical guidance camera photographical condition, collect simultaneously under the situation of respective image information, carry out track and determine; Rule of judgment t_current.tv_sec>t_ati for judge the current time whether with the last attitude maneuver time gap long enough, determine under the metastable situation of attitude, to carry out to guarantee this Post Orbit.
The specific embodiment 11, in conjunction with 13 explanation present embodiments, present embodiment is further specifying 25ms timer processing task time_handler among the specific embodiment two, three, five, six or nine: the concrete steps in the 25ms timer processing task time_handler one-period are as follows:
Step 6A, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if r_esti[0]>0, execution in step 6B then; Otherwise, execution in step 6D then;
Step 6B, stop timer;
Step 6C, release position index signal amount semaphore; This task termination;
The content of step 6D, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=1 or detector attitude maneuver flag flag_mot_ati=1, then execution in step 6E; Otherwise, this task termination;
Step 6E, motor-driven zone bit flag_mot is put 1, even flag_mot=1;
Step 6F, discharge the 25ms timer semaphore semb_tm that expires;
The sensor data that step 6G, the outside replicating machine dSpace dynam of collection partly import into;
Step 6H, rate of release gyro control sampling period semaphore semb_sam_omega, accelerometer control sampling period semaphore semb_sam_acel, star sensor control sampling period temporary signal amount semb_sam_q_temp and optical guidance camera control sampling period temporary signal amount semb_sam_p_temp.
Rule of judgment is that one of them position of orbit maneuver zone bit and attitude maneuver zone bit is 1, carries out this and is judged as and whether carries out the track correction basis for estimation (motor-driven zone bit flag_mot) is provided; Semaphore semb_tm is used to guarantee the control of each 25ms performance period, and semaphore semb_sam_X then is the sampling period that is used to control sensor data.
The specific embodiment 12, in conjunction with 14 explanation present embodiments, present embodiment is further specifying 2s timer processing task time_handler_one in the specific embodiment seven: the concrete steps in the 2s timer processing task time_handler_one one-period are as follows:
Step 6I, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if, execution in step 6J then; If not, execution in step 6L then;
Step 6J, stop timer;
Step 6K, release position index signal amount semaphore; This task termination;
Step 6L, release star sensor control sampling period semaphore semb_sam_q.
The sampling period that semaphore star sensor control sampling period semaphore semb_sam_q is used to control the star sensor data is 2s.
The specific embodiment 13, in conjunction with 15 explanation present embodiments, present embodiment is further specifying 15s timer processing task time_handler_two among the specific embodiment eight or ten: the concrete steps in the 15s timer processing task time_handler_two one-period are as follows:
Step 6M, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if, execution in step 6N then; If not, execution in step 6P then;
Step 6N, stop timer;
Step 6O, release position index signal amount semaphore; This task termination;
Step 6P, judge that motor-driven zone bit flag_mot and track determine the content of zone bit flag_orb_fuse, if motor-driven zone bit flag_mot=0 and track are determined zone bit flag_orb_fuse=1, execution in step 6Q then; Otherwise, execution in step 6S;
Step 6Q, track is determined that zone bit flag_orb_fuse puts 0 again, even flag_orb_fuse=0;
Step 6R, utilize track to determine that the result revises the position and the speed of ram; Execution in step 6T then;
Step 6S, motor-driven zone bit flag_mot is put 0, even flag_mot=0; And track is determined that zone bit flag_orb_fuse puts 0, even flag_orb_fuse=0;
Step 6T, release optical guidance camera control sampling period semaphore semb_sam_p.
Rule of judgment flag_mot=0﹠amp; ﹠amp; Flag_orb_fuse=1 is that no a motor-driven and complete Post Orbit is determined in the last 15s, can utilize the definite result of track that the current state amount of collision detector is once revised in the case; The sampling period that semaphore optical guidance camera control sampling period semaphore semb_sam_p is used to control the optical guidance camera data is 15s.

Claims (9)

1. small celestial body impact probing autonomous navigation and guidance control programming dispatching method, it is characterized in that it by main task main_task and four subtasks realizations, described four subtasks are that GNC planning tasks Task_GNC_pro, data acquisition task task _ SAM_X, GNC task task _ GNC and track set the tasks;
The priority of main task main_task is the highest, be used to finish the initialization of each several part, system clock interruption frequency, current time in system and task scheduling strategy are set, finish establishment to each binary signal amount, subtask and timer, and when acquiring the coherent signal amount, start the timer relevant, finish inter-related task with described semaphore;
The priority of GNC planning tasks Task_GNC_pro is only second to main task main_task, be used for when each performance period begins, track and attitude quantity of state according to current ram, provide detector orbit maneuver flag flag_mot_orb, detector attitude maneuver flag flag_mot_ati and motor-driven igniting flag flag_mot_ign, for determining to provide basis for estimation with the execution sequence of the power function under cycle GNC task task _ GNC;
The priority of data acquisition task task _ SAM_X is only second to GNC planning tasks Task_GNC_pro, is used for reading in the different sampling periods take off data of each sensor; Described data acquisition task task _ SAM_X comprises 4 data collection subtasks, is respectively rate gyro data acquisition task task _ SAM_omega, accelerometer data acquisition tasks Task_SAM_acel, star sensor data acquisition task task _ SAM_q and optical guidance camera data acquisition tasks Task_SAM_p; The priority of described 4 subtasks is identical, adopts the Time Slice Circular Scheduling algorithm to carry out scheduled for executing between described 4 subtasks;
The priority of GNC task task _ GNC is only second to data acquisition task task _ SAM_X, offline mode is determined in the combination of each zone bit that provides according to GNC planning tasks Task_GNC_pro, and the current time sensor that obtains according to data acquisition task task _ SAM_X new data more, finish in each performance period Navigation, Guidance and Control task to the ram state;
The set the tasks priority of Task_ORB_fuse of track is minimum, the described track Task_ORB_fuse that sets the tasks carries out once every 15s, when executing the task, judge at first whether track and attitude have power operated situation, when track and attitude all do not have motor-driven, then little celestial body is in stabilized conditions, utilizes the optical guidance camera data that little sphere parameter is revised; Otherwise withdraw from task.
2. small celestial body impact probing autonomous navigation according to claim 1 and guidance control programming dispatching method is characterized in that the working process of main task main_task is as follows:
Step 1A, initialization time specification, timer signal incident, timer ID sign, timer signal is handled and the task ID sign;
Step 1B, system clock terminal frequency and task scheduling strategy are set, described system clock terminal frequency is 200Hz, the dispatching method that described task scheduling strategy changes for the round-robin that adopts based on task priority;
Step 1C, be set the current time;
Step 1D, create the binary signal amount, described binary signal amount comprises state index semaphore semaphore, main task is upgraded synchronized data signal amount semb1_sam, the GNC planning tasks is upgraded synchronized data signal amount semb2_sam, the GNC task is upgraded synchronized data signal amount semb3_sam, upgrade star sensor data-signal semb_q, renewal rate gyro data semaphore semb_omega, upgrade optical guidance camera data semaphore semb_p, upgrade accelerometer data signal semb_acel, rate gyro control sampling period semaphore semb_sam_omega, accelerometer control sampling period semaphore semb_sam_acel, star sensor control sampling period semaphore semb_sam_q, star sensor control sampling period temporary signal amount semb_sam_q_temp, optical guidance camera control sampling period semaphore semb_sam_p, optical guidance camera control sampling period temporary signal amount semb_sam_p_temp and the every 25ms of control GNC planning tasks Task_GNC_pro carry out semaphore at first, and the every 25ms of described control GNC planning tasks Task_GNC_pro carries out semaphore at first and comprises 25ms performance period semaphore semb and the 25ms timer semaphore semb_tm that expires that is finished;
Step 1E, create four subtasks: GNC planning tasks Task_GNC_pro, data acquisition task task _ SAM_X, GNC task task _ GNC and the track Task_ORB_fuse that sets the tasks;
Step 1F, timer signal is set handles function, be respectively 25ms timer processing task time_handler, 2s timer processing task time_handler_one and 15s timer processing task time_handler_two;
Step 1G, establishment timer;
Step 1H, obtain the content that main task is upgraded synchronized data signal amount semb1_sam;
Step 1I, start timer, set three sampling periods to be respectively 25ms, 2s and 15s;
Step 1J, obtain the content of state index semaphore semaphore;
Step 1K, when the ram state satisfies the bump condition, carry out the deletion of semaphore, the deletion of timer, the deletion action of task.
3. small celestial body impact probing autonomous navigation according to claim 1 and guidance control programming dispatching method is characterized in that the working process of described GNC planning tasks Task_GNC_pro is as follows:
Step 2A, judge whether to represent to carry out number of times with i,, represent execution in step 2B with i=0 if carry out first into carrying out first; If not carrying out first, execution in step 2C then;
Step 2B, obtain the current time in system; Execution in step 2G then;
Step 2C, judge whether to be first performance period, judge promptly whether i is 1; If, execution in step 2D then; If not, execution in step 2E then;
Step 2D, obtain and upgrade the content that sensor data semaphore GNC planning tasks is upgraded synchronized data signal amount semb2_sam; Execution in step 2F then;
Step 2E, obtain 25ms performance period the expire content of semaphore semb_tm of semaphore semb and 25ms timer that is finished; When be finished semaphore semb or 25ms timer of 25ms performance period expires semaphore semb_tm when effective;
Wait for during step 2F, calculating are carried out first that outside replicating machine dSpace starts computing and data transmission period, and utilize it that system time is revised;
Step 2G, estimate on attitude, estimated angular velocity, detector expectation attitude, detector expectation cireular frequency, expectation increment speed, acceleration measurement and the detector state of flight of living in constantly according to detector estimated position, detector estimating speed, detector, calculate detector orbit maneuver flag flag_mot_orb, detector attitude maneuver flag flag_mot_ati, motor-driven igniting flag flag_mot_ign, thereby judge the residing state of flight of current detector;
Number of times i=i+1 is carried out in step 2H, order, and this subtask is finished, and the semaphore semb set that is finished of 25ms performance period is effective.
4. small celestial body impact probing autonomous navigation according to claim 1 and guidance control programming dispatching method, it is characterized in that 4 data collection subtasks among data acquisition task task _ SAM_X are the mode of operation that timer triggers, wherein the data sampling cycle of rate gyro data acquisition task task _ SAM_omega and accelerometer data acquisition tasks Task_SAM_acel is 25ms;
The sampling period of star sensor data acquisition task task _ SAM_q is 2s, when carrying out star sensor data acquisition task task _ SAM_q, judge at first whether track and attitude have power operated situation, motor-driven if track or attitude have, then withdraw from task, otherwise gather the star sensor data;
The sampling period of optical guidance camera data acquisition tasks Task_SAM_p is 15s, when carrying out optical guidance camera data acquisition tasks Task_SAM_p, at first judge whether organic emotionally condition of track and attitude, under track and all inorganic emotionally condition of attitude, carry out the data acquisition tasks, and write down take pictures constantly track/attitude status information of described camera, otherwise withdraw from task;
The working process of rate gyro data acquisition task task _ SAM_omega is as follows:
Step 3A, obtain rate gyro control sampling period semaphore semb_sam_omega;
Step 3B, the gyro data that collects is write the data buffer;
Gyro data semaphore semb_omega is upgraded in step 3C, release;
The working process of accelerometer data acquisition tasks Task_SAM_acel is as follows:
Step 3D, obtain accelerometer control sampling period semaphore semb_sam_acel;
Step 3E, the accelerometer data that collects is write the data buffer;
Accelerometer data signal semb_acel is upgraded in step 3F, release;
The working process of star sensor data acquisition task task _ SAM_q is as follows:
Step 3G, obtain star sensor control sampling period semaphore semb_sam_q and star sensor control sampling period temporary signal amount semb_sam_q_temp;
The content of step 3H, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=0 and detector attitude maneuver flag flag_mot_ati=0, then execution in step 3I; Otherwise, be left intact this task termination;
Step 3I, will call zone bit flag_tm interior ccontaining 1 that attitude is determined power function, even flag_tm=1;
Step 3J, the gyro data that collects is write the data buffer;
Star sensor data-signal semb_q is upgraded in step 3K, release;
The working process of optical guidance camera data acquisition tasks Task_SAM_p is as follows:
Step 3L, obtain optical guidance camera control sampling period semaphore semb_sam_p and optical guidance camera control sampling period temporary signal amount semb_sam_p_temp;
The content of step 3M, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=0 and detector attitude maneuver flag flag_mot_ati=0, then execution in step 3N; Otherwise, be left intact this task termination;
Step 3N, obtain the system time constantly of taking pictures, and the record cooresponding bump track/attitude quantity of state constantly of taking pictures, described bump track/attitude quantity of state comprises ram position and speed;
Step 3O, the optical guidance camera data that collects is write the data buffer;
Optical guidance camera data semaphore semb_p is upgraded in step 3P, release.
5. small celestial body impact probing autonomous navigation according to claim 1 and guidance control programming dispatching method is characterized in that the concrete steps in GNC task task _ GNC one-period are as follows:
Step 4A, judge whether to be to carry out first, if, execution in step 4B then, if not, execution in step 4L then;
It is as follows to carry out GNC task task _ GNC situation first:
Step 4B, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector according to orbital plane normal direction vector, detector;
Step 4C, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, execution in step 4D then, otherwise, i.e. flag_mot_ati=1, then execution in step 4E;
Step 4D, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 4G then;
Step 4E, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 4F, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100;
Step 4G, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby recursion goes out the attitude matrix in detector relative inertness space;
Step 4H, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby recursion goes out detector position and speed according to detector;
Step 4I, the instruction that will calculate write the corresponding instruction buffer zone;
Step 4J, receive the sensor data that outside replicating machine dSpace dynam module is imported into, and the data that collect are write corresponding data buffer;
Step 4K, release main task are upgraded synchronized data signal amount semb1_sam, and the GNC planning tasks upgrades synchronized data signal amount semb2_sam and the GNC task is upgraded synchronized data signal amount semb3_sam;
Step 4L, judge whether to be to carry out for the second time; If, execution in step 4M then, if not, execution in step 4Z then;
It is as follows for the second time to carry out GNC task task _ GNC situation:
Step 4M, obtain the GNC task and upgrade synchronized data signal amount semb3_sam;
The instruction of step 4N, task execution is first sent, and the command adapted thereto buffer zone is put 0;
Step 4O, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector according to orbital plane normal direction vector, detector;
Step 4P, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, execution in step 4Q then, otherwise, i.e. flag_mot_ati=1, then execution in step
Step 4Q, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 4T then;
Step 4R, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 4S, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100;
Step 4T, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby recursion goes out the attitude matrix in detector relative inertness space;
Step 4U, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby recursion goes out detector position and speed according to detector;
Step 4V, serial communication is lost several zone bit flag_sam put 1, even flag_sam=1;
Step 4W, write down this performance period orbit maneuver zone bit flag_mot_orb_temp, the content that makes performance period orbit maneuver zone bit flag_mot_orb_temp is the content of detector orbit maneuver flag flag_mot_orb, i.e. flag_mot_orb_temp=flag_mot_orb;
Step 4X, will calculate instruction and write the corresponding instruction buffer zone, and after instruction is sent, the corresponding instruction buffer zone be put 0;
Step 4Y, discharge the 25ms performance period semaphore semb that is finished;
It is as follows to carry out GNC task task _ GNC situation for the second time:
Step 4Z, obtain and upgrade gyro data semaphore semb_omega and upgrade accelerometer data signal semb_acel; Execution in step 41 then;
The content that attitude is determined the zone bit flag_tm of power function is called in step 41, judgement, if flag_tm=1, then execution in step 42; Otherwise, execution in step 45;
Step 42, will call attitude and determine that the zone bit flag_tm of power function puts 0, even flag_tm=0;
Step 43, obtain and upgrade star sensor data-signal semb_q;
Step 44, according to the attitude quaternion of star sensor output, the attitude angular velocity of gyro output, calculate detector and estimate attitude, detector estimated angular velocity, gyro wander updating value, thereby realize proofreading and correct collision detector attitude and gyro wander by Kalman filtering;
The content of step 45, judgement detector orbit maneuver flag flag_mot_orb, if flag_mot_orb=0, then execution in step 46; Otherwise, i.e. flag_mot_orb=1, execution in step 411;
Step 46, estimate attitude and detector estimated angular velocity, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation according to orbital plane normal direction vector, detector, thus the expectation attitude of the directed attitude of calculating detector;
Step 47, judge the content of detector attitude maneuver flag flag_mot_ati, if flag_mot_ati=0, then execution in step 48, otherwise, i.e. flag_mot_ati=1, then execution in step 49;
Step 48, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate the counteraction flyback control signal, thereby obtain the counteraction flyback controlling quantity according to detector; Execution in step 416 then;
Step 49, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector; Execution in step 410 then;
Step 410, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100; Execution in step 416 then;
Step 411, judge the content of performance period orbit maneuver zone bit flag_mot_orb_temp, if flag_mot_orb_temp=0, then execution in step 412, otherwise, i.e. flag_mot_orb_temp=1, then execution in step 413;
Step 412, according to detector estimated position, detector estimating speed and expectation bump object point, calculate expectation increment speed, thereby obtain the increment speed that needs near track;
Step 413, according to detector estimated position and guidance increment speed, calculate attitude cosine battle array and three expectations of detector cireular frequency of detector expectation, thereby obtain the expectation attitude of the directed attitude of detector;
Step 414, estimate attitude, detector estimated angular velocity, detector expectation attitude and detector expectation cireular frequency, calculate three nozzle switch sequences, thereby obtain the logic of nozzle switch according to detector;
Step 415, the second level component t_current.tv_sec in the current time in system structure data is added 100, and assignment is given required t_ati stabilization time; If even t_ati=t_current.tv_sec+100; Execution in step 416 then;
Step 416, the attitude angular velocity according to gyro output, gyro wander updating value and last a detector are constantly estimated attitude, calculate detector and estimate attitude and detector estimated angular velocity, thereby obtain the attitude matrix in detector relative inertness space;
Step 417, estimate attitude, detector predicted position, detector predetermined speed, acceleration measurement and motor-driven igniting flag, calculate detector estimated position and detector estimating speed, thereby obtain detector position and speed according to detector;
Step 418, write down this performance period orbit maneuver zone bit flag_mot_orb_temp, the content that makes performance period orbit maneuver zone bit flag_mot_orb_temp is the content of detector orbit maneuver flag flag_mot_orb, i.e. flag_mot_orb_temp=flag_mot_orb;
Step 419, will calculate instruction and write the corresponding instruction buffer zone, and after instruction is sent, the corresponding instruction buffer zone be put 0;
Step 420, discharge the 25ms performance period semaphore semb that is finished.
6. small celestial body impact probing autonomous navigation according to claim 1 and guidance control programming dispatching method is characterized in that the concrete steps that track sets the tasks in the Task_ORB_fuse one-period are as follows:
Step 5A, obtain and upgrade optical guidance camera data semaphore semb_p;
Step 5B, judge to carry out attitude wide-angle control back required stabilization time t_ati with current time in system structure data in second grade component t_current.tv_sec magnitude relationship; If t_current.tv_sec>t_ati, then execution in step 5C; Otherwise, be left intact this task termination;
Step 5C, estimate attitude, detector predicted position, detector predetermined speed and predicated error variance battle array, calculate detector estimated position, detector estimating speed and estimation error variance battle array according to target celestial body photocentre pixel coordinate, detector;
Step 5D, minute book Post Orbit are determined zone bit flag_orb_fuse=1.
7. small celestial body impact probing autonomous navigation according to claim 2 and guidance control programming dispatching method is characterized in that the concrete steps in the 25ms timer processing task time_handler one-period are as follows:
Step 6A, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if r_esti[0]>0, execution in step 6B then; Otherwise, execution in step 6D then;
Step 6B, stop timer;
Step 6C, release position index signal amount semaphore; This task termination;
The content of step 6D, judgement detector orbit maneuver flag flag_mot_orb and detector attitude maneuver flag flag_mot_ati, if detector orbit maneuver flag flag_mot_orb=1 or detector attitude maneuver flag flag_mot_ati=1, then execution in step 6E; Otherwise, this task termination;
Step 6E, motor-driven zone bit flag_mot is put 1, even flag_mot=1;
Step 6F, discharge the 25ms timer semaphore semb_tm that expires;
The sensor data that step 6G, the outside replicating machine dSpace dynam of collection partly import into;
Step 6H, rate of release gyro control sampling period semaphore semb_sam_omega, accelerometer control sampling period semaphore semb_sam_acel, star sensor control sampling period temporary signal amount semb_sam_q_temp and optical guidance camera control sampling period temporary signal amount semb_sam_p_temp.
8. small celestial body impact probing autonomous navigation according to claim 2 and guidance control programming dispatching method is characterized in that the concrete steps in the 2s timer processing task time_handler_one one-period are as follows:
Step 6I, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if, execution in step 6J then; If not, execution in step 6L then;
Step 6J, stop timer;
Step 6K, release position index signal amount semaphore; This task termination;
Step 6L, release star sensor control sampling period semaphore semb_sam_q.
9. small celestial body impact probing autonomous navigation according to claim 2 and guidance control programming dispatching method is characterized in that the concrete steps in the 15s timer processing task time_handler_two one-period are as follows:
Step 6M, judge whether to satisfy the bump condition, promptly judge ram track condition amount r_esti[0] whether greater than 0, if, execution in step 6N then; If not, execution in step 6P then;
Step 6N, stop timer;
Step 6O, release position index signal amount semaphore; This task termination;
Step 6P, judge that motor-driven zone bit flag_mot and track determine the content of zone bit flag_orb_fuse, if motor-driven zone bit flag_mot=0 and track are determined zone bit flag_orb_fuse=1, execution in step 6Q then; Otherwise, execution in step 6S;
Step 6Q, track is determined that zone bit flag_orb_fuse puts 0 again, even flag_orb_fuse=0;
Step 6R, utilize track to determine that the result revises the position and the speed of ram; Execution in step 6T then;
Step 6S, motor-driven zone bit flag_mot is put 0, even flag_mot=0; And track is determined that zone bit flag_orb_fuse puts 0, even flag_orb_fuse=0;
Step 6T, release optical guidance camera control sampling period semaphore semb_sam_p.
CN 201010109463 2010-02-12 2010-02-12 Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing Expired - Fee Related CN101830290B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010109463 CN101830290B (en) 2010-02-12 2010-02-12 Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010109463 CN101830290B (en) 2010-02-12 2010-02-12 Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing

Publications (2)

Publication Number Publication Date
CN101830290A true CN101830290A (en) 2010-09-15
CN101830290B CN101830290B (en) 2012-12-19

Family

ID=42714543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010109463 Expired - Fee Related CN101830290B (en) 2010-02-12 2010-02-12 Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing

Country Status (1)

Country Link
CN (1) CN101830290B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073495A (en) * 2010-12-31 2011-05-25 哈尔滨工业大学 Housekeeping and attitude integrated on-board computer sequential control method
CN104034334A (en) * 2014-06-05 2014-09-10 哈尔滨工程大学 Single-star and double-star attitude determination method of small-field star sensor
CN110329547A (en) * 2019-07-29 2019-10-15 北京理工大学 Small feature loss high-speed impact terminal guidance method based on speed increment corridor
CN111400018A (en) * 2020-04-21 2020-07-10 中国科学院光电技术研究所 Star sensor software on-orbit diagnosis and reconstruction method without interrupting attitude measurement
CN111409865A (en) * 2020-03-31 2020-07-14 北京理工大学 Deep space probe approach segment guidance method based on intersection probability
CN111427671A (en) * 2020-02-24 2020-07-17 上海航天控制技术研究所 Pipeline navigation calculation method for achieving multi-task of satellite-borne software
CN111661367A (en) * 2020-07-31 2020-09-15 北京控制与电子技术研究所 Autonomous navigation flight control system for deep space impact
CN111680455A (en) * 2020-08-11 2020-09-18 北京控制与电子技术研究所 Impact detection track design method and system based on carrying form
CN115246492A (en) * 2022-09-21 2022-10-28 北京星河动力装备科技有限公司 Orbit-staying last-stage task planning system
CN117234696A (en) * 2023-11-13 2023-12-15 北京控制工程研究所 Determination method and device for multitasking execution strategy of high-frequency GNC system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5935195A (en) * 1997-03-27 1999-08-10 Matra Marconi Space Uk Autonomous star identification
CN1858553A (en) * 2006-06-07 2006-11-08 哈尔滨工业大学 Method for selecting reference planet in deep space self-aid navigation based on genetic algorithm
CN100451548C (en) * 2006-05-12 2009-01-14 哈尔滨工业大学 Verification system for fast autonomous deep-space optical navigation control prototype
CN101344391A (en) * 2008-07-18 2009-01-14 北京工业大学 Lunar vehicle pose self-confirming method based on full-function sun-compass
CN100476359C (en) * 2006-12-27 2009-04-08 北京航空航天大学 Deep space probe UPF celestial self-navigation method based on starlight angle

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5935195A (en) * 1997-03-27 1999-08-10 Matra Marconi Space Uk Autonomous star identification
CN100451548C (en) * 2006-05-12 2009-01-14 哈尔滨工业大学 Verification system for fast autonomous deep-space optical navigation control prototype
CN1858553A (en) * 2006-06-07 2006-11-08 哈尔滨工业大学 Method for selecting reference planet in deep space self-aid navigation based on genetic algorithm
CN100476359C (en) * 2006-12-27 2009-04-08 北京航空航天大学 Deep space probe UPF celestial self-navigation method based on starlight angle
CN101344391A (en) * 2008-07-18 2009-01-14 北京工业大学 Lunar vehicle pose self-confirming method based on full-function sun-compass

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《Journal of Chinese Inertial Technology》 20060415 刘锡祥等 VxWorks环境下捷联惯导系统的软件设计 1-3 1-9 第14卷, 第02期 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073495A (en) * 2010-12-31 2011-05-25 哈尔滨工业大学 Housekeeping and attitude integrated on-board computer sequential control method
CN104034334A (en) * 2014-06-05 2014-09-10 哈尔滨工程大学 Single-star and double-star attitude determination method of small-field star sensor
CN104034334B (en) * 2014-06-05 2016-09-14 哈尔滨工程大学 Single star of a kind of small field of view star sensor and double star method for determining posture
CN110329547A (en) * 2019-07-29 2019-10-15 北京理工大学 Small feature loss high-speed impact terminal guidance method based on speed increment corridor
CN111427671A (en) * 2020-02-24 2020-07-17 上海航天控制技术研究所 Pipeline navigation calculation method for achieving multi-task of satellite-borne software
CN111427671B (en) * 2020-02-24 2022-07-29 上海航天控制技术研究所 Pipeline navigation calculation method for realizing multi-task of satellite-borne software
CN111409865A (en) * 2020-03-31 2020-07-14 北京理工大学 Deep space probe approach segment guidance method based on intersection probability
CN111409865B (en) * 2020-03-31 2021-05-04 北京理工大学 Deep space probe approach segment guidance method based on intersection probability
CN111400018B (en) * 2020-04-21 2023-09-19 中国科学院光电技术研究所 Star sensor software on-orbit diagnosis and reconstruction method without interrupting attitude measurement
CN111400018A (en) * 2020-04-21 2020-07-10 中国科学院光电技术研究所 Star sensor software on-orbit diagnosis and reconstruction method without interrupting attitude measurement
CN111661367A (en) * 2020-07-31 2020-09-15 北京控制与电子技术研究所 Autonomous navigation flight control system for deep space impact
CN111680455A (en) * 2020-08-11 2020-09-18 北京控制与电子技术研究所 Impact detection track design method and system based on carrying form
CN115246492B (en) * 2022-09-21 2023-01-13 北京星河动力装备科技有限公司 Orbit-staying last-stage task planning system
CN115246492A (en) * 2022-09-21 2022-10-28 北京星河动力装备科技有限公司 Orbit-staying last-stage task planning system
CN117234696A (en) * 2023-11-13 2023-12-15 北京控制工程研究所 Determination method and device for multitasking execution strategy of high-frequency GNC system
CN117234696B (en) * 2023-11-13 2024-01-19 北京控制工程研究所 Determination method and device for multitasking execution strategy of high-frequency GNC system

Also Published As

Publication number Publication date
CN101830290B (en) 2012-12-19

Similar Documents

Publication Publication Date Title
CN101830290B (en) Autonomous navigation and guidance control programming dispatching method for small celestial body impact probing
US11135719B2 (en) Real-time control system, real-time control device and system control method
CN105974939A (en) Unmanned aerial vehicle formation form automatic generation method and device
CN108287959A (en) Artificial intelligence program person writes digital aircraft source code specifications decision and executes method
CN106802664B (en) Unmanned aerial vehicle headless mode flight control method and unmanned aerial vehicle
CN103760898A (en) Method for rapidly building mini-satellite control test systems
Wurst et al. System performance modelling of heterogeneous hw platforms: An automated driving case study
CN111400895B (en) Multi-level and multi-granularity cross-domain joint simulation event scheduling method and system
CN113009935A (en) Unmanned aerial vehicle simulation test system and method and unmanned aerial vehicle flight controller
CN109445404B (en) Enhanced in-loop test method for intelligent driving planning decision control system
CN111950880B (en) Multi-star collaborative task description and on-satellite decomposition processing method and system
Tang et al. The software architecture of a reconfigurable real-time onboard control system for a small UAV helicopter
Jin et al. Temporal partitioning for mixed-criticality systems
CN111966122A (en) Satellite-rocket separation simulation control method and system
Tang et al. Development of a laboratory HILs testbed system for small UAV helicopters
CN111367257B (en) Dual ultra-real-time rapid simulation test system and method applied to control system
CN115290081A (en) Embedded INS/GPS integrated navigation method based on RTOS
Cabrera-Gámez et al. A real-time sailboat controller based on chibios
WO2021076445A1 (en) Robot choreographer
CN111431651A (en) Multicomputer synchronous operation and time alignment method suitable for Mars detection
CN114115352B (en) Unmanned aerial vehicle flight control method and system and unmanned aerial vehicle
JP4202803B2 (en) Shooting calculation device
CN114036645A (en) ROS-based simulation method and device and electronic equipment
CN102073495A (en) Housekeeping and attitude integrated on-board computer sequential control method
Kottmann Software for model helicopter flight control

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121219

Termination date: 20130212