简介
DSS-M15S系列舵机自上架以来一直广受客户好评,它以超宽的角度控制范围,超强的负载能力,以及优秀的做工平品质享誉海内外创客市场。但唯一遗憾的是这类标准模拟舵机一直没有反馈输出。
DFRobot一直以来专注DIY机器人研发,为了满足客户的需求,特别为此定制了一款带反馈的金属齿轮舵机。舵机基于DSS-M15S型号设计,引出了内部电位器接口,可以提供一个模拟值(0~3.3V)信号反馈,可连接单片机计算出当前角度,配合做闭环反馈控制。
DSS-M15S 270 舵机兼容Arduino IDE内自带的舵机库。与传统180度舵机不同的是,在IDE内设定的0-180度实际能将舵机按比例控制在0-270度范围内。
技术规格
- 电子规格
- 工作电压:4.8-7.2V
- 6V测试环境
- 运行速率(无负载):0.18sec/60度
- 静止电流:80mA
- 堵转力矩:11.5KG*cm
- 堵转电流:1.4A
- 待机状态电流:4mA
- 7V测试环境
- 运行速率(无负载):0.16sec/60度
- 静止电流:100mA
- 堵转力矩:12KG*cm
- 堵转电流:1.76A
- 待机状态电流:5mA
- 机械规格
- 齿轮材质:金属齿轮
- 运行角度:270度
- 接线规:28PVC
- 数据线长度:320mm
- 齿轮支架样条:25T/5.80
- 齿轮比:310:1
- 尺寸:54.5*20*47.5mm
- 控制规格
- 反馈信号:0-3.3V
- 控制信号:RC PWM
- 脉冲范围:500-2500 us
- 中位信号值:1500us
- 顺时针旋转:<1500us
- 控制频率:50-330Hz(Arduion兼容)
引脚说明
标号 | 名称 | 功能描述 |
---|---|---|
1 | GND | 负极供电引脚 |
2 | VCC | 正极供电引脚 |
3 | Input | PPM输入信号引脚 |
4 | Output | 模拟输出引脚 |
角度-输出关系
转换公式:实际角度=模拟值度数*0.47-33.4
使用教程
个体舵机之间会存在一定的误差,如果要将舵机用与需要精确控制的场景,可以单独进行校准。这里提供一个快速的三点校准法:
- 将舵机使用程序运行至90度(1500us),记录下实际初始角度作为参考角A,并记下对应反馈模拟值a;
- 将舵机使用程序运行至0度(500us),记录下实际角度B,并记下对应反馈模拟值b:
- 将舵机使用程序运行至270度(2500us),记录下实际角度C,并记下对应反馈模拟值c;
以下公式给出了通过以上测量得到的模拟值-实际角度关系:
- 实际角度= m*模拟值+n
- m=[(A-B)/(a-b)+(C-A)/(c-a)]/2
- n=[(Ab-Ba)/(b-a)+(Bc-Cb)/(c-b)]/2
如果不需要精确校准,可以直接取m=0.47;n=-33.4,并通过以下代码通过串口读取舵机的实时反馈角度。
准备
- 硬件
- 1 x Arduino UNO控制板
- 1 x SER0044 DSS-M15S 270度15KG带反馈金属齿轮舵机
- 若干 杜邦线
- 软件
- Arduino IDE,点击下载Arduino IDE
接线图
样例代码
void setup()
{
Serial.begin(9600);//Set Baud Rate to 9600 bps
}
void loop()
{
uint16_t val;
double dat;
val = analogRead(A0); //Connect Analog pin to A0
dat = (double) val * 0.47 - 33.4;
Serial.print("Position:"); //Display the position on Serial monitor
Serial.print(dat);
Serial.println("Degree");
delay(100);
}