位置控制方案

2024-10-25

位置控制方案(共8篇)

位置控制方案 篇1

0 引 言

无线传感器网络是由一个基站和大量的传感节点构成。传感节点通常被随机放置在监测区域内,基站负责指导传感节点工作并且收集传感节点检测到的信息,并将环境信息报送至监控中心。通常,传感节点体积很小且具有感知周围环境信息、数据处理与存储和无线数据收发三个基本功能[1]。无线传感节点在应用时受到很多限制如处理速度慢、存储容量小、电能有限等,而基站具有外部电源支持,处理能力比传感节点强大很多,它负责收集传感节点的监测信息并转发给用户。由于无线传感节点的能量有限性,降低能量消耗、延长网络生命周期,成为无线传感器网络通信协议设计的首要目标。

分簇算法应用于无线传感器网络通信协议设计,被认为是一种减少网络能量消耗的有效办法[2,3]。它通过选择一部分传感节点作为簇首节点形成一个暂时固定的网络构架,各簇首节点接收邻居簇首节点、簇内节点感知的环境信息,进行数据融合,剔除冗余信息,并转发至基站[4,5,6]。这一类的经典算法有:文献[7]LEACH-C是一种集中的聚类算法。在启动阶段,基站接收网络中所有节点发送来的包含他们位置以及能量状态的信息。基站运行本地算法获得簇首以及分簇表,然后广播包含簇首ID信息给每一个节点。簇头确定后,普通节点选择离其最近的簇头加入该簇头所管辖的区域,进而形成簇区域。协议维护阶段与LEACH是一致的。簇的建立过程在每一轮里都需要进行一次,从而产生了很多的能量消耗和传输延迟。文献[4]MCLB算法首先找出网络中的冗余节点作为临时簇头,并随机选择一定数量的具有高的剩余能量的节点为簇头,临时簇头和簇头构成了一个数据转发层,而其他节点构成了一个数据收集为主要功能的底层,簇头广播hello消息并找到属于本簇的节点从而完成对网络的分簇。在数据转发上,存在节点-节点、节点-簇头和簇头-簇头多跳转发至基站的混合模式,该算法中由于簇头的位置具有随机性,为了保证数据转发的可靠连通,因此每个节点必须以较大的发射功率进行数据转发而产生了不必要的能量浪费。文献[8]提出的算法CDC将网络进行分簇,每一簇自行选择一个簇头。簇头承担起收集簇内成员信息并进行数据融合,然后再将数据转发给基站,并且依据信息选择下一轮的簇头。一旦簇内有节点死亡,簇首将发送信息给基站,对整个网络进行重新分簇,否则簇首选择能量最多的节点作为下一轮的簇首。

本文提出一种新的网络控制方案由网络构建阶段和网络维护阶段组成。在网络构建阶段本文借鉴了文献[9]的思想,设计了一种节约能耗的构建方法,首先由基站发出拓扑构建信息,每个节点完成对父节点和邻居节点信息的收集并将信息在特定的时刻传输给自己的父节点,基站通过获得的全网节点信息选择一部分具有冗余连接的簇头节点集,完成了一种期望的网络拓扑特性并保证了网络的连通性。一旦网络构建完成,就进入网络维护阶段,在该阶段每个节点根据网络的需要转换到特定的角色,当簇头节点集中的一节点能量下降到一定值时,由它提出网络重构,网络运行的两个阶段状态交替进行直到网络不能正常运行。本文设计的网络控制方案与文献[7]LEACH-C算法和文献[4]的MCLB算法进行仿真比较网络的生命期、网络构建信息交替情况和网络的构建代价。结果显示本文提出的方案应用于网络运行时具更长的生命周期、更少的构建阶段信息总数和更低的网络构建代价。

1 系统模型

在本算法中,传感节点周期性的充当簇头节点或者普通节点,进行环境监测及数据转发。无线传感器网络监测区域内随机均匀放置N个传感节点,其中有一个节点为基站,在本文所提出的控制方案中,进行了以下几点假设:

(1) 每个传感节点被赋于一个惟一的标号,传感节点的能量有限,而基站有专门的供电系统。

(2) 每个传感节点可根据需要调整自己的发射功率,最大发射功率满足它们连接网络中离它最远的传感节点。

(3) 所有传感节点的位置不会发生移动,位置未知,具备通过接收信号的衰减程度来计算与信号发送方的距离。

2 LEPN网络控制方案

LEPN控制方案下的网络运行是基于轮的,每轮包含网络构建和网络维持两大阶段。在每一轮里,由基站定义各节点以一个特定的相同发射功率进行数据转发,构建一个基于UDG(Unit Disk Graph)模型的分簇网络来感知周围环境信息并将信息可靠的由簇头-簇头多跳转发至基站的过程,本方案主要针对应用在任务艰巨、节点随机布置的一些场合,因此设计时需满足两个基本的约束条件:形成的簇头节点集可提供一个可靠的数据包多跳转发能力;本方案具备的能量有效性应该和现有的基于分簇的网络控制方案相当或者更好。为了满足这些约束,LEPN网络控制方案所确定的簇头最终形成一条连通的闭合回路保证信息成功多跳转发至基站,具有可靠性和能量有效性,因为基站节点获得信息转发路径是闭合回路,具备的冗余性以防止信号在传输过程由于链接失败而造成信息传输失败;而该方案的另一个优点是不需要节点的位置和方向信息,从而节约了节点的硬件成本投入。

2.1 LEPN网络构建阶段

每一轮的LEPN网络构建阶段分为四个子过程,首先由基站设定本轮节点通信的发射功率,发起网络构建,接下来各个节点根据接收信号的衰减程度判断与信号发送者的距离以完成信息的收集,当每个节点都完成信息的收集,就进入了信息上报过程,直至基站,基站根据接收到的信息情况选择簇头节点集,再将包含簇头节点的消息逐层传递给网络中的每一个节点,节点通过接收到的信息来判断自己在接下来的几轮里是否成为回路中的簇头节点以承担环境信息监测和数据转发的任务还是普通簇头节点融合本簇内的监测数据再转发,或者普通节点。用(如图1)一个13节点的网络构建过程来简单描述(粗实线表示可以构成父子关系的簇首链接,细实线表示构成邻居关系的簇首链接,虚线表示构成簇首与簇内成员的链接)。

2.1.1 基站启动过程

当无线传感器网络刚刚布置完毕或者基站接收到某节点请求网络重构的消息,并且基站中保存的簇头节点集已经使用完毕(若基站中尚有未使用的簇头节点集,那么网络构建阶段直接进入网络拓扑构建过程,这样有效的减少了网络构建代价),基站进入了启动过程,首先它根据网络已运行的轮数设定下一轮各节点通信所采用的发射功率,基站节点以该发射功率广播hello消息(HM)并启动一个定时器1以等待它的子节点发来的HM,一帧完整的HM包含父节点标号、本节点标号、发射功率值、本节点的剩余能量以及充当簇头的最低剩余能量值,基站发出的HM里父节点的内容为基站本身的标号。见图1(a),节点B,C,E,I,J,K,L,M接收到了基站A发来的HM。

2.1.2 节点信息收集过程

一旦节点接收到HM,就表明网络构建阶段到了节点信息收集过程,如图1(a)中,节点B,C,E,I,J,K,L,M接收到一个HM,就开始判断本节点与HM发送者之间的相对距离,如果该距离小于本轮通信距离的一半(R/2),则认定该HM发送者为自己的簇首节点,如节点I,K,L认定A为它们的簇首,于是它们向A发送一帧簇首确认消息,就进入了睡眠状态,关闭发射模块,等待网络的维持阶段到来再转换到数据监测状态。离A较远(相对距离大于R/2)的节点M,B,J,E,C,如果节点的剩余能量足够充当簇首节点的,则广播一帧包含本节点剩余能量信息的竞争簇首消息(CM)并启动一个定时器2(定时时间小于定时器1),定时器2到达后,各节点对R/2范围内的节点信息进行判断,如果得知本节点能量最大,则设定自己为簇首节点并成为A的子节点,然后广播发送HM,如M,J,E,D,A将接收到B节点的HM,M,J认定B为簇首,见图1(b),而A接收到B节点得知B为自己的子节点;节点C在定时器2结束后,发现R/2范围内无其他节点与之竞争,也设自己为簇首节点并认A为父节点发送HM;假使J也在E的R/2范围内,且能量高于E节点,E接收不到J的HM,却接收到其他父节点为A节点的HM(如B,C)时,E节点认定自己为簇首节点,并发送HM消息,此时BE,EC之间接收到HM消息,即认定相互之间为簇首间的邻居成员并计算存储他们之间的相对距离与邻居节点的剩余能量,见图1(c);如果某节点的能量太小,不足以充当簇首节点,那么,它会选择离自己较近的一个簇首节点,加入该簇。某节点一旦有了父节点,就认定该节点处于被覆盖状态。而且当一个节点有了子节点,那么它就进入了活跃状态,开始等待信息上报过程的到来。按照这种方式,所有的节点都接收到HM消息,但是如图1(d)所示,节点G,F,H,C广播HM后,在设定的定时器1时间到达内未接收到任何认定它们为父节点的HM,因此它们认为信息收集过程结束,并由它们发起进入信息上报过程。

2.1.3 节点信息上报过程

在节点信息上报过程中,只有充当父子关系的节点,同时,也是扮演簇首角色的节点,发送它的邻居序列给自己的父节点。在本例中,完成信息收集过程后,A,B,C,D,E,F,G,H成为簇首成员。簇首F是G的邻居。因此,簇首G发送{FG}以及FG的相对距离的消息给它的父节点D。这些节点的组合方式为构成一定性质的簇头-簇头链接的提供了可靠的信息,每个父节点都在等待着它的所有子节点发来的上报消息,再添加自己的信息,发送给自己的父节点。如簇首节点D接收到它的子簇头节点G发送来的消息后,它就发送有{FGD},{FD},{ED}路径信息给节点B,依次进行信息传递,最终的信息将汇聚至基站。当基站节点接收到所有子节点发来的上报信息,则网络构建进入了下一过程。在信息上报过程中,节点发送完上报消息后就进入睡眠状态,关闭发射模块以保存能量。

2.1.4 网络拓扑构建过程

网络拓扑构建过程在基站节点上进行,当基站A接收到所有子簇头节点(BCE)发送来的上报信息,就开始对支路进行整合,如果两条数据通路有共同的节点,如{ABDF}和{AEFD}两条支路有两个共同的节点A,F,那么可以组合出一个具有闭合回路的数据通道ABDFEA,对于不同的回路也根据判断是否有共同节点而对它们进行整合成更大的闭合回路。一旦基站完成选择多个构成回路的簇头集,它开始为其他簇头节点以尽少的步数连接到某一回路簇头节点,在基站A处,将形成多个具有回路性质的簇头-簇头节点集,基站将选择其中一个簇头集信息广播给网络中的每一个节点。网络中的节点通过判断基站的广播信息(簇头-簇头之间数据转发的路由信息),决定自己是充当回路簇头或支路簇头节点进行数据收集、融合、转发,或者充当普通簇内节点实现对周围环境的监测。至此进入了网络维持阶段。

2.2 LEPN网络维持阶段

网络维持阶段,簇头将根据簇内的节点数目为每个簇内节点分配TDMA时间表。簇内节点持续采集周围环境信息,并在自己的通信时隙内以单跳通信的方式将数据传送给相应的簇头。为了有效节约节点能耗,普通节点的发送器在不属于自己通信的时隙进入睡眠状态;而簇头必须使自己的接收器时刻处于开启状态,以便接收簇内节点发送过来的所有数据。簇头节点接收到簇内所有的数据后,将对数据进行必要的数据融合处理,然后根据路由信息将数据经簇头-簇头多跳传输至基站。

3 仿真实验

无线传感节点的能量有限性决定节点能量的高效使用是网络控制设计的首要目标,也是延长网络生命周期的一种有效手段。本文仿真设定在30 km×30 km的监测区域内,将200个节点随机分布,节点的通信半径在5~45 km内可调。为了便于计算节点收发信息的能量消耗,使用文献[7]所描述的无线通信模型:

以通信半径为d发射n比特的数据所需要的能量消耗:

EΤx(n,d)=nEelec+nεfsd2

接收n比特的数据消耗能量为:

ERx(n)=nEelec

数据融合所需要的能量:

EDA=5nJ/b/signal

仿真参数如表1所示。LEPN协议运行过程节点的通信半径和网络运行轮数之间关系如图2所示。

图3~图5分别显示了网络构建阶段的节点初始分布图、基站获得的父子关系链接图以及一个有效的簇头-簇头以及与普通节点之间关系的链接图。为了对比LEPN方案的有效性,本文分析了LEACH-C、MCLB算法的运行情况,并对比了网络生存周期、网络运行的能量消耗、网络构建代价等情况,如图6~图8所示。

通常用网络第一个节点死亡的时间、一半节点死亡的时间和最后一个节点死亡的时间来分析网络的生存时间长短。因为基于分簇算法需要多个节点才能正常运行,因此本文中用60%的节点死亡时间代替最后一个节点死亡时间。如图6所示,MCLB的第一个节点死亡比较早,这是因为MCLB里有一部分簇头节点一直承担数据转发任务而快速消耗能量,而LEACH-C和LEPN的第一个节点的死亡时间相差不多,从图中可见在相同节点死亡时LEPN比MCLB和LEACH-C经历的轮数都要多,从而验证了该方案可以更有效地延长了网络的生存周期。

图7显示了基站在网络运行过程接收到的监测数据包的总数,在LEACH-C、MCLB和LEPN协议中每个监测数据包均经过单跳传输至簇头,然后在簇头节点经过数据融合,LEACH-C协议中簇头将处理过的信息经单跳发给基站,而MCLB和LEPN经簇头间多跳并数据融合再传输至基站,这样大大地减少了传输到基站的数据包数量。由图7可以看出LEPN优于LEACH-C和MCLB。

图8显示了平均每轮网络构建阶段的能量消耗,由本论文所提出的方案无需在每一轮的开始都经历构建阶段中比较耗能的节点信息收集过程和节点信息上报过程,因此大大减少了本方案的网络构建代价,LEPN的网络构建代价只有LEACH-C的74.6%,MCLB的47.1%。

4 结 语

本文介绍了一种低能耗的节点位置未知的网络控制方案,根据不同的网络运行轮数设定网络中节点的通信半径,使得网络具有更好的能量有效性。基站通过构建阶段中的启动过程、节点信息收集过程和节点信息上报过程,获得了整个网络节点的相对位置分布,然后基站整合节点信息支路,得到若干具有回路链接的簇头节点集,保证网络在数据传输上具有更好的可靠性。本文所提出的方案,通过仿真实验与同类典型算法LEACH-C,MCLB进行比较,表明LEPN可以延长网络的生存周期,减少监测数据包总数和有效的降低网络构建代价。但是本文提出的方案中,网络运行轮数与通信半径之间的关系暂缺乏一定的依据,在相同的网络运行轮数下,网络节点采用不同的通信半径,较大地影响了运行结果,在接下来的工作中,将对该方面进行更深入的探讨。

参考文献

[1]AL-KARAKI J N,KAMAL A E.Routing techniques inwireless sensor networks:a survey[J].IEEE Wireless Communications,2004,11(6):6-28.

[2]李田,史浩山,杨俊刚.无线传感器网络LEACH协议成簇算法研究[J].传感技术学报,2010,23(8):1158-1162.

[3]傅菊平,齐小刚.基于剩余能量和节点度的无线传感器网络分簇算法[J].计算机应用研究,2011,28(1):251-257.

[4]ISRAR N,AWAN I.Multihop clustering algorithm for loadbalancing in wireless sensor networks[J].International Journalof Simulation Systems,Science&Technology,2007,8(1):13-25.

[5]VOIGT T,RITTER H,SCHILLER J.Solar-aware routingin wireless sensor networks[C]//Ninth IEEE Symposiumon Computers and Communications.Alexandria,Egypt:IEEE,2004,1(1):238-243.

[6]MURUGANATHAN S D,MA D C F,BHASIN R I,et al.A centralized energy-efficient routing protocol forwireless sensor networks[J].IEEE Communications Mag-azine,2005,43(3):8-13.

[7]HEINZELMAN W B,CHANDRAKASAN A,BALAKRISH-NAN H.An application-specific protocol architecture for wire-less microsensor networks[J].IEEE Trans.on Wireless Com-munications,2002,1(4):660-670.

[8]BAJABER F,AWAN I.Centralized dynamic clustering forwireless sensor networks[C]//2009International Confer-ence on Advanced Information Networking and ApplicationsWorkshops.Bradford,England:IEEE,2009:193-198.

[9]QURESHI H K,RIZVI S,SALEEM M,et al.Poly:a re-liable and energy efficient topology control protocol for wire-less sensor networks[J].Computer Communications,2011,34(11):1235-1242.

[10]ABBASI A,YOUNIS M.A survey on clustering algo-rithms for wireless sensor networks[J].Computer Com-munications,2007,30(14/15):2826-2841.

[11]ATTEA B A,KHALIL Enan A.A new evolutionarybased routing protocol for clustered heterogeneous wire-less sensor networks[J].Applied Soft Computing,2012,12(7):1950-1957.

位置控制方案 篇2

研究了卫星编队飞行相对位置保持的脉冲控制方法.分析基于动力学模型的周期脉冲控制策略,讨论其工程可实现性,并在考虑存在较大测量噪声情况下提出了周期多步脉冲控制的方法.数字仿真的`结果比较显示了这种多步脉冲控制方法的有效性.

作 者:郭碧波 李立涛 强文义 梁斌 李成 Guo Bibo Li Litao Qiang Wenyi Liang Bin Li Cheng 作者单位:郭碧波,强文义,Guo Bibo,Qiang Wenyi(哈尔滨工业大学控制科学与工程系,哈尔滨,150001)

李立涛,梁斌,李成,Li Litao,Liang Bin,Li Cheng(哈尔滨工业大学深圳研究院深圳空间技术发展中心,深圳,518057)

位置控制方案 篇3

迭代学习( ILC) 是一种新型控制算法,在给定时间内能以简单的学习算法实现对期望轨迹的高精度跟踪[2]。ILC可以处理系统中各种周期性的扰动,且不依赖于系统的精确模型[3]。ILC适合于某种重复运行性质的被控对象,可实现有限时间区间上的完全跟踪任务,因此对它的研究对直线电机的控制具有重要意义[4]。但是单纯的开环ILC算法具有局限性,其基本控制原理是利用系统当前运行产生的误差信息,修正其控制输入, 以得到系统下次运行时的控制输入。王丹凤等提出了一种基于神经网络优化的ILC控制算法,但是该算法采用的仍是开环控制,对误差信息的利用不够充分[5]。白敬彩和吴君晓提出了一种开闭环ILC控制算法,但该算法是固定的学习速率,学习速度慢[6]。在此,笔者采用神经网络优化的开闭环P型ILC控制算法来控制PMLSM,以较快的收敛速度逼近期望位置轨迹,达到较理想的位置控制效果。

1PMLSM的模型

对PMLSM采用矢量控制方法,利用坐标变换,建立永磁同步电机在d-q坐标的数学模型,令d轴的参考电流id*= 0,因此电磁力矩仅和q轴电流有关,便于控制。

PMLSM的机械运动模型可以描述为:

式中Ffric———摩擦力;

Fm———电磁推力;

Frip———推力脉动;

iq———q轴电流;

Kf———推力系数;

m ———动子质量。

磁阻产生的脉动力模型Frip= bsin ( ω0x ) ,x为位置[7]。完整的摩擦力模型通常很复杂,选用Lu Gre摩擦力数学模型[8],即:

式中B ———粘滞摩擦系数;

fc———动摩擦力;

fs———静摩擦力;

sgn( ) ———符号函数,其值由运动方向决定;

vs———润滑系数。

PMLSM的电压平衡模型为:

式中Ld、Lq———动子电枢d、q轴电感分量;

R ———电枢电阻;

ψf———定子的磁链。

根据上述模型建立的控制系统模型如图1所示,为典型的三环控制结构,位置环采用ILC算法进行调节,速度环和电流环采用PI算法进行调节[9]。

系统工作过程: ILC控制器根据期望位置数值与反馈值之差,得到速度的参考值,该参考值与实际速度值相比较后,将差值送入速度调节器,得到q轴参考电流值。由此可得到d、q轴电压值, 经过坐标变换得到 α 和 β 轴的参考电压,并由电压空间矢量脉宽调制器( SVPWM) 生成逆变器的驱动信号来控制电机。

2控制方案

2.1开环ILC算法

开环P型ILC的学习律为:

式中ek( t) ———第k次迭代的误差;

k ———迭代次数;

kp———ILC的学习增益;

uk + 1( t) ———第k + 1次的控制输入。

2.2开闭环ILC算法

由于开环ILC只利用了系统前一次运行的信息,对当前运行的信息没有加以利用,所以对被控对象无镇定作用,本质上属于一种离线控制。因此笔者在开环ILC的基础上引入反馈,构成开闭环ILC。开闭环ILC的结构框图如图2所示, yd( t) 为期望输出; yk( t) 为实际系统输出。由图2可知,第k + 1次控制系统的输入uk + 1( t) 由3部分组成: 开环ILC控制提供的输入优化uff,k( t) , 闭环ILC控制提供的输入优化ufb,k + 1( t) ,前一个迭代周期的输入uk( t) 。因此开闭环P型ILC的学习律可表示为:

其中,为开环控制学习律;为闭环控制学习律。

开闭环P型ILC控制算法既利用前一迭代周期的误差,也利用当前周期的输出误差作为迭代依据,经过多次迭代后位置误差可达到较小的范围[10],理论上性能会优于开环ILC控制。

2.3基于神经网络优化的开闭环ILC控制

径向基函数( RBF) 神经网络是一种三层前向网络,包含输入层、隐含层和输出层。由输入到输出的映射是非线性的,但隐含层空间到输出层空间的映射是线性的,从而加快了学习速度且避免了局部极小值问题[11]。

采用RBF网络对反馈部分进行在线整定优化,即对kcp进行优化。神经网络选为3-6-1结构, 网络的输入向量X =[u( n) ,y( n) ,y( n - 1) ]T,径向基向量H =[h1,h2,…,h6]T,其中hj为常用的高斯函数[12],即:

其中,Cj=[cj1,cj2,cj3]T为第j个节点的中心矢量。网络的基宽向量B =[b1,b2,…,b6]T,权向量W =[w1,w2,…,w6]T,RBF隐含层到输出层是线性变换( 即) ,性能指标函数

根据梯度下降法,各参数的迭代算法如下:

式中 α ———动量因子;

η ———学习速率。

由梯度下降法得到kcp的调整量 Δkcp为( η1为参数调整率) :

基于神经网络优化的ILC控制过程: 在第k次迭代运行过程中,输入信号加入被控对象中,产生输出信号,RBF神经网络根据实时误差和开环调整量不断改变kcp,加快系统的收敛速度,直到误差满足条件或此次迭代过程结束。

3仿真实例与分析

永磁直线电机的仿真参数设置: m = 1. 97kg,fc= 10N,fs= 20N,B = 82. 22N · s / m,vs= 0. 01, b = 8. 5N,ω0= 100rad / s,Ld= Lq= 82. 6m H, R = 0. 2Ω,极距 τ = 36mm,ψf= 0. 15287Wb,速度环的PI参数分别为50、80。直线电机的初始位置和期望初始位置相同,期望位置轨迹yd( t) = - 20 ( 15 t4- 6 t5- 10 t3) ,t∈[0,1 ]。仿真时间1 s,过程中采样周期设为0 . 001 s,最大迭代次数20 。

采用Matlab软件分别对开环P型ILC控制、 开闭环P型ILC控制和神经网络优化的开闭环P型ILC控制算法的直线电机进行位置跟踪仿真。 令开环ILC系数kp= 20,开闭环ILC系数kop= 20、kcp= 25; 同样令神经网络优化的ILC初始系数kop= 20、kcp= 25,神经网络 的初始权 值设为 ( - 0. 5,0. 5) 之间的随机数,学习速率 η = 0. 15, 参数调整率 η1= 0. 5,动量因子 α = 0. 05。位置最大跟踪误差随迭代次数的变化曲线如图3所示, 不同迭代次数的最大误差绝对值见表1。

mm

分析可以看出,随着迭代次数的增加,开闭环ILC控制的误差收敛速度相对于开环ILC控制有所加快,第20次迭代的最大位置误差下降为0. 018 9mm; 而神经网络优化的开闭环ILC控制误差的收敛速度进一步加快,第20次迭代的最大位置误差达到2. 743 0 × 10- 4mm,可见加入神经网络后误差变小且收敛速度明显加快。

4结束语

笔者在开闭环ILC控制算法的基础上,结合RBF神经网络的优点,利用神经网络对ILC的学习律进行优化,并在直线电机模型上进行了位置控制仿真验证。仿真结果表明: 相对于传统的ILC算法,神经网络优化的ILC算法可以保证学习过程能够更快地收敛于期望值,减少了ILC次数,提高了控制精度。

摘要:针对开环迭代学习控制的局限性和跟踪轨迹收敛速度慢的问题,提出利用径向基函数网络优化控制律的开闭环迭代学习控制算法。在每次迭代过程中,用神经网络拟合合适的学习增益,并分别采用开环迭代学习、开闭环迭代学习和优化的开闭环迭代学习算法在永磁同步直线电机中进行了位置控制仿真,结果表明:优化后的算法比传统方法具有更快的收敛速度和更小的位置跟踪误差。

有效控制孔加工的位置度 篇4

位置度超差的潜在失效原因

位置度是产品设计要求对制造过程中的一个位置要求名称。位置度有点位置度公差、线位置度公差、平面或中心平面的位置度公差, 平常碰到最多的就是孔 (点) 的位置度公差。位置度公差是以理论正确尺寸给定被测要素的理想位置, 并对每一个被测要素给定位置度公差, 以此限制被测要素的实际位置对其理想位置的变动 (偏离) 。控制加工孔位置的要求通常有两种:即产品图样设定的坐标尺寸公差和位置度公差。金属加工生产线的孔类加工, 因加工设备的多样性及产品零件加工的复杂性, 有较多的工艺上面安排的加工孔需采用两次或者两次以上来加工完成同一孔, 所以出现偏移在所难免。加工过程要求在加工中的失效有很多原因, 位置度要求的失效也不例外。常见位置度超差的失效原因有以下五种:

1.设备原因

设备原因是引起加工零件位置度超差的主要原因。如主轴振动加剧、夹具夹紧力下降、夹具偏移、夹具上有切屑、A/B/X/Y/Z轴光栅故障、机床原点漂移、夹具定位面磨损、回转编码器失步、机床水平偏移等造成位置度超差;另外一个设备的原因是动力头与动力头之间的差异性, 即A动力头的主轴与夹具定位销定值与B动力头的主轴与夹具定位销的定值相差偏大, 造成最终加工孔的位置度超差;专机线钻模板上的各孔之间的相互位置度本身不是最理想状态, 考虑到左右兼顾的原则, 这样势必给调整带来有限的空间, 与实际的位置度数值相比只是一半或更小的调整余地, 故往往也是很容易超差的原因。

2.刀具原因

刀具的原因往往就是初始加工或加工过程中出现刀具切削角度选择不合理, 进给速度的选择合理性不高等均会出现加工孔的位置度超差。例如加工孔时, 初始入口应该选择低一点的进给量, 中间可以选择高进给量, 而有些加工对象如果选择同样大的进给量, 不但会出现位置度超差现象, 还会出现加工孔口的孔壁粗糙度不好, 加工孔直线度不好等缺陷的出现。

3.毛坯原因

毛坯预铸造孔的缺陷也会导致加工过程中加工孔位置度不好。毛坯的预铸造孔的位置度偏差颇大, 刀具加工中碰到缩孔、硬点、砂孔会造成钻头刀具加工中出现加工方向偏离, 从而造成孔的位置度超差。

4.温度原因

温度对机床的影响也会造成加工孔的位置度超差。C N C加工中心或者专机线受到环境温度的影响, 如室温、机床的冷热变化、切削液的温度上升等, 会直接造成设备的导轨、主轴等的伸缩量上升, 一旦超过一定极限, 就会出现加工孔到定位基准的位置度超差。

5.综合原因

综合原因即不是单一的主轴、夹具、毛坯、刀具等单独原因引起位置度超差, 而是两个以上碰到一起时, 如加工孔与辅助件的位置度、加工对象, 钻套、刀具的位置度等偏大直接造成位置度超差等。专机线在加工过程中, 随着使用年限的增长, 机床的床身会出现与夹具定位销的相对移动;夹具使用的次数增加, 会出现定位块的支承面磨损、钻模板和刀具主轴和夹具的定位基准出现偏移等, 直接造成三者不在允许范围的同一直线上, 这样必将造成加工孔的位置度数值上升。

位置度超差的潜在失效后果

发动机、变速器的切削加工零件常需要控制零件各要素间的相互位置, 以达到其装配时的互换性, 零部件之间常用螺栓、螺钉、销钉等联接件联接。在零件上用于联接的光孔或螺纹孔, 加工时总难免会出现偏移其理想的位置。因此一旦出现位置度超差就会出现种种失效后果, 其常见的失效后果有以下几种:

1.零件报废

当零件的加工孔因为位置度超差严重时, 即会造成该零件的报废。

2.影响装配

加工零件的位置度超差有时候会直接影响到零件的装配。譬如有些同轴内螺纹与光孔的位置度本来就有比较高的要求, 一旦加工孔与螺纹孔相互之间的相对位置度偏大, 直接影响到沉孔与光轴的配合;主轴上的丝锥与螺纹底孔的位置度超差, 导致丝锥加工出现垂直度超差, 这样直接影响到零件延伸公差带的P值超差, P值超差直接影响到装配, 即延伸位置出现干涉。见图1, 此螺纹孔的螺纹形状与螺纹底孔的位置度超过允许范围, 直接造成牙尖的偏移。即此丝锥在攻螺纹的时候与已加工底孔在位置度严重超差的情况下, 丝锥通过其丝锥本身的丝锥切削刃倒角硬让其进入底孔, 但由于刀具中心与底孔中心严重偏移, 因此, 丝锥的垂直度也出现了变化, 其结果在底孔的加工螺纹上反映出来牙尖一边平, 一边尖, 并且渐渐地出现平的宽度越来越大, 尖的程度也是越来越尖。

3.影响后道工序的加工

前后工步或工序的位置度尺寸偏移严重, 会造成径向、轴向的失效。径向如直接造成钻头加工孔与铰刀加工孔的同轴度数值上升, 如后道工序加工余量不够从而加工底孔出现“8”字孔孔壁, 铰孔余量不均匀造成孔的圆度不好, 底孔位置度与丝锥主轴偏移, 造成螺纹牙尖出现左右不均匀等;轴向如丝锥在加工过程中, 由于丝锥主轴与底孔的位置度偏差趋大, 这样直接造成丝锥在攻螺纹过程中的轴向力上升, C H U C K (丝锥的专用夹头, 当转拒上升时夹头的退缩可以避免丝锥的折断) 的退缩直接造成丝锥的加工有效深度出现时深时浅的结果, 最终造成零件返工处理。

4.刀具出现折断

前道工步或工序出现位置度超差严重, 直接会出现后道加工刀具的折断。当刀具的强度承受不了底孔的偏移量造成的径向力时, 就出现刀具的折断。如丝锥、钻头在严重偏离的底孔上加工时就会出现折断现象。

5.刀辅具的损耗

位置度的超差, 同样会造成刀辅具的费用上升。如钻套加剧磨损, 由于后道刀具与前道已加工孔的位置度偏移偏大, 这样直接造成钻头在已加工孔的引导作用下, 钻套孔壁被钻头副切削刃加快磨损。

位置度超差的特性

孔的位置度超差特性大致有以下几种定量形式:

1.定向的超差

同一孔的不同加工内容的位置度超差有规律地在一个方向或相对方向偏移 (即一个加工内容朝左偏移, 另一个加工内容朝右偏移) 。这种定向的偏移, 有时候就单一加工内容来说不一定超差, 但是它直接影响到后道加工的要求满足。如一般零件的孔类位置度往往设定为φ0.25mm, 当钻头加工孔在理想中心的左边极限, 丝锥中心在右边中心极限, 虽然两个单一加工都满足技术要求, 但是相对的中心距离差值为0.25mm, 丝锥刀柄的浮动与刚性结构的差异, 直接会出现内螺纹的牙尖左右不一样或螺纹的延伸公差带不能够满足安装要求。同样对铰孔来说可能出现圆度不能够满足的结果。

2.不定向的超差

位置度的超差是不规则的方向超差, 即360°都会出现。一种是钻套的孔径磨损变大或设备主轴的轴承磨损造成径向振动加剧, 直接造成刀具加工过程中出现随意性的角度方向出现超差;另外一种是钻头刀具的锋角主切削刃修磨长短不一样, 两刃口的主偏角不等等造成钻加工中位置度偏离。

3.定值的超差

夹具定位销位置与主轴位置的定值偏移、主轴位置与钻套位置的偏移、夹具定位销位置与钻套位置的偏移等造成加工对象定量的位置度超差。

4.不定期的超差

加工对象在定位面上的随机切削造成定位面的抬高而使加工孔的位置度超差等。

5.有变化趋势的超差

设备动力头的整体渐渐偏移、编码器的零点漂移、钻套单边磨损、定位销磨损、定位面磨损等造成加工孔的位置度渐渐超差。

位置度数值超差的控制

1.关注位置度数值超差的趋势

金属切削加工过程中, 因设备原因或刀具原因而引起加工过程中或者加工以后的位置度超差, 首先要及时掌握这不正常的变化趋势。常见的方法可从下面几个方面着手来及时了解到这种变化情况:

(1) CMM测量报告和综合检具的检测数据CMM报告的测量数据之一是关注加工孔位置尺寸的依据, 是正确分析的数据来源。而综合检具又是直接方便的测量手段, 因此及时关注这些依据, 可以及时发现超差或者出现超差趋势的现象, 以方便采用有效的手段来修正加工状况。

(2) 目测数据的来源, 往往是一个班次或者更长时间频次而得到, 因此有时候采用操作者的目测手段也是一种及时了解掌握位置度超差趋势的依据。位置度的超差, 可以从单一加工内容或者复合加工内容上面来关注。如图2, 操作工通过目测沉孔的孔壁被丝锥加工过程中碰到而出来痕迹的现象, 判断出丝锥与螺纹底孔的位置度出现了偏移严重的趋势。实际生产中, 有时工序的测量不一定检测过程尺寸, 也就是钻孔与攻螺纹的位置尺寸都同时在C M M上面检测 (内螺纹不采用标准螺纹棒旋入验证) , 这样螺纹孔的位置尺寸就是螺纹底孔的位置尺寸。其实这不是等同的位置度尺寸, 只有通过旋合标准的螺纹棒, 检测螺纹棒的光杆的位置度才是比较正确的螺纹孔位置度尺寸。所以像图2的丝锥牙尖已经碰到沉孔的孔壁, 说明丝锥刀具的主轴位置与螺纹底孔的位置已经出现明显的偏移量。

2.实施控制位置度超差的手段

加工过程中或加工以后出现了同一孔不同加工内容的位置度超差, 必须有相应的措施来预防及控制它。其常见的手段如下:

(1) 定期检测 (1) 定期检测位置度尺寸。产品制造通过一定频次的CMM检测和综合检具的验证, 来达到观察零件加工孔的位置度, 根据尺寸的趋势反映来达到是否需要调整设备和采取相应措施的工作。 (2) 定期测量过程尺寸。零件的加工过程尺寸实施一定频次的对应测量, 这样保证过程尺寸的位置尺寸一直在可控范围之内。

(2) 辅助监控目测手段的应用, 操作工在按照频次验证加工零件时, 目测加工对象的位置度偏移程度, 达到及时发现及时采取措施的过程。如图3, 就可以通过观察钻头与铰刀加工的环状均匀程度来关注前后刀具的同轴度情况。

(3) 设备保障 (1) 建立预报警机制。切削加工的相对位置度通过预报警机制来控制其变化的趋势, 即位置度值到了75%的位置度允许值就开始需要调整设备了。 (2) 完善维护保养。设备实施TPM和PMM作, 减少定位面、定位销、切屑等对加工孔的位置度影响。 (3) 设定辅助件使用寿命。设备上面的定位销、定位面、钻套等辅件, 在使用过程中有其正常使用寿命。如钻套一类实施正常的使用寿命设定, 保证钻套在正常磨损的过程中, 在磨损即将造成加工孔位置度超差而影响到位置度要求时的寿命设定。

(4) 刀具优化刀具的切削角度及刀具的刀杆刚性不足造成加工过程中的修正能力差, 这样通过刀具的优化与刀具材料的改变来达到加工过程中的位置度保证;刀具切削参数合理选择, 达到加工较理想的状态。

(5) 物料关注 (1) 合理使用待制品。有些加工零件的孔本来就有相对的偏移, 当碰到设备的冷热状态会直接影响到加工零件的位置尺寸, 因此, 有时候有些加工对象位置度公差偏小而冷热机加工影响变化大的加工内容, 在实际重新上料时注意当初的冷热加工状况, 尽可能冷机时的下料在冷机时上料, 热机时的下料在热机状态时上料。 (2) 毛坯铸造质量。通过与毛坯供应商的沟通, 反馈毛坯的预铸孔的位置度对加工时的重要性, 使其选择合理的铸造孔预留余量以达到毛坯孔的预铸造位置精度。

结语

数控位置伺服系统控制策略研究 篇5

数控系统朝向高速高精度发展,是数控机床适应现代先进制造技术发展的必然趋势。高速高精度加工技术对数控机床的数控系统和伺服控制的性能提出了更高的要求。高性能的数控系统和高精度的位置控制策略是提高数控机床加工精度和加工效率的关键要素。高精度的位置伺服控制系统既要有良好的动态响应能力和静态稳定性,又要有很强的抗干扰能力,即鲁棒性[1]。传统位置伺服控制通常采用PID控制方法[2],但是在数控机床高速加工过程中,位置伺服控制系统是一个多变量、非线性、强耦合的控制对象,基于经典控制理论的控制方法,在参数匹配良好的情况下可以获得较好的性能,一旦系统参数发生变化或者受到内在或外界的干扰,将导致控制性能下降[3]。因此,单纯的PID控制方法,不适合应用于高速高精度数控机床的位置伺服控制系统。为了提高位置伺服控制的性能,文献[4]使用了一种神经网络IP位置控制器,有效地改进了IP控制器的抗干扰性,取得了较好的控制效果;文献[5]结合神经元的自学习能力,设计了一种神经元离散滑模结构的位置伺服控制算法,削弱了常规滑模结构控制中的抖振现象,使得系统性能得到了提高;文献[6]提出一种神经网络与变结构相融合的控制策略并用于非线性机器人控制,提高了系统的鲁棒性。虽然这些方法对系统的性能有了一定的改善,但是这些方法存在控制复杂、计算量大和实时性较差等缺点,因此不能很好地满足高速高精度数控机床位置伺服控制的实时性要求。

近年来,许多研究人员致力于预测控制和模糊逻辑控制的研究,它们已成为智能控制领域的研究热点之一。文献[7]提出了一种多电机多模型动态矩阵预测控制算法,对多电机的同步控制效果较好。文献[8]采用阶跃响应法建立控制对象的数学模型,将预测控制的思想用于位置跟踪系统的控制,所设计的控制器具有较好的跟踪性能和鲁棒性能。文献[9]针对永磁同步电机交流伺服系统,采用模糊控制方法进行控制,与常规PID控制的交流伺服系统相比,具有良好的动态响应能力、稳态性能以及较强的鲁棒性。文献[10]针对永磁直线同步电机伺服系统参数不确定性设计了一种自构式反馈模糊神经网络控制器,结果表明控制系统具有较强的鲁棒性。因此,预测控制和模糊逻辑控制具有良好的控制性能。

本文采用模糊推理和预测控制相结合的控制策略,提出一种基于模糊推理的广义预测控制方法对数控位置伺服控制系统进行控制。采用广义预测控制方法对数控位置伺服控制系统设计位置广义预测控制器,根据实际反馈偏差及其变化率,采用模糊逻辑推理方法进行自适应的调整控制量,从而有效地提高了位置伺服控制系统的动态响应能力、稳态性能和鲁棒性。

1 数控位置伺服控制模型

数控位置伺服控制系统由位置环、速度环和电流环等组成,其结构如图1所示。由于控制对象的结构、参数和环境具有不确定性,往往很难从机理上获得系统的精确的数学模型。为了建立特定应用场合的被控对象的数学模型,需要根据系统的输入和输出数据对控制系统的结构、参数和模型进行辨识,从而获得位置伺服控制系统的模型,模型表达式为

y(k)=f(y(k-1),y(k-2),…,y(k-n),

u(k-1),u(k-2),…,u(k-m)) (1)

式中,uy分别为系统的输入和输出;nm分别为系统阶次和输入阶次。

将式(1)进行时间序列离散化处理,可以得到系统的差分方程形式的表达式:

y(k)=i=1naiy(k-i)+j=1mbju(k-j)(2)

根据文献[11]和[12]中的利用输入和输出数据进行系统模型辨识的思想,本文采用网格搜索算法和递推最小二乘法相结合的思想对控制系统的模型结构和模型参数进行辨识,从而可以获取数控位置伺服控制系统的数学模型。

1.1 模型结构辨识

模型结构辨识主要是确定系统的系统阶次n和输入阶次m。采用网格搜索算法对控制系统的模型结构辨识就是将系统阶次n和输入阶次m分别取N个值和M个值,对N×M个(n,m)的组合利用递推最小二乘法的方法进行寻优求解,使目标函数值最小。以施耐德400W十字平台中的一个轴作为被控对象进行结构辨识,以辨识建立的数学模型表达式和输出数据的均方误差mse为目标函数,其表达式以及系统满足的条件如下:

{mse=1li=1l(f(xi)-yi)2nm(3)

xi=[y(i-1) y(i-2) … y(i-n)

u(i-1) u(i-2) … u(i-m)]

式中,f(xi)为辨识建立的数学模型;yi为采集的输出数据。

在MATLAB软件平台下导入输入和输出数据,并经过模型结构辨识算法得到的辨识结果为

n=4m=3}(4)

1.2 模型参数辨识

经过模型结构辨识后,模型的表达式可以表示为

y(k)=a1y(k-1)+a2y(k-2)+a3y(k-3)+a4y(k-

4)+b1u(k-1)+b2u(k-2)+b3u(k-3) (5)

模型参数辨识就是确定式(5)中的未知量a1~a4和b1~b3的实际值。采用递推最小二乘法进行模型参数辨识,其基本思想为:新的估计值等于旧的估计值与修正值之和。递推最小二乘法的递推公式为[13]

θ(k)=θ(k-1)+Κ(k)[y(k)-φΤ(k)θ(k-1)]Κ(k)=Ρ(k-1)φ(k)1+φΤ(k)Ρ(k-1)φ(k)Ρ(k)=[Ι-Κ(k)φΤ(k)]Ρ(k-1)}(6)

其中,φ(k)=[y(k-1) y(k-2) y(k-3) y(k-4) u(k-1) u(k-2) u(k-3)],θ(k)=[a1a2a3a4b1b2b3],当k=0时,P(0)=106I,θ(0)=0,I为单位矩阵。

在MATLAB软件平台下导入输入和输出数据,采用递推最小二乘法算法得到模型参数辨识结果为

y(k)=-0.0409y(k-1)-0.1050y(k-2)+

0.4031y(k-3)+0.4526y(k-4)+0.1403u(k-1)+

0.2248u(k-2)+0.0364u(k-3) (7)

2 位置伺服控制策略

式(7)是一个理想模型,实际的位置伺服控制系统在运行过程中,由于受到干扰等因素的影响,系统具有不确定性,因此该模型不能很好地反映数控位置伺服控制系统的实际模型。实际的模型可以采用CARIMA模型来描述:

y(k)=-0.0409y(k-1)-0.1050y(k-2)+0.4031y(k-3)+0.4526y(k-4)+0.1403u(k-1)+0.2248u(k-2)+0.0364u(k-3)+ξ(k)Δ(8)

式中,ξ(k)为系统的白噪声;Δ为差分算子,Δ=1-z-1。

2.1 模糊推理广义预测控制

式(8)实际上是一个线性模型,但位置伺服控制系统一般为复杂的非线性动态系统,采用线性模型作为预测模型,必然存在模型误差,当采用传统的广义预测控制策略时,如果模型严重失配可能破坏系统的稳定性。因此,在进行数控位置伺服控制时,为了有效地改善控制器的抗干扰能力和提高控制效果,采用基于模糊逻辑推理的广义预测控制策略,其中式(8)作为广义预测控制的预测模型,通过滚动优化计算系统的最优控制率,控制预测模型的输出;对模型失配或者其他干扰因素引起的输出偏差通过模糊逻辑推理在线反馈校正,进行非线性误差补偿,从而克服了传统的广义预测控制方法的缺点。其控制结构框如图2所示。

2.2 广义预测控制

将式(8)进行变形,得到一般形式的表达式:

A¯(z-1)y(k)=B(z-1)Δu(k)+C(z-1)ξ(k)(9)

A¯(z-1)=1+a¯1z-1+a¯2z-2++a¯naz-na+a¯na+1z-(na+1)B(z-1)=b0+b1z-1+b2z-2++bnbz-nbC(z-1)=c0+c1z-1+c2z-2++bncz-nc

根据预测理论,为了预测前j步输出,引入Diophantine方程:

C(z-1)=A¯(z-1)Rj(z-1)+z-jSj(z-1)(10)

Rj(z-1)=1+rj,1z-1+rj,2z-2+…+rj,j-1z-(j-1)

Sj(z-1)=sj,0+sj,1z-1+sj,2z-2+…+sj,naz-na

C(z-1)=1时,对式(9)和式(10)联立求解,可以求出前j步模型预测输出:

Y=GΔU+FaΔU(k-1)+S(z-1)y(k)+ξ(k+1) (11)

Y=[ym(k+1|k) ym(k+2|k) … ym(k+Np|k)]T

ΔU=[Δu(k) Δu(k+1) … Δu(k+Np-1)]T

ΔU(k-1)=[Δu(k-1) Δu(k-2) … Δu(k-nb)]T

S(z-1)=[S1(z-1)S2(z-1)SΝp(z-1)]Τξ(k+1)=[R1(z-1)ξ(k+1)R2(z-1)ξ(k+2)RΝp(z-1)ξ(k+Νp)]ΤG=[g1,000g2,0g2,10gΝp,Νp-1gΝp-1,Νp-2g1,0]Fa=[g1,1g1,2g1,nbg2,2g2,3g2,nb+1gΝp,ΝpgΝp,Νp+1gΝp,nb+Νp-1]

式中,Y、ΔU、ΔU(R-1)分别为未来的预测输出、当前和未来的控制增量、过去的控制增量。

采用对输出误差和控制增量加权的二次型性能指标作为控制条件,其性能指标可以表示为

J=E{[Y(k+1)-Yr(k+1)]TQ[Y(k+1)-

Yr(k+1)]}+ΔUT(k)ΓΔU(k) (12)

Y(k+1)=[y(k+1) y(k+2) … y(k+n′)]T

Yr(k+1)=[yr(k+1) yr(k+2) … yr(k+n′)]T

ΔU=[Δu(k) Δu(k+1) … Δu(k+m′-1)]T

Q=diag(q1,q2,…,qm′)

Γ=diag(λ1,λ2,…,λm′)

式中,n′为预测时域;m′为控制时域。

根据式(11)和式(12)可以计算出j步模型预测性能最佳的控制增量。

ΔU(k)=(GTQG+Γ)-1GTQ[Yr(k+1)-

FU(k-1)-S(z-1)y(k)] (13)

2.3 反馈误差的模糊推理

由于实际系统多为复杂的非线性系统,采用CARIMA模型进行建模存在建模误差,或者系统受到其他干扰等不确定性因素的影响,系统必然存在输出偏差。设k时刻数控位置实际输出为

y(k)=ym(k)+e(k) (14)

式中,ym(k)为k时刻的预测模型输出;e(k)为k时刻位置伺服系统实际位置与预测模型输出位置的偏差。

假定在输入控制量u(k)的作用下,k+1时刻通过周期采样得到实际输出位置为y(k+1),模型预测输出位置为ym(k+1),定义实际位置输出与预测输出偏差和偏差变化率分别为

e(k+1)=y(k+1)-ym(k+1)Δe(k+1)=e(k+1)-e(k)}(15)

采用二维模糊控制对位置反馈偏差进行实时在线校正,模糊控制器以偏差fe和偏差变化率Δfe为输入变量,以偏差的控制量fue为输出量。模糊量的隶属函数采用等腰三角形。模糊控制规则可以表示为

if feAi and ΔfeBi,则fueCi

其中,Ai,Bi,Ci∈{NB,NM,NS,ZE,PS,PM,PB}={负大,负中,负小,零,正小,正中,正大},i=1,2,…,49。

清晰化计算采用加权平均法,表达式如下:

ue=i=149fue×μC(fue)i=149μC(fue)(16)

在线反馈校正的模糊逻辑推理过程如图3所示。

3 仿真与实验验证

3.1 仿真验证

为了验证基于模糊推理的广义预测控制的控制效果,在MATLAB软件环境下对该方法通过算法编程进行仿真模拟验证。

数控位置伺服控制系统的数学模型如式(8)所示,设仿真所采用到的控制参数,即预测时域n′=3,控制时域m′=2,控制加权系数Γ= diag(0.01,0.01,…,0.01),输出柔化系数α=0.01,预测模型的白噪声ξ(k)取值范围为[-0.3,+0.3]mm。期望输出指令cmd=100mm,在白噪声的干扰下其仿真结果如图4所示。

3.2 实验验证

为了进一步验证本文所提出的控制算法的有效性,在施耐德400W十字平台上进行了基于模糊推理广义预测控制方法和传统的PID控制方法的对比实验,实验条件如表1所示。

以十字平台中的其中的一个轴为被控对象,采样周期Ts=2ms,控制时间长度t=2000ms,分别采用模糊推理的广义预测控制方法和传统的PID控制方法进行实验。设期望输出指令cmd=100mm,通过调试,广义预测控制算法中,预测时域n′=3,控制时域m′=2,控制加权系数Γ=diag(0.8,0.8,…,0.8),输出柔化系数α=0.78,输出的阶跃结果如图5a所示。通过调试,设置PID控制参数为kp=0.013,ki=0,kd=0.02,其输出的阶跃结果如图5b所示。在PID控制调试过程中,当参数取值增大时,发生超调严重。

设输入为(0,30 000),(30 000,48 000),(48 000,60 000)(单位:脉冲数)三段直线指令,输出结果如图6所示,其中虚线为输入指令,实线为输出数据。

通过分析仿真实验,期望输出指令为cmd=100mm时,当系统达到稳定状态后,从图4中可以看出,在[-0.3,0.3]mm范围的白噪声的干扰下,输入信号在平衡位置附近微小波动,调整输入信号量,使输出结果基本上稳定在100mm附近。因此,基于模糊推理的广义预测控制方法具有较强的稳态性能和鲁棒性。

通过十字平台的期望输出指令cmd=100mm的阶跃实验,通过图5可以得出,广义预测控制的上升时间比PID控制的上升时间小了很多,响应速度特别快。因此,广义预测控制具有更好的动态性能。通过三段直线的控制实验,根据实验结果(图6),广义预测控制的跟踪误差比PID控制的跟踪误差更小,跟踪性能更好。因此,基于模糊推理的广义预测控制方法用于数控位置伺服控制系统中,能够提高系统的动态性能和跟踪性能。

4 结语

在深入分析高速高精度加工技术对数控位置伺服控制提出的更高要求的基础上,提出了一种基于模糊逻辑推理的广义预测控制方法,详细地阐述了该方法实现原理和控制过程。通过MATLAB仿真和施耐德十字平台实验,与传统的PID控制方法的对比分析与应用实验表明,该方法具有很好的动态性能、稳态性能和鲁棒性,更适合应用于高速高精度数控系统的位置伺服控制系统。

摘要:针对高速高精度加工技术对数控位置伺服系统的控制性能提出的更高要求以及现行位置伺服控制方法存在不足的问题,提出了一种基于模糊推理的广义预测控制方法。首先采用网格搜索算法和递推最小二乘法相结合的思想对伺服控制系统的模型结构和模型参数进行辨识;然后将广义预测控制方法作为数控位置伺服系统的控制策略,运用模糊逻辑推理对反馈偏差进行非线性在线校正,克服了传统的广义预测控制对CARIMA模型进行线性控制的缺点;最后通过MATLAB仿真和施耐德十字平台实验验证了该方法具有很好的控制性能和鲁棒性。该方法为高速高精度数控机床的位置伺服控制系统提供了一种新的思路。

位置伺服系统控制算法的研究 篇6

伺服系统可分为直流伺服和交流伺服两大类,交流伺服控制系统是近年来发展的新技术,正在发展成伺服系统的主流。伺服系统的性能是决定着整个系统的加工精度和生产率的主要因素,对于交流伺服系统的性能,一方面要求快速跟踪性能好,即要求系统对输入信号的响应快、跟踪误差小、过渡时间短,且无超调或超调小、振荡次数少;另一方面,要求稳态精度高,即系统稳态误差小、定位精度高。常规控制方法普遍是以PID控制为基础,再加上各种辅助控制以改善其性能,因此,很难满足交流伺服系统的高性能要求[1]。本文提出一种带有卡尔曼滤波器的重复控制补偿PID控制和前馈补偿相结合的控制方法。重复控制能够对周期输入的信号实现无静差的跟踪,但由于对误差的跟踪控制滞后一个给定信号周期,此时系统的输出波形畸变较为严重,动态性能较差[2],本系统采用PID加前馈补偿的策略来克服。通过引入卡尔曼滤波器可以很好地抑制系统中存在的控制干扰和测量噪声。仿真表明,该方法对提高跟踪精度和系统品质方面有很大的改善。

1 系统的控制方案

1.1 重复控制补偿PID

重复控制是日本的Inoue于1981年首先提出来的,用于伺服系统重复轨迹的高精度控制。重复控制能够提高系统跟踪精度,其原理来源于内模原理。内模原理是指:如果产生参考信号的发生器包含在一个稳定的闭环系统中,被控输出能够无稳态误差地跟踪参考信号,加到被控对象的输入信号除了偏差信号外,还叠加了一个上一时刻的控制偏差,把上一周期运行的偏差反映到现在,和现在的偏差一起加到被控制对象进行控制,经过几个周期的重复控制之后可以大大提高系统的跟踪精度, 改善系统品质。该方法不仅适用于跟踪周期性输入信号,也可以抑制周期性干扰,提高系统的鲁棒性,这种方法被称为重复控制[3]。重复控制补偿PID原理如图1所示。

图1中,Q(s)为低通滤波器,G(s)为被控对象,up为PID的输出,ue为重复控制的输出,K为重复控制增益,e-Ls为周期延时环节(L为信号的重复周期)。Q(s)与系统的收敛速度有关,考虑到稳定性,Q(s)一般取一阶低通滤波器或为比1稍小的数,使重复控制在高频段具有较低的增益。该系统的内模用脉冲传递函数可表示为

Η(s)=e-Ls1-Q(s)e-Ls(1)

Q(s)=1,对于ω=2nπf(f为参考信号频率,n = 0,1,2,…),L=1/f,s=jω。得到:

1-Q(s)e-Ls=1-e-j·2nπ=0 (2)

由式(1)、式(2)可以看出,开环传递函数在虚轴上含有无数个极点,所以系统对任何阶输入或干扰的系统误差是渐近趋于零,具有较强的鲁棒性[4]。

1.2 前馈补偿

由于重复控制对误差的调节作用滞后一个给定信号周期,达不到系统对响应速度的要求;PID控制对跟踪误差立即产生调节作用,响应速度较快,但跟踪精度不高,波形畸变严重。根据这种情况,本文给出了基于重复控制补偿PID和前馈补偿控制相结合的复合控制策略,以保证系统具有较快的动态响应速度和较高质量的输出波形。

在高精度伺服系统中,前馈控制可以用来提高系统的跟踪性能,经典控制理论中的前馈控制设计是基于补偿控制的思想,当闭环系统为连续时,使前馈环节与闭环系统的传递函数之积为1,从而实现输出完全复现输入。针对PID控制设计前馈补偿,以提高系统的跟踪性能。本文所设计的前馈补偿控制器为

Gp(s)=1/G(s) (3)

基于重复控制补偿PID和前馈补偿相结合的复合控制原理框图如图2所示。其中,uf为前馈补偿输出。

控制器输出为

u(k)=up(k)+ue(k)+uf(k) (4)

1.3 卡尔曼滤波器[5]

卡尔曼滤波在数学上是一种统计估算方法,通过处理一系列带有误差的实际量测数据而得到的物理参数的最佳估算。其基本思想是:采用信号与噪声的状态空间模型,利用前一时刻的估计值和现时刻的观测值来更新对状态变量的估计,求出现时刻的估计值。

对于离散域线性系统:

x(k)=AX(k-1)+B[u(k)+w(k)]

yv(k)=Cx(k)+v(k) (5)

式中:w(k)为特别干扰信号;v(k)为测量噪声信号。

离散卡尔曼滤波器递推算法如下:

卡尔曼增益:

Μn(k)=Ρ(k)CΤCΡ(k)CΤ+R(6)

x(k)的协方差:

P(k)=AP(k-1)AT+BQBT (7)

P(k)=[In-Mn(k)C]P(k) (8)

x(k)=Ax(k-1)+Mn(k)[yv(k)-

CAx(k-1)] (9)

滤波后的信号:

ye(k)=Cx(k) (10)

误差的协方差:

err cov(k)=CP(k)CT (11)

卡尔曼滤波器的结构如图3所示。

1.4 控制器设计

系统中存在的控制干扰和测量噪声会在很大程度上影响伺服系统的跟踪精度,本文中引入卡尔曼滤波器,带有卡尔曼滤波器的重复控制补偿PID和前馈补偿相结合的控制器结构如图4所示,调节器和重复控制器并联在控制系统的前向通道中,共同对系统的输出产生影响。当系统处于稳定状态时,系统的跟踪误差小,当系统出现大的扰动作用时,由于有一个参考周期的延时,重复控制器输出不产生变化[6],但是PID控制器和前馈补偿立即产生调节作用,系统不会出现输出的突变,一个周期后,重复控制器调节作用使跟踪误差减小,使调节PID作用也在减弱,最后系统达到稳定。

2 仿真分析

设某交流伺服系统的模型为[7]

G(s)=75s(0.000067s2+0.00803s+1.46)

重复控制器中Q(s)取为

Q(s)=11+0.25s

将正弦信号rink(k)=sin(2πkts)作为输入信号并对其跟踪,采样时间为2ms,所加噪声幅值为0.005的白噪声,系统仿真实验结果如图5所示。

在仅是PID控制时系统的跟踪精度较差,误差几乎等幅振荡,系统品质较差。而重复控制补偿PID控制的跟踪效果相对单一PID较好。引入卡尔曼滤波器后,跟踪误差随着时间的积累趋于零。当系统加入前馈补偿后,跟踪精度显著提高,跟踪误差迅速减小,有效地减小了系统振荡,系统的动态特性显著提高了。在不同控制方案下的均方误差见表1。

3 结论

本文仿真表明,带有卡尔曼滤波器的重复控制补偿PID和前馈补偿相结合的控制器优于其它3种控制器,重复控制具有一定的“学习”功能,可以实现对周期信号进行高精度跟踪,前馈补偿PID可以很好地弥补重复控制对误差的调节作用滞后一个给定周期的缺点,卡尔曼滤波器可以很有效地抑制系统中存在的控制干扰和测量噪声。系统采用这种控制器时,具有良好的稳态输出特性和较强的鲁棒性,动态性能和跟踪精度得到大大的提高。

摘要:传统PID控制在伺服系统高精度位置跟踪和改善系统品质方面已露出诸多不足,且系统中存在的控制干扰和测量噪声会在很大程度上影响伺服系统的跟踪精度。提出一种带有卡尔曼滤波器的重复控制补偿PID和前馈补偿相结合的控制方法。通过仿真证明该控制方法能以较高的精度跟踪周期性输入信号,且有较好的抑制随机扰动和鲁棒性。

关键词:重复控制,PID,伺服系统,卡尔曼,前馈补偿

参考文献

[1]王瑞明,蒋静坪,曾玉金,等.智能复合控制的交流伺服系统研究[J].机床与液压,2006(3):171-175.

[2]郑诗程,丁明,苏建徽,等.基于重复控制和电压前馈控制的光伏并网发电系统研究与设计[J].电源技术应用,2005,8(2):10-13.

[3]刘金琨.先进PID控制及其MATLAB仿真[M].北京:电子工业出版社,2003.

[4]周保,张安年,丁喆,等.基于复合控制的位置伺服系统控制方案[J].电机与控制应用,2008,35(3):21-24.

[5]Brown R G,Hwang P Y C.Introduction to Random Signalsand Applied Kalman Filtering[M].New York:JohnWiley&Sons,Inc.1992.

[6]黄宇,王东风,韩璞.带有卡尔曼滤波的调速系统重复补偿PID控制[C]∥仿真技术论文集,2005:273-275.

基于CPLD的位置控制卡设计 篇7

运动控制系统主要由运动部件、传动机构、执行机构、驱动器和运动控制器构成 , 整个系统的运动指令由运动控制器给出 , 因此运动控制器是整个运动控制系统的灵魂[1]。本文设计的基于CPLD的位置控制卡 , 具有信息处理能力强、开放程度高、运动轨迹控制准确、通用性好的特点。

2位置控制卡硬件设计

本位置控制卡的功能是对伺服电机进行方向和速度控制 , 其基本工作原理是 : 由硬件电路构建8ms定时器 , 每8ms向计算机申请中断 , 计算机接到中断请求信号后运行中断服务程序 , 在中断服务程序里根据当前设定的位移量计算出8ms内应该发出的脉冲数并向位置控制卡写入脉冲数和电机转动方向。位置控制卡根据写入的内容通过可编程逻辑器件将脉冲数在8m内均匀输出到伺服电机驱动器上 , 保证了位置控制卡每8ms就会输出周期均匀的脉冲序列。由于该控制卡采用了硬件分配脉冲 , 在减轻了计算机CPU负担的同时 , 产生的脉冲也比较快速 , 对高速运转的电机而言 , 比软件分配脉冲优越得多。

2.1MACH211控制及输出电路

MACH211[2]是Lattice公司的CPLD器件 , 该芯片内部有64个宏单元 (Marocell),4个脉冲选择端 , 具有4组PAL BLOCKs, 共32个I/O口 , 体积小 , 性价比高。该器件逻辑宏单元的处理能力近似于目前流行的PAL22V10芯片的6倍 , 而处理速度不受任何影响。图中CS1为片选信号 ,PCL1为系统输出允许信号 ,CLOCK1为脉冲控制信号端 , 由32M晶振分频给出。以Z轴为例 ,MACH211从数据总线D0 ~ D7收到16位脉冲数据 ( 先高8位 , 后低8位 ), 通过VHDL语言编程 , 在8ms内进行平均分配脉冲并由I/O26,I/O27输出 , 输出方式可选择两组脉冲输出 , 或一组脉冲 , 一组高低电平输出 ( 与电机驱动器相匹配 ), 由W3和W4短路销进行选择。控制信号经驱动器75113放大后输出到电机驱动器的相应接口 ,ZSTEP+ 和ZSTEP- 为控制脉冲数输出 ,XDIR+ 和XDIR- 为控制方向输出。X轴和Y轴的控制原理同Z轴。

2.2控制卡与计算机的接口电路

该卡采用了ISA-AT总线接口 , 数据总线宽度16位 , 地址总线 (SA0 ~ SA19) 及系统存储器读写信号 (*SMEMW,*SEEMR) 通过74LS244输入到位控板 , 确定片选信号 , 进行地址选择。8条数据总线 (SD00 ~ SD07) 通过双向锁存器74LS245实现数据传输 , 由存储器读 *MEMR及 *AXAD进行控制 , 其中 *AXAD来自于地址线与存储器读写信号经GAL16V8综合输出。

2.3片选及译码电路

选用3片GAL16V8B和1片GAL20V8A。U11使用的是GAL20V8,U12、U13和U16使用的是GAL16V8。U11的输入地址是A8 ~ A19, 寻址范围4K。U13由存储器读信号 *MEMR、存储器写信号 *MEMW、U12的输出I3及地址线A6、A7输入控制 , 综合后的输出分别作为其它芯片的片选和读写信号。其中 ,I/O19、I/O18和I/O14提供给定时器8253作为读、写信号及其片选信号 ;I/O17、I/ O16和I/O15则分别作为控制X轴、Y轴和Z轴脉冲分配的MACH211芯片的片选信号。U16的输入信号与U13类似 , 不同的是输入地址范围为A1 ~ A7, 它的输出主要是提供给74系列芯片 , 作为它们的片选信号。U12输出主要提供给驱动器75113和MACH211, 作为它们的使能允许信号 , 值得注意的是 , 在它的输入信号中包含了电机报警信号 *ALM。 当电机在运行过程中出现禁止或危险情况时 , 报警信号 *ALM将作为U12的输入进行逻辑综合 , 使其输出的允许使能信号无效 , 禁止驱动器75113和MACH211工作 , 从而达到阻止电机继续运行 , 提高系统安全性能的要求。

在电路连接上 , 要注意让GAL元件不用的引脚应该直接接地或接电源 , 不要悬空 , 否则会增大功耗 , 降低抗干扰能力[3]。

2.4定时电路

在开放式运动控制系统中 , 插补运算和伺服控制都由IPC机完成 , 这两个控制任务通常不在一个任务循环中处理。一般而言 , 插补运算的周期要比伺服控制的周期长 , 因此两个任务需要占用不同的系统资源[4]。由于插补运算通常占用PC机的定时中断资源 , 而伺服控制也是一个需要精确定时的任务 , 因此使用了可编程定时器8253, 定时器产生的溢出动作可以向PC机申请中断。

8ms定时由可编程定时/计数器8253产生,32.768MHZ晶振经74LS112双D触发器进行4分频 , 再经74LS161的16分频产生512KHZ的时钟信号供给8253的计数器0, 计数器的工作方式设定为方式0, 实现8ms定时。 再经74LS175及74LS00形成窄脉冲提供给计算机中断请求线IRQ10, 这样就每8ms就向计算机发出一次中断请求信号。计算机接到中断请求信号后就可运行中断服务程序 , 在中断服务程序里能根据当前设定的位移量计算出8ms内应该发出的脉冲数并向位控卡写入脉冲数和电机转动方向。位控卡则由所写入的脉冲数经过可编程逻辑器件将脉冲数在8ms内均匀输出到伺服电机的驱动器上。同时发出的 *CLOCL1用作MACH211的时钟输入。

2.5光电耦合电路

采用光电耦合器TLP521进行电气隔离 , 抑制干扰脉冲[5]。来自电机的信号通过光电隔离后反馈到数据总线 ; 输出到驱动器的信号 , 可通过数据总线光电隔离后再输出到电机驱动器。

来自电机的信号 , 如报警信号XALM、YALM、 ZALM等通过TLP521-4光电隔离后输入到数据总线 ;输出到驱动器的信号 , 如PD、SEL可通过数据总线、 光电隔离后再输出到电机驱动器。图中的 *ALM是前面所讲的电机报警信号 , 当电机在运行过程中出现禁止或危险情况时 ,*ALM将产生报警信号 , 作为GAL的输入进行逻辑综合 , 上图中的输入信号如 *PCL1,PEN等允许使能信号都是GAL的输出 , 当 *ALM有效时 , 它们都将无效 , 从而达到禁止芯片工作和阻止电机继续运行的目的 , 提高系统的安全可靠性。

3位置控制卡软件设计

3.1主程序设计

主程序部分主要包括输入电机运动方向、移动距离、 电机转速等参数 , 按照顺序调用各个程序 , 完成电机的速度与位置控制功能。主程序流程图如图7所示。

控制器工作后 , 先进行系统初始化 , 包括接口程序初始化及芯片 ( 如8253) 初始化等。初始化完成后 , 程序进入循环主体 , 根据预设的参数或者根据操作者的输入进行控制。

3.2初始化程序设计

在位置控制卡中 ,8253( 计数器 ) 的通道0起分频器作用 , 它将CLK0分频成125HZ( 即周期为8ms) 后由OUT0端输出。要注意 , 对某一计数器初始化时必须先送控制字后送计数初值。

3.3脉冲分配程序设计

通过VHDL语言编程 ,MACH211在8ms内进行脉冲平均分配 , 输出到电机驱动器上。脉冲数据是数控系统中断服务程序根据当前键盘设定的位移量计算出来的。数据的首位是方向信号 , 用来控制电机的运行方向 ,‘1’为正转 ,‘0’为反转。第1位到第14位是脉冲数 , 将在8ms内由MACH211均匀发出 , 以控制电机的运转速度。第15位为闲置状态 , 控制过程中自动算为‘0’。由于在8ms内最多提供的脉冲数可达214个 , 所以经计算 , 该位控卡的最高输出频率可达 (1/8)×103×214HZ即1.6MHz, 可满足一般电机运转需要。经QUATUARSII仿真 , 输出频率在8ms内均匀分布 , 且频率范围可保证在0 ~ 1.6MHz, 符合设计要求。

3.4定时程序设计

定时电路 中32.768MHZ的晶振经74LS112双D触发器进行4分频 , 再经74LS161的16分频产生512KHZ的时钟信号供给8253的计数器0, 计数器的工作方式设定为方式0, 实现8ms定时。以均匀分布的时间间隔引起中断 , 在中断服务程序中发送数据 , 以符合数据发送速度。

4总体调试

调试系统框图如图9所示。

将位控板插入IPC的ISA插槽中 , 指令通过微机键盘输入 , 经数控程序计算处理 , 信号通过ISA接口传给位置控制卡 , 位置控制卡将脉冲均匀输出并分配到电机驱动器接口。运行过程中电机顶部安装的位移传感器 ( 光电编码盘 ) 会将电机的位置信号反馈给电机驱动器 , 构成闭环控制。

经验证 : 用自行研制的位置控制卡和编制的接口软件实现对交流伺服电机的精确的位置与速度控制的方案切实可行。

参考文献

[1]吴大卫.基于通用运动控制器的控制系统设计与仿真[D].武汉:华中科技大学,2007.

[2]MACH211-10VC.中国IC网[EB/OL].http://www.ic37.com/LATTICE/MACH211-10_datasheet_873731.

[3]臧利林,贾磊,丁新.基于GAL器件的步进电机控制器的研究与设计[J].自动化与仪器仪表,2004,(4):28-30.

[4]李叶松,董玮.基于CPLD的开放式四轴运动控制器的设计[J].自动化与仪器仪表,2002,(5):35-37.

多点步进电机的远程位置控制系统 篇8

精确位置控制是精密仪器制造业、航天业以及军事领域中不可缺少的重要环节[1],这些领域中常常会遇到控制现场不便接近或存在危险性的问题,因此远程位置控制就具有非常重要的研究意义。已经广泛覆盖的因特网为实现远程控制提供了可能,并且具有通信速率高、可靠性高和成本低等诸多优势。本设计中的远程位置控制系统将因特网作为通信介质,同时应用TCP(Transmission Control Protocol)协议保证数据准确传输,能实现控制中心同时对多台步进电机的远程位置控制。

步进电机的开环位置控制虽然易于实现,但随着工业应用的不断深入和相关技术的发展,开环控制尚不能满足精密位置控制系统不断提高的精度要求,因此需要使用更为精确的闭环控制。还考虑到步进电机的扰动扭矩以及机械系统的阻尼、刚度惯量等因素,传统的PID控制方法无法提供最佳的PID参数[2],因此本文将专家经验与数字PID控制方法相结合设计出改进专家PID算法,并应用到位置控制系统中,有效抑制了步进电机定位过程中的过冲现象,大大提高了系统的控制精度,很好的解决了以上问题。

系统的核心控制器CompactRIO是NI公司生产的一款坚固耐用、可重新配置的嵌入式测控系统,包括实时控制器、可重配置的FPGA(现场可编程门阵列)和工业级I/O模块。内嵌FPGA的可重配置机箱是CompactRIO的核心,机箱中的FPGA直接和每个I/O模块相连,控制器可高速访问I/O电路与步进电机的驱动电路,无论在数据运算还是数据通信都十分快速,保证了系统的实时性。

本文将介绍系统的硬件结构,重点研究改进专家PID算法在精确位置控制中的实现方法,并分析了TCP协议在系统远程控制中的应用。

1 系统硬件结构

1.1 系统整体硬件结构

系统硬件的核心是cRIO-9014嵌入式实时控制器,该控制器带有10/100 BaseT以太网端口,可通过PC接入因特网。配合cRIO-9014选用了8槽cRIO-9112可重新配置的嵌入式机箱,支持所有CompactRIO I/O模块,使用Xilinx Virtex-5系列FPGA核心,具有超强的处理能力。选用了8通道、5 V/TTL高速双向数字I/O模块NI-9401为步进电机驱动模块提供控制时序信号,由于NI-9401具有100 ns超高速数字输入/输出功能,基本消除了系统响应延迟。还选用了16位模拟输入模块NI-9215来实时采样步进电机的位置电压信号,NI-9215具有四通道100 KS/s的同步采样速率,可以满足对多点控制的要求。I/O模块的选择充分考虑了远程定位系统控制信号的频率以及采样信号的分辨率和采样率的要求。控制器结构如图1所示。

系统硬件除了核心控制器CompactRIO外还包括上位机、由单片机和电机驱动芯片LM298构成步进电机驱动电路、步进电机位置信号采集电路和多台步进电机。系统整体结构如图2所示。

安装了LabVIEW应用程序的PC作为系统的控制中心,与在控制现场载入了LabVIEW应用程序的CompactRIO控制器进行远程通信。通过接入网络,控制中心将各台步进电机的目标位置信息发送到控制现场的控制器,同时控制器将采集到的各台步进电机的实时位置反馈到控制中心。

CompactRIO将从控制中心接收到包含各台电机控制信息的数据报译码,得到十进制的位置角度值和控制器初始参数值,然后将各电机目标位置角度值与电机的实时位置角度值送入改进专家PID控制器进行比较分析。根据分析结果,数字量I/O模块NI-9401向电机的驱动控制模块中的单片机的I/O口发送控制信号,实现对步进电机的位置控制。

1.2 步进电机驱动控制电路结构

步进电机的驱动控制电路主要包括Atmel公司的ATmega8单片机和SGS公司的双全桥式电机驱动芯片LM298,LM298作为驱动电机的电力输出器件,单片机作为驱动控制器,电路结构如图3所示。LM298内含两个H桥的高电压大电流双向桥式驱动器,接受标准TTL电平信号,可驱动电压46 V、每相2.5 A及以下的步进电机[3]。由于采用双极性驱动,因此电机线圈完全利用,使驱动步进电机的效果最佳。NI-9401的DIO0、DIO1、DIO2、DIO3四路数字数字输出口分别接单片机的PC0~PC3口,向单片机发送时序信号控制指令。单片机的PD4~PD7口分别接到LM298的四路输入,LM298的四路输出则接到步进电机的A、B、C、D的四个控制端。为避免控制信号受到干扰,单片机I/O输出脚与LM298输入脚之间采用光耦TIL117进行信号隔离。

被控电机选择两相混合式42BYGH型步进电机,采用四相八拍制的多级细分通电方式,即对步进电机定子的A、B、C、D四相以A-AB-B-BC-C-CD-D-DA或A-AD-D-DC-C-CB-B-BA的顺序单相与两相间隔通电,步进电机步距角为θb=0.9°。多级细分控制,通过把原有最小步距角再进行细分,可以把步进电机的步距角进一步减小(减小到几个角分)[4]。本设计利用单片机软件编程实现细分控制,可简化硬件电路。原理是将原有的八个通电状态中每组相邻状态的变化过程(单相通电到两相通电或两相通电到单相通电)分为四个阶梯状的阶段。以从A相通电到AB两相通电的过程为例,此过程中,A相保持通电状态,B相则处于通电与断电的交替过程中,但通电时间呈阶梯状上升,从1/4时间通电到1/2时间通电,再到3/4时间通电,最后到达B相完全通电即AB两相同时通电状态。AB两相通电到B相单相通电过程中A相的断电过程同样呈阶梯状,只是趋势相反。步进电机的相绕组中电流也成四层阶梯状变化,因此运行的每一步变为原来的1 4,即θb=0.225°。这样步进电机运行更近似匀速运动,震动变小了,发生失步的概率也降低了。

1.3 位置信号采集电路结构

采用总阻值为10 kΩ的精密多圈旋转电位器(共10圈,每圈1 kΩ)替代绝对值式旋转编码器采集步进电机的位置信号,此设计可简化硬件、降低成本。电位器两固定端接10 V直流稳压电源的+10 V端和COM端,滑动端接NI-9215模拟量输入模块AI+端,稳压电源的COM端接NI-9215模块的AI-端和COM端。

步进电机的起始位置为0°,对应0.000 V电压;终点位置为3 600°,对应10.000 V电压;步距角为0.9°,对应0.025 V电压。每个NI-9215模块可以同时采集四个节点步进电机的实时位置电压信号,为多路闭环位置控制提供了精确的实时位置反馈信号。

2 精确位置控制的算法设计

专家控制的实质是基于受控对象和控制规律的各种知识,以智能的方式利用这些知识来设计控制器。利用专家经验来设计PID参数便构成专家PID控制[5]。为使不同的被控步进电机在起始位置与设定位置不同情况下都能快速精确到达设定位置,就需要智能的调节控制器参数。将整个位置控制过程分为几个阶段,需要控制器参数能够适应不同阶段而进行自行调节,已达到最佳定位效果。本设计根据大量实验数据与前人经验相结合,设计了适应快速精确位置控制系统的改进专家PID控制器,并通过LabVIEW编程实现。

令e(k)表示设定的步进电机位置角度值p0与步进电机实时位置角度采样值p(k)之差,即当前位置角度差值;令Δe(k)表示当前位置角度差值与前次位置角度差值之差,反应位置角度差值的变化趋势。即有:

根据分析e(k)与Δe(k)将定位过程分成了4个阶段,因此根据这四种情况来设计专家PID的控制器:

(1)当时,说明当前位置与设定位置相差很大,无论位置差变化趋势如何,都应考虑控制器的输出按最大(后最小),以迅速调整位置差,使位置差绝对值以最大速度减小。此时,只采用比例控制,且为提高响应速度比例系数应取大些,而积分系数与微分系数则为0,相当于实施开环控制。控制器输出可为:

(2)当时,说明当前位置接近了设定位置但仍有一定距离,为了继续减小位置差的绝对值,并防止系统超调过大而产生震荡,此时可采取PD控制或积分系数较小的PID控制,且比例系数应该适当减小。输出控制器为:

(3)当时,说明当前位置已经比较接近设定位置,此时为了保证系统稳定性避免系统震荡,应采取PID控制。选取适当的比例系数和积分系数,微分系数则要根据Δe来选择。

若e(k)*Δe(k)>0,说明位置差在向绝对值增大的方向变化,为抑制超调,应加强微分控制,选较大的微分系数。输出控制器为:

若,说明位置差的绝对值朝较小方向变化,或已经达到平衡位置,应减小微分系数。输出控制器为:

(4)当时,当前位置已经很接近设定位置了。为较小稳态误差,此时采用PI控制,选择较大的积分系数并使微分系数为0。输出控制器为:

以上式中λp1,λi1,λd1为增益系数,大于1;而λp2,λi2,λd2为抑制系数,大于0小于1。M1,M2及ε的值是根据位置控制系统实际情况而定的,本设计中它们的取值分别为18°,9°和3.6°。

某次位置控制过程中的改进专家PID控制器的参数变化如表1所示,其中设定的初始参数Kp,Ki,Kd分别为60,0.01,0.01。

此次位置控制过程的起始位置为240.00°、设定位置为100.00°,过程采样图如图4所示。可见,在距设定位置较远时步进电机快速运行;而到接近设定位置时,由于比例调节减弱了,位置曲线变缓,在微分调节和积分调节的共同作用,有效抑制了超调现象的发生,而且稳态误差也非常的小,仅为0.10°,远小于最小步距角。

3 TCP协议在系统中的应用

系统远程通信部分是基于LabVIEW实现的。LabVIEW不仅在程序界面设计时采用了与其他高级语言类似的图形化方式[6],更重要的是,它针对不同的应用和不同的层次,提供了可以通过图形化编程实现的共享变量、DataSocket、TCP和UDP等多种网络通信方式。其中以TCP与UDP两种网络协议最基本、最流行。TCP是最常用的网络协议,它也是很多互联网协议(如HTTP和FTP)的基础[7],在提供良好工作性能的基础上,具有编号系统、流量控制、差错控制、拥塞控制等机制[8]。可靠性(不丢失数据)是TCP最重要的特性,能保证数据能够最终到达设定的接收端,或者发送端能够接收到失败信息。在LabVIEW提供的所有通信标准中,TCP提供了最高的吞吐量和最好的可靠性,在传输大量数据的时候尤其能够体现其高效的特性。而另一种常见的网络协议是UDP和TCP不同,UDP可能会丢失数据。这意味着当发送数据时,不能保证数据能够准确到达目的地。如果网络过于拥挤或者接收方未成功响应,一些数据将会丢失[9]。

为保证远程位置控制系统在数据传输过程中的可靠性与高效性,选择TCP协议实现服务器端的控制中心和客户端的控制器之间的数据通信。本设计中主要应用到的几个VI函数的功能如表2所示。

所有TCP连接都由两对IP地址和TCP端口惟一识别,每个主机都有一个地址/端口对[10]。因此为系统的服务器端和客户端分别分配了独立的IP地址,分别为202.118.73.26与202.118.73.25。将服务器端PC的2055端口专门用于定位系统的数据通信。在控制中心PC和CompactRIO可以交换数据之前,服务器端先对2055端口进行监听,客户端向服务器端的2055端口发送请求,服务器端接收到请求后便建立连接,然后就可以进行通信了。

服务器端和客户端的TCP通信程序都分为发送和接收两部分。服务器端的发送部分采用双层While循环结构,内部循环监视设定位置的变化,当“输入设定位置”栏中的位置值发生变化且单击“发送键”时,内部循环将停止并把含有数据发至外部循环和“写入TCP数据”函数。然后清除“输入设定位置”栏,内部循环将重新监视设定位置的变化。服务器端的接收部分采用单While循环,“读取TCP数据”函数一直接收来自客户端的数据,可实时更新采样位置数据,并在实时位置采样图中显示。客户端的通信程序与服务器端的结构相似,这里不再详细介绍。服务器端和客户端的LabVIEW程序如图5所示。

系统运行时,服务器端的TCP侦听函数进行60 s的监听,等待有客户端发送通信请求,如果超过60 s没有请求,本次监听结束。若收到接听请求,与客户端建立连接,开始进行包含控制信息和电机实时位置信息的数据报双向传输。数据报为字符串格式的格式,包括电机号、位置信息、PID参数设定值和终止字符(“回车键”)。数据报的解析过程中,首先检测“回车键”,以判断一条数据报是否接收完成;其次查询各台电机对应位置角度信息,将字符串格式的位置信息转化为十进制浮点型数据并记录;最后查询对应各台电机的PID控制器的初始参数,将字符串格式的参数转化为十进制浮点型数据并输入到控制器中。系统服务器端监控界面如图6所示。发出的控制信息“一号30Kp60Ki0.01Kd00.01二号60Kp60Ki0.01Kd00.01”,在客户端被解析为一号电机设定位置为30°,二号电机设定位置为60°,两电机控制器初始参数都为60,0.01,0.01。同时,在服务器端的实时位置采样图中可以同步显示出客户端被控电机的位置变化。

4 结语

本设计对两台步进电机实现了无距离限制的远程位置控制,经过多次实验验证定位结果精确而且过程快速,成功解决了传统位置控制系统因过冲现象导致系统不稳定和效率低的问题。此系统的可扩展性很强,只需增加CompactRIO控制器中数字I/O模块与模拟量输入模块就可实现更多点电机的定位控制;而且只要服务器端可兼容多网卡,便可扩展到不同IP的客户端,实现分布式控制。

摘要:步进电机的远程多点位置控制系统,利用TCP协议将服务器端控制中心和客户端控制器接入因特网,可实现控制数据和位置监控数据的远程同步传输。系统采用NI公司的CompactRIO作为核心控制器;通过LabVIEW编写改进专家PID控制算法,可根据设定位置与实时位置的偏差动态设定输出控制器参数,有效防止过冲现象,实现步进电机的精确位置控制。步进电机的驱动控制电路由单片机和LM298构成,结合多级细分控制方法可有效抑制步进电机的震动和失步。

关键词:远程位置控制,CompactRIO,改进专家PID算法,TCP协议

参考文献

[1]张莉松,胡祐德,徐立新.伺服系统原理与设计[M].北京:北京理工大学出版社,2006.

[2]孟英红,齐婉玉.用297,298组成的步进电机驱动电路[J].仪器仪表学报,2003,24(4):253-254.

[3]高文化,苏宏志.模糊自适应PID在数控进给伺服系统的应用[J].制造业自动化,2009,31(7):35-36.

[4]史步海,张选正.特种电动机调速控制技术及应用[M].广州:华南理工大学出版社,2010.

[5]刘金琨.先进PID控制Matlab仿真[M].2版.北京:电子工业出版社,2004.

[6]阮奇桢.我和LabVIEW[M].北京:北京航空航天大学出版社,2009.

[7]张东,施奇峰,王云波.基于LabVIEW和TCP的数据采集系统的开发及应用[J].冶金自动化,2011,35(2):38-39.

[8]陈笑秋,徐小华.基于DataSocket技术的网络化测控系统[J].仪器仪表用户,2008,15(2):63-65.

[9]陈锡辉,张银鸿.LabVIEW8.20程序设计从入门到精通[M].北京:清华大学出版社,2007.

上一篇:用户信息管理软件设计下一篇:大学生质量