サーボモータをPWM制御で動作させる関数
Dependents: 2020_lab_No2reactor_contorl_ver2
ServoMotor.h
00001 #ifndef _SERVO_MOTOR_ 00002 #define _SERVO_MOTOR_ 00003 00004 class ServoMotor 00005 { 00006 public: 00007 ServoMotor(PinName servo_pwmport_, //pwmピン 00008 float minDeg_ = 0.0, //最小角度[deg] 00009 float maxDeg_ = 300.0, //最大角度[deg] 00010 float pulse_width_ = 0.02, //PWM周期[s] 00011 float min_DPLW_ = 0.0005, //最小角度時立ち上げパルス幅[s] 00012 float max_DPLW_ = 0.0024 //最大角度時立ち上げパルス幅[s] 00013 ); //ServoMotorコンストラクタ 00014 00015 void rot(float); //引数 目標角度 00016 void weak_condition(); //脱力状態にする 00017 00018 00019 private: 00020 PwmOut servo_pwmport; 00021 float output_deg; //出力角度保管[deg] 00022 float output_deg_b; //一つ前の角度保管[deg] 00023 00024 float pulse_width; //pwmの周期 00025 float minDPLW; //最小角度時の立ち上げパルス ( min Deg Pulse Launch Widthの略 ) 00026 float maxDPLW; //最大角度時の立ち上げパルス ( max Deg PUlse Launch Widthの略 ) 00027 float minDeg; //モータの最小動作角度 00028 float maxDeg; //モータの最大動作角度 00029 00030 float decomposition_value; //分解値 00031 }; 00032 #endif
Generated on Fri Aug 12 2022 10:58:06 by
1.7.2