OpenJumper Autumn Servo Controller - 舵机控制器
模块特点:
1. 自动识别波特率,免去对舵机控制器波特率设置;
2. 1us高精度32路同步PWM输出,满足舵机控制时的同步及进度要求;
3. 每路PWM输出速度可调,可同步调速可异步调速;
4. 每路PWM输出加速度可调,可同步加速可异步加速;
5. PWM输出频率可调,1-500Hz,适用舵机范围更广;
6. 方便接插tiny作为主控器件,同时可接插蓝牙,apc等无线通信模块;
7. 可以脱机储存动作组380条,每条255字节;
8. 动作组间可以跳转,一条指令可以控制255条动作组的执行;
9. 动作组间跳转可以正向执行可以逆向执行;
10. 使用在线编程,实现高速读写片内flash。在不使用256kbit(32k)或512kbit(64k)的eeprom情况下获得高达76K的脱机储存空间及更高速的读写速度。
模块规格
1. 主芯片 NXP LPC12xx;
2. 工作电压 3.3V;
3. 输入电压 5~16V;
4. 长宽尺寸 5.5*4.5cm;
使用说明:
(一). Autumn舵机控制器上端左右各有一颗LED,右端为电源指示灯,左端为波特率识别指示灯(如图所示):
1. CPU电源接口接上提供的接线端子,左端为电源正极,右端为电源负极。若未反接切供电电压稳定,电源指示灯将会点亮。输入电压5~16V,推荐输入电压为5~7.2V;
2. 主机或电脑通过串口发送字符‘a’或者'A'用于识别器件及自动识别波特率,识别成功后左端波特率识别指示灯会自动点亮,若识别失败将不会点亮,用户按下复位按键再次识别即可;
(二). Autumn舵机控制器与舵机连接(如图所示):
1. 舵机控制器上排针为白红黑三种颜色塑封——白色为舵机控制信号PWM、红色为舵机供电正极、黑色为舵机供电负极。与大部分舵机上引出线颜色相同,可直观的表达排针含义让减少用户反接可能;
2. 舵机供电分为两组供电,0-15号为VS1,16-31号为VS2。红色接线柱旁有标注电源正极,按正负要求接线,切勿反接,舵机供电端推荐使用4.8V~6V电源接入,以免过压烧坏舵机;
3. 舵机控制器左上角有3针为电源选择跳线接口,依次为VS1、VS2、VM。VS1为0-15舵机供电正极,VS2为16-31号舵机供电正极,VM为CPU供电正极。若需VS1与V2共用一个电源时可在VS1与VS2间接上短接跳帽。
(三). Autumn舵机控制器指令集:
1. 舵机控制器启动后波特率自动识别命令:
a或者A
a或者A 字符,必须发送;
结束回车符,ASCII中的13,必须发送。
2. 舵机控制器启动后舵机控制信号频率设置命令:
FR
Pulse Width Modulation frequency 舵机控制信号PWM的频率,单位Hz,默认启动后自动设置为50hz,0-500,可选设置;
结束回车符,ASCII中的13,必须发送。
3. 单个或多个舵机运动控制命令:
#PS... #PSTAG
servo control channel 舵机控制通道号,为0-31,必须发送;
servo control position 舵机控制器输出控制信号脉冲宽度,单位us,为500-2500,必须发送;
servo control time 舵机控制单个通道速度,单位us,0-65535,可选发送,默认2000;
servo control speed 舵机控制多个连续通道速度,单位us,0-65535,可选发送,默认2000;
servo control accelerate 舵机控制单个通道脉冲单位周期内步进加速度值,单位us,0-255,可选发送(但是必须发送或后再发送),默认0;
servo control group accelerate 舵机控制多个连续通道脉冲单位周期内步进加速度值,单位us,0-255,可选发送(但是必须发送后再发送),默认0;
结束回车符,ASCII中的13,必须发送。
4. 舵机控制器当前输出脉宽查询命令:
QP
query servo control position 发送后返回舵机控制器所以通道号当前输出控制信号的脉冲宽度,单位us;
5. 舵机控制器进入写入运动控制动作组命令:
AM
autumn servo controller memory 发送后若舵机控制器成功进入写入动作组模式,舵机控制器将返回 ASCMemoryReady! 此时可写入需要保存的动作组,动作组写入成功将会返回 ASCMemorydone! %d Array 返回数据%d为动作组编号,方便用户记录保存了多少组动作组。若写入动作组失败将会返回 ASCMemoryError!;
6. 舵机控制器退出写入运动控制动作组命令:
AN
autumn servo controller none array 发送后舵机控制器将退出写入动作组模式并返回 ASCMemoryQuit! ;
7. 单个或多个舵机运动控制动作组调用命令:
SQ...SQ
servo control arry query 调用执行动作组编号,0-379;
8. 多个舵机运动控制动作组调用跳转命令;
SQX
servo control arry query 调用执行指定动作组编号,0-379;
xiphoid servo control arry query 调用跳转到指定动作组编号,0-379(但是abs( - ),即前后两动作组编号相减后的绝对值不能大于255);
(四).Autumn舵机控制器调试方法:
焊上排座的Autumn,未焊排座的Autumn,蓝牙模块,Tiny 2.0,蓝牙适配器;
当插上蓝牙或者Tiny2.0时直接与Autumn通信时将通信选择拨向左端;
如果需要同时插上蓝牙和Tiny2.0时可以拨向右端,Tiny2.0使用软串口与蓝牙通信;
Tiny2.0中若有烧写如下测试程序:
void setup(){
Serial.begin(9600);//串口初始化;
Serial.println('a');//发送波特率识别码让Autumn初始化串口并识别波特率;
}
void loop(){
Serial.println("#0p500t1a2");//0号舵机每周期步进1us,步进加速值2us运动到负90度位置;如:1s时候速度为3us,2s时候为5us;
delay(3000);
Serial.println("#0p2500t1a2");//0号舵机每周期步进1us,步进加速值2us有负90度位置运动到正90度位置;
delay(3000);
}
插上蓝牙,打开电脑蓝牙即可调试,若电脑没有蓝牙,配上蓝牙适配器即可调试。
/*
待更新,暂存
*/
|