基于STM32的直流电机PID调速系统设计资料.docx
- 文档编号:1008606
- 上传时间:2022-10-15
- 格式:DOCX
- 页数:19
- 大小:1.87MB
基于STM32的直流电机PID调速系统设计资料.docx
《基于STM32的直流电机PID调速系统设计资料.docx》由会员分享,可在线阅读,更多相关《基于STM32的直流电机PID调速系统设计资料.docx(19页珍藏版)》请在冰豆网上搜索。
基于STM32的直流电机PID调速系统设计资料
《计算机控制技术课程设计》
题目:
基于STM32的直流电机PID调速
学院:
计算机与电子信息学院
专业:
电气工程及其自动化
班级:
电气12-5
学号:
***********
姓名:
任课教师:
完成时间:
2015.11.18——2015.12.30
基于STM32的直流电机PID调速
摘要
电机转速控制在运动控制系统中占有至关重要的地位,本设计将电机转速控制作为研究对象;以PID为基本控制算法,STM32F103单片机为控制核心,产生受PID算法控制的PWM脉冲实现对直流电机转速的控制。
同时利用光电传感器将电机速度转换成脉冲频率反馈到单片机中,实现转速闭环控制,达到转速无静差调节的目的。
在系统中采320×240TFTLCD显示器作为显示部件,通过4个按键通过界面切换方式设置P、I、D、V四个参数和正反转控制,启动后可以通过显示部件了解电机当前的运行状态和系统的CPU温度。
该系统控制精度高,具有很强的抗干扰能力。
关键词:
PID直流电机反馈调节
BasedontheSTM32PIDspeedcontrolofdcmotor
Abstract
Motorspeedcontroloccupiesacrucialpositioninthemotioncontrolsystem,thedesignofthemotorspeedcontrolforthestudy;inthebasicPIDcontrolalgorithm,STM32F103microcontrollercore,bythePIDcontrolalgorithmgeneratesaPWMpulsetoachieveDCspeedcontrol.Atthesametimetheuseofphotoelectricsensorstoconvertthemotorspeedtopulsefrequencyfeedbacktothemicrocontrollertoachieveclosed-loopspeedcontrol,tospeedstaticerroradjustmentpurposes.Mining320×240TFTLCDmonitorasadisplayunitinthesystem,throughfourkeysettingsP,I,D,Vfourparametersandreversingcontrolthroughtheinterfaceswitchingmode,starttounderstandthecurrentstateofthemotorandthesystemthroughthedisplayunitCPUtemperature.Thesystemcontrolandhighprecision,hasastronganti-jammingcapability.
Keywords:
PIDDCmotorfeedbackregulation
1.绪论1
1.1研究背景与意义1
1.2本文主要研究方法1
2.设计方案与论证2
2.1系统设计方案2
2.2控制器模块设计方案2
3.系统硬件电路设计3
3.1整体电路设计3
3.1.1整体理论3
3.1.2整体简单结构图和资源分配图3
3.2最小单片机系统设计4
3.2.1STM32F103复位电路6
3.2.2电源电路6
3.3电机驱动电路设计7
3.4光电码盘编码器电路设计7
3.5显示电路设计8
3.6按键电路设计10
4.系统软件设计10
4.1PID算法10
4.2PID参数整定方法11
4.3电机速度采集算法12
4.4程序流程图12
5.系统调试13
5.1软件调试13
6.总结与展望15
参考文献16
附录一部分程序源程序17
附录二系统界面实物图和PCB图20
1.绪论
1.1研究背景与意义
电动机在现代的工业中,是主要的驱动设备,尤其是直流电动机,由于它的平滑调速性和结构上的简单,使其成为许多电器,如洗衣机,电梯等的驱动。
而对于直流电机的控制,最流行的莫过于采用可控硅装置向电动机供电,即KZ—D拖动系统。
起初的控制系统是发电机—电动机系统,相当的笨重。
随着电力电子技术和单片机的成熟应用[1],使得直流电机调速系统从模拟化向数字化转变。
而PWM脉宽调制,是现在应用最成熟的方法。
它来源于电力电子的桥式电路,通过单片机可进行简单的模拟,而将它们结合起来,由电力电子元件组桥进行方向控制,而由单片机产生PWM波控制晶闸管的门极。
调节占空比就能够控制电机的平均电压,从而控制电机的转速。
直流电动机调速应用于实际中各个方面,工业,家电等,因为它能够在一个相当大的范围内进行平滑调速。
但是早起以模拟元件为控制装置的系统,由于模拟元件本身的缺陷,导致硬件复杂,功能简单,不灵活,误差大,无法实行精确的调速。
单片机的应用解决了这个问题的一部分,误差可由许多完善的算法来解决,而且减小了硬件的复杂性[2]。
使得直流调速逐步由模拟化向数字化转变,使直流调速进入一个更加智能与可靠的新阶段。
1.2本文主要研究方法
本文主要研究了利用STM32系列单片机,通过PWM方式控制直流电机调速的方法[3]。
PWM控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。
由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一[4]。
本文就是利用这种控制方式来改变电压的占空比实现直流电机速度的控制。
文章中采用了专门的芯片组成了PWM信号的发生系统[5],然后通过L298N放大来驱动电机。
利用光电编码盘器测得电机速度,然后反馈给单片机,在内部进行PID运算,输出控制量完成闭环控制,实现电机的调速控制。
2.设计方案与论证
2.1系统设计方案
根据系统设计的任务和要求,设计系统方框图如图1所示[6]。
图中控制器模块为系统的核心部件,键盘和显示器用来实现人机交互功能,其中通过键盘将需要设置的参数和状态输入到单片机中,并且通过控制器显示到显示器上。
在运行过程中控制器产生PWM脉冲送到电机驱动电路中,经过放大后控制直流电机转速,同时利用速度检测模块将当前转速反馈到控制器中,控制器经过数字PID运算后改变PWM脉冲的占空比,实现电机转速实时控制的目的[7]。
图1系统方案框图
2.2控制器模块设计方案
根据设计任务,控制器主要用于产生占空比受数字PID算法控制的PWM脉冲,并对电机当前速度进行采集处理,根据算法得出当前所需输出的占空比脉冲。
对于控制器的选择有以下二种方案。
方案一:
采用FPGA(现场可编辑门列阵)作为系统的控制器,FPGA可以实现各种复杂的逻辑功能,模块大,密度高,它将所有器件集成在一块芯片上,减少了体积,提高了稳定性,并且可应用EDA软件仿真、调试,易于进行功能控制。
FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模实时系统的控制核心。
通过输入模块将参数输入给FPGA,FPGA通过程序设计控制PWM脉冲的占空比,但是由于本次设计对数据处理的时间要求不高,FPGA的高速处理的优势得不到充分体现,并且由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作[8]。
方案二:
采用STM32F103作为系统控制的方案。
STM32F103单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制。
相对于FPGA来说,它的芯片引脚少,在硬件很容易实现。
并且它还具有功耗低、体积小、技术成熟和成本低等优点,在各个领域中应用广泛。
综合上述两种方案比较,采用STM32F103作为控制器处理输入的数据并控制电机运动较为简单,可以满足设计要求。
因此在本次设计选用方案二。
3.系统硬件电路设计
3.1整体电路设计
3.1.1整体理论
单片机直流电机调速简介:
单片机直流调速系统可实现对直流电动机的平滑调速。
PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。
在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内“接通”和“断开”时间的长短。
通过改变直流电机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。
因此,PWM又被称为“开关驱动装置”。
本系统以89C52单片机为核心,通过单片机控制,C语言编程实现对直流电机的平滑调速[9]。
系统控制方案的分析:
本直流电机调速系统以单片机系统为依托,根据PWM调速的基本原理,以直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速为依据,实现对直流电动机的平滑调速,并通过单片机控制速度的变化。
本文所研究的直流电机调速系统主要是由硬件和软件两大部分组成。
硬件部分是前提,是整个系统执行的基础,它主要为软件提供程序运行的平台。
而软件部分,是对硬件端口所体现的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,达到控制器自动对电机速度的有效控制。
3.1.2整体简单结构图和资源分配图
本系统硬件资源分配见图2所示,简单结构如图4。
采用STM32F103单片机作为核心器件,转速检测模块作为电机转速测量装置[10],通过STM32F103的PA(A相)和PA7(B相)将电脉冲信号送入单片机处理,L298作为直流电机的驱动模块,利用320×240TFTLCD显示器和4个独立按键作为人机接口。
图2系统电路连接及硬件资源分配图
3.2最小单片机系统设计
STM32F103ZETT6作为MCU,该芯片是STM32F103里面配置非常强大的了,它拥有的资源包括:
64KBSRAM、512KBFLASH、2个基本定时器、4个通用定时器、2个高级定时器、2个DMA控制器(共12个通道)、3个SPI、2个IIC、5个串口、1个USB、1个CAN、3个12位ADC、1个12位DAC、1个SDIO接口、1个FSMC接口以及112个通用IO口。
该芯片的配置十分强悍,并且还带外部总线(FSMC)可以用来外扩SRAM和连接LCD等,通过FSMC驱动LCD,可以显著提高LCD的刷屏速度,是STM32F1家族常用型号里面,最高配置的芯片了。
MCU部分的原理图如图3所示:
图3MCU最小系统设计图
3.2.1STM32F103复位电路
STM32F103的复位电路如图4所示:
图4复位电路图
因为STM32是低电平复位的,所以我们设计的电路也是低电平复位的,这里的R3和C12构成了上电复位电路。
同时,开发板把TFT_LCD的复位引脚也接在RESET上,这样这个复位按钮不仅可以用来复位MCU,还可以复位LCD。
3.2.2电源电路
STM32F103板载的电源供电部分,其原理图如图5所示:
图5电源电路
图中,总共有3个稳压芯片:
U12/U13/U15,DC_IN用于外部直流电源输入,范围是DC6~24V,输入电压经过U13DC-DC芯片转换为5V电源输出,其中D4是防反接二极管,避免外部直流电源极性搞错的时候,烧坏开发板。
K2为开发板的总电源开关,F1为1000ma自恢复保险丝,用于保护
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 直流电机 PID 调速 系统 设计 资料