imu.h
1/*
2 * Player - One Hell of a Robot Server
3 * Copyright (C) 2000 Brian Gerkey & Kasper Stoy
4 * gerkey@usc.edu kaspers@robotics.usc.edu
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19 *
20 */
21/**************************************************************************
22 * Desc: Sensor model for IMU.
23 * Author: Andrew Howard
24 * Date: 8 Aug 2003
25 * CVS: $Id$
26 *************************************************************************/
27
28#ifndef IMU_H
29#define IMU_H
30
31#include "../pf/pf.h"
32#include "../pf/pf_pdf.h"
33
34#ifdef __cplusplus
35extern "C" {
36#endif
37
38
39// Model information
40typedef struct
41{
42 // UTM heading
43 double utm_head;
44
45 // Expected bearing error
46 double err_head;
47
49
50
51// Create an sensor model
52imu_model_t *imu_alloc();
53
54// Free an sensor model
55void imu_free(imu_model_t *sensor);
56
57// Set the observed heading (utm)
58void imu_set_utm(imu_model_t *self, double utm_head);
59
60// The sensor model function
61double imu_sensor_model(imu_model_t *self, pf_vector_t pose);
62
63#ifdef __cplusplus
64}
65#endif
66
67#endif
68
Definition imu.h:41
Definition pf_vector.h:42