运动控制范文
时间:2023-03-27 06:43:41
导语:如何才能写好一篇运动控制,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
关键词:伺服驱动技术,直线电机,可编程计算机控制器,运动控制
1 引言
信息时代的高新技术流向传统产业,引起后者的深刻变革。作为传统产业之一的机械工业,在这场新技术革命冲击下,产品结构和生产系统结构都发生了质的跃变,微电子技术、微计算机技术的高速发展使信息、智能与机械装置和动力设备相结合,促使机械工业开始了一场大规模的机电一体化技术革命。
随着计算机技术、电子电力技术和传感器技术的发展,各先进国家的机电一体化产品层出不穷。机床、汽车、仪表、家用电器、轻工机械、纺织机械、包装机械、印刷机械、冶金机械、化工机械以及工业机器人、智能机器人等许多门类产品每年都有新的进展。机电一体化技术已越来越受到各方面的关注,它在改善人民生活、提高工作效率、节约能源、降低材料消耗、增强企业竞争力等方面起着极大的作用。
在机电一体化技术迅速发展的同时,运动控制技术作为其关键组成部分,也得到前所未有的大发展,国内外各个厂家相继推出运动控制的新技术、新产品。本文主要介绍了全闭环交流伺服驱动技术(Full Closed AC Servo)、直线电机驱动技术(Linear Motor Driving)、可编程序计算机控制器(Programmable Computer Controller,PCC)和运动控制卡(Motion Controlling Board)等几项具有代表性的新技术。
2 全闭环交流伺服驱动技术
在一些定位精度或动态响应要求比较高的机电一体化产品中,交流伺服系统的应用越来越广泛,其中数字式交流伺服系统更符合数字化控制模式的潮流,而且调试、使用十分简单,因而被受青睐。这种伺服系统的驱动器采用了先进的数字信号处理器(Digital Signal Processor, DSP),可以对电机轴后端部的光电编码器进行位置采样,在驱动器和电机之间构成位置和速度的闭环控制系统,并充分发挥DSP的高速运算能力,自动完成整个伺服系统的增益调节,甚至可以跟踪负载变化,实时调节系统增益;有的驱动器还具有快速傅立叶变换(FFT)的功能,测算出设备的机械共振点,并通过陷波滤波方式消除机械共振。
一般情况下,这种数字式交流伺服系统大多工作在半闭环的控制方式,即伺服电机上的编码器反馈既作速度环,也作位置环。这种控制方式对于传动链上的间隙及误差不能克服或补偿。为了获得更高的控制精度,应在最终的运动部分安装高精度的检测元件(如:光栅尺、光电编码器等),即实现全闭环控制。比较传统的全闭环控制方法是:伺服系统只接受速度指令,完成速度环的控制,位置环的控制由上位控制器来完成(大多数全闭环的机床数控系统就是这样)。这样大大增加了上位控制器的难度,也限制了伺服系统的推广。目前,国外已出现了一种更完善、可以实现更高精度的全闭环数字式伺服系统 , 使得高精度自动化设备的实现更为容易。其控制原理如图1所示。
该系统克服了上述半闭环控制系统的缺陷,伺服驱动器可以直接采样装在最后一级机械运动部件上的位置反馈元件(如光栅尺、磁栅尺、旋转编码器等),作为位置环,而电机上的编码器反馈此时仅作为速度环。这样伺服系统就可以消除机械传动上存在的间隙(如齿轮间隙、丝杠间隙等),补偿机械传动件的制造误差(如丝杠螺距误差等),实现真正的全闭环位置控制功能,获得较高的定位精度。而且这种全闭环控制均由伺服驱动器来完成,无需增加上位控制器的负担,因而越来越多的行业在其自动化设备的改造和研制中,开始采用这种伺服系统。
3 直线电机驱动技术
直线电机在机床进给伺服系统中的应用,近几年来已在世界机床行业得到重视,并在西欧工业发达地区掀起"直线电机热"。
在机床进给系统中,采用直线电动机直接驱动与原旋转电机传动的最大区别是取消了从电机到工作台(拖板)之间的机械传动环节,把机床进给传动链的长度缩短为零,因而这种传动方式又被称为"零传动"。正是由于这种"零传动"方式,带来了原旋转电机驱动方式无法达到的性能指标和优点。
1. 高速响应 由于系统中直接取消了一些响应时间常数较大的机械传动件(如丝杠等),使整个闭环控制系统动态响应性能大大提高,反应异常灵敏快捷。
2. 精度 直线驱动系统取消了由于丝杠等机械机构产生的传动间隙和误差,减少了插补运动时因传动系统滞后带来的跟踪误差。通过直线位置检测反馈控制,即可大大提高机床的定位精度。
3. 动刚度高 由于"直接驱动",避免了启动、变速和换向时因中间传动环节的弹性变形、摩擦磨损和反向间隙造成的运动滞后现象,同时也提高了其传动刚度。
4. 速度快、加减速过程短 由于直线电动机最早主要用于磁悬浮列车(时速可达500Km/h),所以用在机床进给驱动中,要满足其超高速切削的最大进个速度(要求达60~100M/min或更高)当然是没有问题的。也由于上述"零传动"的高速响应性,使其加减速过程大大缩短。以实现起动时瞬间达到高速,高速运行时又能瞬间准停。可获得较高的加速度,一般可达2~10g(g=9.8m/s2),而滚珠丝杠传动的最大加速度一般只有0.1~0.5g。
5. 行程长度不受限制 在导轨上通过串联直线电机,就可以无限延长其行程长度。
6. 运动动安静、噪音低 由于取消了传动丝杠等部件的机械摩擦,且导轨又可采用滚动导轨或磁垫悬浮导轨(无机械接触),其运动时噪音将大大降低。
7. 效率高 由于无中间传动环节,消除了机械摩擦时的能量损耗,传动效率大大提高。
直线传动电机的发展也越来越快,在运动控制行业中倍受重视。在国外工业运动控制相对发达的国家已开始推广使用相应的产品,其中美国科尔摩根公司(Kollmorgen)的 PLATINNM DDL系列直线电机和SERVOSTAR CD系列数字伺服放大器构成一种典型的直线永磁伺服系统,它能提供很高的动态响应速度和加速度、极高的刚度、较高的定位精度和平滑的无差运动;德国西门子公司、日本三井精机公司、台湾上银科技公司等也开始在其产品中应用直线电机。
4 可编程计算机控制器技术
自20世纪60年代末美国第一台可编程序控制器(Programming Logical Controller,PLC)问世以来,PLC控制技术已走过了30年的发展历程,尤其是随着近代计算机技术和微电子技术的发展,它已在软硬件技术方面远远走出了当初的"顺序控制"的雏形阶段。可编程计算机控制器(PCC)就是代表这一发展趋势的新一代可编程控制器。
与传统的PLC相比较,PCC最大的特点在于它类似于大型计算机的分时多任务操作系统和多样化的应用软件的设计。传统的PLC大多采用单任务的时钟扫描或监控程序来处理程序本身的逻辑运算指令和外部的I/O通道的状态采集与刷新。这样处理方式直接导致了PLC的"控制速度"依赖于应用程序的大小,这一结果无疑是同I/O通道中高实时性的控制要求相违背的。PCC的系统软件完美地解决了这一问题,它采用分时多任务机制构筑其应用软件的运行平台,这样应用程序的运行周期则与程序长短无关,而是由操作系统的循环周期决定。由此,它将应用程序的扫描周期同外部的控制周期区别开来,满足了实时控制的要求。当然,这种控制周期可以在CPU运算能力允许的前提下,按照用户的实际要求,任意修改。
基于这样的操作系统,PCC的应用程序由多任务模块构成,给工程项目应用软件的开发带来很大的便利。因为这样可以方便地按照控制项目中各部分不同的功能要求,如运动控制、数据采集、报警、PID调节运算、通信控制等,分别编制出控制程序模块(任务),这些模块既独立运行,数据间又保持一定的相互关联,这些模块经过分步骤的独立编制和调试之后,可一同下载至PCC的CPU中,在多任务操作系统的调度管理下并行运行,共同实现项目的控制要求。
PCC在工业控制中强大的功能优势,体现了可编程控制器与工业控制计算机及DCS(分布式工业控制系统)技术互相融合的发展潮流,虽然这还是一项较为年轻的技术,但在其越来越多的应用领域中,它正日益显示出不可低估的发展潜力。
5 运动控制卡
运动控制卡是一种基于工业PC机 、 用于各种运动控制场合(包括位移、速度、加速度等)的上位控制单元。它的出现主要是因为:(1)为了满足新型数控系统的标准化、柔性、开放性等要求;(2)在各种工业设备(如包装机械、印刷机械等)、国防装备(如跟踪定位系统等)、智能医疗装置等设备的自动化控制系统研制和改造中,急需一个运动控制模块的硬件平台;(3)PC机在各种工业现场的广泛应用,也促使配备相应的控制卡以充分发挥PC机的强大功能。
运动控制卡通常采用专业运动控制芯片或高速DSP作为运动控制核心,大多用于控制步进电机或伺服电机。一般地 , 运动控制卡与PC机构成主从式控制结构:PC机负责人机交互界面的管理和控制系统的实时监控等方面的工作 ( 例如键盘和鼠标的管理、系统状态的显示、运动轨迹规划、控制指令的发送、外部信号的监控等等);控制卡完成运动控制的所有细节(包括脉冲和方向信号的输出、自动升降速的处理、原点和限位等信号的检测等等)。运动控制卡都配有开放的函数库供用户在DOS或Windows系统平台下自行开发、构造所需的控制系统。因而这种结构开放的运动控制卡能够广泛地应用于制造业中设备自动化的各个领域。
这种运动控制模式在国外自动化设备的控制系统中比较流行,运动控制卡也形成了一个独立的专门行业,具有代表性的产品有美国的PMAC、PARKER等运动控制卡。在国内相应的产品也已出现,如成都步进机电有限公司的DMC300系列卡已成功地应用于数控打孔机、汽车部件性能试验台等多种自动化设备上。
篇2
随着自动化设备对控制的高精度、高响应性需求的不断增加,自动化控制技术不断提高,精确的高速定位控制得到广泛应用,PLC这一工业控制产品也从早期的逻辑控制领域不断扩展到运动控制领域,实现了以往PLC无法完成的运动控制功能。
在运动控制中大多数采用我们熟悉的数控系 统或者是计算机运动板卡来完成,虽然作为专门的产品能够实现复杂的运动轨迹控制,但同时要完成一些逻辑动作的控制就不如PLC灵活方便。台达DVP20PM系列PLC高速定位、双轴线性及圆弧插补多功能可编程控制器,结合了PLC逻辑动作控制和数控系统运动控制的各自优点,在功能上满足双轴插补的高速定位需求。
2 台达运动控制型PLC硬件结构
DVP20PM是台达运动控制型PLC。DVP20PM通过前后两个扩展口既可作为PLC主机执行也可作为EH2型主机的扩展模块使用,具有X0-X7、Y0-Y7数字量输入输出各八点,并配置了手摇轮、零点信号、原点信号、极限信号、启动、停止等各种信号接口满足应用需求。
DVP20PM主机包含64K超大程序容量内存(Flash),可支持100段运动程序,脉冲输出最高可达500KHz,并具备电子原点返回模式,支持PLC顺序语言及定位语言(G 码与M码),下面先由硬件部分简单介绍20PM 组成。
2.1 电源
DVP20PM电源规格参见表1。
2.2 I/O点规格
参见图1,DVP20PM提供的数字量输入输出点规格与台达通用PLC规格基本相同,输入点支持SINK(漏极)和SOURCE(源极)两种方式,输出点也有继电器输出和晶体管输出可选。
需要提到的是其在运动控制中的特殊输入输出点,简述如下:
START0、START1:启动输入
STOP0、STOP1:停止输入
LSP0/LSN0、LSP1/LSN1:右极限输入/左极限输入
A0+、A0-、A1+、A1-:手摇轮A相脉波输入+,-(差动信号输入)
B0+、B0-、B1+、B1-:手摇轮B相脉波输入+,-(差动信号输入)
PG0+、PG0-、PG1+、PG1-:零点讯号输入+,- (差动信号输入)
DOG0、DOG1:原点回归的近点信号输入或多段运动的启动信号
CLR0+、CLR0-、CLR1+、CLR1-:清除信号(Servo驱动器内部偏差计数器清除信号)
FP0+、FP0-、FP1+、FP1-:脉冲输出端口
RP0+、RP0-、RP1+、RP1-:脉冲输出端口
(注:0表示第一轴,1表示第二轴,如START0表示启动第一轴,START1表示启动第二轴,其他信号依次类推)
从端子分布可以看到,除了常用的极限和启动停止信号外,配置了过零脉冲PG和手摇能输入端,手摇轮是机床应用中常用而必备功能,而利用过零信号在精确控制场合往往会用到,当然更不用说定位控制中都会用到的DOG原点信号。
2.3 配线规格
一般I/O点配线就不再赘言了,可以关注一下PLC比较少用到的差分输入输出方式,在信号中有一部分是这样的,一定要注意否则将不能正确完成,参见图2、图3。
3 台达运动控制型PLC软件结构
3.1 DVP20PM程序结构
由于20PM主机结合了PLC顺序逻辑控制及双轴插补定位控制的功能,因此在程序架构上主要分为O100主程序、Ox运动子程序及Pn子程序等三大类,结合了基本指令、应用指令、运动指令及G Code指令,使程序设计更多元化,结构更清晰;程序采用PMSOFT软件进行编辑,参见图4。
(1)主程序。主程序以O100作为起始标记,M102作为结束标记,是PLC顺序控制程序,主要为控制主机动作执行,在O100主程序区域中,可以使用基本指令及应用指令,或在程序中启动Ox0~Ox99运动子程序及调用Pn子程序。主要提供主控制程序的建立,以及运动子程序的设定及启动控制。
(2)运动子程序。Ox0~Ox99运动子程序为运动控制程序,主要为控制20PM系列主机进行X-Y轴双轴运动之子程序,于Ox0~Ox99运动子程序区段中,有支持基本指令、应用指令、运动指令及G码指令,并在程序中可规划呼叫Pn指针子程序,通过PLC提供的内部特D特M进行子程序的控制。主要提供运动子程序的建立,以及运动子程序的运动控制,在架构上可算是20PM的运动指令及G码指令规划区域。
(3) 子程序。这里所说的子程序是指以Pn开头的一般用子程序,主要是被O100主程序及Ox运动子程序调用的子程序。如在O100主程序调用Pn指针,则Pn指针子程序支持基本指令及应用指令;若在Ox0 ~ Ox99运动子程序中调用Pn指针时,则Pn指针子程序区段可支持基本指令、应用指令、运动指令及G码指令。
3.2 PMSOFT软件介绍
与台达PLC的WPLSoft软件相似,DVP20PM的编程软件PMSOFT按照IEC61131标准设计,具有梯形图和语句表两种编程方式,且具有G码汇入、错误提示、区段注释、装置注释、标尺、完善的监控窗口、运动指令追踪等便利工具提供给用户,特别值得一提的是该软件具有运动轨迹仿真功能,当您编辑好程序后可利用此功能对加工轨迹进行模拟演示,参见图5。
为方便切换阶梯窗口,只要点选系统信息列中的树枝状对应的程序编号,自动切换对应的程序编辑窗口,在PMSoft编辑环境中同时只能有一个阶梯图窗口,这是为了在庞大复杂程序中找寻程序方便,同时将主程序、运动子程序、一般子程序这三种程序模块化处理,O100主程序只有一个编辑窗口,Oxn运动程序有100个编辑窗口,Pm子程序有256个编辑窗口,总共有357个窗口,每个窗口未编辑都有10 network。程序编辑由网络区段组成,每个网络区段是由输入与输出编辑区域所组成,在编辑过程中,自动产生逻辑结构正确的阶梯图,使用者无须再做额外补线的动作,网络区段编辑并具有错误提示功能。
4 运动控制编程
4.1 相关概念
在谈到DVP20PM产品的应用之前,我们对以下概念进行一个简要介绍。
(1)插补。插补是在组成轨迹的直线段或曲线段的起点和终点之间,按一定的算法进行数据点的密化工作,以确定一些中间点。从而为轨迹控制的每一步提供逼近目标。
逐点比较法是以四个象限区域判别为特征,每走一步都要将加工点的瞬时坐标与相应给定的图形上的点相比较,判别一下偏差,然后决定下一步的走向。如果加工点走到图形外面去了,那么下一步就要向图形里面走;如果加工点已在图形里面,则下一步就要向图形外面走,以缩小偏差,这样就能得到一个接近给定图形的轨迹,其最大偏差不超过一个脉冲当量(一个进给脉冲驱动下工作台所走过的距离)。
(2)直线插补。这个概念一般是用在计算机图形显示,或者数控加工的近似走刀等情况下,以数控加工为例子:
一个零件的轮廓往往是多种多样的,有直线,有圆弧,也有可能是任意曲线,样条线等。数控机床的刀具往往是不能以曲线的实际轮廓去走刀的,而是近似地以若干条很小的直线去走刀,走刀的方向一般是x和y方向。
插补方式有:直线插补,圆弧插补,抛物线插补,样条线插补等等。
所谓直线插补就是只能用于实际轮廓是直线的插补方式(如果不是直线,也可以用逼近的方式把曲线用一段段线段去逼近,从而每一段线段就可以用直线插补了).首先假设在实际轮廓起始点处沿x方向走一小段(一个脉冲当量),发现终点在实际轮廓的下方,则下一条线段沿y方向走一小段,此时如果线段终点还在实际轮廓下方,则继续沿y方向走一小段,直到在实际轮廓上方以后,再向x方向走一小段,依次循环类推.直到到达轮廓终点为止.这样,实际轮廓就由一段段的折线拼接而成,虽然是折线,但是如果我们每一段走刀线段都非常小(在精度允许范围内),那么此段折线和实际轮廓还是可以近似地看成相同的曲线的--这即是直线插补。
(3)联动与插补。一个点的空间位置需要三个坐标,决定空间位置需要六个坐标。
一个运动控制系统可以控制的坐标的个数称做该运动控制系统的轴数。而可以同时控制运动的坐标的个数称做该运动控制系统可联动的轴数。联动各轴的运动轨迹具有一定的函数关系,例如直线,园弧,抛物线,正弦曲线。直接计算得出运动轨迹的坐标值往往要用到乘除法,高次方,无理函数,超越函数,会占用很多的CPU时间。为了实时快速控制运动轨迹,往往预先对运动轨迹进行直线和圆弧拟合,拟合后的运动轨迹仅由直线段和圆弧段所组成,而计算运动轨迹时,每一点的运动轨迹跟据前一个坐标点的数据通过插补运算得到,这样就把计算简化为增量减量移位和加减法。
实现多轴联动的直线插补并不困难,圆弧插补一般为两轴联动。插补运算可以有多种算法,例如 "DDA 算法","逐点比较法","正负法","最小偏差法(Bresenham 算法)"等,其中最小偏差法具有最小的偏差和较快的运行速度。
DVP20PM运动控制型PLC可实现2轴联动,支持直线和圆弧插补,以及相应的第三轴处理。
(4)数控软件。DVP20DPM支持复杂的运动轨迹控制,那是如何实现的呢?简单的说,将复杂轨迹通过AUTOCAD等软件生成图形,再经过CAM软件转换为G代码,而PMSOFT可以直接导入文本格式的G代码,这样就可以完成运动程序下载到20PM中执行。那么怎样完成图形到G代码的转换呢,这就需要CAM软件了,以下简单介绍一些常用的CAM软件:
目前CAD/CAM行业中普遍使用的是 MASTERCAM 、 CIMATRON 、 PRO-E 、 UG 、 CATIA...
MASTERCAM 是最常用的一种软件,大多数数控操作员都使用 MASTERCAM ,它集画图和编程于一身,绘制线架构最快,缩放功能最好。
CIMATRON 是迟一些进入中国的软件,在刀路轨迹上的功能优越于 MASTERCAM,现已被广泛地应用。
Pro/E 是美国 PTC 开发的软件,现已成为全世界最普及的三维 CAD/CAM 系统。集多种功能于一体,用于模具设计、产品画图、广告设计、图像处理、灯饰造型设计,是最好的画图软件,一般来说用 PRO-E 画图,用 MASTERCAM 或 CIMATRON 加工。
当然还有其他同类软件也同样可以使用,通过这些软件将我们想要加工的轨迹曲线数据转换为PLC或数控系统可以识别执行的代码,从而控制我们的设备运动。
4.2 运动控制特点
(1)DVP20PM特色。多段速执行及中断定位,利用此项功能实现运动的平滑性及准确定位。64K步程序容量,100段运动程序,满足不同加工需求;在20PM中最大可设置100种运动轨迹,同时利用64K的程序容量,预先将需要执行的各种不同运行曲线的G码存储在PLC中,当需要加工某种规格时,可以采用文本显示器、触摸屏等来调用。支持G码的直接汇入,当采用CAM软件生成文本格式的G码后,可利用PMSOFT的汇入菜单直接汇入到PLC运动程序中。脉冲输入输出采用差动方式,最高达500KHz,满足了绝大多数应用中速度的要求。支持手摇轮应用,这是运动控制中的一个基本功能,可做一些手动的调整。具备电子原点返回模式,在20PM内存中加入了原点记忆功能,只要设定了电子原点,即使设备断电,在下次上电后也可以轻松找到原点位置。可连结EH2主机与所有扩充模块,20PM可以灵活配置,即可以接在EH2主机后作为专门定位扩展模块,也可以做为主机连接其他的模拟量等特殊功能模块。支持PLC顺序语言及定位语言(G 码与M码),实现了通用PLC与数控技术的一个完美结合。配置运动轨迹的离线仿真功能,在实际加工前利用该项功能可以检查运动程序是否存在问题,可及时解决减少错误发生,参见图6。
(2)轴控方式。准确的说,DVP 20PM是实现两轴(X、Y轴)联动插补的产品,支持数控程序中的G码功能指令,同时可以处理第三轴的动作。
20PM支持的G 代码功能如下:G0 高速定位;G1 双轴联动直线插补;G2 顺时针圆弧插补(设定圆心位置);G3 逆时针圆弧插补(设定圆心位置);G2 顺时针圆弧插补(设定半径长度);G3 逆时针圆弧插补(设定半径长度);G4 停顿时间;G90 设定绝对坐标系统;G91 设定相对坐标系统。
对于第三轴(Z轴)处理方式如下:20PM目前只规划2轴,当G0中指定了Z轴时,此G0指令中Z轴将被拆解独立出来。
例: G0XP1YP2ZP3 G0ZP3
G0XP1YP2
G0ZP3执行时20PM将自动呼叫P255并以D0传递P3,使用者可于P255中处理Z轴动作。
4.3 一个案例
液晶切片机的硬件案例。在该设备中配置了DVP32EH2+DVP20PM+DVP01PU*4来控制六轴运动,其中两轴采用圆弧插补完成倒角运动,另外四轴为独立运动。实现了设备的点动、原点回归、半自动及自动运行,达到精确位置控制。
篇3
关键词:半自动;小车机器人;可编程控制器;步进电机;电机控制;运动控制
中图分类号:TP242文献标识码:A文章编号:1009-2374(2010)03-0043-02
机器人由小车、升降台、机械手组成。电气PLC要求控制小车的前后左右运转,升降台带动机械手上下运行,机械手则要实现夹紧与松开的运行。机器人小车的动作由步进电机拖动,四个轴八个方向,而步进电机由对应的驱动器驱动,驱动器的控制由PLC来完成。控制方案的系统结构如图1所示,系统硬件部分由控制面板、PLC控制器、驱动器、步进电机等组成。操作面板实现操作功能;控制器PLC发出脉冲、方向信号,通过驱动器控制步进电机的运行状态。
而我们就是负责将上述环节按要求连接,使得在操作机器人按钮时,机器人能按要求运动。为了操作方便,操作按钮安装在遥控面板,遥控接收器收到信号传给PLC的输入接口。
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变得非常简单。
可编程控制器(Programmable Logic Controller,通常称PLC)是一种工业控制计算机,具有模块化结构、配置灵活、高速的处理速度、精确的数据处理能力、多种控制功能、网络技术和优越的性价比等性能,能充分适应工业环境,简单易懂,操作方便,可靠性高,是目前广泛应用的控制装置之一。PLC对步进电机也具有良好的控制能力,利用其高速脉冲输出功能或运动控制功能,即可实现对步进电机的控制。利用PLC控制步进电机,其脉冲分配可以由软件实现,也可由硬件组成。
本文中,我们将对采用PLC来进行步进电机的设计研究进行介绍,讨论步进电机的PLC控制系统的硬件和软件设计方法。
一、步进电机
(一)步进电机的控制原理及特性
1.步进电机的控制原理。步进电机是一种将电脉冲转化为角位移的执行机构。步进电机的运行需要有脉冲分配的功率型电子装置驱动,这就是步进电机驱动器。控制系统每发出一个脉冲信号,通过驱动器就能驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的;通过改变通电顺序,从而达到改变电机旋转方向的目的。步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
2.步进电机的特点:(1)一般步进电机的精度为步进角的3%~5%,且不累积,所以具有良好的跟随特性。(2)步进电机外表允许的最高温度。步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点,一般来讲,步进电机外表温度在80℃~90℃完全正常。(3)步进电机的力矩会随转速的升高而下降。当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;频率越高,反向电动势越大。在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。(4)步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。
步进电机有一个技术参数:空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。在有负载的情况下,启动频率应更低。图2为步进电机脉冲频率的变化规律图:
(二)步进电机脉冲频率的变化规律
系统设计中我们采用的步进电机为0.9°步距角二相步进电机。步进电机在启动和停止时有一个加速及减速过程,且加速速度越小则冲击越小,动作越平稳,所以步进电机工作一般要经历以下的变化过程:加速―恒速(高速)―减速―恒速(低速)―停止。因步进电机转速与脉冲频率成正比,所以输入步进电机的脉冲频率也要经历一个类似的变化过程,其变化规律如图2所示。可见在步进电机启动时要使脉冲升频,停车时使脉冲降频。
由于步进电机驱动器在输入脉冲200Hz时处于震荡区内,容易损坏内部元件,而在200Hz以下运转速度较慢,效率较低,故一般采用350Hz作为脉冲的低频起点。经测试,轻载时高频脉冲可达到6.8kHz。
二、步进电机PLC控制系统的硬件设计
(一)硬件选型
1.步进电机:步进电机有步距角、静力矩、电流三大要素组成。根据负载的控制精度要求选择步距角大小,根据负载的大小确定静力矩,静力矩一经确定根据电机矩频特性曲线来判断电机的电流。一旦三大要素确定,步进电机的型号便确定下来了。本系统使用的是35BYG系列的步进电机,其转矩比较高。
2.驱动器:遵循先选电机后选驱动的原则,电机的相数、电流大小是驱动器选择的决定性因素;在选型中,还要根据PLC输出信号的极性来决定驱动器输入信号是共阳极或共阴极。为了改善电机的运行性能和提高控制精度,通常通过选择带细分功能的驱动器来实现,目前驱动器的细分等级有8倍、16倍、32倍、64倍等,最高可达256倍细分。在实际应用中,应根据控制要求和步进电机的特性选择合适的细分倍数,以达到更高的速度和更大的高速转矩,使电机运转精度更高,振动更小。经比较我们选用的是南京步进电机厂的HSM系列的步进电机驱动器。
3.PLC:在对PLC选型前,应根据下式计算系统的脉冲当量、脉冲频率上限和最大脉冲数量。
根据脉冲频率可以确定PLC高速脉冲输出时的频率,根据脉冲数量可以确定PLC的位宽。运用PLC控制步进电机时,应该保证PLC具有高速脉冲输出功能,通过选择具有高速脉冲输出功能或专用运动控制功能的模块来实现。设计中,根据选型原则和功能要求,我们采用的步进电机为0.9°步距角的二相步进电机;因为考虑到是用在机器人小车上,所有部件都需要跟车移动,所以我们整体选用两块12V电池,PLC工作电源选用24V直流,用的是信捷XC3-14的PLC两个(因有四个步进电机,而每个XC3-14只有两个高速脉冲输出)。
(二)硬件连接
按照系统控制要求,系统I/O硬件连接如图3所示(部分):
三、步进电机PLC控制系统的软件设计
步进电机控制程序可以采用梯形图语言或者指令表语言等进行编制,控制程序在上位机中编制、调试和编译后,即可下载到PLC中。如图4所示为一个电机控制梯形图(部分)。Y0口输出脉冲信号,Y1和Y2为方向和脱机信号。设计时我先用西门子S7-200系列PLC编程调试,成功后改用所选PLC。
四、结语
利用PLC可方便地实现对电机的方向和位置进行控制,可靠地实现各种步进电机的操作,完成机器人的各种复杂工作。步进电动机以其显著的特点,在数字化制造时挥着重大的用途。伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。
参考文献
[1]李道霖.电气控制与PLC原理及应用(西门子系列)[M].电子工业出版社,2004.
[2]杨莹,邵英,等.可编程控制器案例教程[M].机械工业出版社,2008.
篇4
关键词:虚拟人 运动控制 关键帧 运动捕捉
虚拟人是人在 计算 机生成空间中几何特性与行为特性的逼真表示。虚拟人的运动生成及控制主要研究虚拟人在计算机生成空间中的动态特性,它应符合人体运动的基本 规律 ,并能提供简单直观的控制方式。
1 虚拟人运动模型的建立
人体有二百多个关节,如果对人体进行关节化的建模生成三维人体模型,并提供所有关节的位置量和旋转角,产生模型的驱动数据进行仿真是一项艰巨的任务。为了有效的应用动力学方法进行虚拟人仿真,几何建模时应考虑三维人体的运动特性和动力学特性。将人体各部位体抽象为简单的刚性几何实体,即它们具有质量和转动惯量,这样可以避免人体各部位任意表面形状的复杂计算。描述人体的模型主要涉及人体的头、躯干、四肢等部位。人体模型各肢体之间存在运动连带关系,将关节看成点,将关节之间的骨骼看成是链,就可以按运动关系将各肢体连接起来。三维虚拟人体模型是由相应的部位体和关节组合而成的链状层次结构 ,其运动是由整体的平移、旋转以及各关节的旋转产生的。用树结构来表达人体模型的关节层次化结构如图1:
2 虚拟人运动控制
2.1 基于关键桢技术的运动控制
在应用关键帧技术产生虚拟人的运动时,应注意所插值的参数,否则会产生不恰当的运动。由于关键帧插值不考虑人体的物理属性以及参数之间的相互关系,因此插值得到的运动不一定是合理的,通常需要动画师对运动进行仔细的调整。尽管如此,由于关键帧技术的使用简便,因此仍然是最常用的动画生成方法。
从原理上说关键帧插值问题可归结为参数插值问题,传统的插值方法都可应用到关键帧方法中。但关键帧插值又与纯数学的插值不同,它有其特殊性。一个特定的运动从空间轨迹来看可能是正确的,但从运动学或动画设计角度来看可能是错误的或者不合适的。用户必须能够控制运动的运动特性,即通过调整插值函数来控制速度的变动。为了很好地解决插值过程中的时间控制问题,用双插值的方法来控制运动参数。其中之一为位置样条,它是位置对关键帧的函数,另一条为运动样条,它是关键帧对时间的函数。
关键帧的位置插值可以由样条驱动插值和速度曲线插值实现。样条驱动动画是指先设计好物体的运动轨迹,然后指定物体沿该轨迹运动。通常,物体的运动轨迹为三次样条曲线,并且由用户交互给出。在利用速度曲线实现关键帧插值中,物体的运动可由速度曲线来控制。对于给定的时间,先由速度曲线得到弧长,然后由弧长计算出轨迹曲线上的点,最终实现位置插值。
关键帧插值系统中要解决的另一个问题是物体朝向的插值问题。物体的朝向一般可由euler角来表示,因此朝向的插值问题可简单地转化为3个euler角的插值问题。但euler角又有它的局限性,因为旋转矩阵是不可交换的。euler角的旋转一定要按某个特定的次序进行,等量的euler角变化不一定引起等量的旋转变化导致了旋转的不均匀性。shoemake为了解决因采用euler角表示引起的麻烦,最早把四元数引入了动画中并提出了用单位四元数空间上的bezier样条来插值四元数。
2 运动捕捉技术
运动捕捉方法是指通过传感设备记录人体在三维空间中的运动轨迹,并将其转化为抽象运动数据,然后根据这些数据驱动虚拟人运动的方法。为了达到虚拟人运动与控制的目的,通常还需要对运动捕捉数据进行编辑与合成。同时,运动编辑与合成还可以提高运动捕捉数据的可重用性、建立超乎实际的运动、突出次要运动以及生成新的复杂运动等。运动捕捉方法最大的优点在于虚拟人的运动基本上是真实人运动的复制品,因而效果非常逼真。但同时这种方法也存在运动捕捉设备昂贵、附加在表演人员身上的传感设备限制了人体的自由运动等缺陷。
从技术的角度来说,运动捕捉的实质就是要测量、跟踪、记录物体在三维空间中的运动轨迹。典型的运动捕捉设备一般由以下几个部分组成:
(1)传感器:被固定在运动物体特定的部位,向系统提供运动的位置信息。
(2)信号捕捉设备:负责捕捉和识别传感器信号。
(3)数据传输设备:负责将运动数据从信号捕捉设备快速准确地传送到 计算 机系统。
(4)处理设备:负责处理系统捕捉到的原始信号,计算传感器的运动轨迹,对数据进行修正、处理,并与三维角色模型相结合。
基于运动捕捉的虚拟人控制大致可以分为以下几类:
(1)运动捕捉数据直接驱动
运动捕捉数据直接驱动就是将运动捕捉数据的空间坐标或者关节角赋给虚拟人模型,让模型根据原始数据运动。但是由于运动捕捉错误数据的存在,再加上表演者和模型的骨干匹配问题等,这种方法往往会产生很大的误差,致使人体运动变形。
(2)与关键桢综合
利用纹理和综合的方法,让动画师先设置少数的关键帧,根据运动捕捉数据来帮助制作动画。这样做的原因是由于在人和动物的运动中,关节之间有很多关联。这种关联在重复动作中更为明显。
(3)动力学匹配
动力学匹配是用有人性特点的动力仿真和跟踪控制器来跟随运动数据,因为在被捕捉的演员和虚拟人之间有很多的动力学匹配。人的运动数据被转成连接的角度且被用来作为轨迹控制器的期望值。控制器计算转动力矩,是基于系统状态和期望得到的连接角度的误差。得到的转动力矩应用于动力学模型,同时通过运动方程,就可以计算新的系统状态。
用动力学控制虚拟人的运动体现了人体运动的真实性,但运动 规律 性太强。在基于动力学的模拟中,也要考虑两个问题:正向动力学问题和逆向动力学问题: 正向动力学问题是根据引起运动的力和力矩来计算末端效应器的轨迹。逆动力学问题更有用,用户通过指定末端关节的位置,计算机自动计算出各中间关节的位置,即关节角是自动确定的,可以确定产生系统中规定运动的力和力矩。
3 基于物理的仿真技术
与关键帧技术不同,基于物理的仿真技术是利用动力学、生物力学等物理定律产生运动的。我们通常采用有关节的基于动力学的模型来实现动态仿真,即构建角色的动力学模型,通过仿真计算它们的运动。这就意味着物体的运动受物理规律的支配,以便创作 自然 逼真的动画。基于物理的仿真技术优越于其它运动控制技术的优点主要表现在:首先,利用基于物理的仿真技术可以生成用关键帧技术无法实现的完全符合物理特性的理想的运动,基于物理的仿真技术在 体育 训练方面的应用最为广泛;其次,在与用户的交互方面,基于物理的仿真技术能实现比关键帧或是运动捕获技术更精确的交互。
4 结语
虚拟人的运动控制需要解决的主要问题是:各种方法的组合以及现存运动的参数化。以上方法在运用时都存在利弊,体现在自动生成和手工控制之间。因此,将这几种技术融合使用,充分发挥每种技术的优势,就成为了目前一个很好的解决方法。
参考 文献
[1] 吴家铸,党岗,刘华峰,程志全,阳明.视景仿真技术及应用[m].西安:西安 电子 科技大学出版社,2001.
篇5
关键词:六自由度;工业机器人;运动控制系统
自动化工业系统中工业机器人是一种不可或缺的设备,为人类社会进步和历史发展奠定基础。随着社会生产力的全面提升,越来越多的劳动力被需要,这就使得逐渐凸显出重复劳动力的问题,为了有效解决上述问题,机器人是一种良好措施。虽然工业机器人研究方面具备一定成绩,但是相比国外发达国家来说,还是具备一定差距,为此需要进一步研究六自由度工业机器人,集中阐述运动控制系统。
1设计运动控制系统基本方案
基于六自由度工业机器人基本系统的基础上来构建控制系统,六自由度工业机器人运动控制系统主要包括两个部分:软件和硬件。软件主要就是用来完成机器人轨迹规划、译码和解析程序、插补运算,机器人运动学正逆解,驱动机器人末端以及所有关节的动作,属于系统的核心部位。硬件主要就是为构建运动控制系统提供物质保障[1]。
2设计硬件控制系统
在六自由度工业机器人的前提下,利用ARM工控机来设计系统方案。下位机模块是DMC-2163控制卡。通过以太网工控机能够为DMC-2163提供相应的命令,依据命令DMC-2163执行程序,并且能够发出控制信号。利用伺服放大器对系统进行放大以后,驱动设备的所有电机进行运转,保障所有环节都能够进行动作。工业机器人通过DMC-2163输送电机编码器的位置信号,然后利用以太网来进行反馈,确保能够实时监控和显示机器人的实际情况。第一,DMC-2163控制卡,设计系统硬件的时候,使用Galil生产的DMC控制器,保障能够切实满足设计的性能和精度需求,选择DMC-2163控制器来设计六自由度工业机器人,依据系统API来二次开发工控机。第二,嵌入式ARM工控机。实际操作中为了满足系统高性能、可靠、稳定的需求,使用嵌入式FreescaleIMx6工控机,存在1.2GHz主频率。Cortex-A9作为CPU,拥有丰富的硬件资源,能够全面满足设计六自由度机器人的需求[2]。
3设计和实现控制系统软件
3.1实现NURBS插补依据系统给定的控制顶点、节点矢量、权因子来对NURBS曲线进行确定,插补NURBS曲线的关键实际上就是利用插补周期范围内存在的步长折线段来对NURBS曲线进行逼近,因此,想要实现NURBS插补就需要切实解决密化参数和轨迹计算两方面内容。第一,密化参数。实际上就是依据空间轨迹中给定的补偿来对参数空间进行映射,利用给定步长来计算新点坐标和参数增量。第二,轨迹计算。实际上就是在具体体现空间回轨迹的时候合理应用参数空间坐标进行反向映射,以便于能够得到对应的映射点,也就是插补轨迹新点坐标。为了有效提升插补实时性以及速度,需要进行预处理,确保可以降低计算量。通过阿当姆斯算法,有机结合前、后向差分来进行计算,保障能够防止计算隐式、复杂的方程。为了确保可以有效地进行插补计算,设计过程中通过Matlab平台进行仿真处理[3]。3.2实现ARM工控机基于ARM工控机来展现六自由度工业机器人运动控制系统的软件,实际操作中开发软件环境是首要问题,把Linux系统安装在FreescaleIMx6中,构成ubuntu版本的控制系统,并且系统中移入嵌入式Qt,并且在ubuntu中移入DMC控制器中的Linux库[4]。利用图形用户界面来设计软件,构件主体框架的时候合理应用QMainWindows,为了能够全面实现系统所有模块的基本功能,需要合理应用QDialog、QWidget类,通过Qt信号、配置文件、事件管理、全局变量等来展现模块的信息交流功能。控制软件系统包括以下几方面内容:第一,文档管理模块。文档管理模块能够保存文件、重新构建文件,是一种可以被DMC-2163解析的文档二字符指令集,以便于能够简单控制代码测试机器人的轴[5]。第二,与下位机通讯模块,这部分实际上就是通过DMCComandOM()函数来对编码器数值进行关节转角数据的获取,计算运动轨迹的时候应用正逆运动学,同时利用DMCdownloadFile()函数,在控制器中下载运动指令。第三,人机界面模块。这种模块主要就是用来更新和显示机器人运动状态的,此外也能够设置用户输入的数据,保障能够实时监控和控制机器人的基本情况。第四,运动学分析模块,在已经获取末端连杆姿态和位置的基础上,来对机器人转角进行计算的方式就是逆解。在已经计算出关节转动角度的基础上,来对空间中机器人姿态和位置进行求解的方式就是运动学正解。机器人想要正确运行的前提就是运动学分析模块,并且对机器人目标点是否符合实际情况进行分析,保障能够及时更改错误。第五,轨迹规划模块。这种模块可以为完成基本运动作业提供依据,不仅可以完成圆弧运动和直线运动,也能够进行NURBS插补,保障能够自由地进行曲线运动。第六,机器人在完成十分复杂的再现和示教操作的时候,利用再现模式界面来对示教动作进行自动操作。第七,设置系统。设计的过程中应该对系统进行合理设置,如限制运动权限、进入系统的密码、机器人系统参数等。在设置系统参数的时候,能够在六自由度工业机器人中来实现控制系统软件的基本作用,以此来保障控制软件系统设计的通用性。第八,状态显示模块。这种模块可以具体显示完成作业的进度、机器人安装的姿态和位置、控制器I/O。第九,设置机器人参数,一般来说主要包括伺服驱动倍频比/分频比、运动学DH参数,六自由度工业机器人设计结构取决于DH参数;机器人DMC控制卡输送单个脉冲过程中的关节转动角度取决于倍频比/分频比[6]。3.3运行系统软件软件控制系统设计中成功测试各模块以后,在程序主框架中进行合理应用,以便于设计实现机器人系统。成功测试系统软件以后具备运动控制系统的基本功能。
4结语
综上,在基于目前已经存在的六自由度机器人系统上来设计运动控制系统,嵌入式ARM工控机和DMC-2163控制卡是硬件系统设计的关键。在Ubuntu的基础上构建Qt平台,此时合理科学地设计软件系统。此外把NUBRS插补计算方式融入到控制系统中,保障在轨迹空间中机器人末端能够形成自由曲线轨迹。运动控制系统为机器人提供图形界面,能够为系统运行提供比较好的扩展性、高通用性,并且操作也十分方便,因此这种运动控制系统应用具备广阔的前景。
参考文献
[1]张鹏程,张铁.基于矢量积法的六自由度工业机器人雅可比矩阵求解及奇异位形的分析[J].机械设计与制造,2011(8):152-154.
[2]张鹏程,张铁.基于包络法六自由度工业机器人工作空间的分析[J].机械设计与制造,2010(10):164-166.
[3]倪受东,丁德健,张敏,等.视觉功能六自由度工业机器人的研制[J].制造业自动化,2012,34(24):1-4,9.
[4]吴应东.六自由度工业机器人结构设计与运动仿真[J].现代电子技术,2014(2):74-76.
[5]田东升,胡明,邹平,等.基于ANSYS的六自由度工业机器人模态分析[J].机械与电子,2012(2):59-62.
篇6
【关键词】旋切 运功控制 飞剪
本文主要针对纸袋机剪切控制系统开展研究和设计工作,在分析纸袋机剪切生产工艺和控制要求的基础上,按照“运动控制器+伺服系统+触摸屏”的型式,设计了纸袋机伺服跟踪切系统。该系统解决了不同袋长必须换轮问题,同时增加色标追踪功能实现了偏差的自动补偿。
1 运动控制器+伺服驱动+触摸屏方式+编码器测速+色标补偿
(1)运动控制器:用户可以根据自身需要用Trio Basic语言进行程序开发,整个系统可以脱离任何外界PC系统进行独立的运行。MC408本体可以驱动8个伺服或步进轴,自带16输入,8输出,还有1个Can扩展口通讯口。(2)切断伺服驱动器:伺服选7.5KW安川伺服1套,配减速比10/1的行星减速机。伺服电机额定转速1500转,额定扭矩50Nm,减速机额定输出最高扭矩500Nm,最高速度1000Nm(2倍过载)。(3)点胶伺服驱动:伺服选1.5KW安川伺服3套,各配减速比10/1的行星减速机驱动3根点胶轴。(4)测速编码:5000P/R 长线驱动。(5)色标传感器:选用基恩士颜色传感,最高响应时间0.2us。
2 控制实现
2.1 运动控制指令
(1)MOVELINK指令在基本轴产生直线运动,通过软件电子齿轮与连结轴的测量位置建立连接。连结轴可以向任意方向运动驱动输出运动。参数表明基本轴的距离会使连结轴移动相应的距离(link_distance)。连结轴的距离分成3个阶段应用于基本轴的运动。这些部分是加速部分,常速部分和加速部分。连结加速度和加速度由link_acceleration和link_deceleration参数设置。常速连结距离源于总的连接距离和这两个参数。三个阶段可以分为独立的MOVELINK指令或叠加在一起。
(2)ADDAX指令将叠加轴的目标位置加到运动轴的轨迹上。ADDAX允许执行两轴叠加运动。连接两轴以上,同样可以使用ADDAX。
(3)FLEXLINK 指令实现跟随主轴按定义的轨迹做运动。轨迹分2部分,基本部分(恒速段)和调整部分(变速段)。调整部分按正弦曲线叠加在恒速部分。
2.2 曲线定义
通过3段曲线实现旋切功能,即每一设定袋长,切刀旋转一圈,切一次。三段曲线如下:
(1)加速阶段曲线:distance1 = 0.5;link_acc1 = (0.5-VR(startsynpos)/10/360) * (VR(fsydistance)/10) *2;link_dec1 = 0;link_dist1 =(VR(startsynpos)/10/360)*(VR(fsydistance)/10) + link_acc1
MOVELINK (0.5,link_dist1,link_acc1,link_dec1,VR(move_axis))AXIS(VR(cut_axis))
(2)恒速阶段:base_dist= INT((VR(cutlength)/VR(fsydistance))*1000+0.5)/1000;
excite_dist=1 - base_dist;link_dist2= VR(cutlength)/10;
base_out=100*(VR(startsynpos)/10/360)*(VR(fsydistance)/10) / (VR(cutlength)/10);base_in=100*(VR(endsynpos)/10/360)*(VR(fsydistance)/10) / (VR(cutlength)/10);stop_length =((360-(VR(startsynpos)+VR(endsynpos))/10)*2+(VR(startsynpos)+VR(endsynpos))/10)*VR(fsydistance)/360/10;
IF VR(cutlength)/10
excite_acc=50
excite_dec=50
ELSE
excite_acc= 100*( 1-(VR(cutlength)/10 - stop_length)*10 /VR(cutlength) )/2
excite_dec= 100*( 1-(VR(cutlength)/10 - stop_length)*10 /VR(cutlength) )/2
ENDIFFLEXLINK(base_dist,excite_dist,link_dist2,base_in,base_out,excite_acc,excite_dec,VR(modify_axis))AXIS(VR(cut_axis))
(3)减速阶段distance3 =0.5;link_acc3 =0;link_dec3 =(0.5-VR(endsynpos)/10/360) * (VR(fsydistance)/10) *2;link_dist3 =VR(endsynpos)/10/360)*(VR(fsydistance)/10) + link_dec3;MOVELINK (distance3,link_dist3,0,link_dec3,VR(modify_axis))AXIS(VR(cut_axis))
注明:VR(startsynpos):开始同步角;VR(fsydistance):切刀周长;VR(endsynpos):结束同步角;VR(cutlength):袋长。
2.3 偏差补偿
切刀每次切断时当前长度清零,从头开始计长,当检测到色标时,当前值与理论值做比较生成偏差量,该偏差量通过Addax在补偿段叠加到切断轴上实现偏差补偿。
3 安装调试
装配必须严格按照使用说明书、原理图及技术规范执行。减少干扰和扰,电机线选用95%屏蔽线并将屏蔽层牢固接地,编码器线选用多芯屏蔽双绞线,驱动器妥善接地。
本次控制是采取模拟输出作为定伺服速度,驱动器分频反馈做闭环控制。因此在调试控制前,先将驱动器和电机整定,动态优化,把伺服系统的动态响应尽量调高,直到不产生振荡为止;然后调整运动控制的P增益,直到该轴跟随误差尽量小,而系统又不产生振荡为止。
4 \行效果
连续工作了一段时间,实切袋长与设定袋长最大误差1mm以内。不同袋长切换简单,只需要从屏上设定袋长即可。当需要色标补偿时,只需要选通色标追踪就能实现自动补偿,非常方便,完全达到预期效果。
5 结语
该控制系统具有较高的位置控制精度和良好的速度跟随特性,满足纸袋机高性能要求, 使用的灵活、高速、精确等主要特点,从而提高人们的工作效率与质量,对其它高性能剪切整套设备的研发具有借鉴意义。
参考文献:
[1]张建飞.基于Trio运动控制平台的三棱形内外圆磨削系统设计与实现[D].重庆大学,2007年.
篇7
中图分类号TP20 文献标识码A 文章编号 1674-6708(2012)80-0204-02
0 引言
运动控制的应用在国内已有十几年的历史,技术也相当成熟。相对于PLC、变频器等广为人知的产品而言,单片机更具有巨大的潜力市场。新旧技术的交替也形成了市场的另外一个重要驱动力,在加工制造领域,单片机控制仍旧是运动控制市场最主要的趋势,单片机控制市场仍将继续缓慢增长。 运动控制系统通过驱动装置将预定指令变成期望的机构运动,一般功率较小,并有定位要求和频繁启制动的特点,目前在导航系统,雷达天线,精密数控机床,加工中心,机器人,打印机,复印机,磁纪录仪,磁盘驱动器,自动洗衣机,电梯等领域得到广泛的应用。
1 运动系统组成
控制系统分为三大模块:单片机系统,步进电机驱动模块和步进电机如图1。驱动模块采用AT89C2051通过对输入的脉冲信号进行处理,并有四种步距角可供选择,实现恒流驱动,驱动两相混合式步进电机。
硬件设计的基本思路是可靠、实用以及小型化[1]。采用AT89C55微控制器,ATMEL公司的单片微处理器AT89C55WD,内部程序存储器20K,晶振12M,为AT89C5X系列之一,外围电路与AT89xx系列相同,含P0、P1、P2、P3四个接口。 4*4独立式键盘和液晶显示器直接与单片机相连接。键盘设定为功能键,设定运行、停止、复位、参数输入等功能。液晶显示相应的设定功能,在运动进行中显示设定坐标和动态坐标。以悬挂运动控制为设计目标,总系统设计框图如图2。
2 软件设计
根据运动的要求,在不同时刻输出相应脉冲数来控制电机的运动[2]。 步进电机的加/减速是通过控制脉冲的频率来实现。脉冲频率增高提速,脉冲频率减少时则减速。为精确到达指定位置,同时控制左右电机的运动,通过嵌套程序来循环控制。由左右滑轮的绕转自 绳、放绳的多少和快慢解决上述三个问题,即控制步进电机的转速,转的圈数和方向。在此过程中要处理好两个问题:
1)运动速度的精确性
建立一个校验机制,以防超过或未达到所需速度,从一个速度准确达到另外一个速度。
2)滑轮运动方向的转换
高速运动下方向变换过程,包括减速、换向、加速的步骤,步进电机换向时要避免大的冲击而损坏电机。 换向信号在前一个方向的脉冲结束后,下一个方向的脉冲前发出。两相混合式步进电机CP脉冲的的脉冲宽度 不小于5μs 。
假设目标点的坐标为(x0,y0),计算方法如下:
脉冲步长:
L左={(15+x+c)2+[115-b/a (x+c)]2}1/2-{(15+x)2+(115-(b/a)x}1/2 ;
L右={[95-(x+c)]2+[115-b/a(x+c)]2}-{(95-x)2+[115-(b/a)x]2}1/2 ;
用变化量除以步长就可以得到相应的脉冲数。
运动过程为使运动轨迹圆滑,左右轮流控制。控制运动轨迹子程序框图[3]。
3 系统功能测试
运动板面的下方左右各安装一个步进电机,在电机的垂直上方安装滑轮拖动负载。运动控制器通过插接线与电机连接。根据设定平面坐标的直线运动,运动在185s内完成;设定圆心坐标和半径的圆周运动,圆周运动210s内完成。测试结果如下:
4 结论
单片机控制双步进运动控制过程中,以软件算法为主体控制运动轨迹,根据运动的轨迹和相应的外围要求改变单片微型控制器的选择,一般运动控制选择AT89系列就可满足,同样在大型控制系统中,一般都可与MCS-51兼容[4],即可用嵌入式系统,在线可编程系统等。如用UPSD系统作为微型控制器可与之兼容,并可实现在线编程。
参考文献
[1]贾智平,石冰.微机原理与接口技术[M].北京:中国水利水电出版社,1999.
[2]白恩远,王俊元.现代数控机床伺服及监测技术[M].北京:机械工业出版社,1991.
篇8
关键词:CMC; 运动控制; 国产芯片
Research and Application of Motion Control Module Based on CMC
Abstract: In order to reduce the dependence of foreign chips, expand the scope of domestic chip, this paper takes the domestic CMC chip as the core, and develops the motion control system technology in ST language. It is the design idea of the system of the domestic CMC chip.
Keywords: CMC; Motion control; Domestic chip
1. 引言
全球半导体市场规模达3200亿美元,全球54%的芯片都出口到中国,但国产芯片的市场份额只占10%。全球77%的手机是中国制造,但其中不到3%的手机芯片是国产的。我国芯片产业长期被国外厂商控制,不仅每年进口需要消耗2000多亿美元外汇,超过了石油和大宗商品,是第一大进口商品。而且,受制于人的技术设备直接制约了我国产业的发展[1]。我国芯片产业一直发展缓慢,尤其在C PU方面几乎一片空白,这意味着我国制造业处于国外的控制之下,很难打破已形成的垄断,国内工业一旦用上“外国芯”将会形成长期依赖,要超越国外企业,必须使用国产芯片。
计算机数控(CNC)是本世纪 70 年展起来的控制新技术。它综合了计算机、自动控制、测量技术、机械制造等领域的最新成就,数控技术的先进与否直接代表了一个国家的机械工业水平。
1.1 数控系统的发展及国内外现状
目前一种新型的结构为运动控制器+PC,即采用以 PC 为硬件平台的数控系统。其中最主要的部件是计算机和控制运动的控制器。控制器本身具有CPU,同时开放包括通信端口、结构在内的大部分地址空间,辅以通用的 DLL 同 PC 结合得最为紧密。这种系统的特点是灵活性好、功能稳定、可共享计算机的所有资料,目前已达到远程控制等先进水平[2]。
1.2 国产芯片CMC介绍
CMC芯片是将组态处理、程序存储、信号输入输出、控制算法、通讯接口等全部集成在一个芯片中的产品,实现的主要功能可以简述为:片内逻辑控制和运动控制,程序处理及调度管理,数字量信号处理,多种数据接口通信。使用芯片的组态软件进行逻辑控制程序和运动控制程序的编程,将编写的程序下载到芯片的片内存储器中。根据用户的程序,对输入的各种信号(包括从通信接口传入的信号)进行处理运算, 并进行相应的信号输出。逻辑控制主要包括对上层用户编写并经过编译的逻辑控制程序进行执行处理。运动控制主要包括对上层用户编写并经过编译的运动控制程序(如 G 代码)进行执行处理。数字量处理主要包括开关信号、频率信号处理,脉冲信号输入输出,PWM 输出,正交编码器输入等。芯片集成了 Flash、SRAM、通用定时器、PLL、实时钟,以及以太网 MAC、UART、CAN、SPI、I2C 等多种通信接口。
2 运动控制模块概述
2.1 CMC芯片详细参数介绍
主控芯片选用浙大中控研发的CMC运动控制芯片。CMC芯片包括基本GPIO、测试功能、以太网 MAC 、外部中断功能、脉冲输入输出PIPO、运动控制、串口通信、I2C通信、SPI 通信、CAN 通信、实时钟、电源等功能。芯片具有一个外部高速时钟 (2~15MHz) 输入接口、 一个外部 32.768KHz 时钟输入接口,分别作为系统输入时钟,RTC 输入时钟。外部输入时钟皆为有源晶振。通过芯片内 PLL 可将系统输入时钟进行倍频,倍频后的系统时钟可达 24~100MHz。PLL上电后默认为 bypass 模式,即外部时钟直接输入,不经过 PLL 倍频。上电后,PLL 复位时间至少需要 5us,稳定时间需要 100us。配置系统时钟的步骤如下:1、配置 PLL;2、使系统进入停止模式;3、唤醒系统进入工作模式;4、完成配置。CMC芯片有 4 种工作模式,分别为运行模式、等待模式、休眠模式和停止模式。片内包含512KBytes FLASH,共有 4个完全相同的但是分别独立编程的定时器。定时器在设定了预定值后,开始进行自减操作,直到减至 0,则停止减数操作并送出中断信号。芯片包含脉冲输入输出/计数器,由 4 个 16 位自动装载高级计数器构成,它适用于多种场合,包括测量输入信号的脉冲长度、脉冲个数;或者产生输出波形。GPIO共有64 个 GPIO 口通用输入输出端口,每个端口的默认状态为悬空,用户可以根据需求配置成输入,输出或者高阻。支持 5 种复位方式,分别为上电复位、软件复位、看门狗复位、外部复位和 JTAG。其逻辑控制主要实现对基于 IEC61131-3 的逻辑控制任务的调度和逻辑控制程序的执行处理。芯片采用 LQFP(Low-profile Quad Flat Package)薄型四方扁平式封装,本体尺寸为28×28×1.4mm,管脚间距为 0.5mm。
2.2 运动控制模块简介
运动控制模块是基于10/100M以太网的通用型运动控制器,可支持多个控制器和PC组成控制网络,应用于各种需要独立运行的场合。此运动控制模块基于CMC芯片的硬件结构,插补算法、脉冲信号的产生及加速和减速控制、I/O信号的检测处理,均由硬件和固件实现,确保了运动控制高速、高精度及系统稳定。该系列控制器最多可控制4个步进或伺服电机,具有曲线速度控制、多轴直线插补、两轴圆弧插补、连续曲线插补等高级功能。通过简单的编程即可开发出稳定可靠的高性能连续轨迹运动控制系统。
CMC运动控制模块除了电机控制端口外,还提供了丰富的I/O 接口和通讯接口,包括64路扩展I/O接口、4路16位高精度A/D、 D/A接口、MCP键盘、PWM输出、编码器接口、手摇脉冲发生器接口、网络接口、串行口、CAN接口。用户可通过网口与PC机通信;可以通过串口连接其它设备,如:HMI触摸屏。
CMC运动控制模块通过四路脉冲输出接口控制伺服电机实现主机要求的运动。运动控制器是由主机发送的运动控制命令驱动其工作的。运动控制器提供 ST语言函数库,实现主机与运动控制器的通讯。用户通过主机程序调用相应的库函数,将运动控制器相关参数和运动轨迹描述传递给运动控制器,也就是发出运动控制命令,运动控制器将根据主机的要求,自动完成轨迹规划、安全检测、采样刷新等复杂运算和操作。计算结果转换成脉冲控制电机运动。
运动控制器还提供四路伺服电机驱动器报警信号(每轴一路)输入,四路伺服电机驱动器使能信号(每轴一路)输出,四路伺服电机驱动器复位信号(每轴一路)输出以及三十二路通用数字量输出接口、三十二路通用数字量输入接口。实现复杂灵活的运动控制[4]。
2.3 CMC运动控制模块电源与时钟拓扑结构
CMC通过一个10MHz的有源晶振提供时钟信号,网络PHY芯片由25MHz的有源晶振提供时钟信号。IMP811芯片提供整体复位信号,低电平有效。
模块电源由外部24V开关电源提供,通过TPS54383芯片转换成3.3V和5.3V电源,5.3V电压通过高抑制比的TPS7A8101芯片转换为5.0V电压,为AD、DA提供纯净电源。通过NCV1117DT18T5G将5V将为1.8VCMC内核电压。通过NCP1403SNTxG将5V升压、降压为±15V电压,提供偏置电压。
3 CMC运动控制模块测试
在组态软件中通过调用单轴控制模块,配置相应参数,可以控制电机转速、方向等参数,观察电机输出状态变化;
1. 使用功能块控制电机运动经测试可以实现电机速度、加速度、方向、启停等参数或状态控制,可以用该功能块配合手摇使用实现手摇运动控制模式或者配合键盘使用实现点动功能。
2. 使用G代码进行电机控制,经测试能够实现电机的运动控制,速度、方向、脉冲数都能按照G代码的运动参数执行。
4 小结
因国产CMC芯片还是初级阶段,功能还有所不足,芯片封装大,之后会增加更多功能,采用GBA封装,缩小芯片尺寸,降低功耗,附加自有知识产权,降低成本,增加产品竞争力。
参考文献
[1] 刘国政芯片超石油成我国第一大进口商品[N]. 经济参考报
[2] 罗云山. PLC在制造业产品自动化检验中的应用[J].装备应用与研究
[3] 张红岩. 基于运动控制卡的开放式数控系统的开发[D]. 长安大学
[4] 刘汉忠周伯荣李宏胜. 简易单轴运动控制器的设计[J].制造业自动化
篇9
关键词:RoboCup; 全方位移动机器人;FPGA; PID
中图分类号:TN911; TP242 文献标识码:A
文章编号:1004-373X(2010)14-0127-04
Medium-sized Group of Robot Motion Control System Based on FPGA
WANG Quan-zhou, PEI Dong, TAO Zhong-xing, YANG Shuo, CUI Tao, LIU Ping-he
(College of Physics and Electronic Engineering,Northwest Normal University,Lanzhou 730070,China)
Abstract: Making the medium-sized group of RoboCup soccer robot as experimental platform, an implementation of the omni-directional mobile robot motion control system based on FPGA is provided. In order to achieve precise control of the robot, the kinematics characteristics of the omni-directional robot with three orthogonal-wheels is analyzed and studied, the robot motion control model is built, and the speed closed-loop PID control algorithm using FPGA as its main processor is designed. It is found that the design method of theFPGA-based omni-directional mobile robot motion control system has good real-time performance, and can control the omni-directional mobile robot rapidly and accurately.
Keywords: RoboCup; omni-directional mobile robot; FPGA; PID
0 引 言
目前,全方位移动机器人由于具有出色的灵活性,已经成为RoboCup中型组足球机器人比赛中最理想的选择。而机器人的运动控制一直以来都是直接影响机器人性能的主要因素,也是移动机器人研究的热点之一[1]。本文研究了一种用FPGA技术实现三轮全方位移动机器人运动控制系统的方法,与双DSP结构[2],DSP+CPLD结构[3],以及DSP+专用集成电路结构等相比,该方法具有简单可靠,扩展性强等特点。且FPGA设计简单,使用方便,开发周期短,能够实现真正的SOPC系统。
1 全方位移动机器人运动模型
设世界坐标系下机器人的速度为Е=[vx,vy,],则当vx=0,vy≠0,=0时,机器人做前后方向的直线运动,当vx≠0,vy=0,=0时,机器人做左右方向的直线运动,当vx=0,vy=0,≠0时,机器人做自转运动。
┩1中,Е鬲1,ω2,ω3为3个主动轮的转动角速度,R为全向轮半径;L1,L2,L3为机器人车体中心到3组全向轮中心的水平距离,设有L1=L2=L3=L。α为前┝铰知之间的夹角,另外2个夹角均为180°-α/2。г蚧器人坐标系下的速度到三轮速度之间的关系如下[4]:
ω1
ω2
ω3=1Rcos(α/2)sin(α/2)L
-10L
cos(α/2)-sin(α/2)Lvxvyω
(1)
由式(1)可以看到:知道了机器人在平面世界坐标系中的速度要求后,便可以得到主动轮的速度要求,进而对电机发出相应的控制信号。
2 运动控制方案
本系统总体设计思路[5]如图2所示,首先通过RS 232接口,实现PC机与底层控制芯片FPGA的通信,FPGA在接收到相关的机器人坐标系下的速度后,将机器人坐标系下的速度值转化成机器人3个全向轮子的角速度,将得到的角速度值计算出相应的占空比,生成相应占空比的PWM波形,输出信号接到直流伺服电机驱动器,然后通过FPGA采集正交编码盘信号,计算出轮子实际的角速度值,做PID速度闭环控制。鉴于FPGA模块复制的优势,这里对每个全向轮分别做了PID闭环控制。
图1 全方位移动机器人的运动学模型
图2 运动控制框图
3 系统硬件设计
采用的三轮全方位移动机器人系统框图如图3所示[6],上位机主要完成图像信息的采集、处理、路径规划,并实现与场外裁判盒的通信。下位机主要是FPGA,主 要实现三轮编码信号的采集,PID速度闭环控制,踢球控制,电机控制信号的产生,还有其他的传感器 信息的采集等,并负责与上位机之间的信息交互。本设计只是完成了下位机运动控制部分。
图3 全方位移动机器人控制系统
3.1 正交编码信号采集与测速实现
增量式光电编码器输出信号如图4所示。
图4 编码器信号图
A、B两相信号是相位相差90°的正交方波脉冲串,每个脉冲代表被测对象旋转了一定的角度,A、B之间的相位关系则反映了被测对象的旋转方向。在FPGA中设计4倍频和鉴向电路,本设计采用2路输出:一路输出方向,另一路输出脉冲,并对鉴向倍频电路进行仿真,如图5所示。
图5 4倍频电路仿真图
根据脉冲计数来测量转速的方法有M法、T法以及M/T法3种。M法适用于高速测量场合,在低速时有较大的误差;而T法,恰恰相反,在低速时测量准确,高速时误差较大。
本设计采用文献[7]所描述的方法。该方法如图6所示,设定参考闸门时间为固定的1个值,它只是作为参考信号和编码信号共同确定实际的闸门时间。这样确定的闸门时间为被测信号的整周期倍,能够有效提高测量精度。则测得的速度为[7]:
v=360°fM1/(2NM2) (2)
3.2 增量式PID控制原理及其FPGA实现
实际机器人的数学模型不可避免地存在一定程度的参数不确定性,且三轮全方位移动机器人的正交全向轮在行走时会与地面交替接触而产生一些不确定摩擦转矩,这些都会给机器人的精确控制带来难度[8]。为了对三轮全方位移动机器人进行精确的控制,系统采用PID速度闭环控制算法对机器人的3个全向轮进行速度调节。
图6 变M/T法测速原理图
令采样周期为TS,将连续PID公式离散化后可得到数字PID算法表达式[9]:
u(k)= KPe(k)+TSTI∑kj=0e(j)+
TDTS[e(k)-e(k-1)](3)
其中,令:KI=KP(TS/TI),KD=(TD/TS)У:
u(k)=KPe(k)+KI∑kj=0e(j)+KD[e(k)-e(k-1)] (4)
式中:k为采样序号;u(k)为第k个采样时刻的计算机输出值;e(k)为第k个采样时刻的计算机输入误差值;e(k-1)为第k-1个采样时刻的输入误差值;KP为比例系数;KI为积分系数;KD为微分系数。
这种算法虽然比较直观,但由于是全量输出,所以每次输出均与过去的所有状态有关,计算时要对e(k)进行累加,Ъ扑慊运算量大。
于是产生了增量式PID算法:
Δu(k)=u(k)-u(k-1) (5)
Δu(k) =KP[e(k)-e(k-1)]+KIe(k)+KD[e(k)-2e(k-1)+e(k-2)]
=(KP+KI+KD)e(k)-(KP+2KD)e(k-1)+KDe(k-2)
令:
A=(KP+KI+KD),B=(KP+2KD),C=KD
所以有:
Δu(k)=Ae(k)-Be(k-1)+Ce(k-2) (6)
u(k)=u(k-1)+Δu(k) (7)
上述公式(7)为增量式PID控制算法。只输出控制增量,误动作影响较小,且控制增量只与最近几次的采样值有关,容易通过加权处理获得比较好的控制效果[2]。
根据以上公式推导,结合FPGA的工作特点,本文设计了适合FPGA的增量式PID实现结构[10]。
由图7可以看出,增量式PID控制算法程序结构,只要最近的3个误差采样值就可以加权计算。这在FPGA内部完全可以并行实现,移位部分结构类似FIR滤波器的实现结构,难点是FPGA设计时对有符号数的熟练操作和保证累加器不能溢出。
图7 增量式PID实现框图
一种高效的硬件测试手段和系统测试方法,它能够获取并显示可编程片上系统(SOPC)的实时信号,它可以随设计文件一起下载到FPGA中,用于捕捉FPGA内部节点和I/O引脚的状态,就如同使用真的逻辑分析仪一样,对设计进行在线仿真,但又不影响硬件系统的工作[11]。
为了检验测得的全向轮实际速度值是否准确,对设计的测速模块进行了在线仿真。设定每个全向轮以固定的速度转动,对比测得的实际速度值和设定的速度值,如图8所示。
图8 测速模块在线仿真图
在嵌入式逻辑分析仪中,对PID模块也进行了在线测试。实验条件:在空载条件下,频繁变化电机的速度,通过嵌入式逻辑分析仪观察FPGA内部PID调节后的速度值和设定值,图9所示为一号全向轮的速度设定值与反馈速度值。
三轮全方位移动机器人与双轮差速不同,具有很大的灵活性,况且由于3个全向轮的负载的不同,使得机器人不能走出精确的直线。而要实现机器人的精确控制,一个前提就是让它能够走出很直的直线。为检验机器人控制性能,设计了如下实验:机器人以固定速度分别向前后左右4个方向行走,先观察没有加入PID控制算法时的情况,然后再观察加入PID控制算法时的情况。实验的结果如表1所示。
表1 PID控制算法对机器人性能的影响
前后直线运动左右直线运动
没有PID控制算法直线运动(4 m)划出直径约为3 m的圆圈
加入PID控制算法直线运动(6 m)直线运动(6 m)
图9 PID控制器硬件仿真
分析:由于机器人的3个全向轮所承受的负载不一样,即在相同的占空比的PWM下,3个轮子的实际速度并不相同,这就使得三轮速度不可能准确合成机器人的速度,进而影响机器人的控制轨迹。根据图1所示的机器人1号轮和3号轮负载相当,2号轮子承受的负载较大,没有加入PID控制器时,前后运动虽然在一定范围内近似直线,但是机器人运行的速度达不到预期设定的速度,左右运动轨迹就是一个圆,而且设定的机器人左右移动速度大小还决定了机器人是朝顺时针方向还是逆时针方向转圈。加入PID控制算法后,轮子的速度得到校正,机器人能够以预期设定的速度前后左右运动,特别是左右运动在一定范围内近似为直线,不再是圆圈。可见PID闭环控制算法明显提高了机器人的控制性能。
5 结 语
针对目前常见的以DSP为核心实现足球机器人底层运动控制系统的方案,提出了一种采用FPGA实现三轮全方位移动足球机器人的底层运动控制系统的方法。通过在三轮足球机器人上的应用实践,发现这种采用FPGA实现的方案有很好的实时性,精确度较高,而且由于FPGA本身的引脚多特点,其可扩展性较强,比如可以通过串口配置数字罗盘等信息传感器等其他传感器,同时,本设计对于研究多电机的机器人运动控制系统的实现方案有重要的参考价值和实用价值。
另外,由于全向轮的随动性较强,且易打滑,在实行精确控制的时候方向容易受到影响,而且PID闭环控制算法反应时间较长,参数还需要更多时间的调试,在以后的研究中,我们将研究更为精确的控制算法,实现对机器人的精确控制。
参考文献
[1]TU Kuo-yang, LUO Shi-chao.Design and implementation of omni-directional soccer robots for roboCup[J].IEEE International Conference on System,Man and Cybernetics, 2006,10:2000-2005.
[2]黄永贤.全自主足球机器人运动控制系统的研制[D].广州:广东工业大学,2008.
[3]冷春涛,曹其新,黄彦文,等.基于SoC的全方位移动机器人运动控制系统设计与实现[C].2005年中国智能自动化会议论文集,2005.
[4]聂晓璐.全方位小型足球机器人运动性能研究[D].天津:天津大学,2006.
[5]CHARITKHUAN Chirot, BHURIPANYO Janjai, CHOO-MUANG Rerngwut. FPGA implementation of closed-loop control system for small-sized roboCup[J].IEEE Conference on Robotics,Automation and Mechatronics, 2006,6:1-6.
[6]罗真,曹其新,陈卫东.中型组自主式足球机器人平台设计回顾[J].机器人,2003,25(4):378-384.
[7]李拥军,杨文淑.光电编码器测速算法的IP核实现[J].长春理工大学学报:自然科学版,2008,31(3):35-37.
[8]李永新.RoboCup小型组足球机器人结构设计与分析[D].北京:中国科技大学,2003.
[9]杨文超,张荣标,张春艳.基于FPGA的PID控制器的研究[J].微计算机信息,2005,21(11):135-137.
篇10
关键词:移动机器人;运动控制;四轮全向机器人;模糊PID
中图分类号:TP273文献标识码:A
文章编号:1004-373X(2009)05-131-03
Research on Fuzzy PID Motion Control of Omni-directional Robot
TIAN Qi,ZHANG Guoliang,LIU Yan
(Second Artillery Engineering University,Xi′an,710025,China)
Abstract:Through analysing the kinematics model of soccer robot,considering time change,nonlinear and other characteristics of this system,a control method combining fuzzy control with traditional PID control is presented.To contrapose the problems of robot soccer motion system,the methods of dynamically regulate the three PID parameters based on fuzzy control is presented.The improvement of control effect is verified by experimental results.
Keywords:mobile robot;motion control;four wheeled omni-directional robot;fuzzy PID
0 引 言
移动机器人是一个集环境感知、动态决策、行为控制与执行等多种功能于一体的综合系统[1],其运动控制是移动机器人领域的一个重要研究方向,也是移动机器人轨迹控制、定位和导航的基础。传统的运动控制常采用PID控制算法,其特点是算法简单,鲁棒性强,可靠性高,但需要精确的数学模型才对线性系统具有较好的控制效果,然而它对非线性系统的控制效果并不非常理想。模糊控制不要求控制对象的精确数学模型,因而灵活、适应性强。可是,任何一种纯模糊控制器本质上是一种非线性PD控制,不具备积分作用,所以很难在模糊控制系统中消除稳态误差。针对这个问题,采用模糊PID控制方法,将模糊控制器和传统的PID控制相结合,使其既具有模糊控制灵活、适应性强的优点,又具有PID控制精度高的特点。
1 全方位移动机器人运动学分析
研究的是由第二炮兵工程学院自主研制的全自主移动机器人平台东风-Ⅱ型足球机器人。东风-Ⅱ型机器人采用了四轮全向移动的运动方式,具有全向运动能力的系统使机器人可以向任意方向做直线运动,而之前不需要做旋转运动,并且这种轮系可满足一边做直线运动一边旋转的要求,以达到终状态所需要的任意姿态角。全向轮系的应用将使足球机器人具有运动快速灵活,控球稳定,进攻性强,以及易于控制等优点,使机器人在赛场上更具竞争力。
1.1 全向轮
该机器人采用在大轮周围均匀分布小轮子的全向轮,大轮由电机驱动;小轮可自由转动。这种全方位轮可有效避免普通轮子不能侧滑所带来的非完整性约束,使机器人具有平面运动的全部三个自由度,机动性增强。基于以上分析,选择使用这种全向轮。
1.2 运动学分析
在建立机器人的运动模型前,先做以下假设:
(1) 小车是在一个理想的平面上运动,地面的不规则可以忽略。
(2) 小车是一个刚体,形变可以忽略。
(3) 轮子和地面之间满足纯滚动的条件,没有相对滑动。
全方位移动机器人由4个全向轮作为驱动轮,它们之间间隔90°均匀分布(如图1所示),其简化运动学模型如图6所示。其中,xw-yw为绝对坐标系;xm-ym为固连在机器人车体上的相对坐标系,其坐标原点与机器人中心重合。θ为xw与xm的夹角;δ为轮子与ym的夹角;L为机器人中心到轮子中心的距离;vi为第i个轮子的沿驱动方向的速度[2]。
图1 机器人的运动模型
可求出运动学方程如下:
v1=-sin(δ+θ)w+cos(δ+θ)w+L
v2=-sin(δ-θ)w-cos(δ-θ)w+L
v3=sin(δ+θ)w-cos(δ+θ)w+L
v4=sin(δ-θ)w+cos(δ-θ)w+L(1)
因为轮子为对称分布,常数δ为45°,故得到全向移动机器人的运动模型:
v=Ps(2)
其中:v= [v1 v2 v3 v4]T为轮子的速度;s=[w w ]T为机器人整体期望速度。
P=-sin(45°+θ)cos(45°+θ)L
-sin(45°-θ)-cos(45°+θ)L
sin(45°+θ)-cos(45°+θ)L
sin(45°-θ)cos(45°-θ)L
P为转换矩阵。
这样,就可以将机器人整体期望速度解算到4个轮子分别的速度,把数据传送到控制器中,可以完成对机器人的控制。
2 基于模糊PID的运动控制器设计
目前,常规PID控制器已被广泛应用于自动化领域,但常规PID控制器不具备在线整定控制参数kP,kI,kD的功能,不能满足系统的不同偏差对e和偏差值变化率ec及对PID参数的自整定要求,因而不适用于非线性系统控制。
结合该运动控制系统的实际运行条件,设计采用模糊PID控制方法来实现快速移动机器人车轮转速大范围误差调节,将模糊控制和PID控制结合起来构成参数模糊自整定PID算法用于伺服电机的控制,使控制器既具有模糊控制灵活而适应性强的优点,又具有PID控制精度高的特点,使运动控制系统兼顾了实时性高,鲁棒性强及稳定性等设计要点,并可通过模糊控制规则库的扩充,为该运动控制系统方便添加其他功能[3]。
2.1 参数模糊自整定PID的结构
模糊PID控制系统结构框图如图2所示,系统的输入为控制器给定轮速,反馈值为电机光电码盘反馈数字量,ΔkP,ΔkI,ΔkD为修正参数[4]。PID控制器的参数kP,kI,kD由式(3)得到(kP′,kI′,kD′为PID参数初值):
kP=kP′+ΔkP
kI=kI′+ΔkI
kD=kD′+ΔkD(3)
由此,根据增量式PID控制算法可得到参数自整定PID控制器的传递函数为:
u(k)=u(k-1)+(kP+ΔkP)+
(kI+ΔkI)e(k)+(kD+ΔkD)・
(4)
图2 自适应模糊控制器结构
2.2 速度控制输入/输出变量模糊化
该速度控制器的输入为实际转速与设定转速的偏差值e,以及偏差值的变化率ec;输出量为PID参数的修正量ΔkP,ΔkI,ΔkD。它们的语言变量、基本论域、模糊子集、模糊论域及量化因子如表1所示[5]。
表1 输入、输出量的模糊化
变量
eecΔkPΔkIΔkD
语言变量EECΔKPΔKIΔKD
基本论域{-60,60}{-60,60}{-3,3}{-1.5,1.5}{-0.8,0.8}
模糊子集NB,NM,NS,ZE,PS,PM,PB
模糊论域{-3,+3}{-3,+3}{-3,+3}{-3,+3}{-3,+3}
量化因子0.050.05123.75
在模糊变量E和EC以及输出量ΔKP,ΔKI,ΔKD的语言变量和论域确定后,首先必须确定模糊语言变量的隶属度[6]。常用的隶属函数有B样条基函数、高斯隶属函数、三角隶属函数等,考虑到设计简便及实时性的要求,采用了三角隶属函数。
2.3 参数自整定规则
模糊控制设计的核心是总结工程设计人员的技术知识和实际操作经验,建立合适的模糊规则表,得到针对kP,kI,kD三个参数分别整定的模糊控制表。根据kP,kI,kD三个参数各自的作用,可制定模糊控制规则。以kP为例,所列规则见表2,kI,kD可类似推出。
表2 kP的模糊规则表
eec
NBNMNSZOPSPMPB
NBPBPBPMPMPSZOZO
NMPBPBPMPSPSZONS
NSPMPMPMPSZONSNS
ZOPMPMPSZONSNMNM
PSPSPSZONSNSNMNM
PMPSZONSNMNMNMNB
PBZOZONMNMNMNBNB
2.4 输出量解模糊
依据速度模糊控制参数整定规则确定输出量后,得到的只是一个模糊集合,在实际应用中,必须用一个精确量控制被控对象,在模糊集合中,取一个最能代表这个模糊集合的单值过程称为解模糊裁决。常用的解模糊算法有最大隶属度法、加权平均法等,根据实际情况,采用加权平均法进行解模糊。此时,模糊控制器输出可表示为:
μ=∑μ(ui)・ui∑μ(ui)(5)
最后,根据式(3)可得到最终的PID控制器参数。模糊PID控制程序流程图如图3所示。
图3 模糊PID控制程序流程图
3 实验结果
为了验证参数模糊自整定PID控制器的有效性,对直流电机分别做了常规PID控制和模糊PID控制实验。实验中给定轮速为50 min,图4为采用常规PID控制方法控制的电机转速;图5为采用模糊PID控制方法控制的电机转速。从结果看,采用参数模糊自整定PID算法能够明显降低超调量,加快响应速度,改善控制系统对轮速的控制效果。
图4 采用常规PID控制
图5 采用参数自整定PID控制
4 结 语
机器人运动控制系统是整个Robocup机器人系统的执行机构,在场上的表现直接影响了整个足球机器人系统。以足球机器人为平台,考虑到系统的时滞性和非线性,采用了模糊控制与PID控制相结合的方式,并在自行研制的足球机器人上进行了速度控制的实验研究。结果表明,该方法弥补了常规PID控制应用在机器人运动速度控制时超调量大,响应时间长的缺点,可以取得理想的效果。目前该方法已应用于足球机器人的运动控制,并在第七届中国机器人大赛暨ROBCUP中国公开赛中取得了优异的成绩。
参考文献
[1]李磊,叶涛,谭民.移动机器人技术研究现状与未来[J].机器人,2002,24(5):475-480.
[2]徐建安,邓云伟,张铭钧.移动机器人模糊PID运动控制技术研究[J].哈尔滨工程大学学报,2007,27(6):115-119.
[3]刘祚时,邝先验,吴翠琴.基于模糊PID的足球机器人运动控制研究[J].工程设计学报,2006,13(8):224-227.
[4]He S Z,Tan S,Wang P Z.Fuzzy Self-tuning of PID Controllers.Fuzzy Sets & Syst.,1993,56:37-46.
[5]汪海燕,李娟娟,张敬华.自适应模糊PID控制的无刷直流电机及仿真[J].微电机,2003,36(4):9-12.
[6]李琳,曾孟雄.模糊PID控制在运动控制中的应用[J].机械与电子,2006(2):65-67.
作者简介