arduino中舵机打直角的实现

理论上,舵机的行程是0-180度,但在实际的生产过程中,或者使用过程中,会使舵机的角度出现偏差。但在实际的生产过程中,或者使用过程中,会使舵机的角度出现偏差。一般不会按照设定的0、90、180角度进行偏转。以下是一个修订的方法。

程序说明:通过三个按键,a、b、c,让舵机大致打到0、90、180度的位置,然后通多 d 和 e进行修正,得到正确位置的值,可以通过串口读取得到。再填回 a、b、c的三个if判断中。

#include 


Servo servo_pin_9;
char _ABVAR_1_angle = ' ';
int a = 0;


void setup()
{
  servo_pin_9.attach(9);
  Serial.begin(9600);
  a=80;
  servo_pin_9.write( a );


  Serial.print("Hello");
  Serial.println();


}


void loop()
{
  _ABVAR_1_angle = Serial.read();
  if (( ( _ABVAR_1_angle ) == ('a') ))
  {
    a = 6;
    servo_pin_9.write( a );
  }
  if (( ( _ABVAR_1_angle ) == ('b') ))
  {
    a = 80;
    servo_pin_9.write( a );
  }
  if (( ( _ABVAR_1_angle ) == ('c') ))
  {
    a = 170;
    servo_pin_9.write( a );
  }
  if (( ( _ABVAR_1_angle ) == ('d') ))
  {
     a = a+1;
    servo_pin_9.write( a );
     Serial.print(a);
  }
    if (( ( _ABVAR_1_angle ) == ('e') ))
  {
    a = a-1;
    servo_pin_9.write( a );
    Serial.print(a);
  }
}


你可能感兴趣的:(Arduino)