当前位置:文档之家› 可编程机械手的制作

可编程机械手的制作


本文链接:/Periodical_dzzz201105006.aspx
Pl。vcc
:矬 器 糕
1 7

81
,3 o
薯Ev
嚣 旨P2^


’3 3
P25
嚣 :。TA
:N。

。P2 2,
P2。
3{nn
一_一I
固1
万方数据
201'惦_电于尊*-27
图3
的上翻和下翻操作。OK是存储键。D+和D一为舵机 手动操作键。K为自动运行转换键。
号,再存储舵机位置的|叼【序。所以当识别出D+或D一 按下的时候.要取出上一存储地址的数据.也就是舵 机号.进行识别.再确定通过哪一个控制端口输出控 制脉冲。 下面说一下自动运行。在自动运行的程序开始,要 先输出一段复位脉冲.持续一定时间,使所有舵机回到 一个基准点f运行范围的中点k然后取出24C02的第 一个数据,进行识别.相据识别结果.打开相应的舵 机进行标志位。再取下一数据.同时开启TR0和TRl, 根据数据的太小.改变T1的中断次数,依发加1I正转】
址.标志为:显示两个小数点。这时操作A卅A、B十、B一
使其变为所要的舵机号,按OK存储。操作D+和D一. 使指定的舵机运行.到台适位置,按OK存储.再按V 键,进八下一地址.再存储机号.以此方式.直到把所 有动作存储完毕。这时,按一下自动运行键.进^自动 运行状态.每按一坎.自动运行一遍。 下面介绍一下编程的具体方法.首先要韶决的第一 个问题是舵机位置的存储。 所谓舵机位置也就是控制脉冲宽度,控制脉冲的 产生利用定对器T0和T1共同产生。T0工作在方式 1。定时20ms.产生控制脉冲周期.T1的多玫中断 形成05~2 5ms的脉;÷宽度。T1工作在方式2.定时
PUSl4 Psw.*#Ⅲ% INCR2
地址
130圜

数据
—√按钮*Ⅲ
o,卤
}04幽
}03
幽 由 函
05心乱

{哥
酋|

20”[15I电子嗣£II 29
!!堡塾广]
万方数据
可编程机械手的制作
作者: 作者单位: 刊名: 英文刊名: 年,卷(期): 王成锋
电子制作 ELECTRONICS DIY 2011(5)
E躅衄
MCU
可编程机械手的制作
●●● 作者/{成锋
工业机械手(如焊接机器人l多采用示教再现式 的缟程方法。把让它完成的动作,包括工作中的些 参数,由操作者先。教’它一遍,然后.机械手便可 自动运行所输八的动作。 下面介绍利用AT89S51和口个舵机制作的可缟 程机械手.控制电路如图1所示.其中LED数码管
20u
规定的操作方式为:首先利用^键,找到第一个地
s,使其可自动加载.不需重置计数品。这样产生
1ms的脉宽需要中断50发,产生1 5rns的脉宽需中断
72次。那么要改变舵机位置.只要使T1的中断玫数依
次加1或减1便可。由此可知.舵机每步运行3。左右. 并且只要在每攻加1或减1之后.加上延时程序.改 变延时的时间长短.就可以方便控制运行速度。那么要 存储舵机位置.只要存储T1的中断攻数就可以。在自 动运行时.根据T1的中断玫数,就能非常容易的转换 成控制脉冲。利用这种方法.还能同时驱动多个伺服舵 机.其缺点是,舵机运行不是连续的.而是一步一步前 进的。 再一个问题是舵机的选择。由于采用日个舵机,而 操作键只有0+和D一.具体给哪一个舵机输出控制信 号.还需要一个识别的过程。由于采用的是先存储舵机 28l 2011 万方数据
关于速度控制.这里采用的方法是采用调整中断次 数加1或减1后的延时时间实现的。若延时太短.则操 作时.速度太快.不易掌握;延时太长.虽然给机械手 示教的时候.窖易调整姿势.但又显速度太慢。所以具 体延时多少可根据实验而定。这里推荐使用延时30ms。 如若想操作更方便.还可使用另外一种方法.也就 是把延时数据作为动作示教编程的参数.直接放在舵机 号的前面.这样每步动作就由占E2PROM的两个地址. 变成7三个地址【见图3 k并且要让新加的这个速度 参数.不管是在示教编程.还是自动运行时.都是有效 的。具体方法.可采用圈5所示的流程图。 余下的就是数码管显示,键盘扫描和24C02的 读写了。先说数码管显示.因采用动态扫描显示.所 以要不断显示刷新,在手动操作舵机运行和la动运行 时,CPU大部分时问在执行中断程序.会使数码管产 生闪烁.最好关闭显示。在编程的其他时间打开显示。 24C02的读写操作可参考有关书籍。 另外机械部分.大家可依据手边的舵机和材料自行 设计,这里介绍的是口轴机械手,根据以上编程思路可 方便的扩展为五轴或六轴.还可在机械手末端加上I具 抓手,做成自动搬运机器^等。 T1中断服务程序
用来显示编程数据,为使产生的控制脉冲精确.在操 作舵机运行和自动运行时.LED动巷显示关闭,利用 24C02存储舵机的位置信息.存储的顺序为f图2所 示)先是舵机号f 01~04)而后是舵机位置.按j旺序 存储。键盘为9键:A+和A一是数码管的+位增减操 作数.B+和B是个位操作数,A和V是存储器地址
SETB P31. DJ2 JNB 02HDJ3;
SETB P3 2j DJ3 JNB 03HDJ4;
SET6P3 3
DJ4:MOV"“rto,#OBIh
MOVTL0,#0EOH;存目i目口
NOV R2.#OOH;*}
R盯I由左图存储的顺序可看出,速度存储的地址
均为3的整数倍。所以可依此判断某个地址存储的是否 为速度参数。这个识别过程可在按OK键之后进行.流 程圈见图5。(注:在自动运行时可按顺序识别的方法, 完成速度的设定和舵机的自动运行。)
05-…e10169∞m
E疆衄
MCU 或减1【反转l操作。直到中断次数和数据相等.再进 入下一地址.读取舵机号.如此反复进行.直到运行完
毕,流程如图4所示。
MOVAR2 R2*÷自女#¥#
JMB∞H
RE"I
CJNEA 30H RETl. CLR P30 RETl:JN801HRET2 CJNEA31HREl2 CLRP31
丌1-PUSH
ACC
RET2
JN802HRmຫໍສະໝຸດ CJNEA 32HREl3
CLR P3 2 RET3:JNB031qRET4: CJNEA 33HRET4;
CLR P3 3
RET4
POP。SW
POPACC REm
To十目服务#月
]TO-JNB SEIB D30 DJl JNB 01IqDJ2;
0州DJl
相关主题