发明内容:
发明目的:
为了解决上述问题,本发明提供了一种基于SCN内干扰力估计的坐垫机器人安全触发控制方法,目的是抑制内干扰力对系统跟踪性能的影响,同时通过安全触发器保障人机系统运动的安全性。
技术方案:
本发明是通过以下技术方案来实现的:
一种基于SCN内干扰力估计的坐垫机器人安全触发控制方法,其特征在于:
1)基于坐垫机器人的动力学模型,考虑使用者操作日常生活动作对人机系统产生的干扰,建立具有内干扰力的坐垫机器人动力学模型;
2)基于SCN方法构建内干扰力的网络估计模型,以轨迹跟踪误差和速度跟踪误差为网络输入,通过不断随机配置隐含层节点参数,获得人机系统中内干扰力估计;
3)设计安全触发跟踪控制器,抑制内干扰力对系统跟踪精度的影响,并将轨迹跟踪误差和速度跟踪误差限制在指定范围内,保障使用者安全。
步骤如下:
步骤一)基于坐垫机器人的动力学模型,考虑使用者操作日常生活动作对人机系统产生的干扰,建立具有内干扰力的坐垫机器人动力学模型,其特征在于:系统的动力学模型描述如下:
其中
u(t)=[f1 f2 f3]T
其中M表示坐垫机器人的质量;m表示使用者的质量;I0表示坐垫机器人的转动惯量;r0表示系统中心与重心之间的距离。u(t)表示广义输入力,f1,f2和f3分别表示各个全向轮的广义输入力。M0,B(θ)表示系数矩阵,θ表示水平轴和机器人中心与第一个轮子中心连线间的夹角,l表示机器人中心到各个轮子的距离。
考虑使用者操作日常生活动作时对机器人输入力的影响,将广义输入力分解为u(t)=u0(t)+uf(t),其中u0(t)表示待设计的控制输入力,uf(t)表示人机系统内干扰力,建立具有人机系统内干扰力的坐垫机器人动力学模型:
步骤二)基于SCN方法构建内干扰力的网络估计模型,以轨迹跟踪误差和速度跟踪误差为网络输入,通过不断随机配置隐含层节点参数,获得人机系统中内干扰力估计。其特征在于:以机器人运动轨迹跟踪误差和速度跟踪误差
作为SCN的网络输入层,并通过权重ω和阈值b与隐含层连接,利用高斯函数得隐含层输出G(e(t))。
其中
b=[b1,b2,...,bL]T G(e(t))=[g1(ω1e(t)+b1),...,gL(ωLe(t)+bL)]T
gj(ωje(t)+bj)为隐含层第j个节点的输出j=(1,2,...,L),ωh,j为输入层第h个输入连接隐含层第j个节点的权值,h=(1,2,...,6),bj为隐含层第j个节点的阈值。
然后,SCN隐含层通过权重
与输出层连接,得到内干扰力估计的网络输出
如下:
其中
为第j个隐含层节点连接第g个输出的权值g=(1,2,3)。
进一步根据隐含层节点数为L-1时得到的内干扰力估计误差
随机配置第L个隐含层节点参数,使其满足δ
L>0,δ
L表达形式如下:
由于
其中
故
其中,参数0<r<1,{μ
L}为非负实数序列,
随着随机配置的隐含层节点数不断增加,直至
便可实现内干扰力估计
步骤三)设计安全触发跟踪控制器,抑制内干扰力对系统跟踪精度的影响,并将轨迹跟踪误差和速度跟踪误差限制在指定范围内,保障使用者安全。其特征在于:坐垫机器人实际运动轨迹X(t),指定运动轨迹Xd(t),则轨迹跟踪误差和速度跟踪误差为:
其中e1(t)=[e11(t) e12(t) e13(t)]T分别表示x轴、y轴及旋转角方向的轨迹跟踪误差,e2(t)=[e21(t) e22(t) e23(t)]T分别表示x轴、y轴及旋转角方向的速度跟踪误差。
将式(2)代入式(5)得到跟踪误差方程为:
设计控制器u0(t)如下:
由此得到触发控制器为:
设计安全触发器如下:
当t0时刻首次触发时:
t0=min{t>0;|e1r(t)|≥a1r or|e2r(t)|≥a2r},r=1.2.3 (9)
当ti(i≥1)时刻触发时:
ti=min{t≥ti-1;||ξ(t)||≥w(e1(t),e2(t))or|e1r(t)|≥a1r or|e2r(t)|≥a2r}(10)
其中a1r>0,a2r>0分别表示x轴、y轴及旋转角方向的轨迹跟踪误差和速度跟踪误差的安全界限。且
其中k1∈R3×3,k2∈R3×3,p1∈R3×3,p2∈R3×3均为对角正定对称矩阵。
当t∈[ti,ti+1),系统误差状态方程表示为:
根据两次触发时刻间隙的误差状态方程(12),建立Lyapunov函数如下:
对式(13)沿误差状态方程(12)求导,得:
将式(15)代入式(14),可得:
将式(7)代入式(16),得到:
由安全触发器(9)(10)可知,在两次触发时刻间隙ξ(t)满足以下不等式:
将式(18)代入式(17)可得
因此在两次触发时刻间隙跟踪误差系统渐近稳定;进一步,当ξ(t)不满足式(18)时,则安全触发器触发,控制信号由u
0(t
i)更新为u
0(t
i+1)。
接下来,求解两次触发间隙时间T,由式(12)可以得到:
设L1为跟踪误差系统(12)的Lipschitz常数,则式(19)化为如下形式:
设L2=max(L,L1),可得:
对误差ξ(t)求导,并设常数L3>0,可以得到:
由式(22)可得:
当t=t
i+1时,根据式(23)得到两次触发间隙时间
由此可知T>0,避免了ZENO现象。同时安全触发器能实现系统的渐近稳定,保障了系统的稳定性。步骤四)基于MSP430系列单片机将输出PWM信号提供给电机驱动单元,使机器人同时实现对参考轨迹信号的运动轨迹跟踪,其特征在于:以MSP430系列单片机为主控制器,主控制器的输入接电机测速模块、输出接电机驱动模块;电机驱动电路与直流电机相连;电源系统给各个电气设备供电。主控制器控制方法为读取电机编码器的反馈信号与主控制器给定的控制命令信号X
d(t)和
计算得出误差信号。根据误差信号,主控制器按照预定的控制算法计算出电机的控制量,送给电机驱动单元,电机转动带动轮子维持自身平衡及按指定方式运动。
优点及效果:
本发明是一种基于SCN内干扰估计的坐垫机器人安全触发控制方法,具有如下优点:
本发明巧妙地分离出坐垫机器人动力学模型中的内干扰力,以坐垫机器人的轨迹跟踪误差和速度跟踪误差为网络输入,基于SCN方法建立人机内干扰力的模型,抑制人机内干扰对系统的影响,设计安全触发跟踪控制器,使机器人同时实现运动轨迹和运动速度的安全触发跟踪,能有效提高跟踪精度,保证使用者的安全。
具体实施方式:
下面结合附图对本发明做进一步的说明,但本发明保护范围不受实施例的限制。
一种基于SCN内干扰力估计的坐垫机器人安全触发控制方法,其特征在于:
1)基于坐垫机器人的动力学模型,考虑使用者操作日常生活动作对人机系统产生的干扰,建立具有内干扰力的坐垫机器人动力学模型;
2)基于SCN方法构建内干扰力的网络估计模型,以轨迹跟踪误差和速度跟踪误差为网络输入,通过不断随机配置隐含层节点参数,获得人机系统中内干扰力估计;
3)设计安全触发跟踪控制器,抑制内干扰力对系统跟踪精度的影响,并将轨迹跟踪误差和速度跟踪误差限制在指定范围内,保障使用者安全。
步骤如下:
步骤一)基于坐垫机器人的动力学模型,考虑使用者操作日常生活动作对人机系统产生的干扰,建立具有内干扰力的坐垫机器人动力学模型,其特征在于:系统的动力学模型描述如下:
其中
u(t)=[f1 f2 f3]T
其中M表示坐垫机器人的质量;m表示使用者的质量;I0表示坐垫机器人的转动惯量;r0表示系统中心与重心之间的距离。u(t)表示广义输入力,f1,f2和f3分别表示各个全向轮的广义输入驱动力。M0,B(θ)表示系数矩阵,θ表示水平轴和机器人中心与第一个轮子中心连线间的夹角,l表示机器人中心到各个轮子的距离。
考虑使用者操作日常生活动作时对机器人输入力的影响,将广义输入力分解为u(t)=u0(t)+uf(t),其中u0(t)表示待设计的控制输入力,uf(t)表示人机系统内干扰力,建立具有人机系统内干扰力的坐垫机器人动力学模型:
步骤二)基于SCN方法构建内干扰力的网络估计模型,以轨迹跟踪误差和速度跟踪误差为网络输入,通过不断随机配置隐含层节点参数,获得人机系统中内干扰力估计。其特征在于:以机器人运动轨迹跟踪误差和速度跟踪误差
作为SCN的网络输入层,并通过权重ω和阈值b与隐含层连接,利用高斯函数得隐含层输出G(e(t))。
其中
b=[b1,b2,...,bL]T G(e(t))=[g1(ω1e(t)+b1),...,gL(ωLe(t)+bL)]T
gj(ωje(t)+bj)为隐含层第j个节点的输出j=(1,2,...,L),ωh,j为输入层第h个输入连接隐含层第j个节点的权值,h=(1,2,...,6),bj为隐含层第j个节点的阈值。
然后,SCN隐含层通过权重
与输出层连接,得到内干扰力估计的网络输出
如下:
其中
为第j个隐含层节点连接第g个输出的权值g=(1,2,3)。
进一步根据隐含层节点数为L-1时得到的内干扰力估计误差
随机配置第L个隐含层节点参数,使其满足δ
L>0,δ
L表达形式如下:
其中,参数0<r<1,{μ
L}为非负实数序列,
随着随机配置的隐含层节点数不断增加,直至
便可实现内干扰力估计
步骤三)设计安全触发跟踪控制器,抑制内干扰力对系统跟踪精度的影响,并将轨迹跟踪误差和速度跟踪误差限制在指定范围内,保障使用者安全。其特征在于:坐垫机器人实际运动轨迹X(t),指定运动轨迹Xd(t),则轨迹跟踪误差和速度跟踪误差为:
其中e1(t)=[e11(t) e12(t) e13(t)]T分别表示x轴、y轴及旋转角方向的轨迹跟踪误差,e2(t)=[e21(t) e22(t) e23(t)]T分别表示x轴、y轴及旋转角方向的速度跟踪误差。
将式(2)代入式(5)得到跟踪误差方程为:
设计控制器u0(t)如下:
由此得到触发控制器为:
设计安全触发器如下:
当t0时刻首次触发时:
t0=min{t>0;|e1r(t)|≥a1r or|e2r(t)|≥a2r},r=1.2.3 (9)
当ti(i≥1)时刻触发时:
ti=min{t≥ti-1;||ξ(t)||≥w(e1(t),e2(t))or|e1r(t)|≥a1r or|e2r(t)|≥a2r}(10)
其中a1r>0,a2r>0分别表示x轴、y轴及旋转角方向的轨迹跟踪误差和速度跟踪误差的安全界限。且
其中k1∈R3×3,k2∈R3×3,p1∈R3×3,p2∈R3×3均为对角正定对称矩阵。
当t∈[ti,ti+1),系统误差状态方程表示为:
根据两次触发时刻间隙的误差状态方程(12),建立Lyapunov函数如下:
对式(13)沿误差状态方程(12)求导,得:
将式(15)代入式(14),可得:
将式(7)代入式(16),得到:
由安全触发器(9)(10)可知,在两次触发时刻间隙ξ(t)满足以下不等式:
将式(18)代入式(17)可得
因此在两次触发时刻间隙跟踪误差系统渐近稳定;进一步,当ξ(t)不满足式(18)时,则安全触发器触发,控制信号由u
0(t
i)更新为u
0(t
i+1)。
接下来,求解两次触发间隙时间T,由式(12)可以得到:
设L1为跟踪误差系统(12)的Lipschitz常数,则式(19)化为如下形式:
设L2=max(L,L1),可得:
对误差ξ(t)求导,并设常数L3>0,可以得到:
由式(22)可得:
当t=t
i+1时,根据式(23)得到两次触发间隙时间
由此可知T>0,避免了ZENO现象。同时安全触发器能实现系统的渐近稳定,保障了系统的稳定性。
步骤四)基于MSP430系列单片机将输出PWM信号提供给电机驱动单元,使机器人同时实现对参考轨迹信号的运动轨迹跟踪,其特征在于:以MSP430系列单片机为主控制器,主控制器的输入接电机测速模块、输出接电机驱动模块;电机驱动电路与直流电机相连;电源系统给各个电气设备供电。主控制器控制方法为读取电机编码器的反馈信号与主控制器给定的控制命令信号X
d(t)和
计算得出误差信号。根据误差信号,主控制器按照预定的控制算法计算出电机的控制量,送给电机驱动单元,电机转动带动轮子维持自身平衡及按指定方式运动。
本发明建立了具有内干扰力的坐垫机器人动力学模型,并以轨迹跟踪误差和速度跟踪误差为网络输入,基于SCN算法获得了内干扰力估计;设计了安全触发跟踪控制器,抑制人机内干扰力对系统跟踪性能的影响,同时将轨迹跟踪误差和速度跟踪误差设计为触发控制条件,限制了坐垫机器人跟踪误差的范围,保障了人机系统的安全。