2015/08/11
Dependents: Cansat_program3 Cansat_program4
Fork of CanSat_aoki by
cansat.h
- Committer:
- kityann
- Date:
- 2015-07-23
- Revision:
- 2:0f76226be922
- Parent:
- 1:6a034792e059
- Child:
- 4:8713fff9e20d
File content as of revision 2:0f76226be922:
#ifndef CANSAT_H #define CANSAT_H /** * Includes */ #include "mbed.h" #include "VNH5019.h" enum STATUS {GPS_AVAIL = 0, GPS_UNAVAIL = 1,GPS_OUT_AREA = 2}; const int distance_threshold[2]={0.1,0.5}; class CanSat{ public: STATUS nowStatus; char motor_command; void control_Motor(int,int);//動き、スピード CanSat(VNH5019 agzSheild); //ロボットとターゲットの方角からロボットの動きを決める char get_moving_angle(int robot_angle,int target_angle); //ロボットとターゲットの距離の計算 double get_taget_distance(); //ロボットとターゲットの距離から速度を決める int get_roboto_velocity(); //気圧の取得 double get_pressure(); //スタック判定:加速度データをもとに? bool is_stack(); //ログデータの送信 void log_send(); //get関数 double get_robot_x(); double get_robot_y(); double get_robotKalman_x(); double get_robotKalman_y(); //set関数 void set_robot_x(double); void set_robot_y(double); void set_robotKalman_x(double); void set_robotKalman_y(double); void set_gyro(double x, double y, double z); void set_compass(double x, double y, double z); void set_pressure(double p); void set_temperature(double t); void set_humidity(double h); void set_acceleration(double x, double y, double z); private: //モータ VNH5019 _agzSheild; //ロボットのスピード:32,64,128の3つ? int speed; //ロボットとターゲットの座標(緯度と経度)を表す double robot_x,robot_y; double robotK_x,robotK_y;//kalman filter double target_x,target_y; //ロボットとターゲットの方角を表す。北を1として北東:2、東:3、南東4のように1~8の値を持つ int robot_angle,target_angle; //ジャイロ int gyro_x,gyro_y,gyro_z; //コンパス int compass_x,compass_y,compass_z; //加速度 double acceleration_x,acceleration_y,acceleration_z; //気圧計の気圧、気温、湿度 double pressure,temperature,humidity; //ロボットの速度 int velocity; //ターゲットまでの距離 int target_distance; }; #endif