伺服系统是用来控制被控对象的转角(或位移),使其能自动地、精确地实现输入指令的变化规律。直流(dc)伺服系统,在上世纪70、80年代的数控机床上占据主导地位。大惯量直流伺服电动机具有良好的调速性能,输出转矩大,过载能力强,构成闭环易于调整。80年代后,交流调速有了飞速的发展,交流电动机的可变速驱动系统已发展为数字化,这使得交流电动机的大范围平滑调速成为现实,克服了其原有的缺点-调速性能差,同时发挥了其结构简单坚固、容易维护、转子的转动惯量可以设计的很小,可以经受高速运转等优点。在现代数控机床、自动化系统中得到了广泛应用[1]。
图1 伺服系统结构示意
系统组成
系统描述
由结构图可知,该伺服控制系统主要由omron c200hx plc、nc211双轴位置控制单元、伺服驱动器及伺服电机构成。伺服驱动器选用omron smartstep a系列,具体型号r7d-ap08h,单相ac 200v/750w。它是在传统的步进电机简单定位用途的基础上开发出来的脉冲列输入型位置控制产品,结合了步进电机简单易用的特点,同时具备新的优点:在高速/高转矩的情况下短时间内完成定位,在负荷急剧变化的情况下仍能保持稳定,具有高度可靠性。指令脉冲的输入方式可在cw/ccw(双脉冲输入方式)或sign/plus(单脉冲输入方式)之间切换。采用全数字控制方式,速度反馈2000脉冲/转,内置增量型编码器进行位置监控。当起停频率超出时,通过步数丢失可以检测到位置错误。一旦检测到位置误差,就以较低频率进行位置校正,从而构成一个高精度的运动控制系统。变频采用igbt(绝缘栅双极晶体管)脉宽调制方式,脉宽调制频率11.7khz。伺服电机采用同一系列,具体型号r7m-a75030,额定输出功率750w,额定转数3000r/min。
电气布线与硬件参数设置
在伺服驱动器的前面板上设置单元号(no.)为0,增益调整(gain,调整电机响应性)为4,功能设定开关全部打在off位置。按照技术手册、电气规范进行布线,图2为电气接线图。全部检查没有问题后方可上电启动系统。
和其他特殊单元不同,nc211属于双轴位控单元,占用双倍的dm区域和ir区域,因此机架上的其他模块的单元号不得与其紧邻,以免冲突。以下从几个方面具体介绍该模块的使用。
l 单元面板及设定开关
前面板上指示灯有7个,主要显示x/y轴工作情况、电机运行模式以及错误报警等含义。两个设定开关,分别是单元号和工作模式的设定。nc211的工作模式按照接线方式不同分为四种:
模式0:按步进方式驱动电机,z相脉冲接入原点信号线;
模式1:控制伺服电机,使用原点驱动输入和偏差计数复位输出信号线,未接定位完成输入信号线;
模式2:与模式1相同,但使用了定位完成输入信号线;
模式3:控制伺服电机,使用原点调节命令。
背板上有10个dip开关,具体功能和含义请参考相关手册[2]。这里以工作模式0为例,除7号开关外,其余设置为off,表示使用扩展数据区域dm0100-dm0299。
l 接线c200h-nc211的接线是通过单元模板上一个34针的插座引出的,其引脚与信号关系详见有关技术手册。
l dm区与ir区的分配使用nc211必须明确几个概念:i/o数据刷新区域,固定数据区域,扩展数据区域。根据单元号和ir区以及dm区通道号的对应关系,这里设定单元号为6,ir160 ~179为i/o数据刷新区域,在plc和nc211之间数据即时刷新。
dm1600~1799为固定数据区域,当plc上电或ar重新启动位为on时传递数据到nc211中。dm0100~0899为扩展数据区域,该区域由背板的开关7~9设置,作为控制数据的扩展存储区。各区域的具体分配与使用说明如附表所示。
使用前通过编程器将设置值写入内存dm区域,实例中需要设定固定数据区域dm1600~dm1799。其中dm1600~1601(dm 1700~dm1701)是对x轴(y轴)初始值及操作方式的设定,dm1682~dm1685(dm 1782~dm1785)设定速度值1~4;dm0100~0299是扩展数据区域的设置;ir区域则通过编程进行设定。
附表 数据区域分配
程序设计
以两轴联动为例,x轴首先动作,部分源程序如下。需要注意的是,在x轴动作期间,为防止y轴报警错误,需事先把位置数据送入扩展数据区域。部分程序指令如下:
ld 50.04 //重启动标志位
difu(13) ar1.06
ld 50.00
difu(13) 30.00 //启动位
ld 30.00
or 30.02
andnot i:170.12 //x轴禁止传输位
andnot i:175.12 //y轴禁止传输位
out 30.02
ld 30.02
out q:160.08 //x轴当前位置重置
out q:165.08 //y轴当前位置重置
ldnot i:170.00 //定位完成
and i:170.02 //x轴初始标志位
and i:175.02 //y轴初始标志位
andnot i:170.12
andnot i:175.12
difu(13) 31.00
ld 31.00
ld 32.00
and 50.02 //设置触摸屏动作位
orld
out q:160.00 //插补开始
ld 50.01
out q:160.15 //停止位
ld 31.00
mov(21) #6003
dm102
mov(21) #7003
dm108
mov(21) #6003
dm114
mov(21) #7003
dm120
mov(21) #6003
dm126
mov(21) #7003
dm129 //传输数据
ld 31.00 //开始动作位
mov(21) #2000
q:162 //定位动作序号
mov(21) #100
q:163 //定义传输开始字
mov(21) #1000
q:164 //定义传输数据长度
out q:160.10
ld i:170.00 //插补完成
and i:170.10 //x轴数据传输完成
andnot i:170.12
andnot i:175.12
out q:161.15 //(nc)缓冲区传输
ld i:170.00
andnot i: 170.10
andnot i:170.12
andnot i:175.12
difu(13) 32.00
end (01)
程序检查无误后通过编程电缆将下载到omron plc,系统上电运行,各指示灯工作正常。如果报警或错误灯亮,可读取ir区错误代码,根据具体情况进行修改,报警/错误代码标志位及其含义请参考技术手册。现场操作调节可通过nt31c触摸屏进行
结语
在伺服控制系统的设计中,使用nc211特殊功能模块可以实现双轴精确定位控制,简化了控制程序的设计复杂性。通过模块化的编程,减少了编程工作量,同时也减小了c200hx cpu的负担,并且提高了控制系统的可靠性,保证了定位精度。经实践检验,系统运行稳定,对生产科研过程中类似问题的解决具有一定的启发和借鉴作用。