APP下载

基于风板控制的教学实验设计

2019-12-27罗耀耀程渭东曾国强李琳琳

实验技术与管理 2019年12期
关键词:帆板自动控制上位

罗耀耀,程渭东,曾国强,李琳琳

基于风板控制的教学实验设计

罗耀耀,程渭东,曾国强,李琳琳

(成都理工大学 核技术与自动化工程学院,四川 成都 610059)

介绍了一套基于Matlab的GUI的控制的风力摆实验平台。系统中MPU6050作为角度传感器,采用STM32单片机作为控制器,采用L298N作为电机的驱动模块,通过Matlab的GUI建立数据接收和显示界面,完成帆板控制系统的控制。通过本系统的实践,可以使学生熟悉典型的闭环控制系统,掌握多种闭环控制系统中的算法,如PID控制等算法、PWM调试方法等。

风力摆控制;闭环控制系统;Matlab GUI;可视化;交互式

传统的自动控制原理实验主要基于“模拟学习机”开展实验[1],如采用Matlab仿真平台作为教学实践方法[2],或者采用硬件实验箱作为实验工具[3],开展控制系统相似模拟实验。上述方法仅仅阐述了控制策略的理论计算结果,并没有将被控对象的特性反映出来,不利于学生理解控制策略与算法的特性。此外还可以采用复杂的控制系统如多容倒立摆、小车运动控制系统和三容水箱作为对象构建相应的实验平台[4],再利用Matlab仿真平台开展控制设计,但这些复杂的实验平台往往不适用于基础教学[4],难以满足一个教学班级的实践教学工作。

为了解决上述问题,不少学者和公司针对自动控制原理内容的特点,结合电子设计大赛的相关内容,对帆板控制系统进行系统的搭建与设计,使之满足相关课程实验的要求[5-9]。除了对硬件系统进行设计,还要对控制算法进行研究[9-10],这对学生熟悉掌握自动控制原理的方法进行实践,具有极好的教学效果。本文研制了一种帆板控制实验系统。该系统为自动控制原理的实验教学与课程设计、单片机教学实验与课程设计等相关课程的实验教学和课程设计提供了基础,还改进和丰富了自主性仿真实验,增加了现代控制理论的实验内容,使得实验系统更加完善[11-15]。该系统简单、直观且具有一定的趣味性,可以有效地提高学生参与实验的积极性。

1 系统的整体设计

典型的闭环电子测控系统,包括获得被测对象信息的传感器、主控单元MCU、执行器、人机接口、显示设备、电源模块。主控单元通过传感器来获得被测对象信息,获得的信息与人机接口设置的目标信息进行对比,从而根据误差来调整执行器的动作,实现被测对象的恒量输出。为了实时了解和方便观测被测对象信息,显示设备必不可少。电源模块负责给各部分模块供电。

2 硬件设计

帆板控制系统包括一个悬挂自然下垂的纸板(帆板)、在纸板固定轴上安装的MPU6050作为角度传感器、5 V直流轴流风机、由L298N构成的电机驱动单元、STM32单片机构成的主控模块、电源模块、串口通信模块等,见图1。

图1 帆板控制系统框图

在帆板的目标角度后,计算机中的控制程序选择控制策略,下发占空比的参数,单片机根据上位机发送的参数,由单片机生成PWM波,通过驱动L298N模块,驱动电机转动;帆板摆动的时候,与固定帆板的轴相连的电位器发生改变,将该电压值经过单片机中自带的AD采样,获得当前的角度值,通过串口将数据传递给计算机,计算机将该值显示并记录帆板的运动轨迹及超调量、超调时间等相关参数。

风摆控制实验系统结构见图2。

图2 风摆控制实验系统结构

3 软件设计

实验系统软件主要包含运行于单片机中的下位机软件及运行在计算机中的上位机软件2个部分。在上位机程序中,最为重要的部分是对于控制策略的编写。

3.1 下位机软件的设计与实现

下位机的软件流程图如图3所示。实验系统上电后,接收来自上位机发送来的控制数据,并且对系统进行初始化赋值。单片机根据系统给定的PWM参数产生相应PWM波,输出给L298N电机驱动模块,驱动电机转动。受到电机产生的风力的推动,帆板发生摆动,从而电位器发生改变,采用STM32单片机自带的AD转换单元,实现模拟量到数字量的转换。将该角度值通过串口发送给上位机,上位机根据该角度值给出合理的PWM参数,达到控制帆板的运动。

图3 单片机软件流程图

3.2 上位机程序的设计

上位机程序采用Matlab的GUI设计上位机界面,同时也需要将串口通信、控制策略和算法、人机交互界面等信息集成在一起。图4所示为上位机软件的流程。

图4 上位机软件流程图

上位机程序需要以下几个模块:

(1)串口通信。主要负责完成与下位机的通信,需要根据端口进行选择,其通信协议如波特率、停止位等需要根据下位机的通信协议进行选取。

(2)控制策略与算法。该部分是自动控制原理实验或者课程设计需要学生自主完成的函数。在Matlab的.m文件中,有如下函数:

function PWM= Control-function(angle)

在函数中,PWM指的是此时要求单片机提供的PWM波中的占空比,angle是由下位机直接发送的数据,学生只需要对输入变量进行算法上的处理,经过相应的控制策略控制电机转速的PWM波的值,并且将该命令发送给下位机。在该模块中,可以完成线性控制和非线性控制等多种算法的控制。在本实验中,一般最常采用PID算法根据角度的问题调节PWM的占空比,达到调节风机的目的。

(3)人机界面。人机界面中不仅仅要实时地反映出当前风板的角度,而且应该且需要包含如下信息:预设值、稳态误差范围、最大超调量、上升时间、最大超调量所对应的峰值时间点、调节时间。图5为采用PID算法所获得的数据。

图5 上位机软件界面与计算结果

4 结语

帆板控制实验系统采用Matlab中的GUI设计上位机界面,能反映当前角度值和系统运行时间的关系,有利于教师正确地评判控制算法的优劣。通过接收来自单片机的角度信息,根据当前角度以及采用的算法,可以获得不同控制品质的自动控制系统的参数。该系统结构简单,具有较好的可扩展性。对于单片机熟练的学生,可以将相应的控制算法放在单片机中、可以开放单片机程序;对于对单片机掌握不熟练的学生,可以在Matlab平台上进行编程,完成诸多算法在该控制平台上的编写。

[1] 王凤如,王小扬,王瑛. 信号、系统与控制实验教程[M]. 北京:高等教育出版社,2004.

[2] 刘云龙,王瑞兰.基于 Matlab仿真的自动控制原理实验教学改革[J]. 实验室研究与探索,2015,34(6): 102–106.

[3] 齐晓慧,董海瑞. 基于“三层次”的自动控制原理实验教学研究[J]. 电气电子教学学报,2006(3): 80–84.

[4] 孙大卫,丁兴俊. 一种典型自动控制原理实验教学设备研究[J]. 实验技术与管理,2011, 28(7): 79–81.

[5] 盛守照,叶冯超,孙臣武. “自动控制原理”实验设计与教学改革思考[J]. 电气电子教学学报,2017, 39(1): 131–134.

[6] 刘晓洁,何宁,罗霄,等. 基于 eMsp 实验平台的自动控制原理实验教学改革[J]. 实验室科学,2016, 19(6): 112– 115.

[7] 余善恩,李真. 风摆控制实验系统设计[J]. 实验技术与管理,2017, 34(6): 135–138.

[8] 崔鸣,尚丽,颜廷秦. 基于ARM的帆板控制系统设计与实验分析[J]. 实验室研究与探索,2012, 31(9): 57–62.

[9] 刘恒,吴朝阳,刘建成,等. 一种典型闭环PID控制教学实验设计[J]. 实验技术与管理,2017, 34(9): 42–46.

[10] 陈勉舟,李玉平. BP神经网络在帆板控制系统中角度非线性校正的应用研究[J]. 黄石理工学院学报,2012, 28(2): 9–11, 19.

[11] 张存吉,宁爱民,倪杰,等. 基于增量式PID算法的帆板控制系统的设计[J]. 微计算机信息,2012, 28(7): 67–68, 87.

[12] 徐涢基,方平,李娜,等. 神经元PID在风力摆控制系统中的应用[J]. 自动化仪表,2018, 39(5): 48–51.

[13] 宫玉芳,赵霞,杨志飞. 基于K60的风力摆控制系统设计[J]. 自动化与仪器仪表,2016(10): 67–69.

[14] 姜香菊,刘二林. 旋转倒立摆的起摆与稳摆研究与实现[J]. 自动化仪表,2016, 37(9): 6–9.

[15] 苏宁远,张晨亮. 基于MK60FN1MOVLQ15的风力摆控制系统设计[J]. 仪表技术,2016(8): 23–25, 32.

Design of teaching experiments based on sailboard control system

LUO Yaoyao, CHENG Weidong, ZENG Guoqiang, LI Linlin

(College of Nuclear Technology and Automation Engineering, Chengdu University of Technology, Chengdu 610059, China)

A set of wind pendulum experimental platform based on GUI of MATLAB is introduced. With MPU6050 as the angle sensor, STM32 MCU as the controller and L298N as the motor driving module, the data receiving and displaying interface is established by GUI of Matlab, and the control of sailboard control system is completed. Through the practice of this system, students can familiarize themselves with the typical closed-loop control system and grasp the arithmetic methods of many closed-loop control systems such as PID control arithmetic method, PWM debugging method, etc.

wind pendulum control sailboard; closed loop control system; Matlab GUI; visualization; interaction

TP302.1; TP277.2

A

1002-4956(2019)12-0229-03

10.16791/j.cnki.sjg.2019.12.054

2019-04-08

国家自然科学基金项目(41604116);四川省教育厅项目(14ZB0074);成都理工大学骨干教师项目(JXGG201513)

罗耀耀(1984—),男,湖北天门,博士,讲师,主要从事智能机器人系统、核仪器及其数据分析研究。E-mail: 280460115@qq.com。

猜你喜欢

帆板自动控制上位
提高帆板竞技能力的教学与训练思考
特斯拉 风云之老阿姨上位
电力拖动系统的自动控制和安全保护
M2W中波发射机自动控制天线倒换系统
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
编组站停车器自动控制开通方案
唐钢热轧1810线工艺润滑改造自动控制的实现
一种帆板驱动机构用永磁同步电机微步控制方法