Files
paparazzi/sw/simulator/flightModel.mli
T
2006-04-21 17:00:33 +00:00

53 lines
1.6 KiB
OCaml

(*
* $Id$
*
* Basic flight model for simulation
*
* Copyright (C) 2004-2006 Pascal Brisset, Antoine Drouin
*
* This file is part of paparazzi.
*
* paparazzi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* paparazzi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with paparazzi; see the file COPYING. If not, write to
* the Free Software Foundation, 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*
*)
type meter = float
type meter_s = float
type radian = float
type radian_s = float
type state
val init : radian -> state
val get_xyz : state -> meter * meter * meter
val get_time : state -> float
val get_phi : state -> radian
val get_attitude : state -> radian * radian * radian
val set_air_speed : state -> meter_s -> unit
module Make :
functor (A : Data.MISSION) ->
sig
val do_commands : state -> Stdlib.pprz_t array -> unit
val nb_commands : int
val nominal_airspeed : float (* m/s *)
val roll_neutral_default : float (* rad *)
val state_update : state -> float * float -> float -> unit
(** [state_update state (wind_x, wind_y) dt] With m/s for wind and s for
dt *)
end