PsiSwarm Library  0.8
sensors.h
1 /* University of York Robotics Laboratory PsiSwarm Library: Sensor Functions Header File
2  *
3  * Copyright 2016 University of York
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
7  * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS
8  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9  * See the License for the specific language governing permissions and limitations under the License.
10  *
11  * File: sensors.h
12  *
13  * (C) Dept. Electronics & Computer Science, University of York
14  * James Hilder, Alan Millard, Alexander Horsfield, Homero Elizondo, Jon Timmis
15  *
16  * PsiSwarm Library Version: 0.8
17  *
18  * October 2016
19  *
20  */
21 
22 #ifndef SENSORS_H
23 #define SENSORS_H
24 
39 class Sensors
40 {
41 public:
42 
46  float get_battery_voltage ( void );
47 
51  float get_current ( void );
52 
56  float get_dc_voltage ( void );
57 
61  float get_temperature ( void );
62 
65  void enable_ultrasonic_ticker( void );
66 
69  void disable_ultrasonic_ticker( void );
70 
73  void update_ultrasonic_measure ( void );
74  void IF_read_ultrasonic_measure ( void );
75 
78  void store_background_raw_ir_values ( void );
79 
82  void store_illuminated_raw_ir_values ( void );
83 
87  void store_ir_values ( void );
88 
94  unsigned short get_background_raw_ir_value ( char index );
95 
101  unsigned short get_illuminated_raw_ir_value ( char index );
102 
108  unsigned short calculate_side_ir_value ( char index );
109 
115  unsigned short read_illuminated_raw_ir_value ( char index ) ;
116 
119  void store_background_base_ir_values ( void );
120 
123  void store_illuminated_base_ir_values ( void );
124 
128  void store_base_ir_values ( void );
129 
135  unsigned short get_background_base_ir_value ( char index );
136 
142  unsigned short get_illuminated_base_ir_value ( char index );
143 
144 
150  unsigned short calculate_base_ir_value ( char index );
151 
152  // The following functions are used for special programs or to retain backwards compatability but are not documented as part of the API
153 
154  void store_reflected_ir_distances ( void );
155  float read_reflected_ir_distance ( char index );
156  float get_reflected_ir_distance ( char index );
157  float calculate_reflected_distance ( unsigned short background_value, unsigned short illuminated_value );
158  int get_bearing_from_ir_array ( unsigned short * ir_sensor_readings);
159  void store_line_position ( void );
160  void calibrate_base_ir_sensors ( void );
161 
162 };
163 #endif
void store_illuminated_raw_ir_values(void)
Definition: sensors.cpp:216
unsigned short read_illuminated_raw_ir_value(char index)
Definition: sensors.cpp:256
void store_background_raw_ir_values(void)
Definition: sensors.cpp:207
unsigned short calculate_side_ir_value(char index)
Definition: sensors.cpp:420
unsigned short calculate_base_ir_value(char index)
Definition: sensors.cpp:407
void store_ir_values(void)
Definition: sensors.cpp:200
void update_ultrasonic_measure(void)
Definition: sensors.cpp:42
unsigned short get_background_base_ir_value(char index)
Definition: sensors.cpp:299
float get_dc_voltage(void)
Definition: sensors.cpp:101
float get_current(void)
Definition: sensors.cpp:93
void store_background_base_ir_values(void)
Definition: sensors.cpp:325
void enable_ultrasonic_ticker(void)
Definition: sensors.cpp:32
float get_battery_voltage(void)
Definition: sensors.cpp:87
unsigned short get_illuminated_base_ir_value(char index)
Definition: sensors.cpp:307
float get_temperature(void)
Definition: sensors.cpp:77
unsigned short get_background_raw_ir_value(char index)
Definition: sensors.cpp:175
void store_base_ir_values(void)
Definition: sensors.cpp:315
void store_illuminated_base_ir_values(void)
Definition: sensors.cpp:334
void disable_ultrasonic_ticker(void)
Definition: sensors.cpp:37
unsigned short get_illuminated_raw_ir_value(char index)
Definition: sensors.cpp:183