机械设计与制造
52
文章编号:1001—3997(20】1)12-0052-03
Machinery
Design&Manufacture
第12期2011年12月
一种多关节智能机械手臂控制系统设计
关智
(沈阳职业技术学院计算机系,沈阳100045)
Akindofcontrolsystemdesignformultiple
GUANZhi
jointmachinearm
(DepartmentofComputer,ShenyangPolytechnicCollege,Shenyang100045,China)
【摘要】在实际生产过程中,许多生产环境和工艺都要求机械手应具有准确定位和控制灵活的特性以满足生产,因而设计了多关节智能机械手臂模型,并通过工业现场总线CAN对其进行分布式控
制。阐述了机械手臂的构成7L-Y-作原理,设计了4自由度的多关节机械手臂以及基于CAN总线控制系
统的机械手臂总体控制流程,给出了CAN总线控制关节模块的硬件连接方案和软件编程内容。该设计提高了机械手的可靠性、智能性和控制精度。
关键词:机械手臂;CAN总线;SJAl000控制器;PCA82C250
【Abstract】/ntheactualprocess,theenvironmentofproductionandtechnologyrequirethat
to
mechan—
re—
icalshouldhavethecharacteristic
ofaccuratepositioningandflexiblecontrol
arm
s越研production
quirements.rherefore,It
the
industrial
a
designsthe
multi-jointmechanical
model,anddistributedcontrolitthrough
fie/d
busCAN.Describedthemechanical
alTrt
ofthecompositionandworkingprinciple.It
On
designs
4..DOF
multi-jointrobotictTd'mandcontrolsystembased
CANbusprocessoverallmechani-
calarm.Hardware
connectivitysolutionsand
sofiware
programming
content
of
CANbus’s
joint
control
con—
modulearegiven.Thedesigntrolprecision.
Key
ofthe
mechanical
ol'mimprovesmanipulatorreliability,intelligenceand
words:Machinearm;CANbus;SJAl000
controller;PCA82C250
中图分类号:THl6文献标识码:A
1前言
工业机械手臂是近代自动控制领域中出现的一项新技术,并已成为现代机械制造生产系统中的一个重要组成部分,这种新技术发展很快,其涉及到力学、机械学、电器液压技术、自动控制技术、传感器技术和计算机技术等科学领域,是--fl跨学科综合技术,要满足当今多关节智能机械手臂的设计,必须依靠强大的网络控制总线,CAN总线是国际上应用最广泛的现场总线之一,也是机械工业领域首选的现场总线。
将多关节机械手臂的各个关节模块通过CAN总线进行分
轮、磁盘磁带、穿孔卡等记录程序,主要控制的是坐标位置。并注意其加速度特性。
在设计机械手臂的机械控制系统中。多采用步进电机及伺服电机操作的方式。步进电动机是将脉冲信号转变为角位移或线位移的开环控制元件,在非超载的情况下,电动机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电动机加—个脉冲信号,电动机则转过—个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非
布式控制,可以突出体现出可靠性、实时性和灵活性的糕点,使机
械手臂更好的发挥其功能(11。
常的简单。伺服电动机又叫执行电动机,它将所收到的电信号转换成电动机轴上的角位移或角速度输出,其执行精度非常高,但相对步进电动机成本较高。
伺服主要靠脉冲来定位,伺服电机接收到1个脉冲,就会旋转1个脉冲对应的角度,从而实现位移。因为,伺服电机本身具备发出脉冲的功能,所以伺服电机每旋转一个角度,都会发出对应数量的脉冲,这样,和伺服电机接受的脉冲形成了呼应,或者叫闭环。如此一来,系统就会知道发了多少脉冲给伺服电机,同时又收了多少脉冲回来。这样,就能够很精确的控制电机的转动,从而实现精确的定位日。
设计采用的是电动式机械手臂,机械手臂的各关节模块自由度运动分别采用步进电动机的方式来驱动。
2机械手臂关节模块
2.1构成以及工作原理
工业机械手由执行机构、驱动机构和控制机构三部分组成。执行机构由手部、腕部、臂部、手臂等部件。驱动机构是工业机械手的重要组成部分,根据动力源的不同,工业机械手的驱动机构大致可分为液压、气动、电动和机械驱动等四类,采用液压机构驱动机械手,结构简单、尺寸紧凑、重量轻、控制方便。在机械手的控制上,有点动控制和连续控制两种方式,大多数用插销板进行点位控制,也有采用可编程序控制器控制、微型计算机控制,采用凸
★来稿日期:201l也一14
万方数据
第12期
关智:一种多关节智能机械手臂控制系统设计
53
22多关节模块设计
设计的机械手臂是一种4自由度的抓物机械手臂,如图1所示机械手臂甫4个活动关节构成.可以在两个f而的水平和乖直方向运动.用4个电机分别带动每个活动关节转动,从而带动4个活动臂来完成运动。当控制机械手臂行动目标的信号发Hi后,传感部件将物体的位置(x、y、Z坐标)信号传递给控;例器,然后控制器发m控制信号控制步进电机,步进电机带动各个关节旋转,从而使得与之扣台的横臂运动,行走机械部分开始运动。当行走机械部分停JP后,从外部发来・个手臂启动信号,拄制器发出抓物信号,经由集成驱动电路单元放大整合后发给们服电机,使得机械手抓闭合,执行抓物:抓物过程结束后,于臂控制系统发送一个动作完成成功信号同馈给控制电路目。
作.通过对总线的监洲吲空制,完成所需的枷麻功能。同时.各个{,点也将机械手臂动作的实时信息通过CAN接广i传送到CANbus上,进而形成完整的闭环控制系统。系统的总体控制流程,如
降i3所示,
。。1
j。¨训mFf
‰3㈨¨j!Jr…t__J””、‘
3机械手臂CAN总线控制系统
3.1硬件系统设计
CAN总线控制系统设计最通用、最广泛的方法是采用微控
刚l机械手臂多戈节设计同
FigI
Design
ofthemechanical
柳器{单片机、ARM、DSP)与CAN控制器和CAN收发器相结合的方式,接口的结构,如罔4所示.所设计的机械手臂CAN总线控制系统使用的是目前市场I‘使用最为普遍和流行的独立CAN总线控制器sJA1000,以及高速CAN总线收发器PCA82C250月。
a邢Joint
多关节机械手臂的控制设计,如图2所示。其中A组电缆接步进电机1的控制端.当步进电机接收单片机发出的脉冲时,带动机械手臂I关节转动。同理.B、G、D组电缆接步进电机2、3、4的控制端,分别控静J机械手臂2、3.4关节的转动。符个控制关节单元模块与总控制器相连,由Pc机作为总控制器,利用上位机操作软件来发出控制命令。
矧4{、、臼’t罐【】。卅≈
Fi94SlructureofCANbusinterface
哪A100渺是一种独立的CAN控制器,它是Philips半导体公司PCA82C200CAN控制器的替代品,而且还增加了一种新的操作模式一PeliCAN,这种模式支持具有很多新特性的CAN20协议,主耍用于移动目标和一般工业环境中的区域网络控制。SJAl000的接口管理逻辑负责解释来自CPU的命令,控制CAN寄存器的寻址,向CPU提供中断信息和状态信息,其发送缓冲器是CPU和位流处理器之问的接门,负责存储发送到CAN总线上
图2机械手臂关节控制设计图
Fig.2
Designofthemechanical
的一条完整的撤史.接收缓冲器是验收滤波器和CPU之间的接
control
a唧joint
口,用来存储从CAN总线I:接收并被确认的信息。
PCA82C250t1是CAN控制器与物理总线之间的接口,器件可以提供对总线的差动发送和接收功能。PCA82C250驱动电蹄内部具有限流电路,nr防止发送输出级对电源、地或负载短路。虽然短路出现时功耗增加,但不至于使输H{级损坏。若结温超过大约160%:,则两个发送器输出端极限电流将减小.
拄制系统的硬件接口部分主要由微控制器(可以选用单片
2.3总体控制流程设计
设计的多关节智能机械手臂利用工业CAN总线作为其各个关节模块的控制网络,其中机械手臂的各个关节模块为控制网络中的一个节点,将各个关节模块搭建在CAN总线上,每个节点的关节模块均通过CAN总线接口连接在CANbus七,各个节点从CAN总线接收需要的数据包.从而通过控制器对机械手臂动
万方数据
No.J2
机械设计与制造
机、ARM、DSP等)、CAN总线控制器(设计使用SJAl000)和CAN总线收发器(设计使用PCA82C250)构成,硬件电路图,如图5所
Dec.20l1
缓冲区是否锁定;判断完成之后.就可以将待发送的数据写人发
送缓冲区;最后.置位发送请求位,将数据报文发出。在发送报文
过程中.傲控制器将系统需要发送的信息整理打包.以报文的形式通过CAN总线接口发送到CANBus上。发送时用户只需将待发送的报文按flll一定的格式组合成一帧报文。将其写入SJAl000
示。CAN控制器实现了物理层和数据链路层的通信功能,提供了
与镦控制器和总线的物理线路接口,用户只需编写符合自己通信控制要求的应用层协议即可凡
、、静斟矗
慷嗍抖
忠嚣怒
的发送缓冲区中.然后置位SiAl000的发送请求标志位.即可完
成报文的发i犁q。
发送之前要判断t次发送是否结束,当sJ^1000正在发送
:I兽_j誉雾_
引‘坩”㈨二半’・
Fig.5
Hardware
circuii
报文时,发送缓冲嚣馥虢定.因此,在将新报文放人发送缓冲器之
前.坯必须检查状态寄存器中的发送缓冲器状态标志位.等待报文被发送完成。
接收报文的步骤如下:
首先,访问状态暂自锵。判断接收缓冲区是否为满;若SJAl000
接收缓冲区状态为满.则表示接ll叟缓冲区中巳接收到总线E传来的
diagram
效据,这时可以将缓冲区数据读取.并保存;最后.访问命令寄存器,
释放接收缓冲区。等待下—帧报文传来。
微控制釉通过CAN总线接口从CANbus上收到报文,对报
SJAl000的片选端cs低电平有效,通过反相器连接到搬控制器的GPIO引脚,当GPIO引脚为高电平时,微控制器存储器地址可选中sJA000。封A1000的复位端接傲控制器的GPIO弓I脚.SJAl000是低电平复位。SJAl000的RD、wR、ALE引脚分别接馓
文进行解析与处理.从而进行之后的工作。接收报文时可以采用
中断或查询的方式.当SJAl000接收到一组报文后.报文通过验
控制器的对应功能端.通过这些控制国写信号的操作,完成数据
和地址的通信。sjAl000的】l脚MODE接高电平.从而选择
In嘲=分频模式。SJAl000的16脚INT是中断信号输出端.在中断允许的情况下.有中断发生时.INT脚出现由高到低的电平跳变.因此INT脚直接与搬控制器的外部中断引脚相连接.从而使
收滤波存放在接收缓冲器中,然后释放接收缓冲区,等待下一组
报文的接收。
4小结
设计并介绍了基于工业现场总线CAN控制的多关节智能
微控制器可以通过中断方式访问slAiOGO。SJAl000的ADO—
机械手臂系统.通过CAN总线对该机械手臂的各个关节进行控制.可以实现多节点统一控制与实时监测。充分发挥网络通信与
机坂手臂系统的运行功能。
AD7引脚为地蛐嗽据复用线。应与微控制器对应的数据触址复
用线相连,从而进行地址和数据的读写。SJAl000的发送输出端
TXO与接收输A端RxO分别与CAN总线接口收发控制器
PCA82C250的TXD和RXD相连,PCA82C250的CANH与CANL引脚直接与CAN物理总线相连。
同时这种控箭景统比直接用单片机来控制机械手更加可
靠.更加方便.对机械手臂与现场总线CAN的实际应用具有一定的参考价值,促进了机械手智能化的发展。
3.2软件系统设计
软件系统设计主要包括初始化、报文发送、报文接收三大部分.机械手臂的控制系统通过CAN总线接口从CANbus上收到报文数据包。经过通讯协议的解析,控制电机运转,完成机械手的动作.同时.将机梭手的实时状态信息再通过CAN总线接口发送到CANbus上。从而实现对系统的反馈控制与实时监测m。
◆考文献
[I]邓志平.机械制造技术基础【M】威都:西南交通大学出版社.2004.
【2】t敏.何勇基于Pc机和单片机的多机械手远程控制系统[J].微电脑
应用,2004(6):141—143.
[3]陈杨。费凌,嚣亮.基于80C51的抓物机械手臂设计[,】机械工程师.
2008(9):35—37
[4]SemiconduclorsPSJAl000stand_aloneCAN'controller[Z]-PH]Lfl丐
DATASHEET.2000.
控制系统的初始化对CAN总线的正常工作非常重要,初始化只能在复位模式下才能进行.初始化中关键的步骤是'赶置SJAl000内部寄存器的参数.使其为报文的发送与接收蠼好准备%
韧始化的步骤有:
首先是sJAl000自测.检查是否正常;之后进入复位模式.准备进行初始化:设置验收滤波器(通常将s,A1000设置在无屏蔽的发送和接收数据),接着设置通讯所需的波特率.设置sIAl000的
[5]Sem/conductorsp.PCA82C250CANcontmllerinterface[z].PHIIAPS
DATASHEEr.2000,
(6]侯明。牡囊基于CAN总线的接口电路避计1刃.通信技术,2008.4l(7):
138一l柏.
[7]陆前锋.刘渡.陈明昭基于S.IAI{X)O的CAN总线智能控翻系统设计
[J]自动化技术与应用,2003,22(I):61-64.
[B]夏继强.邢春香.现场总线工业控制网络技术[M]一£京:北京航空靛夭
大学出版杜.2005
工作方式(通常将SJAl000设置在正常工作馘);然后开放中断,
开始接收或发送数据,返回其工作状态。
发送报文的步骤如下:
使微控制器通过中断方式访问甜A1000;最后退出复位模式.准备
【9】韩斌.张●.何建新CAN总线在控制系统中的应用[J]成都信息工程
学院掌报.2003,18{4):339-342.
[10]赛晴.赳睦水基于CAN总线通信协议的设计与实现[J]散计算机信
息.2007,23(11):22-24.
首先,访问状态寄存器,判断上次发送是否完成,判断发送
万方数据
一种多关节智能机械手臂控制系统设计
作者:
作者单位:刊名:英文刊名:年,卷(期):
关智, GUAN Zhi
沈阳职业技术学院计算机系,沈阳,100045机械设计与制造
Machinery Design & Manufacture2011(12)
参考文献(10条)
1. 邓志平 机械制造技术基础 2004
2. 董毅;何勇 基于PC机和单片机的多机械手远程控制系统[期刊论文]-微电脑应用 2004(06)3. 陈杨;费凌;郑亮 基于80C51的抓物机械手臂设计[期刊论文]-机械工程师 2008(09)4. Semiconductors P SJA1000 stand-alone CAN controller 20005. Semiconductors P PCA82C250 CANcontroller interface 20006. 侯明;杜奕 基于CAN总线的接口电路设计[期刊论文]-通信技术 2008(07)
7. 陆前锋;刘波;陈明昭 基于SJA1000的CAN总线智能控制系统设计[期刊论文]-自动化技术与应用 2003(01)8. 夏继强;邢春香 现场总线工业控制网络技术 2005
9. 韩斌;张睿;何建新 CAN总线在控制系统中的应用[期刊论文]-成都信息工程学院学报 2003(04)10. 窦鹏;刘胜永 基于CAN总线通信协议的设计与实现[期刊论文]-微计算机信息 2007(11)
本文链接:http://d.wanfangdata.com.cn/Periodical_jxsjyzz201112020.aspx
机械设计与制造
52
文章编号:1001—3997(20】1)12-0052-03
Machinery
Design&Manufacture
第12期2011年12月
一种多关节智能机械手臂控制系统设计
关智
(沈阳职业技术学院计算机系,沈阳100045)
Akindofcontrolsystemdesignformultiple
GUANZhi
jointmachinearm
(DepartmentofComputer,ShenyangPolytechnicCollege,Shenyang100045,China)
【摘要】在实际生产过程中,许多生产环境和工艺都要求机械手应具有准确定位和控制灵活的特性以满足生产,因而设计了多关节智能机械手臂模型,并通过工业现场总线CAN对其进行分布式控
制。阐述了机械手臂的构成7L-Y-作原理,设计了4自由度的多关节机械手臂以及基于CAN总线控制系
统的机械手臂总体控制流程,给出了CAN总线控制关节模块的硬件连接方案和软件编程内容。该设计提高了机械手的可靠性、智能性和控制精度。
关键词:机械手臂;CAN总线;SJAl000控制器;PCA82C250
【Abstract】/ntheactualprocess,theenvironmentofproductionandtechnologyrequirethat
to
mechan—
re—
icalshouldhavethecharacteristic
ofaccuratepositioningandflexiblecontrol
arm
s越研production
quirements.rherefore,It
the
industrial
a
designsthe
multi-jointmechanical
model,anddistributedcontrolitthrough
fie/d
busCAN.Describedthemechanical
alTrt
ofthecompositionandworkingprinciple.It
On
designs
4..DOF
multi-jointrobotictTd'mandcontrolsystembased
CANbusprocessoverallmechani-
calarm.Hardware
connectivitysolutionsand
sofiware
programming
content
of
CANbus’s
joint
control
con—
modulearegiven.Thedesigntrolprecision.
Key
ofthe
mechanical
ol'mimprovesmanipulatorreliability,intelligenceand
words:Machinearm;CANbus;SJAl000
controller;PCA82C250
中图分类号:THl6文献标识码:A
1前言
工业机械手臂是近代自动控制领域中出现的一项新技术,并已成为现代机械制造生产系统中的一个重要组成部分,这种新技术发展很快,其涉及到力学、机械学、电器液压技术、自动控制技术、传感器技术和计算机技术等科学领域,是--fl跨学科综合技术,要满足当今多关节智能机械手臂的设计,必须依靠强大的网络控制总线,CAN总线是国际上应用最广泛的现场总线之一,也是机械工业领域首选的现场总线。
将多关节机械手臂的各个关节模块通过CAN总线进行分
轮、磁盘磁带、穿孔卡等记录程序,主要控制的是坐标位置。并注意其加速度特性。
在设计机械手臂的机械控制系统中。多采用步进电机及伺服电机操作的方式。步进电动机是将脉冲信号转变为角位移或线位移的开环控制元件,在非超载的情况下,电动机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电动机加—个脉冲信号,电动机则转过—个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等控制领域用步进电机来控制变的非
布式控制,可以突出体现出可靠性、实时性和灵活性的糕点,使机
械手臂更好的发挥其功能(11。
常的简单。伺服电动机又叫执行电动机,它将所收到的电信号转换成电动机轴上的角位移或角速度输出,其执行精度非常高,但相对步进电动机成本较高。
伺服主要靠脉冲来定位,伺服电机接收到1个脉冲,就会旋转1个脉冲对应的角度,从而实现位移。因为,伺服电机本身具备发出脉冲的功能,所以伺服电机每旋转一个角度,都会发出对应数量的脉冲,这样,和伺服电机接受的脉冲形成了呼应,或者叫闭环。如此一来,系统就会知道发了多少脉冲给伺服电机,同时又收了多少脉冲回来。这样,就能够很精确的控制电机的转动,从而实现精确的定位日。
设计采用的是电动式机械手臂,机械手臂的各关节模块自由度运动分别采用步进电动机的方式来驱动。
2机械手臂关节模块
2.1构成以及工作原理
工业机械手由执行机构、驱动机构和控制机构三部分组成。执行机构由手部、腕部、臂部、手臂等部件。驱动机构是工业机械手的重要组成部分,根据动力源的不同,工业机械手的驱动机构大致可分为液压、气动、电动和机械驱动等四类,采用液压机构驱动机械手,结构简单、尺寸紧凑、重量轻、控制方便。在机械手的控制上,有点动控制和连续控制两种方式,大多数用插销板进行点位控制,也有采用可编程序控制器控制、微型计算机控制,采用凸
★来稿日期:201l也一14
万方数据
第12期
关智:一种多关节智能机械手臂控制系统设计
53
22多关节模块设计
设计的机械手臂是一种4自由度的抓物机械手臂,如图1所示机械手臂甫4个活动关节构成.可以在两个f而的水平和乖直方向运动.用4个电机分别带动每个活动关节转动,从而带动4个活动臂来完成运动。当控制机械手臂行动目标的信号发Hi后,传感部件将物体的位置(x、y、Z坐标)信号传递给控;例器,然后控制器发m控制信号控制步进电机,步进电机带动各个关节旋转,从而使得与之扣台的横臂运动,行走机械部分开始运动。当行走机械部分停JP后,从外部发来・个手臂启动信号,拄制器发出抓物信号,经由集成驱动电路单元放大整合后发给们服电机,使得机械手抓闭合,执行抓物:抓物过程结束后,于臂控制系统发送一个动作完成成功信号同馈给控制电路目。
作.通过对总线的监洲吲空制,完成所需的枷麻功能。同时.各个{,点也将机械手臂动作的实时信息通过CAN接广i传送到CANbus上,进而形成完整的闭环控制系统。系统的总体控制流程,如
降i3所示,
。。1
j。¨训mFf
‰3㈨¨j!Jr…t__J””、‘
3机械手臂CAN总线控制系统
3.1硬件系统设计
CAN总线控制系统设计最通用、最广泛的方法是采用微控
刚l机械手臂多戈节设计同
FigI
Design
ofthemechanical
柳器{单片机、ARM、DSP)与CAN控制器和CAN收发器相结合的方式,接口的结构,如罔4所示.所设计的机械手臂CAN总线控制系统使用的是目前市场I‘使用最为普遍和流行的独立CAN总线控制器sJA1000,以及高速CAN总线收发器PCA82C250月。
a邢Joint
多关节机械手臂的控制设计,如图2所示。其中A组电缆接步进电机1的控制端.当步进电机接收单片机发出的脉冲时,带动机械手臂I关节转动。同理.B、G、D组电缆接步进电机2、3、4的控制端,分别控静J机械手臂2、3.4关节的转动。符个控制关节单元模块与总控制器相连,由Pc机作为总控制器,利用上位机操作软件来发出控制命令。
矧4{、、臼’t罐【】。卅≈
Fi94SlructureofCANbusinterface
哪A100渺是一种独立的CAN控制器,它是Philips半导体公司PCA82C200CAN控制器的替代品,而且还增加了一种新的操作模式一PeliCAN,这种模式支持具有很多新特性的CAN20协议,主耍用于移动目标和一般工业环境中的区域网络控制。SJAl000的接口管理逻辑负责解释来自CPU的命令,控制CAN寄存器的寻址,向CPU提供中断信息和状态信息,其发送缓冲器是CPU和位流处理器之问的接门,负责存储发送到CAN总线上
图2机械手臂关节控制设计图
Fig.2
Designofthemechanical
的一条完整的撤史.接收缓冲器是验收滤波器和CPU之间的接
control
a唧joint
口,用来存储从CAN总线I:接收并被确认的信息。
PCA82C250t1是CAN控制器与物理总线之间的接口,器件可以提供对总线的差动发送和接收功能。PCA82C250驱动电蹄内部具有限流电路,nr防止发送输出级对电源、地或负载短路。虽然短路出现时功耗增加,但不至于使输H{级损坏。若结温超过大约160%:,则两个发送器输出端极限电流将减小.
拄制系统的硬件接口部分主要由微控制器(可以选用单片
2.3总体控制流程设计
设计的多关节智能机械手臂利用工业CAN总线作为其各个关节模块的控制网络,其中机械手臂的各个关节模块为控制网络中的一个节点,将各个关节模块搭建在CAN总线上,每个节点的关节模块均通过CAN总线接口连接在CANbus七,各个节点从CAN总线接收需要的数据包.从而通过控制器对机械手臂动
万方数据
No.J2
机械设计与制造
机、ARM、DSP等)、CAN总线控制器(设计使用SJAl000)和CAN总线收发器(设计使用PCA82C250)构成,硬件电路图,如图5所
Dec.20l1
缓冲区是否锁定;判断完成之后.就可以将待发送的数据写人发
送缓冲区;最后.置位发送请求位,将数据报文发出。在发送报文
过程中.傲控制器将系统需要发送的信息整理打包.以报文的形式通过CAN总线接口发送到CANBus上。发送时用户只需将待发送的报文按flll一定的格式组合成一帧报文。将其写入SJAl000
示。CAN控制器实现了物理层和数据链路层的通信功能,提供了
与镦控制器和总线的物理线路接口,用户只需编写符合自己通信控制要求的应用层协议即可凡
、、静斟矗
慷嗍抖
忠嚣怒
的发送缓冲区中.然后置位SiAl000的发送请求标志位.即可完
成报文的发i犁q。
发送之前要判断t次发送是否结束,当sJ^1000正在发送
:I兽_j誉雾_
引‘坩”㈨二半’・
Fig.5
Hardware
circuii
报文时,发送缓冲嚣馥虢定.因此,在将新报文放人发送缓冲器之
前.坯必须检查状态寄存器中的发送缓冲器状态标志位.等待报文被发送完成。
接收报文的步骤如下:
首先,访问状态暂自锵。判断接收缓冲区是否为满;若SJAl000
接收缓冲区状态为满.则表示接ll叟缓冲区中巳接收到总线E传来的
diagram
效据,这时可以将缓冲区数据读取.并保存;最后.访问命令寄存器,
释放接收缓冲区。等待下—帧报文传来。
微控制釉通过CAN总线接口从CANbus上收到报文,对报
SJAl000的片选端cs低电平有效,通过反相器连接到搬控制器的GPIO引脚,当GPIO引脚为高电平时,微控制器存储器地址可选中sJA000。封A1000的复位端接傲控制器的GPIO弓I脚.SJAl000是低电平复位。SJAl000的RD、wR、ALE引脚分别接馓
文进行解析与处理.从而进行之后的工作。接收报文时可以采用
中断或查询的方式.当SJAl000接收到一组报文后.报文通过验
控制器的对应功能端.通过这些控制国写信号的操作,完成数据
和地址的通信。sjAl000的】l脚MODE接高电平.从而选择
In嘲=分频模式。SJAl000的16脚INT是中断信号输出端.在中断允许的情况下.有中断发生时.INT脚出现由高到低的电平跳变.因此INT脚直接与搬控制器的外部中断引脚相连接.从而使
收滤波存放在接收缓冲器中,然后释放接收缓冲区,等待下一组
报文的接收。
4小结
设计并介绍了基于工业现场总线CAN控制的多关节智能
微控制器可以通过中断方式访问slAiOGO。SJAl000的ADO—
机械手臂系统.通过CAN总线对该机械手臂的各个关节进行控制.可以实现多节点统一控制与实时监测。充分发挥网络通信与
机坂手臂系统的运行功能。
AD7引脚为地蛐嗽据复用线。应与微控制器对应的数据触址复
用线相连,从而进行地址和数据的读写。SJAl000的发送输出端
TXO与接收输A端RxO分别与CAN总线接口收发控制器
PCA82C250的TXD和RXD相连,PCA82C250的CANH与CANL引脚直接与CAN物理总线相连。
同时这种控箭景统比直接用单片机来控制机械手更加可
靠.更加方便.对机械手臂与现场总线CAN的实际应用具有一定的参考价值,促进了机械手智能化的发展。
3.2软件系统设计
软件系统设计主要包括初始化、报文发送、报文接收三大部分.机械手臂的控制系统通过CAN总线接口从CANbus上收到报文数据包。经过通讯协议的解析,控制电机运转,完成机械手的动作.同时.将机梭手的实时状态信息再通过CAN总线接口发送到CANbus上。从而实现对系统的反馈控制与实时监测m。
◆考文献
[I]邓志平.机械制造技术基础【M】威都:西南交通大学出版社.2004.
【2】t敏.何勇基于Pc机和单片机的多机械手远程控制系统[J].微电脑
应用,2004(6):141—143.
[3]陈杨。费凌,嚣亮.基于80C51的抓物机械手臂设计[,】机械工程师.
2008(9):35—37
[4]SemiconduclorsPSJAl000stand_aloneCAN'controller[Z]-PH]Lfl丐
DATASHEET.2000.
控制系统的初始化对CAN总线的正常工作非常重要,初始化只能在复位模式下才能进行.初始化中关键的步骤是'赶置SJAl000内部寄存器的参数.使其为报文的发送与接收蠼好准备%
韧始化的步骤有:
首先是sJAl000自测.检查是否正常;之后进入复位模式.准备进行初始化:设置验收滤波器(通常将s,A1000设置在无屏蔽的发送和接收数据),接着设置通讯所需的波特率.设置sIAl000的
[5]Sem/conductorsp.PCA82C250CANcontmllerinterface[z].PHIIAPS
DATASHEEr.2000,
(6]侯明。牡囊基于CAN总线的接口电路避计1刃.通信技术,2008.4l(7):
138一l柏.
[7]陆前锋.刘渡.陈明昭基于S.IAI{X)O的CAN总线智能控翻系统设计
[J]自动化技术与应用,2003,22(I):61-64.
[B]夏继强.邢春香.现场总线工业控制网络技术[M]一£京:北京航空靛夭
大学出版杜.2005
工作方式(通常将SJAl000设置在正常工作馘);然后开放中断,
开始接收或发送数据,返回其工作状态。
发送报文的步骤如下:
使微控制器通过中断方式访问甜A1000;最后退出复位模式.准备
【9】韩斌.张●.何建新CAN总线在控制系统中的应用[J]成都信息工程
学院掌报.2003,18{4):339-342.
[10]赛晴.赳睦水基于CAN总线通信协议的设计与实现[J]散计算机信
息.2007,23(11):22-24.
首先,访问状态寄存器,判断上次发送是否完成,判断发送
万方数据
一种多关节智能机械手臂控制系统设计
作者:
作者单位:刊名:英文刊名:年,卷(期):
关智, GUAN Zhi
沈阳职业技术学院计算机系,沈阳,100045机械设计与制造
Machinery Design & Manufacture2011(12)
参考文献(10条)
1. 邓志平 机械制造技术基础 2004
2. 董毅;何勇 基于PC机和单片机的多机械手远程控制系统[期刊论文]-微电脑应用 2004(06)3. 陈杨;费凌;郑亮 基于80C51的抓物机械手臂设计[期刊论文]-机械工程师 2008(09)4. Semiconductors P SJA1000 stand-alone CAN controller 20005. Semiconductors P PCA82C250 CANcontroller interface 20006. 侯明;杜奕 基于CAN总线的接口电路设计[期刊论文]-通信技术 2008(07)
7. 陆前锋;刘波;陈明昭 基于SJA1000的CAN总线智能控制系统设计[期刊论文]-自动化技术与应用 2003(01)8. 夏继强;邢春香 现场总线工业控制网络技术 2005
9. 韩斌;张睿;何建新 CAN总线在控制系统中的应用[期刊论文]-成都信息工程学院学报 2003(04)10. 窦鹏;刘胜永 基于CAN总线通信协议的设计与实现[期刊论文]-微计算机信息 2007(11)
本文链接:http://d.wanfangdata.com.cn/Periodical_jxsjyzz201112020.aspx