查看: 19361|回复: 19

Autumn Servo Controller - 舵机控制器

[复制链接]

该用户从未签到

发表于 2012-6-29 20:28 | 显示全部楼层 |阅读模式

asc

asc

asc

asc

asc

asc

asc

asc

asc

asc


OpenJumper Autumn Servo Controller - 舵机控制器
http://www.lynxmotion.com/images/html/build177.htm
模块特点:
1. 自动识别波特率,免去对舵机控制器波特率设置;
2. 1us高精度32路同步PWM输出,满足舵机控制时的同步及进度要求;
3. 每路PWM输出速度可调,可同步调速可异步调速;
4. 每路PWM输出加速度可调,可同步加速可异步加速;
5. PWM输出频率可调,1-500Hz,适用舵机范围更广;
6. 板载蓝牙模块接口,方便蓝牙无线控制;
7. 可以脱机储存动作组380条,每条255字节;
8. 动作组间可以跳转,一条指令可以控制255条动作组的执行;
9. 动作组间跳转可以正向执行可以逆向执行;
10. 使用在线编程,实现高速读写片内flash。在不使用256kbit(32k)或512kbit(64k)的eeprom情况下获得高达76K的脱机储存空间及更高速的读写速度。
11. 32路接口全部可以作为数字IO使用,输出高低电平或者读取输入的高低电平。同时有6路还可以作为ADC输入读取使用;
12. 支持16进制的hex指令控制;

模块规格
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'用于识别器件及自动识别波特率,识别成功后左端波特率识别指示灯会自动点亮,若识别失败将不会点亮,用户按下复位按键再次识别即可;

asc

asc

(二). 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间接上短接跳帽。

asc32-1

asc32-1

asc32-2

asc32-2

(三). Autumn舵机控制器指令集:
        1. 舵机控制器启动后波特率自动识别命令:
            a<cr>或者A<cr>
            a或者A      字符,必须发送;
            <cv>        结束回车符,ASCII中的13,必须发送。
        2. 舵机控制器启动后舵机控制信号频率设置命令:
            FR<fre><cr>
            <fre>   Pulse Width Modulation frequency   舵机控制信号PWM的频率,单位Hz,默认启动后自动设置为50hz,0-500,可选设置;
           <cv>                                                           结束回车符,ASCII中的13,必须发送。
        3. 单个或多个舵机运动控制命令:
            #<sch>P<pos>S<spd>... #<sch>P<pos>S<spd>T<tim>A<acc>G<gac><cr>
            <sch>  servo control channel                    舵机控制通道号,为0-31,必须发送;
            <pos>  servo control position                    舵机控制器输出控制信号脉冲宽度,单位us,为500-2500,必须发送;
            <tim>   servo control time                         舵机控制单个通道速度,单位us,0-65535,可选发送,默认2000;
            <spd>  servo control speed                       舵机控制多个连续通道速度,单位us,0-65535,可选发送,默认2000;
            <acc>  servo control accelerate                 舵机控制单个通道脉冲单位周期内步进加速度值,单位us,0-255,可选发送(但是必须发送<spd>或<tim>后再发送<acc>),默认0;
            <gac>  servo control group accelerate       舵机控制多个连续通道脉冲单位周期内步进加速度值,单位us,0-255,可选发送(但是必须发送<spd>后再发送<gac>),默认0;
            <cv>                                               结束回车符,ASCII中的13,必须发送。
        4. 舵机控制器当前输出脉宽查询命令:
            QP<cr>
            query servo control position    发送后返回舵机控制器所以通道号当前输出控制信号的脉冲宽度,单位us;
        5. 舵机控制器进入写入运动控制动作组命令:
            AM<cr>
            autumn servo controller memory    发送后若舵机控制器成功进入写入动作组模式,舵机控制器将返回  ASCMemoryReady!  此时可写入需要保存的动作组,动作组写入成功将会返回  ASCMemorydone! %d Array  返回数据%d为动作组编号,方便用户记录保存了多少组动作组。若写入动作组失败将会返回  ASCMemoryError!;
        6. 舵机控制器退出写入运动控制动作组命令:
            AN<cr>
            autumn servo controller none array   发送后舵机控制器将退出写入动作组模式并返回  ASCMemoryQuit!  ;
        7. 单个或多个舵机运动控制动作组调用命令:
            SQ<scq>...SQ<scq><cr>
            <scq>  servo control arry query        调用执行动作组编号,0-379;
        8. 多个舵机运动控制动作组调用跳转命令;
            SQ<scq>X<xscq><cr>
            <scq>      servo control arry query                调用执行指定动作组编号,0-379;
            <xscq>    xiphoid servo control arry query    调用跳转到指定动作组编号,0-379(但是abs(<xscq> - <scq>),即前后两动作组编号相减后的绝对值不能大于255);
(四).Autumn舵机控制器调试方法:

asc

asc

焊上排座的Autumn,未焊排座的Autumn,蓝牙模块,Tiny 2.0,蓝牙适配器;

asc

asc

当插上蓝牙或者Tiny2.0时直接与Autumn通信时将通信选择拨向左端;
如果需要同时插上蓝牙和Tiny2.0时可以拨向右端,Tiny2.0使用软串口与蓝牙通信;

asc

asc

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);
}

asc

asc

asc

asc

插上蓝牙,打开电脑蓝牙即可调试,若电脑没有蓝牙,配上蓝牙适配器即可调试。

/*
待更新,暂存
*/

该用户从未签到

发表于 2012-6-29 20:59 | 显示全部楼层
板子很酷啊,白色的第一次見

该用户从未签到

发表于 2012-7-7 21:30 | 显示全部楼层
顶上··
打赏作者鼓励一下!
  • TA的每日心情
    开心
    2016-5-6 18:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2012-7-8 15:06 | 显示全部楼层
    我是初学者,我对舵机控制板很着迷,不知道这个板子能不能用32个定位器分别同时控制32个舵机呢

    该用户从未签到

     楼主| 发表于 2012-7-8 21:09 | 显示全部楼层
    duanliangcong 发表于 2012-7-8 15:06
    我是初学者,我对舵机控制板很着迷,不知道这个板子能不能用32个定位器分别同时控制32个舵机呢 ...

    现在就是同时控制32个舵机。自己写的算法,用的一个定时器。

    该用户从未签到

    发表于 2012-8-6 14:41 | 显示全部楼层
    我是新手,对本节舵机知识听不明白啊
  • TA的每日心情
    开心
    2016-5-6 18:25
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2012-8-19 21:03 | 显示全部楼层
    三水 发表于 2012-7-8 21:09
    现在就是同时控制32个舵机。自己写的算法,用的一个定时器。

    罪过啊,我把这网站弄丢了,现在终于重新找到了。这回一定要好好保存。不懂之处还希望管理员指导一二,我现在正在自学。

    该用户从未签到

    发表于 2013-1-8 20:43 | 显示全部楼层
    受教了!!!!!!!!!
  • TA的每日心情
    无聊
    2017-1-24 10:00
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2013-1-8 21:35 | 显示全部楼层
    有木有上市呀水水。。。。。。

    该用户从未签到

    发表于 2013-1-19 20:03 | 显示全部楼层
    急需高手指教……我的Autumn现在上位机无法调试了:打开上位机,只要一连接,上位机就死了,是怎么回事?还望指教!!!
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    动手用blinker做台灯
    动手用blinker做台灯
    分享一个使用blinker做的台灯,使用的是esp8266,可以使用天猫精灵进行控制(亮度、开
    户外穿戴定位手表制作
    户外穿戴定位手表制作
    户外穿戴定位手表制作 五一刚过;最近还是
    Arduino烧入失败显示avrdude: stk500_getsync() attempt 1 of 10: not in sy...
    Arduino烧入失败显示avrdu
    我的arduino烧录的时候烧录失败显示下面这些东西
    Arduino MEGA 与UNO 通过nRF24L模块通讯
    Arduino MEGA 与UNO 通过n
    之前在深水宝很“实惠”的店铺买了一些原件,随手砍了esp8266以及nRF24L*3 因为缺
    开贴讲讲NRF24L01P,让你彻底搞懂它的工作原理,持续更...
    开贴讲讲NRF24L01P,让你
    *****************************************
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表