arduino的180度舵机与360度舵机控制

文章目录

文章目录

前言

许多时候我们都会用到舵机,目前市面上的舵机大致分为两种,一种是180度舵机,另一种是360度舵机,下面我们谈谈这两者的区别与应用。


一、180度舵机

180度舵机是带有反馈的伺服电机,通过Servo.h舵机控制库可以实现舵机角度控制。

示例程序:

#include <Servo.h>
Servo myservo;

void setup() {
  myservo.attach(7); 
}
 
void loop() { 
    myservo.write(0);
    delay(1000);
    myservo.write(90);    
    delay(1000);
    myservo.write(180);
    delay(1000);    
}

通过以上程序我们会看到舵机在0度、90度、180度之间来回转动。我们通过修改值来改变指向角度。

二、360度舵机

360度舵机是没有反馈的舵机,因此我们只能控制舵机正反转以及速度。同样用Servo.h舵机控制库来控制。

示例程序:

#include <Servo.h>
Servo myservo;

void setup() {
  myservo.attach(7);
}
 
void loop() { 
    myservo.write(0);
    delay(2000);
    myservo.write(90);
    
    delay(500);
    
    myservo.write(180);
    delay(2000);
    myservo.write(90);
    
}

当我们把程序烧录进去后可以看到360度舵机在周期性正反转,我们通过修改值来改变旋转方向和速度(小于90为顺时针,大于90为逆时针),不同的值代表不同的速度,靠近90速度越小(可能因为舵机不同而不同,多尝试,myservo.write(90);为停止。

三、区别于应用

1.区别

(1)180度舵机以角度为控制,360度舵机以速度和方向为控制。

(2)180度舵机无法转一圈,360度舵机可以转n圈。

2.应用

因为180度舵机与360度舵机的区别,所以在应用上也不同,如180度舵机应用在航模、船模、云台以及机械臂等而360度舵机应用比较少,但可以替代一部分直流电机与步进电机的任务,相比于直流电机优势在于简单同时缺点就是转速慢,相比于步进电机也是简单缺点是没有反馈。


总结

根据不同的应用场景舵机能胜任多数情况,但我在购买舵机是发现不同的360度舵机性能也不同,有的正反转转速不相同,怎么调都不同,希望大家注意避坑。

经验分享 程序员 微信小程序 职场和发展