收藏 分销(赏)

Arduino控制的直流电机调速仿真.pdf

上传人:自信****多点 文档编号:541636 上传时间:2023-11-27 格式:PDF 页数:5 大小:1.74MB
下载 相关 举报
Arduino控制的直流电机调速仿真.pdf_第1页
第1页 / 共5页
Arduino控制的直流电机调速仿真.pdf_第2页
第2页 / 共5页
Arduino控制的直流电机调速仿真.pdf_第3页
第3页 / 共5页
亲,该文档总共5页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、100|电子制作2023 年 7 月应用技术Arduino 控制的直流电机调速仿真乐万德,任静,张琛玥,易朝韩,王旭升,闫润龙,党帅(西安航空学院 计算机学院,陕西西安,710077)基金项目:西安航空学院科研基金项目(2021KY0219)、西安市科学技术局科技计划项目(21XJZZ0030)、省级大学生创新创业训练计划项目(S202211736076)、产学合作协同育人项目(201802123069,201802130009)。摘要:针对Arduino控制的直流电机调速PI参数整定问题,基于Proteus和Arduino IDE设计了仿真调参实验。硬件设计主要包括Arduino Mega2

2、560主控板,L298电机驱动,编码电机和串口物理端口模型;软件算法主要包含编码测速、Arduino PWM频率调节及PI控制。以Arduino IDE内置串口监视器以文本或图像方式显示调参过程及结果,并用实例进行验证。初学者可以方便、安全地以尝试法学习电机控制中PI参数的整定。关键词:Arduino;电机调速;PI控制器;参数整定0 引言Arduino 是高校在创新创业过程中广泛使用的开发平台,在实际使用中能激发学生浓厚的探索兴趣,深受大学生的欢迎。直流电机作为广泛使用的智能产品核心部件,其PID(ProportionalIntegralDerivative)控制算法对学生有强烈的吸引力。P

3、ID 广泛应用于控制领域。调速系统要求以动态稳定和稳态精度为主,而微分 D 部分容易对系统造成扰动,所以传统速度控制常用 PI 调节器。PID 算法本身并不复杂,但对于 PID 参数整定,尽管有不少参数整定的方法和口诀,但在实际应用中不尽人意。在参数整定过程中往往显得盲目,甚至因为调参过程中参数选择不合适,导致电机强烈振动等,具有一定的安全隐患。Arduino 仿真实验1及仿真平台2是解决上述问题的有效方案。本文基于 Proteus 构建 Arduino 控制电机的参数整定仿真平台,通过串口仿真将 PID 控制数据传到Arduino 串口监视器进行可视化显示3,帮助初学者及大学生创客实现 PI

4、 调节器的可视化调参,形象直观,并且排除了不合适参数可能引起的安全隐患。1 仿真硬件平台Proteus 是世界上著名的 EDA 仿真软件,融合了电路仿真、PCB 设计和虚拟模型仿真等功能,使用异常方便。图 1仿真硬件平台wwwele169com|101应用技术Proteus 支持大多数单片机仿真,也支持 Arduino4。实 验 硬 件 参 考 设 计 如 图 1 所 示,包 括:主 控 板ArduinoMega2560、电机驱动板 L298、编码电机 moter-encoder、串口物理端口模型 COMPIM。示波器可选。1.1 主控板Arduino 硬件开发板是一个单片机集成电路,它的核心

5、是一个单片机,开发板上的其他电路用来供电和转换信号。官方 Arduino 使用的是 megaAVR 系列的芯片,主要是 ATmega8、ATmega168、ATmega328、ATmega1280以及 ATmega2560,可根据项目需求进行选用。ArduinoMega2560 在 Arduino 系列开发板中具有较强的性能及丰富的接口,具有广泛的适应性,因而作为本实验平台选定的开发板。ArduinoMega2560 处理器核心是ATmega2560,同时具有 54 路数字输入/输出口,其中 15路可作为 PWM 输出,15 路模拟输入,4 路 UART 接口,一个 16MHz 晶体振荡器,一

6、个 USB 口,一个电源插座,一个 ICSPheader 和一个复位按钮。ArduinoMega2560 也能兼容为 ArduinoUNO 设计的扩展板。1.2 电机驱动板电机驱动板 L298 是一款常用的双路全桥式电机驱动芯片,工作电压可达 46V,输出电流可达 4A。L298 通过控制主控芯片上的 I/O 输入端,调节输出电压,实现电机的正转、反转、停止。通常情况下 L298 可直接驱动继电器、直流电机以及步进电机。L298 的四个输出引脚 OUT1、OUT2 和 OUT3、OUT4分别接两个直流电机 Motor1、Motor2。四个输入引脚IN1、IN2、IN3、IN4 从单片机接入控制

7、电平,控制电机的正反转。另外两个引脚 ENA、ENB 控制电机调速。1.3 编码电机PI 控制器根据电机反馈的速度进行控制,因而需要测得电机的实时转速,转速单位是 rpm(转每分)。本实验平台选用编码电机 MOTOR-ENCODER。该电机有五根线,左右两侧两根线接电源。上面有三根线,左右两侧两根线输出相位差 90 度的脉冲,据此可以测得电机旋转方向;每旋转一圈输出多少个脉冲可以在设置对话框中设置,中间那根线,每圈输出一个脉冲;利用其中任何一个可以测出转速5。示波器可以显示对应波形及相位关系。1.4 串口物理端口模型为了可视化观察 PI 控制过程中的现象和参数,实验平台通过串口物理端口模型 C

8、OMPIM(COMPortPhysicalInterfacemodel)将需要显示的数据传递到串口监视器。Proteus 中的 COMPIM 是标准的 RS232 端口,可设置占用计算机上哪一个串口,可以是“实际串口”,也可以是“虚拟串口”,可以实现虚拟仿真电路与外部实际电路的双向串行通信。本实验中电脑通过虚拟串口接收 COMPIM 的数据,并通过 ArduinoIDE 中串口监视器将数据以文本或图像方式显示出来,据此调整 PI 参数。2 仿真软件平台系 统 软 件 设 计 如 图 2 所 示。在 Arduino 框 架 函 数setup()中设置初始目标转速 Target,绑定编码器脉冲中断

9、,并设置定时中断。脉冲中断触发时调用中断函数 Code(),该函数在编码电机旋转过程中对脉冲计数,为计算转速做准备。定时中断触发时调用中断处理函数 revolution_measure(),该函数根据脉冲数计算转速,并将脉冲数清零,为下次计算转速做准备。在 loop()函数里,每隔时间 tSample,根据当前速度与目标速度采用 PI 速度控制器,计算 PI 调节器的输出Output 并作为电动机驱动 PWM 值并更新。在新的 PWM 驱动下,电机转速发生变化,此时将需要观察的数据通过串口进行输出,特别是实际转速与目标转速的对比情况。结合实际转速达到目标转速的快慢、是否有超调等情况,进一步调整

10、 PI 参数。2.1 编码器测速编码器测速是分析超调的基础。旋转设备测量转速,一般采用和速度成正比的脉冲信号进行测量。通过测量脉冲信号的频率,进而计算实际转速。本文研究的 PI 调速主要以较高转速为研究对象,采用 M 法测速,即通过单位时间内脉冲的个数推算转速。这种测量方法转速越高精度越高。两次采样计时中断间采样的脉冲数计算公式为:(*)(60*1000)revolutionpulse tSamplecs=式(1)式中 cs 为采样数,revolution 为转速,单位为 rpm。pulse 为编码器脉冲数。tSample 为采样时间,单位为 ms。采样时长及编码器频数都对测速精度有影响:较长

11、的采样时长和较高的编码器频数有利于提高转速的测量精度。电机调速 PWM 的调节与采样同频,因此采样时长过长,对 PWM的平滑性有影响。本文中取采样时间tSample 为 150ms,编码器脉冲数为 360。以每分钟 100 转的转速为例,根据公式 1,150ms 采样数为 90。按每次采样最大有两个脉冲测量误差计,测速误差为 2%左右,满足实验要求。102|电子制作2023 年 7 月应用技术 2.2 Arduino PWM 频率调节PWM(PulseWidthModulation)简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。PWM 调速就是在一定的频率下,

12、通过控制一周期内的开通与关断时间,即调节占空比来调整直流电机两端的电压大小,从而调节电机转速。因其相比于直接调整电压,显得方便快捷,广泛应用于通信、工控等方面。PWM 本质上是一种方波,并不是连续的模拟信号。开关的通断频率不仅直接决定了等效电压的高低和电机的转速,还影响到电机的转矩特性、机械特性及效率特性等。一般来说,PWM 的频率越高,直流电机转动越流畅;PWM的频率越低,直流电机转动越卡顿。但是频率越高则需要的启动占空比越高,使调节范围变窄。因此,使用 PWM 控制电机时,应综合硬件设计选取合适的频率。一般 PWM 频率需大于 1kHz,才能稳定地控制电机。但 Arduino 控制板很多引

13、脚输出的默认 PWM 频率是 480Hz。这就意味着需要根据电机的实际要求对 PWM 频率进行调节。有多种方式可以让 Arduino 引脚输出不同频率,本文使用 ArduinoPWM 频率库。这种方法避免了直接对芯片寄存器逐位操作的繁琐和易错。ArduinoPWM 频 率 库 有 五 个 全 局 函 数,分 别是 InitTimers(),InitTimersSafe(),pwmWrite(),SetPinFrequency(),SetPinFrequencySafe()。此外还有针对各个 timer 的函数。值得注意的是 Arduino 的开发系统中,millis()和 delay()等计时

14、相关函数基于 Timer0时钟。所以如果修改了 Timer0 的时钟周期,这两个计时函数也会受到影响。因此本文系统中用ArduinoMega2560引脚 12 进行 PWM 输出。12 号引脚受 Timer1 控制,改变 12 号引脚的频率不会影响 millis()和 delay()等函数。另外,本文编码器函数使用 Timer2 时钟。因此,本系统中各个时钟互不影响。PWM 频率调节见图 3。首先导入 PWM 库,然后用 InitTimersSafe()函数对系统时钟进行初始化。为了不影响 delay()和 millis()函数,这个函数不初始化 timer0。调用 SetPinFrequen

15、cy()函数对受 Timer1 控制的 12 号引脚进行频率设置。如果成功,返回值 success 为真,则通过12 号引脚输出频率调整后的 PWM 信号对电机进行调速;如果不成功,则提示用户频率调节不成功,是否用原频率调速。2.3 PI 调速PI 调节器基于 PID。PID 广泛应用于控制领域,对一个控制系统的性能一般用稳、准、快来衡量,即稳定性、快速性、准确性。具体的评估指标有最大超调量、上升时间、静差等。在实践生产工程中,不同的控制系统对控制器效图 2系统软件设计图 3PWM 频率调节wwwele169com|103应用技术果的要求不一样。P 值影响系统的快速性,I 值影响系统的静差及准

16、确性,D值虽然影响稳定性,但也会放大噪声误差。调速系统要求以动态稳定和稳态精度为主,传统速度控制常用 PI 调节器。比例调节P积分调节I直流电机编码测速目标转速+_+PWM实际转速图 4PI 调速器PI 调节器如图 4 所示,PI 调节器的基本原理是在对比目标转速与实际转速的差值的基础上,通过算法动态产生调节量 PWM 驱动直流电机。直流电机的目标转速在设置界面设定,实际转速通过前述编码测速获得。设 t 时刻目标转速为 arg()tet t,实际转速为()real t,转速误差为()arg()()e ttet treal t=,则连续 PI 调节器公式可表示为:1()*()()iPWM tKp

17、 e te t dtT=+式(2)其中 Kp 为比例常数,Ti 为积分常数。为方便程序实现,PI 调节器写成离散形式:()*()*()PWM kkp e kkie k=+式(3)其中 kp 为比例常数,ki 为积分常数。公式(2),(3)被称为位置式 PI 调节器,在程序实现中也常常采用成增量形式:()(-1)*()-(-1)*()PWM kPWM kkpe ke kki e k=+式(4)位置式 PI 调节器与增量式 PI 调节器的本质是一样的,位置式 PI 调节器需要对误差进行累加,增量式 PI 调节器需要对调节量进行累加,为了减小计算量,可将这两个累加量在程序中设置为静态变量。3 仿真实

18、验电机 PI 参数整定过程中可遵循一些经验总结,一般先调节比例系数 kp,再调节积分系数 ki,各个参数采用由小到大进行尝试。对于虚拟实验平台,初学者调参过程中可以做更加大胆地试调,以便加深各个系数对系统贡献的理解。系统基本参数采样时间间隔 与 PWM 重 新 计 算 间 隔 均 为tSample=150ms,目标调节速度为 Target=200rpm。图 5 各子图中水平线为目标转速 200rpm,曲线为 PI 控制的实际转速。图 5(a)中,kp等于 2 时,响应速度较慢,且无法达到目标转速,需增大比例系数 kp。图 5(b)中,kp 等于 12,响应速度很快,但最终转速与目标转速间仍有静

19、差,需引入积分环节。图 5(c)中,kp 等 于 12,ki 等 于 0.1,响应速度较快,且最终速度没有静 差,但 过 程 中 有 超 调,需降 低 积 分 参 数。图 5(d)中,kp=12,ki=0.075,响应速度快,最终速度没有静差,也没有超调,调参结果比较满意。(a)kp=2,ki=0 (b)kp=12,ki=0(d)kp=12,ki=0.075 (c)kp=12,ki=0.1 图 5PI 控制器参数整定(下转第 82 页)82|电子制作2023 年 7 月信息工程间和通道注意机制引入模型中以引导模型关注更有价值的特征。提出了一个 MASPP 模块,以帮助模型从全局到局部细化对象细

20、粒度信息。实验结果表明,本文所提出的网络与现有网络对比能够提升一定的分割精度。未来工作计划在提升精度的同时降低计算量,采用轻量级的网络结构,加快模型训练速度,以更好的应用在实际工作中。参考文献 1Sun W,Wang R.Fully convolutional networks for semantic segmentation of very high resolution remotely sensed images combined with DSMJ.IEEE Geoscience and Remote Sensing Letters,2018,15(3):474-478.2Zhang

21、 C,Sargent I,Pan X,et al.Joint Deep Learning for land cover and land use classificationJ.Remote sensing of environment,2019,221:173-187.3Qi G,Zhang Y,Wang K,et al.Small Object Detection Method Based on Adaptive Spatial Parallel Convolution and Fast Multi-Scale FusionJ.Remote Sensing,2022,14(2):420.4

22、Long J,Shelhamer E,Darrell T.Fully convolutional networks for semantic segmentationC/Proceedings of the IEEE con图 5 WHDLD 数据集可视化结果图ference on computer vision and pattern recognition.2015:3431-3440.5Zhao H,Shi J,Qi X,et al.Pyramid scene parsing networkC/Proceedings of the IEEE conference on computer

23、vision and pattern recognition.2017:2881-2890.6Chen L C,Zhu Y,Papandreou G,et al.Encoder-decoder with atrous separable convolution for semantic image segmentationC/Proceedings of the European conference on computer vision(ECCV).2018:801-818.4 小结直流电机PI参数调节是PI调节器落地应用的一个重点,对初学者又是一个难点。文中仿真实验平台有效地解决了这一难点

24、,让学生及初学者可视化地体会到运用 Arduino 控制板调节电机转速时 PI 参数调节的效果,并减少实际调节中因参数不合适可能导致的安全隐患。参考文献 1 陈新娟,卜捷捷.Arduino 仿真教学的实验开发 J.计算机时代,2020,No.334(04):90-91.2 肖亮,李兰英,刘书赫,汪明曌,单黎潇.基于 Proteus 和Arduino 的嵌入式系统虚拟实验仿真平台设计 J.科技创新与应用,2021,11(24):57-59.3 乐万德,任静,刘舟洲,初建杰.Arduino 串口通信控制系统的研究 J.电子设计工程,2022,30(04):69-73+78.4 石从刚,宋剑英.基于

25、 Proteus 的 Arduino 可视化编程技术研究 J.青岛职业技术学院学报,2021,34(04):31-36.5 朱奥辞,赵钢.基于 Proteus 的直流电动机闭环调速系统设计 J.实验室研究与探索,2017,36(12):52-56.6 周 晓 华,张 银,蓝 会 立,王 晨,吴 国 强.无 刷 直 流 电 动机闭环调速系统虚拟实验平台设计 J.实验室研究与探索,2020,39(01):98-102+115.(上接第 103 页)7Woo S,Park J,Lee J Y,et al.Cbam:Convolutional block attention moduleC/Proce

26、edings of the European conference on computer vision(ECCV).2018:3-19.8Hou Q,Zhang L,Cheng M M,et al.Strip pooling:Rethinking spatial pooling for scene parsingC/Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern 9Chen L C,Papandreou G,Kokkinos I,et al.Deeplab:Semantic image segment

27、ation with deep convolutional nets,atrous convolution,and fully connected crfsJ.IEEE transactions on pattern analysis and machine intelligence,2017,40(4):834-848.10Chen L C,Papandreou G,Schroff F,et al.Rethinking atrous convolution for semantic image segmentationJ.arXiv preprint arXiv:1706.05587,201

28、7.11Badrinarayanan V,Kendall A,Cipolla R.Segnet:A deep convolutional encoder-decoder architecture for image segmentationJ.IEEE transactions on pattern analysis and machine intelligence,2017,39(12):2481-2495.12Dong X,Bao J,Chen D,et al.Cswin transformer:A general vision transformer backbone with cross-shaped windowsC/Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition.2022:12124-1213.

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服