fixedwing sim: nav_task at 4Hz and monitor_task at 1Hz

This commit is contained in:
Felix Ruess
2012-01-30 22:03:52 +01:00
parent 8615ebe24e
commit c10ff9aedf
2 changed files with 16 additions and 2 deletions
+10 -2
View File
@@ -47,10 +47,8 @@ uint8_t ac_id;
value sim_periodic_task(value unit) {
sensors_task();
navigation_task(); // FIXME, should run at 4Hz
attitude_loop();
reporting_task();
monitor_task(); // FIXME, should run at 1Hz
periodic_task_ap();
periodic_task_fbw();
event_task_ap();
@@ -58,6 +56,16 @@ value sim_periodic_task(value unit) {
return unit;
}
value sim_monitor_task(value unit) {
monitor_task();
return unit;
}
value sim_nav_task(value unit) {
navigation_task();
return unit;
}
float ftimeofday(void) {
struct timeval t;
+6
View File
@@ -43,6 +43,8 @@ module Make (A:Data.MISSION) (FM: FlightModel.SIG) = struct
let servos_period = 1./.40. (* s *)
let periodic_period = 1./.60. (* s *)
let nav_period = 1./.4. (* s *)
let monitor_period = 1. (* s *)
let rc_period = 1./.40. (* s *)
let msg = fun name ->
@@ -125,6 +127,8 @@ module Make (A:Data.MISSION) (FM: FlightModel.SIG) = struct
window#show ()
external periodic_task : unit -> unit = "sim_periodic_task"
external nav_task : unit -> unit = "sim_nav_task"
external monitor_task : unit -> unit = "sim_monitor_task"
external sim_init : unit -> unit = "sim_init"
external update_bat : int -> unit = "update_bat"
external update_adc1 : int -> unit = "update_adc1"
@@ -177,6 +181,8 @@ module Make (A:Data.MISSION) (FM: FlightModel.SIG) = struct
let boot = fun time_scale ->
Stdlib.timer ~scale:time_scale servos_period (update_servos bat_button);
Stdlib.timer ~scale:time_scale periodic_period periodic_task;
Stdlib.timer ~scale:time_scale nav_period nav_task;
Stdlib.timer ~scale:time_scale monitor_period monitor_task;
(* Forward or broacast messages according to "link" mode *)
Hashtbl.iter