CN101586961B - Multitask dispatching method for combined navigation handler and combined navigation handler - Google Patents

Multitask dispatching method for combined navigation handler and combined navigation handler Download PDF

Info

Publication number
CN101586961B
CN101586961B CN2009100438547A CN200910043854A CN101586961B CN 101586961 B CN101586961 B CN 101586961B CN 2009100438547 A CN2009100438547 A CN 2009100438547A CN 200910043854 A CN200910043854 A CN 200910043854A CN 101586961 B CN101586961 B CN 101586961B
Authority
CN
China
Prior art keywords
navigation
task
gpio
pulse
look
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.)
Active
Application number
CN2009100438547A
Other languages
Chinese (zh)
Other versions
CN101586961A (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.)
National University of Defense Technology
Original Assignee
National University of Defense 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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN2009100438547A priority Critical patent/CN101586961B/en
Publication of CN101586961A publication Critical patent/CN101586961A/en
Application granted granted Critical
Publication of CN101586961B publication Critical patent/CN101586961B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

A multitask dispatching method for combined navigation handler comprises steps of: (1) setting a synchronizing pulse synthesizer and an interrupt signal synthesizer; (2) executing a serial data receiving task of an inertial measurement unit; (3) executing a satellite navigation data receiving task; (4) executing a calculating task of a dual sub sample strapdown inertial navigation; (5) executing acombined navigation calculating task based on Kalman filtering method. The combined navigation handler comprises a main control unit provided with an interrupt manager, an interrupt signal synthesize r, a synchronizing pulse synthesizer, a universal input and output interface unit, a serial port 0, a serial port 1 and a serial port 2. The invention is sample, compact in structure and simple to operate, capable of improving utilization rate of combined navigation handler and integral efficiency.

Description

The multi-task scheduling method and the combined navigation handler that are used for combined navigation handler
Technical field
The present invention is mainly concerned with the inertial navigation system field, refers in particular to a kind of multi-task scheduling method and combined navigation handler that is used for combined navigation handler.
Background technology
Inertial navigation system is owing to can provide two-forty, high-precision full navigation information (comprising position, speed, attitude, angular speed, acceleration etc.), therefore integrated navigation is often taken boat equipment as the leading factor with inertial navigation system, but simple inertial navigation system, its error accumulates in time.Integrated navigation system based on inertial navigation system adopts various information fusion methods, makes up other multiple navigator, to subdue the deficiency of various self-contained navigation equipment, suppresses the error of inertial navigation system, further improves the combination property of system.The main information fusion method that uses in the engineering is the Kalman filtering method.
With certain demand is that the typical inertia/satellite combined guidance system of application background is an example, as Fig. 1, its task mainly contains following 5,1. IMU (Inertial Measurement Unit, Inertial Measurement Unit) serial data receives (per 5 millisecond of one frame data, frame length is a N byte, and baud rate is 230400bps); 2. satellite navigation data receives (per 100 millisecond of one frame data, frame length are M byte); 3. the inertial navigation algorithm calculates according to the frame or the multiframe IMU data that receive, obtains and export inertial navigation result (adopt Shuangzi sample algorithm, then per 10 milliseconds are once calculated).4. inertial navigation is exported result of calculation after calculating and finishing by serial port; 5. the Kalman filtering algorithm calculates according to the satellite navigation data and the inertial navigation result that receive, obtain inertial navigation result's error, and, the inertial navigation result is carried out error correction (whenever finish 10 Shuangzi sample inertial navigations and calculate a Kalman filtering of triggering calculating) according to this error.
At present, the single comparatively powerful universal flush bonding processor of function of general employing is finished the above-mentioned functions requirement in the like product.Exploitation combinations thereof navigation software mainly contains based on single task operating system with based on two kinds of approach of real-time multi-task operating system on universal embedded processor platform.
Can address the above problem well based on real-time multi-task operating system, but need to pay (such as VXWORKS operating system) or carry out cutting BSP (plate level support package) based on the operating system of open source code, performance history is time-consuming.Nonetheless, operating system is carried out task scheduling on the backstage, also needs to spend the regular hour expense.
Operating system (such as dos operating system) based on single task will realize that the scheduling of above-mentioned all multitasks often just seems unable to do what one wishes.Because the task that processor need be finished is more, caused the processor tasks scheduling too loaded down with trivial details, the sequential control complexity.
So be necessary to develop at integrated navigation a kind of processor system of special use, its target is on single-processor,, finish the scheduling of above-mentioned all multitasks based on single task operating system.
Summary of the invention
The technical problem to be solved in the present invention just is: at the technical matters that prior art exists, the invention provides a kind of simple and compact for structure, principle simple, can improve greatly combined navigation handler utilization factor, improve the multi-task scheduling method that is used for combined navigation handler and the combined navigation handler of whole efficiency.
For solving the problems of the technologies described above, the present invention by the following technical solutions.
A kind of multi-task scheduling method that is used for combined navigation handler is characterized in that step is:
(1), synchronizing pulse synthesizer and look-at-me compositor be set: synchronizing pulse synthesizer is according to the 1PPS pulse signal, utilizes the start pulse signal of self local crystal oscillator Synthetic 2 00Hz; The look-at-me compositor generates corresponding pulse signal according to the pulse information of exporting in the combined navigation handler, triggers combined navigation handler and makes it enter corresponding interrupt service routine;
(2), carry out the Inertial Measurement Unit serial data and receive task: according to the synthetic pulse signal of synchronizing pulse synthesizer, each pulse signal triggers an Inertial Measurement Unit and carries out data acquisition, it is that Frame sends to combined navigation handler by serial port that Inertial Measurement Unit becomes the data encapsulation that collects a packet at every turn, combined navigation handler whenever receive from a byte of Inertial Measurement Unit serial data promptly produce one and receive look-at-me and give interrupt manager, make combined navigation handler enter an interrupt process, this process is for carrying out the process that the Inertial Measurement Unit serial data receives task;
(3), carry out satellite navigation data and receive task: the navigation data of satellite receiver sends to combined navigation handler by serial port, satellite navigation data receives task and is triggered by the serial data from satellite receiver, the GPIO of combined navigation handler by being provided with after satellite navigation data reception task is finished 2Produce a positive pulse, the satellite navigation serial data that a frame is complete has been received in expression, frame counter is reset to 0 after having produced above-mentioned pulse, and corresponding signal lamp sign 2 is set;
(4), carry out Shuangzi sample inertial navigation calculation task: the GPIO of combined navigation handler after double Inertial Measurement Unit serial data reception task is finished by being provided with 0Produce a positive pulse, this positive pulse is used to trigger Shuangzi sample inertial navigation calculation task, and corresponding signal lamp sign 1 is set, and frame counter is reset to 0 after having produced above-mentioned pulse; Trigger result of calculation serial port output task after each Shuangzi sample inertial navigation calculation task is finished one time, its cycle is identical with the cycle of Shuangzi sample inertial navigation calculation task;
(5), carry out integrated navigation calculation task based on kalman filter method: combined navigation handler is by the GPIO of setting when continuous 10 Shuangzi sample inertial navigation calculation tasks are finished after 1Produce a positive pulse; The GPIO of combined navigation handler after satellite navigation data reception task is finished by being provided with 2Produce a positive pulse; The look-at-me compositor is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and give interrupt manager, make combined navigation handler enter an interrupt process, this process is used to trigger the Kalman filtering calculation task one time.
A kind of combined navigation handler, it comprises main control unit, it is characterized in that: be provided with interrupt manager in the described main control unit, the look-at-me compositor, synchronizing pulse synthesizer, the universal input/output interface unit, serial port 0, serial port 1 and serial port 2, described synchronizing pulse synthesizer is used for according to the pulse signal of 1PPS pulse in conjunction with self local crystal oscillator Synthetic 2 00Hz, the look-at-me compositor exports in the interrupt manager after generating corresponding interruption pulse signal according to the pulse information of exporting in the universal input/output interface unit, triggers combined navigation handler and makes it enter corresponding interrupt service routine; Serial port 0 is used for linking to each other with Inertial Measurement Unit receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, serial port 1 is used for linking to each other with satellite receiver receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, and serial port 2 is used for linking to each other to finish output and produce with external unit sending interruption to interrupt manager;
Described universal input/output interface unit comprises GPIO 0, GPIO 1And GPIO 2, described GPIO 0Be used for after double Inertial Measurement Unit serial data reception task is finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 1Be used for after continuous 10 Shuangzi sample inertial navigation calculation tasks are finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 2Be used for producing a positive pulse and export the look-at-me compositor to after satellite navigation data reception task is finished, described look-at-me compositor is to GPIO 0Lead directly to and export interrupt manager to, the look-at-me compositor is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and be used to trigger Kalman filtering calculating.
Compared with prior art, advantage of the present invention just is:
1) benefit of the present invention is to improve the utilization factor to processor.The existing integrated navigation function that need can finish based on the high primary frequency processor only needs the processor of a low relatively dominant frequency just can finish.
2) can in single task operating system, realize the scheduling of a plurality of tasks, and not need the support of multiple task operating system.A plurality of tasks that can realize this scheduling must have the relation that order triggers, and above-mentioned 5 tasks that typical integrated navigation comprised have to have this relation.
Fig. 1 is typical inertia in the prior art/satellite combined guidance system program multitask synoptic diagram;
Description of drawings
Fig. 2 is a framed structure synoptic diagram of the present invention;
Fig. 3 is the synoptic diagram of 1PPS pulse;
Fig. 4 is the 200Hz synchronizing pulse design sketch that synthesizes;
Fig. 5 is the synoptic diagram that dispatching method is used in single task operating system in the prior art;
Fig. 6 uses the design sketch behind the dispatching method in the prior art;
Fig. 7 is the synoptic diagram that dispatching method of the present invention is used in single task operating system;
Fig. 8 is the design sketch behind the application dispatching method of the present invention;
Fig. 9 is the synoptic diagram of combined navigation handler of the present invention application example in single task operating system.
Embodiment
Below with reference to specific embodiment and Figure of description the present invention is described in further details.
As shown in Figure 7, a kind of multi-task scheduling method that is used for combined navigation handler of the present invention the steps include:
(1), synchronizing pulse synthesizer and look-at-me compositor be set: synchronizing pulse synthesizer is according to the 1PPS pulse signal, utilizes the start pulse signal of self local crystal oscillator Synthetic 2 00Hz; The look-at-me compositor generates corresponding interruption pulse signal according to the pulse information of exporting in the combined navigation handler, triggers combined navigation handler and makes it enter corresponding interrupt service routine;
(2), carry out the Inertial Measurement Unit serial data and receive task: according to the synthetic pulse signal of synchronizing pulse synthesizer, each pulse signal triggers an Inertial Measurement Unit and carries out data acquisition, it is that Frame sends to combined navigation handler by serial port that Inertial Measurement Unit becomes the data encapsulation that collects a packet at every turn, combined navigation handler receives that whenever a serial data from Inertial Measurement Unit promptly produces one and receives interruption to the look-at-me compositor, the look-at-me compositor produces an interrupt process that allows interrupt manager discern, make combined navigation handler enter an interrupt process, this process is for carrying out the process that the Inertial Measurement Unit serial data receives task; The IMU serial data receives task by the serial data triggering from IMU like this.The serial port of supposing combined navigation handler interrupts receiving that whenever a byte just triggers once, and its triggering cycle is about 50 μ s (≈ 10bit * 1s/230400bps.Wherein 10 have comprised the 1bit start bit, 8bit data bit, 1bit position of rest).Because a complete Frame has N byte, therefore need enter interruption N time in order to receive a complete Frame.The cycle that receives a complete Frame is 5ms.
(3), carry out satellite navigation data and receive task: the navigation data of satellite receiver sends to combined navigation handler by serial port, satellite navigation data receives task and is triggered by the serial data from satellite receiver, the GPIO of combined navigation handler by being provided with after satellite navigation data reception task is finished 2Produce a positive pulse, the satellite navigation serial data that a frame is complete has been received in expression, frame counter is reset to 0 after having produced above-mentioned pulse, and corresponding signal lamp sign 2 is set.The navigation data (per 100 millisecond of one frame data, frame length are M byte) that this shows satellite receiver also is to send to combined navigation handler by serial port, and satellite navigation data receives task 2. by the serial data triggering from satellite receiver like this.Based on the same hypothesis in front, need enter interruption M time in order to receive a complete Frame.The cycle that receives a complete Frame is 100ms.
(4), carry out Shuangzi sample inertial navigation calculation task: the GPIO of combined navigation handler after double Inertial Measurement Unit serial data reception task is finished by being provided with 0Produce a positive pulse, this positive pulse is used to trigger Shuangzi sample inertial navigation calculation task, and corresponding signal lamp sign 1 is set, and frame counter is reset to 0 after having produced above-mentioned pulse; Trigger result of calculation serial port output task after each Shuangzi sample inertial navigation calculation task is finished one time, its cycle is identical with the cycle of Shuangzi sample inertial navigation calculation task; This shows that the triggering cycle of a Shuangzi sample inertial navigation calculation task is 10ms.Suppose that a result data frame has comprised P byte, byte of the every transmission of transmission buffer zone produces once to send interrupts being used to transmit next byte, then will enter P serial port and send interrupt process.
(5), carry out integrated navigation calculation task based on Kalman (Kalman) filtering method: combined navigation handler is by the GPIO of setting when continuous 10 Shuangzi sample inertial navigation calculation tasks are finished after 1Produce a positive pulse; The GPIO of combined navigation handler after satellite navigation data reception task is finished by being provided with 2Produce a positive pulse; These two positive pulses are passed through the look-at-me compositor to GPIO 1Or GPIO 2Carry out " logical OR ", produce an interrupt process that allows interrupt manager discern, make combined navigation handler enter an interrupt process, this process is used to trigger the Kalman filtering calculation task one time.Because the integrated navigation calculation task based on the Kalman filtering method needs two kinds of data (results of Shuangzi sample inertial navigation calculation task, the navigation data of satellite receiver) as calculating input, just in time the satellite navigation data of front receives task this data can be provided synchronously, and the cycle is identical.Therefore finishing this condition based on the integrated navigation calculation task of Kalman filtering method by " every continuous 10 Shuangzi sample inertial navigation calculation tasks " or " 1 time satellite navigation data receives task " triggers.
The present invention a kind ofly realizes the method for integrated navigation program multi-task scheduling based on hardware, promptly based on the dispatching method of external interrupt.Its principle is: external interrupt signal is the pulse signal that inner some tasks (task A) produce by output port before end; The pulse signal that produces interrupts the input port by outside non-shielding and triggers a hardware interrupts.Need trigger just carrying out of task B by task A is arranged in this interrupt process.So just realized the effect of task A by external hardware down trigger task B.Triggering each interrupt task according to information flow needs each interrupt task output to be used to trigger the pulse of subordinate's interrupt task.Just formed scheduling mechanism between each task based on this principle.The look-at-me compositor is exactly that the pulse of this task termination of sign of will export before each task termination sends back to the interrupt manager of general processor again through certain logic, thereby realizes that loopback (Loop back) triggers.
Fig. 5 has represented that existing dispatching method is as follows in single task operating system: the IMU serial data receives task (task 1.) and is arranged at by in the serial port reception interrupt process, after finishing the complete Frame Protocol parsing of two continuous frames, the zone bit (2 frame IMU DSR zone bit) of a global variable form is set, promptly notifies Shuangzi sample inertial navigation calculation task (task 3.) to have begun.After Shuangzi sample inertial navigation calculation task is finished 10 times continuously, the zone bit (inertial navigation calculating complement mark) of a global variable form is set, promptly notifies integrated navigation calculation task (task 5.) to have begun based on the Kalman filtering method.Be characterized in Shuangzi sample inertial navigation calculation task (task 3.) and all be arranged in the master routine based on the integrated navigation calculation task (task 5.) of Kalman filtering method.Fig. 6 has represented the design sketch of existing scheduling scheme in single task operating system.Task 1. 2. 4. dotted portion represent repeatedly to enter interruption.Task forward part dotted line is 5. represented repeatedly to be interrupted by other interrupt process.A kind of opposite extreme situations appears in this scheduling meeting, promptly in some 10ms cycle (also being the Shuangzi sample inertial navigation calculation task cycle), need to finish a Shuangzi sample inertial navigation calculation task (task 3.) and integrated navigation calculation task (task 5.) simultaneously based on the Kalman filtering method.The number of times that this extreme case takes place is 10th the 10ms cycle of every 100ms in the cycle, and does not exist in the cycle at other 9 10ms.Because the existence of this problem has caused the reduction to cpu busy percentage.Such as on 800MHz type processor, one time Shuangzi sample inertial navigation calculation task needs 0.9ms, and once the integrated navigation calculation task based on the Kalman filtering method needs 9ms, and the time overhead of two tasks is 9.9ms in the most extreme cycle so.And other 9 10ms are in the cycle, and computing cost only is 0.9ms, and the utilization factor of processor only is 9% (0.9ms/10ms), and this has just caused great waste to processor.The average utilization of processor only is 9% * 0.9+99% * 0.1=0.18.That is to say if there is a kind of rational dispatching method, then only need the processor of 160MHz promptly can finish this two main tasks.Because under above-mentioned 800MHz supposed situation, each 100ms is in the cycle, and all time overheads are 0.9ms * 10 time+9ms * 1 time=18ms.If processor reduces the dominant frequency to 160MHz, then become 18ms * (800/160)=90ms<100ms by 18ms.
In order fully to improve the average utilization of processor, a kind of rational dispatching method be exactly each task all be in the interrupt process that is arranged at separately, and interrupt realizing nested, and just there is not above-mentioned opposite extreme situations in this, and this has also guaranteed on time the finishing of task of high priority.As shown in Figure 7 and Figure 8, be example with the processor of 160MHz dominant frequency, one time Shuangzi sample inertial navigation calculation task needs 0.9ms * (800/160)=4.5ms, satisfies<requirement in 10ms cycle.For the cycle of a 100ms, then remain 100ms-4.5ms/ time * 10 times=55ms.And once need 9ms * (800/160)=45ms<55ms based on the integrated navigation calculation task of Kalman filtering method.Can be that Shuangzi sample inertial navigation calculation task is arranged in separately in the interrupt process according to the prerequisite of this model running, then be arranged in the low level interrupts or master routine that can be interrupted by Shuangzi sample inertial navigation calculation task based on the integrated navigation calculation task of Kalman filtering method.
As shown in Figure 2, a kind of combined navigation handler of the present invention, comprise main control unit, this main control unit is the general-purpose built-in type processor, it comprises external memory storage, the necessary parts that crystal oscillator and power supply etc. are conventional, be provided with the interrupt manager of support in the main control unit more than 5 interrupt sources, the look-at-me compositor, synchronizing pulse synthesizer, the universal input/output interface unit, serial port 0, serial port 1 and serial port 2, the universal input/output interface unit adopts the above GPIO (GeneralPurpose Input Output) of 3bit, synchronizing pulse synthesizer is used for according to the pulse signal of 1PPS pulse in conjunction with self local crystal oscillator Synthetic 2 00Hz, the look-at-me compositor exports in the interrupt manager after generating corresponding interruption pulse signal according to the pulse information of exporting in the universal input/output interface unit, triggers combined navigation handler and makes it enter corresponding interrupt service routine; Serial port 0 is used for linking to each other with Inertial Measurement Unit receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, serial port 1 is used for linking to each other with satellite receiver receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, and serial port 2 is used for linking to each other to finish output and produce with external unit sending interruption to interrupt manager.The satellite receiver serial data that satellite receiver produces refers to the satellite receiver navigation results, comprises pseudorange, pseudorange rates, speed, position, time etc.
The universal input/output interface unit comprises GPIO 0, GPIO 1And GPIO 2, described GPIO 0Be used for after double Inertial Measurement Unit serial data reception task is finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 1Be used for after continuous 10 Shuangzi sample inertial navigation calculation tasks are finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 2Be used for producing a positive pulse and export the look-at-me compositor to after satellite navigation data reception task is finished, described look-at-me compositor is to GPIO 0Lead directly to and export interrupt manager to, the look-at-me compositor is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and be used to trigger Kalman filtering calculating.
A plurality of tasks of integrated navigation overall process are for the synchronous triggering under the realization event mode, and this just needs the synchronizing pulse synthesizer among the present invention to cooperate.Two kinds of information of satellite receiver output are respectively navigator fix result data and pulse per second (PPS) (1PPS, onepulse per second).Fig. 3 has shown the impulse form of 1PPS.The function of synchronizing pulse synthesizer is the pulse that 1PPS pulse frequency multiplication is become 200Hz, and the rising edge of the 200Hz pulse that generates aligns substantially with the rising edge of 1PPS pulse (in error range necessarily), and effect is seen Fig. 4.The outputting data updating rate of satellite receiver (turnover rate of the corresponding 10Hz of per 100 millisecond of one frame data) strictness and the 1PPS impulsive synchronization that self produces, it is 1PPS pulse of every generation, representative lasts 1 second, during the output data strictness of satellite receiver be 10 frames.The pulse of the 200Hz that synchronizing pulse synthesizer generates is used to trigger IMU gathers, and IMU handles the back according to the result who gathers and sends by serial port, and the outputting data updating rate of IMU also is 200 strict frames so.The effect that synchronizing pulse synthesizer is used is as follows: each 1PPS is in the cycle, and the output data of IMU is 200 frames; Inertial navigation algorithm based on the Shuangzi sample carries out an inertial navigation calculating with per two frame IMU data, will carry out 100 times altogether and calculate.As aforementioned, the output data strictness of satellite receiver is 10 frames, calculates based on the integrated navigation of Kalman filtering method, and its input is that the result's of the output data of satellite receiver and Shuangzi sample inertial navigation calculation task number of times also is 10 times.Because the effect of integrated navigation is to finish inertial navigation is calculated needed state variable to revise, and does not export net result.Result under the final integrated navigation meaning comes from the inertial navigation algorithm, and promptly turnover rate is identical with the turnover rate of inertial navigation algorithm, all is 100Hz.It is synchronous that the effect of synchronizing pulse synthesizer is actually the data acquisition that has realized two separate units (IMU and satellite receiver).Exactly, be realized IMU and satellite receiver synchronous.The use of synchronizing pulse synthesizer has only solved combined navigation handler and has carried out integrated navigation and calculate necessary oracle and gather stationary problem, how to solve the scheduling problem between all multitasks that the integrated navigation general assignment comprised, also need the look-at-me compositor.
The function of look-at-me compositor is the GPIO output pulse information according to main control unit self among the present invention, based on certain logic, generate corresponding interruption pulse signal, be used to trigger general processor, make main control unit enter corresponding interrupt service routine.Interruption is to solve a kind of dispatching method of multitask under single task operating system.It is as follows to utilize look-at-me compositor and interrupt schedule to solve the synchronous triggering principle of all multitasks of integrated navigation under event mode: 1. the IMU serial data receives task, 3. satellite navigation data receives task, 3. Shuangzi sample inertial navigation calculation task, 4. integrated navigation data output task, 5. all in interrupt process separately, realize based on integrated navigation calculation task of Kalman filtering method or the like, and trigger sequence is according to realizing that the desired information flow of general function carries out.
In conjunction with the structure in the specific embodiment of the invention, its principle of work is described in further details.
(1) synchronizing pulse synthesizer is utilized self local crystal oscillator (frequency is between 10MHz~100MHz) according to the 1PPS pulse, by certain logic, and the pulse signal of Synthetic 2 00Hz.Synthetic 200Hz pulse signal edge aligns with the 1PPS pulse, and in the cycle, just produces 200 200Hz pulses at a 1PPS.Its design sketch as shown in Figure 4.
(2) He Cheng 200Hz pulse is used to trigger the IMU Inertial Measurement Unit and carries out the inertial data collection.Inertial Measurement Unit is implemented in the rising edge of 200Hz the gyro of its inside and the data of acceierometer sensor is gathered.The result that will gather is packaged as a Frame then, adopts RS232 or RS422 to be sent to the serial port 0 of main control unit.
(3) serial port 0 produces a serial port 0 and receives and interrupt after whenever receiving a byte, and the interrupt manager of main control unit is had no progeny in above-mentioned recognizing, and will enter an interrupt process, is referred to as IMU serial data receiving process.Because a complete IMU serial data frame length is a N byte, promptly having entered has no progeny in N serial port 0 reception can receive a complete IMU serial data, and its cycle is 5 milliseconds.Be set in the N time serial port 0 receive interrupt routine finish Frame Protocol resolve the back and withdraw from before carry out frame count, so after receiving second whole frame, by GPIO is set 0, make GPIO 0Produce the positive pulse of a certain width, be used to trigger the inertial navigation program of Shuangzi sample.After having produced above-mentioned pulse, frame counter is reset to 0.
(4) the inertial navigation program of Shuangzi sample is arranged at GPIO 0In the interrupt process that produces, its computation period is 10 milliseconds.In this process,, therefore can carry out an inertial navigation and calculate because needed input data are complete.After having finished an inertial navigation calculating, the inertial navigation calculation times is counted.Calculate when finishing 10 inertial navigations, by GPIO is set 1, make GPIO 1Produce the positive pulse of a certain width, be used to trigger Kalman filtering calculation procedure; And corresponding signal lamp sign 1 is set.After having produced above-mentioned pulse, frame counter is reset to 0.GPIO 1The cycle that produces is 100 milliseconds.
(5) satellite navigation serial data is that the serial port 1 by main control unit receives, because the length of a frame is M byte, need to have no progeny in 1 reception of M serial port of experience and can receive a complete satellite navigation serial data, its cycle is 100 milliseconds.Be set in after the M time serial port 1 receive interrupt routine and finish Frame Protocol and resolve, by GPIO is set 2, make GPIO 2Produce the positive pulse of a certain width, the satellite navigation serial data that a frame is complete has been received in expression; And corresponding signal lamp sign 2 is set.
(6) function of look-at-me compositor is to GPIO 0Straight-through output is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and be used to trigger Kalman filtering calculating.Finish a Kalman filtering and calculate one of needed two kinds of data and be ready to this moment.These two kinds of data are: will produce the attitude information of carrier after 1. inertial navigation calculates, positional information, velocity information etc., the 2. navigation data of satellite receiver.After entering the integrated navigation interrupt process that the integrated navigation look-at-me triggers, according to the condition that enters if signal lamp sign 1, the time of then carrying out Kalman filtering more new portion calculate; If signal lamp sign 2 then carries out the more new portion calculating of measurement of Kalman filtering.To calculate revised status information will be 10 milliseconds inertial navigation process utilization by computation period or be directly used in output by Kalman filtering, and this depends on user's algorithm design.
(7) data of whole integrated navigation output turnover rate still remains on 100Hz (corresponding 10 millisecond periods), all will carry out data output after promptly each inertial navigation is finished.The data output of whole integrated navigation is finished by serial port 2.The transmission of first output byte is calculated by (four) inertial navigations of step and to be carried out after finishing.To produce one and be sent completely look-at-me after this byte is sent completely, 4. look-at-me triggers task thus, continues to send the data of next byte.Suppose that a complete output data frame is the P byte, need enter P-1 serial port and send interruption, 3. finish because the transmission of first byte is a task.
So far, 5 tasks need 5 interruptions altogether.For the result who guarantees that the present invention is desired, these 5 priority of interrupt are arranged to from high to low:
Figure G2009100438547D00091
Embodiment: as shown in Figure 9, the present invention is based on the general commercial processor of MPC8247 and provided a realization example.Main control unit has only provided the annexation with the closely-related part of the present invention in detail, and other parts simply are described with bus form.The interruption pulse compositor has provided the realization logical diagram.Synchronizing pulse synthesizer has provided principle schematic.Synchronizing pulse synthesizer realizes based on fpga logic.
The above only is a preferred implementation of the present invention, and protection scope of the present invention also not only is confined to the foregoing description, and all technical schemes that belongs under the thinking of the present invention all belong to protection scope of the present invention.Should be pointed out that for those skilled in the art in the some improvements and modifications that do not break away under the principle of the invention prerequisite, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (2)

1. multi-task scheduling method that is used for combined navigation handler is characterized in that step is:
(1), synchronizing pulse synthesizer and look-at-me compositor be set: synchronizing pulse synthesizer is according to the 1PPS pulse signal, utilizes the start pulse signal of self local crystal oscillator Synthetic 2 00Hz; The look-at-me compositor generates corresponding pulse signal according to the pulse information of exporting in the combined navigation handler, triggers combined navigation handler and makes it enter corresponding interrupt service routine;
(2), carry out the Inertial Measurement Unit serial data and receive task: according to the synthetic pulse signal of synchronizing pulse synthesizer, each pulse signal triggers an Inertial Measurement Unit and carries out data acquisition, it is that Frame sends to combined navigation handler by serial port that Inertial Measurement Unit becomes the data encapsulation that collects a packet at every turn, combined navigation handler receives that whenever bytes of serial data from Inertial Measurement Unit promptly produce a reception look-at-me to interrupt manager, make combined navigation handler enter an interrupt process, this process is for carrying out the process that the Inertial Measurement Unit serial data receives task;
(3), carry out satellite navigation data and receive task: the navigation data of satellite receiver sends to combined navigation handler by serial port, satellite navigation data receives task and is triggered by the serial data from satellite receiver, the GPIO of combined navigation handler by being provided with after satellite navigation data reception task is finished 2Produce a positive pulse, the satellite navigation serial data that a frame is complete has been received in expression, frame counter is reset to 0 after having produced above-mentioned pulse, and corresponding signal lamp sign 2 is set;
(4), carry out Shuangzi sample inertial navigation calculation task: the GPIO of combined navigation handler after double Inertial Measurement Unit serial data reception task is finished by being provided with 0Produce a positive pulse, this positive pulse is used to trigger Shuangzi sample inertial navigation calculation task, and corresponding signal lamp sign 1 is set, and frame counter is reset to 0 after having produced above-mentioned pulse; Trigger result of calculation serial port output task after each Shuangzi sample inertial navigation calculation task is finished one time, its cycle is identical with the cycle of Shuangzi sample inertial navigation calculation task;
(5), carry out integrated navigation calculation task based on kalman filter method: combined navigation handler is by the GPIO of setting when continuous 10 Shuangzi sample inertial navigation calculation tasks are finished after 1Produce a positive pulse; The GPIO of combined navigation handler after satellite navigation data reception task is finished by being provided with 2Produce a positive pulse; The look-at-me compositor is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and give interrupt manager, make combined navigation handler enter an interrupt process, this process is used to trigger the Kalman filtering calculation task one time.
2. combined navigation handler, it comprises main control unit, it is characterized in that: be provided with interrupt manager in the described main control unit, the look-at-me compositor, synchronizing pulse synthesizer, the universal input/output interface unit, serial port 0, serial port 1 and serial port 2, described synchronizing pulse synthesizer is used for according to the pulse signal of 1PPS pulse in conjunction with self local crystal oscillator Synthetic 2 00Hz, the look-at-me compositor exports in the interrupt manager after generating corresponding interruption pulse signal according to the pulse information of exporting in the universal input/output interface unit, triggers combined navigation handler and makes it enter corresponding interrupt service routine; Serial port 0 is used for linking to each other with Inertial Measurement Unit receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, serial port 1 is used for linking to each other with satellite receiver receiving the data that collect and producing and receives look-at-me and be delivered to interrupt manager, and serial port 2 is used for linking to each other to finish output and produce with external unit sending interruption to interrupt manager; Described universal input/output interface unit comprises GPIO 0, GPIO 1And GPIO 2, described GPIO 0Be used for after double Inertial Measurement Unit serial data reception task is finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 1Be used for after continuous 10 Shuangzi sample inertial navigation calculation tasks are finished, producing a positive pulse and export the look-at-me compositor to, described GPIO 2Be used for producing a positive pulse and export the look-at-me compositor to after satellite navigation data reception task is finished, described look-at-me compositor is to GPIO 0Lead directly to and export interrupt manager to, the look-at-me compositor is to GPIO 1Or GPIO 2Carry out " logical OR ", produce an integrated navigation look-at-me and be used to trigger Kalman filtering calculating.
CN2009100438547A 2009-07-06 2009-07-06 Multitask dispatching method for combined navigation handler and combined navigation handler Active CN101586961B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100438547A CN101586961B (en) 2009-07-06 2009-07-06 Multitask dispatching method for combined navigation handler and combined navigation handler

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100438547A CN101586961B (en) 2009-07-06 2009-07-06 Multitask dispatching method for combined navigation handler and combined navigation handler

Publications (2)

Publication Number Publication Date
CN101586961A CN101586961A (en) 2009-11-25
CN101586961B true CN101586961B (en) 2011-04-06

Family

ID=41371307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100438547A Active CN101586961B (en) 2009-07-06 2009-07-06 Multitask dispatching method for combined navigation handler and combined navigation handler

Country Status (1)

Country Link
CN (1) CN101586961B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103630913B (en) * 2012-08-28 2015-10-07 安凯(广州)微电子技术有限公司 A kind of Kalman filtering dispatching method and device
CN103163508B (en) * 2013-02-01 2014-12-24 中国人民解放军国防科学技术大学 Doppler velocity log (DVL) parameter calibration method used for integrated navigation system of underwater inertial navigation system (INS) and DVL
CN104406605B (en) * 2014-10-13 2017-06-06 中国电子科技集团公司第十研究所 Airborne many navigation sources integrated navigation analogue systems
GB2569775B (en) 2017-10-20 2020-02-26 Graphcore Ltd Synchronization in a multi-tile, multi-chip processing arrangement
GB2569271B (en) * 2017-10-20 2020-05-13 Graphcore Ltd Synchronization with a host processor
GB2569844B (en) 2017-10-20 2021-01-06 Graphcore Ltd Sending data off-chip
GB2575294B8 (en) 2018-07-04 2022-07-20 Graphcore Ltd Host Proxy On Gateway
GB2579412B (en) 2018-11-30 2020-12-23 Graphcore Ltd Gateway pull model
CN110427823B (en) * 2019-06-28 2021-12-21 北京大学 Joint target detection method and device based on video frame and pulse array signal
CN112114945A (en) * 2020-09-07 2020-12-22 南京航空航天大学 Inertial/satellite integrated navigation task scheduling method based on multi-task real-time operating system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101105401A (en) * 2007-08-06 2008-01-16 北京航空航天大学 SDINS/GPS combined guidance system time synchronism and synchronous data extraction method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101105401A (en) * 2007-08-06 2008-01-16 北京航空航天大学 SDINS/GPS combined guidance system time synchronism and synchronous data extraction method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
冯 正 ,韩 焱 ,王黎明.多线程串口通信技术在GPS 导航中的应用.《现代电子技术》.2009,(第5期),28-33.
冯 正,韩 焱,王黎明.多线程串口通信技术在GPS 导航中的应用.《现代电子技术》.2009,(第5期),28-33. *
孙 松.嵌入式系统中GPIO 模拟SPI 总线主/ 从双向.《自动化技术与应用》.2007,第26卷(第10期),38-42. *

Also Published As

Publication number Publication date
CN101586961A (en) 2009-11-25

Similar Documents

Publication Publication Date Title
CN101586961B (en) Multitask dispatching method for combined navigation handler and combined navigation handler
EP2583437B1 (en) Distributed avionics system and method
CN103116175B (en) Embedded type navigation information processor based on DSP (digital signal processor) and FPGA (field programmable gata array)
US20110044345A1 (en) System and method for executing distributed software
CN103257670B (en) Embedded system and clocking method thereof
Pop et al. Analysis and optimization of distributed real-time embedded systems
CN101067656A (en) Position attitude system hardware time synchronizing method
CN104461972B (en) A kind of method and apparatus of data signal samples
JP2002517035A (en) Distributed computing environment using real-time scheduling logic and time-deterministic architecture
CN102315929B (en) Timing synchronization controller of ground simulation system
CN101178664A (en) Task scheduling method and system in real-time operating system
CN101222287B (en) Synchronization of at least one subscriber of a bus system and bus system
CN106445659B (en) A kind of spacecraft periodically blendes together Random Task dispatching method
CN102937819B (en) On-board computer time label output system
EP2278454B1 (en) Method for correct-by-construction development of real-time-systems
CN103532786A (en) Server synchronization detector as well as synchronous detection method and system
CN112114945A (en) Inertial/satellite integrated navigation task scheduling method based on multi-task real-time operating system
Kyriakakis et al. Synchronizing real-time tasks in time-triggered networks
CN109697058B (en) Network modeling method and device suitable for embedded system and storage medium
CN109361761B (en) Internet of things communication terminal operating system
CN116819992A (en) STM32 EtherCAT-based embedded numerical control system
CN109634729A (en) A kind of parallel calculation method of inertial navigation equipment multi-core DSP
CN102412828A (en) Complex programmable logic device (CPLD) based arbitrary decimal frequency division system and method of orthogonal impulse of photoelectric coded disc
CN106557051A (en) Distributed measurement and control system clock synchronization system and method based on serial communication bus
Breaban et al. Time synchronization for an asynchronous embedded CAN network on a multi-processor system on chip

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