独立学院控制系统的实验教学研究
2020-09-03丁佳莉
丁佳莉
摘 要:独立学院控制系统的教学具有一定的挑战性。针对其课程教学中存在的问题,本文通过乐高机器人与MATLAB软件相结合,辅助控制系统在独立学院中的实验课程教学。为了实现乐高机器人的线性跟踪,在MATLAB软件中对PID控制器的三个关键系数进行了优化控制。学生在对PID控制器进行分析和测试的过程中,提高了控制系统课程的实验教学效果。
关键词:独立学院;乐高机器人;实验教学
控制系统是电气等相关的本科专业必修的核心课程之一,在相关专业的人才培养过程中占有非常重要的地位。由于许多控制系统的概念是以数学形式表达的,如PID算法、拉普拉斯变换等,所以控制系统教学在独立学院中一直具有一定的挑战性。为了不让学生对这些概念的数学形式感到困惑,学生需要在实践中对此类理论进行验证,从而来提高他们的理解能力。
乐高机器人中的LEGO Mindstorms NXT系统满足上述需求。它被广泛应用于编程语言、机器人以及嵌入式系统等教育领域。在独立学院的本科实践教育中使用乐高机器人是一个提高学生工程能力的好方法,也是一个使实践教学能够成功的重要方式。乐高机器人工具包含有三个伺服马达和多种传感器(如触摸传感器、声音传感器和红外线传感器等)。此外,该工具包有一个基本组件(即NXT模块)用于乐高机器人的软件开发。通过一个叫nxtOSEK的软件包,用户可以在MATLAB的Simulink环境中设计控制程序图表,并将编译的图表直接生成、上传到NXT模块中,从而使乐高机器人的电机独立运行。
本文结合乐高机器人工具包和MATLAB软件来辅助PID控制器在独立学院控制工程本科课程中的实践教学。学生在MATLAB软件中设计可视化的PID控制器,并利用乐高构建的移动机器人对PID控制器进行验证。
一、实验介绍
本文实验的目的是开发一个适用于乐高机器人的PID控制器,使其能够沿着目标轨迹移动。并且,该机器人能以较快的速度行驶,从而使学生直观地了解PID控制器的功能及各参数的设定。
本实验中构建的乐高机器人包含两个能够测量车轮编码器相对应转速的伺服马达,每个伺服马达分别连接一个车轮。此外,还有一个红外线传感器,安装在乐高机器人的前面,直接指向地面。该红外线传感器可以探测到地板或桌面上的黑色轨迹。在本次实验中,通过红外光传感器获得的值称之为“光度”。
为了让乐高机器人能够沿着设定的黑线边缘移动,利用红外线传感器采集乐高机器人四周的环境信息,从而改变乐高机器人的运动轨迹。实验中设定乐高机器人追踪的是黑线的左边缘,并称该种追踪方式为左侧线性追踪。因此,当红外线传感器“看到白色”,意味着乐高机器人位于黑线边缘的左侧。当红外光传感器“看到黑色”时,则位于黑线边缘的右侧。在红外线传感器的校准实验环境中,当采集的“光度”值低于55时,我们判定为“白色”,当“光度”值高于55时,判定为“黑色”。由此得知,如果红外线传感器采集到的“光度”值小于55,乐高机器人左转。如果“光度”值大于55,则乐高机器人右转。否则,机器人直行。
二、PID控制器设计
PID控制器全称是比例-积分-微分控制器。PID控制器由比例单元P、积分单元I和微分单元D组成,通过KP,KI,KD 三个参数来设定。PID控制器可以计算出系统输出值与初始设定值之间的差异,并通过调整系统的输入值来减少这种差异。在控制系统的应用中,PID控制器的公式是以离散形式表示的,如公式(1)所示。
其中,KP,KI,KD 分别为P、I和D参数。公式(1)在计算机上的实现相对简单,通常是使用浮点算法进行计算,从而获得较高的精度。
一般情况下,P参数依赖当前误差e(t)。I参数累计过去所有的误差,并给出之前已经被纠正的累计偏移量。而D参数则根据当前变化率来预测未来误差。在本次实验中,I参数将乐高机器人过去的运动结果进行整合,消除了纯比例控制器产生的残留稳态误差。D参数则通过预测乐高机器人的行为,提高了PID控制器的穩定性。换句话说,D参数可以通过假设误差的下一个变化与上一个变化相同来预测未来。我们通过调整三个参数结果的加权过程来达到预期目标。当然,并不总是使用PID控制器中的所有参数来控制系统。有时候因为一个或多个控制参数不会涉及到,会将一些参数设置为零,然后将控制器称为PI,PD,P或只是I控制器。
最后,乐高机器人的两个电机的实际功率会由用户分配的静态功率和动态传输功率组成,如公式(2所示):
P(k)=PZ±u(k) (2)
其中 P(k)是两个电机的实际功率,是使乐高机器人能够保持直线前进的静态功率。当乐高机器人不直行时,是通过 u(k)来改变两个电机的功率的。一个电机的功率为P(k)=PZ+u(k) ,另一个电机的功率为P(k)=PZ-u(k) ,其中u(k)可以为正,也可以为负。结果表明,u(k)会加快其中一个电机的速度,并减慢另一个电机的速度,从而使乐高机器人改变运动方向。
三、实验及结果
本文利用MATLAB软件来设计PID控制器,并且通过调节三个参数(KP,KI,KD)的数值来观察对乐高机器人线性追踪运动的影响。在PID控制器实现之前,需要适当地设置这三个关键系数。而调节参数的方法有很多种,本文使用的方法就是“齐格勒-尼科尔斯方法”。控制工程专业的学生需要熟悉该理论以及PID调节方法的应用。在该方法中,最终的增益Ku和相应的振荡周期Pu一起记录,我们称为振荡周期。
PID控制器参数的调节过程如下:
1.KI,KD设为零,即将PID控制器简化为一个比例控制器。将KP参数设置为一个“合理”的数值。例如KP=1(或0.1),然后观察实验结果。
2.如果此时乐高机器人不能追踪黑线,偏离路线,则逐渐增加KP的值。如果乐高机器人剧烈振荡,则逐渐减小KP的值。KP参数需要不断变化,直到找到某一个值,使乐高机器人即追踪黑线,又伴有明显但不剧烈的振荡。那么这个KP值就被称为最终实验需要的增益Ku,并且在此时确定震荡周期Pu。
3.确定Ku和Pu的值后,通过“齐格勒-尼克尔斯方法”计算出KP,KI,KD和参数的数值。然后,通过不断调整参数数值,获得最佳的线性追踪效果。
在本文的实验中,最终Ku调节为0.8,Pu调节为0.6。通过“齐格勒-尼克尔斯方法”计算出三个参数分别为KP=0.48,KI,=1.6,KD=0.036。再经过不断的重复实验和调整后,三个参数调节为KP=0.5,KI,=2,KD=0.05。在这种情况下,乐高机器人能够避免外界干扰,沿着黑线平稳的进行移动。在实验过程中,我们也设计了一些特定的軌迹(例如转弯,交叉等),并在设计的轨迹上对PID控制器的性能进行了验证。结果显示,通过本次实验系统中几个参数的调节过程,学生们可以计算出较为合适的KP,KI和KD值。
本文所述的实验方法可方便地应用于其它控制系统的教学课程中。因此,本文可以作为一个完成PID控制概念实验教学的示例。本文的主要目标是提高独立学院的本科教学水平,并且帮助学生将理论应用于实践当中。
本文实验课程共4节,每节课程2小时。第一节课程给出理论内容,包括PID控制算法的数学公式。第二节和第三节课程主要是进行实践模块的教学和练习,学生学习并且熟悉乐高机器人工具包和MATLAB的Simulink模拟软件。在了解了PID控制算法并且熟悉乐高机器人的工具包后,再正式进行实验。最后一节课,学生会按照课程中的方法来设定、调整PID控制器的三个参数,从而完成乐高机器人的线性追踪测试。
实验课程结束后,我们进行了问卷调查并对调查问卷进行统计和评估,结果显示问卷中大部分的回答都肯定了此门实验课程的效果。在学期结束时,学生们完成了相关课程的期末考试。与前几年的考试成绩相比,在控制系统课程中,与本次实验相关题目的正确率有所提高。实验结果表明,新采取的控制系统实践教学方法,大大提高了学生们的理解能力。这意味着独立学院的学生可以通过此次实验教学更深层次的理解控制系统方面的理论概念。
四、结论
近几十年来,PID算法在许多机械工业过程中得到了广泛应用。这种趋势触发了控制系统课程教学在独立学院等应用型高校中的显著可用性。本文提出了一个基于乐高机器人的简单教育平台来帮助学生在本科工程教育课程中学习PID控制器,通过PID控制算法研究乐高机器人工具包的性能。乐高机器人一直被广泛应用于各类的教育教学中,但仅仅局限于教授简单的基本概念。然而,本次提出的实验教学案例可以应用于更为复杂的问题当中,如PID控制算法等。
在本文中,乐高机器人作为一个用于教授理论算法的机器人教学平台,学生只需在一个高级语言界面上进行编程,就能够实现机器人的控制。实验结果表明,参加了乐高机器人实验教学的学生在学习PID算法时,对其性能的理解能力增强。并且,对于已经完成了PID实验教学的学生对控制理论方面的知识掌握的时间更长。这些结果表明,通过理论和实践相结合的方式,乐高机器人的实验教学激发了学生对PID算法的学习和理解,同时也对学生产生了更深、更持久的影响。
参考文献:
[1]沈静、梁红兵、赵伟华.独立学院操作系统课程教学的改革与探索[J].福建电脑,2019.35(4):168-171
[2]M.P.Cuéllar and M.C.Pegalajar.Design and implementation of intelligent systems with LEGO Mindstorms for undergraduate computer engineers[J].Computer Applications in Engineering Education,2014.22(1):153-166
[3]D.Ibrahim and J.F.Abu Hasna.Teaching PID auto-tuning using a low-cost control kit[J].International Journal of Engineering Education,2013.29(1):239-248
[4]郑清春、武刚、郝丽芳.基于乐高机器人系统的创新设计实验室开放实践探索[J].实验室研究与探索,2008.27(10):22-23.2