一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于模糊PID控制的平衡球控制系统

2023-09-08 18:21:17 来源:中国专利 TAG:

一种基于模糊pid控制的平衡球控制系统
技术领域
1.本发明涉及计算机视觉领域和控制领域,尤其是涉及一种基于模糊pid控制的平衡球控制系统。


背景技术:

2.随着光电载荷性能的不断提升,系统作用距离的不断提高,光电跟瞄系统对各种运动目标的瞄准精度要求也越来越高,系统需要可靠的电子稳像设备,快速反射镜慢慢进入了人们的视野之中,快速反射镜主要装配于大型惯性测量设备的粗跟踪平台之上。近年来,快速反射镜具有大口径、大角度、高精度、高响应和高承载的发展特点,一般具有非线性、迟滞性、非单一路径的系统特征,基于以上特点,把快速反射镜的光轴指向动作转换为球平衡控制动作,提出一种基于模糊pid控制的球平衡控制系统,能够减少控制系统实验测试的复杂度。
3.为了提升光电跟踪系统对目标的瞄准和跟踪的自适应控制能力以及稳定性,提出一种基于模糊pid控制的平衡球控制系统,
4.平衡球控制系统是一个典型的非线性、迟滞性控制系统,它通过摄像头实现对目标的定位和追踪,再使用特殊的控制算法,控制平板倾斜动作,实现对滚球运动目标和运动速度的控制,其研究内容涉及机器视觉控制,运动控制,智能控制。
5.目前的球平衡运动系统大多属于pid参数调节模式控制伺服输出,例如双闭环的方法,以及串级多闭环的方法。即使上述方法能够实现对系统的闭环控制,但是仅限于固定的系统控制,不能做到很好的参数适用性,需要人工调节控制参数,即系统设计的适用性得不到保证。


技术实现要素:

6.针对上述现有技术存在的问题,本发明的目的在于提供一种基于模糊pid控制的平衡球控制系统,目的在于对系统进行模块化设计以匹配不同的控制算法,以及运用一种自适应性控制算法,不需要人工调参。
7.为了实现上述目的,本发明采用的技术方案如下:
8.一种基于模糊pid控制的平衡球控制系统,该控制系统包括:基座结构模块、电源与电路模块、控制系统处理器模块、伺服控制模块、图像处理模块;所述基座结构模块、电源与电路模块以及控制系统处理器模块为整个控制系统的基座部分,所述伺服控制模块、图像处理模块为控制系统的算法部分,图像处理模块负责图像识别、图像预处理以及目标定位;伺服控制部分则根据定位差值,由控制算法对伺服控制机构进行系统运动控制;
9.所述基座结构模块包括:系统基座、运动板面、中央支撑柱、两个舵机、两根支撑杆、陀螺仪,所述系统基座和运动板面都是平面结构,基座中心位置固定设置中央支撑柱,中央支撑柱与运动板面中心通过万向节连接;两个舵机设置于系统基座上,与系统基座中心的连线夹角为90度,舵机的输出轴通过连接片与支撑杆的一端铰接,支撑杆的另一端与
运动板面通过万向节连接;陀螺仪设置于运动板面下方,实时采集运动面板的角度信息;
10.连杆分为旋转位移部分和垂直提升部分,旋转位移部分连接舵机的输出轴,垂直提升部分的末端连接支撑杆;两个部分的连接配合使得舵机的旋转切向力变为垂直提升力;
11.建立控制系统的数学模型如下:
12.定义系统的初始位置和初始速度,初始角度和速度都为零位,运动过程中只考虑重力以及球体转动力的影响,忽略摩擦力以及其他作用力;
13.球体切向力为:
[0014][0015]
其中,fr为平衡球体切向力,i为平衡球的转动惯量,β(t)为平衡球的转动角度,t为时间参数,为平衡球转动角度关于时间参数的二阶导数,rb为平衡球半径;
[0016]
再把角度量转换为线性量x(t):
[0017]
x(t)=β(t)
×
rb[0018]
得到切向力关于运动线性位移的表达式:
[0019][0020]
其中,为线性量x(t)关于时间参数的二阶导数,又由牛顿运动定律得:
[0021][0022]
m表示平衡球质量,g为重力系数;
[0023]
得到关于小球的运动微分方程:
[0024][0025]
根据运动板面倾斜角度θ和舵机输出齿轮偏转角度α有:
[0026][0027]
其中,ra为伺服齿轮的半径,l为板面长度,得到最终的小球运动微分方程有:
[0028][0029]
所述图像处理模块的处理方法为:
[0030]
a1:定义:双边滤波的权重系数w(i,j,k,l)的定义域表示为gs,值域表示为gr;
[0031]
由如下公式:
[0032]
[0033][0034]
得到图像中像素(i,j)和(k,l)之间的权值w(i,j,k,l),以及邻域内所有像素的权值和k;σs,σr分别表示滤波值参数与空间邻域参数,f(i,j)表示该像素点的值;
[0035][0036][0037]
最后带入双边滤波器公式:
[0038][0039]
其中,g(i,j)表示该像素点经过双边滤波之后的值;
[0040]
a2:目标识别;
[0041]

lab颜色空间识别需要关闭摄像头白平衡和自动增益,设置lab阈值参数,设置颜色最小像素阈值为10,即只判断大于10个像素的颜色值,根据色块像素的密度判定是否识别目标,在算法识别到初步目标之后,提取目标边缘;
[0042]

梯度霍夫圆检测算法是在lab颜色识别之后进行,初步确定目标,且提取出目标边缘之后,利用霍夫变换,对图像边缘像素点进行分析,再通过坐标变换,累计重复点数,从而找到目标圆以及圆心。
[0043]
所述控制系统处理器模块中采用模糊pid控制方法,该方法方法分为:模糊化、数据库、去模糊化与pid计算;
[0044]
b1:模糊化即对系统位置误差e与该误差变化率δe作为pid模糊控制的输入,系统位置误差e表示平衡球的当前位置坐标值与所设定目标位置之间的差值,平衡球当前位置为图像处理模块获得,根据模糊化数学思想,其绝对值设定在[0,6]区间内连续变化,采用三角形隶属度函数的形式,根据模糊子集的定义,两个参数模糊集合为:
[0045]
|e|=|δe|={nb,nm,ns,zo,ps,pm,pb}
[0046]
其中nb,nm,ns,zo,ps,pm,pb代表负大、负中、负小、零、正小、正中、正大;
[0047]
b2:结合经验所得的模糊控制关系表,对模糊pid控制系统进行模糊推理,对误差e和误差变化率δe进行模糊映射,根据三角形隶属度函数对四个参数进行两两组合,通过查表法获得控制量输出;
[0048]
b3:到模糊化控制量输出之后,根据模糊集合的定义对输出量进行解模糊计算,得到解模糊计算结果,再根据区间映射公式输出最后的pid参数。
[0049]
经过上述方案运用,与现有技术相比本发明的有益效果是:
[0050]
(1)系统设计基于模块化设计操作,各个模块互相独立,又互相配合,有利于模块扩展以及扩充。
[0051]
(2)提出lab颜色识别与梯度霍夫圆形识别相结合的检测算法,能够精确、可靠地得到目标定位结果。
[0052]
(3)系统控制算法采用模糊控制算法,使得系统具有自适应性能力,不需要人工调参。
[0053]
(4)系统摄像头模块采用机器视觉模块,内置python语言解释器,可以直接在单片机上对控制算法进行测试。
[0054]
(5)系统伺服控制器以及系统处理器采用高频率设备,最大运行频率可达300hz。
附图说明
[0055]
图1为本发明所述一种基于模糊pid控制的平衡球控制系统基座整体示意图;
[0056]
图2为系统设计总体框图;
[0057]
图3为3.3v降压电路图;
[0058]
图4为5v降压电路图;
[0059]
图5为12v升压电路图;
[0060]
图6为电源稳压滤波电路图;
[0061]
图7为目标识别流程图;
[0062]
图8为sd5舵机示意图;
[0063]
图9为系统闭环框图;
[0064]
图10为模糊pid结构控制图;
[0065]
图11为摄像头目标识别示意图;
[0066]
图12为模糊控制参数输出曲面图;(a)为k
p
参数控制曲面;(b)为ki参数控制曲面;(c)为kd参数控制曲面。
[0067]
图13为软件算法总体框图。
具体实施方式
[0068]
本发明所述一种基于模糊pid控制的平衡球控制系统的主要控制设备如图1所示,主要包括:小球、运动板面、万向节联轴器、支撑柱、舵机连杆、舵机、舵机架、板底面、电路模块、摄像头。参考图2所示系统总体框图对本发明的技术方案进行清楚、完整地描述。
[0069]
所述电源与电路模块主要是为系统提供 3.3v、 5v、 12v三种类型的直流电压输出,加上 7.2v的锂电池电压,已经满足大部分元器件的电压要求。系统总电源选用7.2v 2000mah ni-cd电池供电,对初始输入电压进行滤波、稳压设计。电源boost、buck功能设计则采用金手指插座的模式设计电路,以方便更换电压模块。buck器件选用tps76850和tos76833低压降压器;boost电路选用mc34063模块设计该模块可以用于升压、降压设计操作。所述控制系统处理器模块采用ibrahim机器视觉模组芯片,它具有低成本、可拓展的优点,处理器类型为arm cortex m7,最高使用频率可达480mhz,提供三个adc以及两个dac接口,还具有一个dcmi数字摄像头接口。所述伺服控制模块采用高频舵机作为伺服控制器使用,由单片机输出pwm波对舵机进行直接控制。即所述单片机控制系统的输出作为所述高频舵机的输入,舵机通过舵机轴连杆带动板面倾斜,角度反馈通过陀螺仪、加速度计进行位置闭环操作,控制所述舵机的转动角度使得板面具有不同的倾斜角度,使得小球按照预设轨
迹行动。由于伺服舵机并不满足线性时不变特性,控制算法方面采用自适应模糊控制算法进行控制输出。所述模糊控制算法即采用模糊控制运用于pid控制之中,根据模糊控制器的设置,输出对应的pid参数调节结果,使得参数调整为实时性参数调整,具有很强的自适应性能力,且不需要人工调整系统参数,提升了pid控制算法的自适应性以及实时处理能力。
[0070]
所述图像处理模块包括了机器视觉摄像头以及图像处理算法两个层面,包括:
[0071]
机器视觉摄像头采用的是ov5640数字摄像头,所述机器视觉模组内置机器视觉芯片,支持python语言编程,最大刷新率达120fps。
[0072]
所述图像处理算法主要负责图像的基础滤波以及目标识别定位。
[0073]
为达到上述目的,所述图像处理算法采用的技术方案是:
[0074]
(1)对初始图像进行滤波操作,对图像进行噪声抑制和质量改善,运用双边滤波操作的方法,在高斯滤波的基础上增加了对图像的边缘保护作用。
[0075]
所述目标识别方法,采用lab颜色空间识别和梯度霍夫圆检测的方法,lab颜色空间相比rgb空间而言,具有更客观的颜色范围,直接与人类视觉感知模型相关,并不受到物理器件的限制。梯度霍夫圆检测相比霍夫圆检测可以大大减少计算量,两种检测方式相互配合,能够精确的目标识别结果。
[0076]
(1)基座结构
[0077]
(1.1)运动板面以及板底面为300*300的亚克力材质正方形板面。
[0078]
(1.2)中央支撑柱为安装于板底面的15mm长铝柱,于运动板面下部,中央位置以及x轴轴向支撑点、y轴轴向支撑点打孔安装三个铝合金万向节,连接x、y轴向运动连杆以及主支撑轴。
[0079]
(1.3)底板面设计有舵机架,用于固定舵机使用。舵机使用sd5高频舵机,通过处理器输出pwm波形控制舵机转动,根据板面高度以及舵机尺寸为舵机设计了舵机连杆,其中旋转传动部分连接到舵机,垂直提升部分连接到万向节,两个部分的连接配合使得舵机的旋转切向力变为垂直提升力,带动运动板面偏转,最终使得小球运动。
[0080]
(2)电源电路
[0081]
(2.1)系统总电源选用7.2v 2000mah ni-cd电池供电,提供5v、3.3v以及12v直流电源。并如图6所示对输入ni-cd电池并联一个大电容,对电源进行滤波和稳压,以用来补偿电源输出的瞬态不稳定,并且大电容还可以吸收电源的瞬态波动,从而减小电源的电压波动并稳定输出电压。
[0082]
(2.2)如图3所示的3.3v降压电路芯片选用ti公司的线性电源tps76833低压降压器,芯片采用10μf低esr电容,具有快速瞬态响应。
[0083]
(2.3)如图4所示的5v降压电路芯片选用ti公司的线性电源tps76850低压降压器,芯片采用10μf低esr电容,具有快速瞬态响应。
[0084]
(2.4)在12v升压电路中,芯片选择是mc34063,该器件常用于mcu之中,具有dc-dc变换功能,可用于升压或者降压操作,输入电压范围从2.5v-40v,输出电压范围为1.25v-40v。如图5所示为12v升压模块电路图,升压工作原理为5号引脚通过外接电阻r9和r10控制输出电压,且输出电压只与r9和r10有关,计算公式如下:
[0085]
[0086]
(2.5)考虑到稳压芯片的散热以及损耗情况,可把稳压芯片与稳压板主体进行模块化分离的形式,通过金手指插座的方式进行连接,可以达到随插随用,随时替换,同时也避免了电源信号与通信信号之间互相干扰的情况。
[0087]
(3)处理器
[0088]
(3.1)中央处理器是基于arm cortex-m7内核的32位微控制器stm32h743vi,由stmicroelectronics生产。且支持高速外设接口,如gpio、uart、i2c、spi等。该芯片还支持高分辨率模拟/数字转换器、多种实时时钟和看门狗。提供三个adc以及两个dac接口,具有一个dcmi数字摄像头接口。具有两个超低功耗比较器,一个低功耗rtc,一个高分辨率定时器,12个通用16位定时器。
[0089]
(3.2)采用的dcmi数字摄像头接口是一个同步并行接口,能够接受来自ov5640的10位高速数据流,这些数据以32位的对齐方式,存储到32位数字寄存器(dcmi\_dr),之后通过通用dma进行传输。从ov5640传输的数据被处理器按照逐行的方式进行接收,图像数据传输过程需要水平同步信号(dcmi\_hsync)和垂直同步信号(dcmi\_vsync)两个信号硬件同步。
[0090]
(4)图像处理部分
[0091]
(4.1)摄像头模块选择openmv cam h7 plus,其搭载一块ov5640数字图像传感器,内置图像解释器,支持快速自动对焦,并且可以进行多种图像控制,调节色彩饱和度、亮度、对比度等。
[0092]
(4.2)采用双边滤波的方式,对输入图像进行滤波预处理。双边滤波需要两个参数:空间邻域的大小,用来控制平滑的程度;范围邻域的大小,用来控制像素值之间的差异。每个像素的输出值是在邻域内的像素的像素值的加权平均,加权值是两个额外的参数的结果。通过加权像素值,双边滤波把图像的空间邻域内像素的相关性和像素值的差异结合起来,从而对图像的边缘信息进行保护,同时对图像的其他部分进行平滑处理。
[0093]
双边滤波的权重系数w(i,j,k,l)的定义域(空间距离)表示为gs,值域(像素权重)表示为gr。
[0094][0095][0096]
得到图像中像素(i,j)和(k,l)之间的权值w(i,j,k,l),以及邻域内所有像素的权值和k。
[0097][0098]
[0099]
最后带入双边滤波器公式:
[0100][0101]
(4.3)目标识别采用lab颜色空间识别和梯度霍夫圆检测的方法,lab颜色空间相比rgb空间而言,具有更客观的颜色范围,直接与人类视觉感知模型相关,并不受到物理器件的限制。梯度霍夫圆检测相比霍夫圆检测可以大大减少计算量,两种检测方式相互配合,能够精确的目标识别结果。
[0102]

lab颜色空间识别需要关闭摄像头白平衡和自动增益,设置lab阈值参数,设置颜色最小像素阈值为10,即只判断大于10个像素的颜色值,根据色块像素的密度判定是否识别目标,在算法识别到初步目标之后,提取目标边缘。
[0103]

梯度霍夫圆检测算法是在lab颜色识别之后进行,初步确定目标,且提取出目标边缘之后,利用霍夫变换,对图像边缘像素点进行分析,再通过坐标变换,累计重复点数,从而找到目标圆以及圆心。
[0104]
圆的方程定义为:
[0105]
(x-a)2 (y-b)2=r2[0106]
于圆周确定一点x0,y0并转换为(a,b)坐标系下,在x方向求导得:
[0107][0108]
确定最终目标之后,提取出目标的中心坐标,目标识别过程如图7所示。
[0109]
(5)伺服控制部分
[0110]
(5.1)sd5高频舵机如图8所示,其最大频率为300hz,pwm波形出入舵机调制芯片,得到直流偏置电压,经过内部基准电路压差比较,最终使得电机正反转转动,电机外有四个减速齿轮负责传动输出,内部还具有一个机械限位功能的电位器对输出角度进行测量。图9为系统闭环框图,整体系统设计为一个稳定的闭环系统。
[0111]
(5.2)控制算法采用模糊pid控制算法,虽然pid的应用范围很广,并且一些非线性系统也可以简单拟合为线性系统作为pid控制之用。模糊控制则主要适用于非线性、迟滞系统,把模糊控制运用于pid控制之中,可以提升pid控制算法的性能以及实时处理能力。本发明所述模糊pid控制总体分为模糊化、数据库、去模糊化与pid计算三个部分组成。
[0112]

模糊化即将系统位置误差e与误差变化率δe作为模糊控制的输入,根据模糊化数学思想,其绝对值设定在[0,6]区间内连续变化,采用三角形隶属度函数的形式,根据模糊子集的定义,两个参数模糊集合为:
[0113]
|e|=|δe|={nb,nm,ns,zo,ps,pm,pb}
[0114]
其中nb,nm,ns,zo,ps,pm,pb代表负大、负中、负小、零、正小、正中、正大。
[0115]

结合经验所得的模糊控制关系表,对模糊pid控制系统进行模糊推理,对误差e和误差变化率δe进行模糊映射,根据三角形隶属度函数对四个参数进行两两组合,通过查表法获得控制量输出。
[0116]

得到模糊化控制量输出之后,根据模糊集合的定义对输出量进行解模糊计算,得到解模糊计算结果,再根据区间映射公式输出最后的pid参数。如图10为模糊pid控制算法流程图,经过系统离散化采样之后,输入信号为e和δe,之后对参数进行模糊化处理输入
模糊控制模块,根据模糊整定后查表得到隶属度参数,在解模糊计算后,根据输出参数的期望值得到最终的pid参数,将其输出给pid控制器,再依据pid控制理论对被控对象进行控制输出。最终系统输出k
p
,ki,kd结果如图11所示。
[0117]
(5.2)例如在一次模糊pid控制算法计算中得出e=6,δe=-6,首先进行论域模糊化映射到[-3,3]范围,根据三角形隶属度函数得到e的隶属度为0.6(pm)、0.4(pb),δe的隶属度则为0.4(nb)、0.6(nm),之后对这四个参数进行两两组合。
[0118]
表1δk
p
、δki、δkd计算表
[0119]
e隶属度δe隶属度δk
p
δkiδkdpm(0.6)nb(0.4)ps(0.24)zo(0.24)pb(0.24)pm(0.6)nm(0.6)zo(0.36)zo(0.36)ns(0.36)pb(0.4)nb(0.4)zo(0.16)zo(0.16)pb(0.16)pb(0.4)nm(0.6)zo(0.24)zo(0.24)pm(0.24)
[0120]
推理机得到模糊化参数,输出到解模糊计算,δk
p
的隶属度输出结果为ps(0.24)、zo(0.36)、zo(0.16)、zo(0.24),整个系统论域为[-3,3],即ps为1,zo为0,另外两个参数依次计算得到:
[0121][0122]
如上式可知,系统在此次误差输入之后,输出设定为pd调节,在得出k
p
、ki、kd、期望之后,根据区间映射公式最后输出pid参数结果。
[0123]
(6)软件算法总框架
[0124]
如图12所示,当系统开始运行之后,需要对系统进行系统自检以及模块初始化处理。之后摄像头开始采集图像,为了得到清晰度更高的图像,需要先对摄像头采集到的图像进行降噪滤波处理,然后再对图像进行目标检测。系统判断是否识别到目标,如果没有识别到目标,则考虑当前帧图像是否出现了问题,如果连续两帧图像都发现目标则判定目标跟随识别成功,在得到目标定位结果之后,将目标位置传递给模糊pid控制算法,最后控制算法输出pwm波形控制系统运动,引起小球发生位移,最后迭代更新系统参数,系统循环操作。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表