1.一种最大紧急优先调度的方法,其特征在于,所述方法包括以下步骤:
步骤1)建立网络通信机制,需配置个运动控制平台网络通信模式:
考虑本系统在局域网中实现,服务器采用本地PC开发的控制软件,各节点采用stm32作为控制器,节点的数据通过网络传输到本地PC机,在PC机开发的控制软件进行计算控制量再传回STM32进行运动系统的控制,网络化运动控制系统选用Ethernet/IP的网络结构的UDP通信协议,各个节点的网络通信配置如下:
1.1).在QT中开发控制软件,用SOCKET接口进行数据交互,a.创建socket对象,b.bind()为socket对象绑定协议,赋予名字,c.join()将各节点加入主播地址,d.connet()连接服务器的socket对象;
1.2).在STM32中,搭载ucos系统通过LWIP轻量级的TCP/ip协议栈实现,a.配置LWIP/DHCP动态ip可自动获取本地ip,b.创建网络套接字对象,c.绑定网络套接字协议对象,d.加入主播地址
1.3).网络化运动控制中,要求网络时延越低越有利于系统的稳定控制,在数据发送的过程,将采集数据转换成二进制数据发送,一帧数据定义为16位,将各网络节点的地址编号转化为二进制封装在数据帧的前4位中,网络节点观测的数据封装在后12位当中;
步骤2)将误差及误差变化率进行归一化处理:
其中,serr(k)i为误差标准值,sderi(k)为误差变化率的标准值,erri(k)为i节点的误差值,errimin为i节点误差的最小值,errimax为i节点误差的最大值,同样的,derri为i节点误差变化率,derrimax表示i节点误差变化率的最大值,derrimin表示i节点误差变化率的最小值;
步骤3)将各节点归一化误差及误差变化率作为模糊规则的输入,确定网络需求度:
依据erri和derri的变化值为[‑1.0,0,1.0],Ei和D ei分别为erri和derri的模糊集,Ei的量化等级分为11级[0,1,2,3,4,5,6,7,8,9,10],D ei的量化等级分为9级[0,1,2,3,4,5,6,
7,8];输出Ti等级分为5级[1,2,3,4,5],Ei的模糊子集为[NB、NM、NS、ZE、PS、PM、PB],D ei的模糊子集为[NB、NS、ZE、PS、PB],Ti的模糊子集为[PS、S、M、B、PB],取量化因子Ke=10,Kd=
10,Kt=1;
选取三角形隶属度函数作为输入变量Ei的隶属度函数,梯形隶属度函数作为输入变量D ei的隶属度函数,高斯隶属度函数作为输出变量Ti的隶属度函数,控制回路误差和误差变化率作为模糊算法的输入,网络需求度作为模糊算法的输出,当误差和误差变化率较大时,需要分配较多的网络资源,当误差和误差辩护率较小时,分配较低的网络资源,优先级越大,网络需求度越高;
步骤4)确定各回路的紧急程度
其中,|serri(k)|为误差的绝对值,|serr|z为饱和时的误差,Vi为网络需求紧急度;
步骤5)为各运动控制平台设计动态权重如下
wi(k)=w0i(k)+Δwi(k) (3)
其中,wi为i节点在k时刻的权值,w0i(k)为i节点的固定权重,Δwi(k)为i节点补偿权重;
步骤6)确定网络化运动控制平台的优先级
其中,|erri(k)|为误差的绝对值,|erri(k)|z为饱和时的误差,Pi(k)为i节点的优先级,Ri(k)为i节点的网络需求度,α为动态权重修正系数,Δwmin为最小补偿权值,不同时刻下,Pi(k)值越大,i节点所对应的优先级越高,i节点应优先得到本地PC机的数据接收权。