




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电气控制技术电气控制技术 研究生课程设计报告研究生课程设计报告 题题 目目 基于 STM32 的直流电机 PID 调速系统 学学 院院 机械与汽车工程学院 专业班级专业班级 车辆工程 学学 号号 221601852020 学生姓名学生姓名 李跃轩 指导教师指导教师 康 敏 完成日期完成日期 2017 年 01 月 03 日 智能控制基础研究生课程设计报告 第 1 页页/共共 14 页页 目录 1.绪论.1 2.设计方案.1 3系统硬件电路设计.2 3.1 整体电路设计 .2 3.2 最小单片机系统设计 .3 3.2.1STM32F103 复位电路 .3 3.2.2 电源电路.4 3.3 电机驱动电路设计 .5 3.4 光电码盘编码器电路设计 .6 3.5 显示电路设计 .6 3.6 按键电路设计 .7 4.系统软件设计.7 4.1 PID 算法.7 4.2 电机速度采集算法 .8 5.系统调试.8 5.1 软件调试 .8 5.2 系统测试与分析 .9 6.总结与展望.10 附录一.11 附录二.16 智能控制基础研究生课程设计报告 1 1.绪论绪论 本文主要研究了利用 STM32 系列单片机,通过 PWM 方式控制直流电机调速的 方法。PWM 控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技 术最广泛应用的控制方式,也是人们研究的热点。由于当今科学技术的发展已经没 有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为 PWM 控制技术发展的主要方向之一。 本文就是利用这种控制方式来改变电压的占空比实现直流电机速度的控制。采 用的芯片组成了 PWM 信号的发生系,然后通过 L298N 放大来驱动电机。利用光电 编码盘器测得电机速度,然后反馈给单片机,在内部进行 PID 运算,输出控制量完 成闭环控制,实现电机的调速控制。 2.设计方案设计方案 根据系统设计的任务和要求,设计系统方框图如图 1 所示。图中控制器模块为 系统的核心部件,键盘和显示器用来实现人机交互功能,其中通过键盘将速度参数 输入到单片机中,并且通过控制器显示到显示器上。在运行过程中控制器产生 PWM 脉冲送到电机驱动电路中,经过放大后控制直流电机转速,同时利用速度检 测模块将当前转速反馈到控制器中,控制器经过数字 PID 运算后改变 PWM 脉冲的 占空比,实现电机转速实时控制的目的。 按键模块 显示模块 控制器模块电机驱动模块直流电机 码盘 PWM脉冲 图 1 系统方案框图 智能控制基础研究生课程设计报告 2 3系统硬件电路设计系统硬件电路设计 3.1 整体电路设计整体电路设计 单片机直流调速系统可实现对直流电动机的平滑调速。PWM 是通过控制固定 电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电 压调整方法。在 PWM 驱动控制的调整系统中,按一个固定的频率来接通和断开电 源,并根据需要改变一个周期内“接通”和“断开”时间的长短。通过改变直流电 机电枢上电压的“占空比”来改变平均电压的大小,从而控制电动机的转速。因此, PWM 又被称为“开关驱动装置” 。本系统以 STM32 单片机为核心,通过单片机控 制,C 语言编程实现对直流电机的平滑调速。 本直流电机调速系统以单片机系统为依托,根据 PWM 调速的基本原理,以直 流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速为依据, 实现对直流电动机的平滑调速,并通过单片机控制速度的变化。本文所研究的直流 电机调速系统主要是由硬件和软件两大部分组成。硬件部分是前提,是整个系统执 行的基础,它主要为软件提供程序运行的平台。而软件部分,是对硬件端口所体现 的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,达到控制 器自动对电机速度的有效控制。 本系统硬件资源分配见图 2 所示。采用 STM32F103 单片机作为核心器件,转 速检测模块作为电机转速测量装置,通过 STM32F103 的 PA1(A 相)将电脉冲信号送 入单片机处理,L298 作为直流电机的驱动模块,利用 320240TFTLCD 显示器和 3 个独立按键作为人机接口。 智能控制基础研究生课程设计报告 3 S ST TM M3 32 2F F1 10 03 3Z ZE ET T6 6 码盘测速 直流电机 电机驱动模 块L298N TFT显示屏 按键模块 PA1 PA3 RESET:PE1 KEY-3:PE3 KEY-2:PE2 PG PD GND 图 2 系统电路连接及硬件资源分配图 3.2 最小单片机系统设计最小单片机系统设计 STM32F103ZETT6 作为 MCU,该芯片是 STM32F103 里面配置非常强大的了, 它拥有的资源包括:64KB SRAM、512KB FLASH、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 家族常用型号里面,最高配置的芯片了。 3.2.1STM32F103 复位电路复位电路 STM32F103 的复位电路如图 3 所示: 智能控制基础研究生课程设计报告 4 图 3 复位电路图 因为 STM32 是低电平复位的,所以我们设计的电路也是低电平复位的,这里的 R3 和 C12 构成了上电复位电路。同时,开发板把 TFT_LCD 的复位引脚也接在 RESET 上,这样这个复位按钮不仅可以用来复位 MCU,还可以复位 LCD。 3.2.2 电源电路电源电路 STM32F103板载的电源供电部分,其原理图如图4所示: 图 4 电源电路 图中,总共有3个稳压芯片:U12/U13/U15,DC_IN用于外部直流电源输入,范 围是DC624V,输入电压经过U13 DC-DC芯片转换为5V电源输出,其中D4是防反 接二极管,避免外部直流电源极性搞错的时候,烧坏开发板。K2为开发板的总电源 智能控制基础研究生课程设计报告 5 A1 A2 SE N1 1 1Y 1 2 1Y 2 3 Vs 4 1A 1 5 1E N 6 1A 2 7 GN D 8 Vcc 9 2A 1 10 2A 2 12 2E N 11 2Y 1 13 2Y 2 14 SE N2 15 U5 L298N D4 D3 D1 D2 C10 20F C9 20F +5V +12V +12V R1 470 R2 5K R4 5K R3 470 R5 470 MG 1 P2.7 P2.6 P2.5 开关,F1为1000ma自恢复保险丝,用于保护USB。U12为3.3V稳压芯片,给开发板 提供3.3V电源,而U15则是1.8V稳压芯片,供VS1053的CVDD使用。 3.3 电机驱动电路设计电机驱动电路设计 驱动模块是控制器与执行器之间的桥梁,在本系统中单片机的 I/O 口不能直接 驱动电机,只有引入电机驱动模块才能保证电机按照控制要求运行,在这里选用 L298N 电机驱动芯片驱动电机,该芯片是由四个大功率晶体管组成的 H 桥电路构成, 四个晶体管分为两组,交替导通和截止,用单片机控制达林顿管使之工作在开关状 态,通过调整输入脉冲的占空比,调整电动机转速。其中输出脚(SENSEA 和 SENSEB)用来连接电流检测电阻,Vss 接逻辑控制的电源。Vs 为电机驱动电源。 IN1-IN4 输入引脚为标准 TTL 逻辑电平信号,用来控制 H 桥的开与关即实现电机的 正反转,ENA、ENB 引脚则为使能控制端,用来输入 PWM 信号实现电机调速。其 电路如图 5 所示,利用两个光电耦合器将单片机的 I/O 与驱动电路进行隔离,保证 电路安全可靠。这样单片机产生的 PWM 脉冲控制 L298N 的选通端,使电机在 PWM 脉冲的控制下正常运行,其中四个二极管对芯片起保护作用。 图 5 电机驱动电路 智能控制基础研究生课程设计报告 6 3.4 光电码盘编码器电路设计光电码盘编码器电路设计 在本系统中由于要将电机本次采样的速度与上次采样的速度进行比较,通过偏 差进行 PID 运算,因此速度采集电路是整个系统不可缺少的部分。本次设计中应用 了比较常见的光电测速方法来实现,其具体做法是将电机轴上固定一圆盘,且其边 缘上有 N 个等分凹槽如图 6 所示,在圆盘的一侧固定一个发光二极管,其位置对准 凹槽处,在另一侧和发光二极光平行的位置上固定一光敏三极管,如果电动机转到 凹槽处时,发光二极管通过缝隙将光照射到光敏三极管上,三极管导通,反之三极 管截止,电路如图 7 所示,从图中可以得出电机每转一圈在 PA3 的输出端就会产生 N 个低电平。这样就可根据低电平的数量来计算电机此时转速了。例如当电机以一 定的转速运行时,PA3 将输出如图 7 所示的脉冲,若知道一段时间 t 内传感器输出 的低脉冲数为 n,则可求出电机转速。 图 6 电机速度采集方案 图 7 传感器输出脉冲波形 3.5 显示电路设计显示电路设计 根据设计要求要对电机的转速进行读取,因此在电路中加入显示模块是很有必 要的。在系统运行过程中需要显示的数据比较多,而且需要汉字显示,在这里选用 320240 液晶显示器比较适合,它是一种图形点阵液晶显示器,主要由行驱动器/列 驱动器及 320240 全点阵液晶显示器组成,可完成汉字显示。 圆盘 光敏三极管发光二极管 +5V P3.3 470 200 R1R2 智能控制基础研究生课程设计报告 7 TFTLCD 模块采用 16 位的并方式与外部连接,之所以不采用 8 位的方式,是因 为彩屏的数据量比较大,如果用 8 位数据线,就会比 16 位方式慢一倍以上,我们当 然希望速度越快越好,所以我们选择 16 位的接口。 3.6 按键电路设计按键电路设计 根据设计需求,本系统中使用了 3 个独立按键用以实现对电机转速的设定以及 复位功能。 键盘操作说明:在系统开始运行时,320240TFTLCD 将显示开机界面,按 KEY_2 增加速度,按 KEY_3 减少速度,按 KEY_RESET 键是复位,使程序回到初 始状态。 4.系统软件设计系统软件设计 4.1 PID 算法算法 本系统设计的核心算法为 PID 算法,它根据本次采样的数据与设定值进行比较 得出偏差,对偏差进行 P、I、D 运算最终利用运算结果控制 PWM 脉冲的占空 )(ne 比来实现对加在电机两端电压的调节,进而控制电机转速。其运算公式为: 1 ( ) (n)(n1)(n) (n)2 (n1)(n2) pd utK eeKeK eee (1) 如何选择控制算法的参数,要根据具体过程的要求来考虑。一般来说,要求被 控过程是稳定的,能迅速和准确地跟踪给定值的变化,超调量小,在不同干扰下系 统输出应能保持在给定值,操作变量不宜过大,在系统和环境参数发生变化时控制 应保持稳定。显然,要同时满足上述各项要求是很困难的,必须根据具体过程的要 求,满足主要方面,并兼顾其它方面。 PID 调节器是一种线性调节器,它根据给定值与实际输出值构成的控 )(tr)(tc 制偏差: = )(te)(tr)(tc (2) 智能控制基础研究生课程设计报告 8 将偏差的比例、积分、微分通过线性组合构成控制量,对控制对象进行控制, 故称为 PID 调节器。在实际应用中,常根据对象的特征和控制要求,将 P、I、D 基 本控制规律进行适当组合,以达到对被控对象进行有效控制的目的。例如,P 调节 器,PI 调节器,PID 调节器等。 模拟 PID 调节器的控制规律为 )( )( 1 )()( 0dt tde Tdtte T teKtu D t I p (3) 式中,为比例系数,为积分时间常数,为微分时间常数。 P K I T D T 简单的说,PID 调节器各校正环节的作用是: (1)比例环节:即时成比例地反应控制系统的偏差信号,偏差一旦产生, )(te 调节器立即产生控制作用以减少偏差; (2)积分环节:主要用于消除静差,提高系统的无差度。积分作用的强弱取决 于积分时间常数,越大,积分作用越弱,反之则越强; I T I T (3)微分环节:能反映偏差信号的变化趋势(变化速率) ,并能在偏差信号的 值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速 度,减少调节时间。 4.2 电机速度采集算法电机速度采集算法 本系统中电机速度采集是一个非常重要的部分,它的精度直接影响到整个控制 的精度。在设计中采用了光电传感器做为测速装置,其计算公式为: v= r/min 60 tN n (3) 式中,速度 v 的误差主要是由圆盘边缘上的凹槽数的多少决定的,为了减少系 统误差应尽量提高凹槽的数量,在本次设计中取凹槽数 N 为 260,采样时间 t 为 10ms。 智能控制基础研究生课程设计报告 9 5.系统调试系统调试 5.1 软件调试软件调试 在程序编写的过程中,出现了很多问题,包括键盘扫描处理、PWM 信号发生 电路的控制、以及单片机控制直流电机的转动方向等问题,虽然问题不是很大,但 是也让我研究了好长时间,在解决这些问题的时候,我不断向老师和同学请教,希 望能通过大家一块的努力把软件编写的更完整,让系统的功能更完备。经过多天的 努力探索,也经过老师的指导,大部分问题都已经解决,就是程序还是不能实现应 该实现的功能,这让我很着急。后来经过一点一点的调试,并认真总结,发现了问 题其实在编写中断处理程序时出现了错误,修改后即可实现直流电机调速的目的。 总结这次软件调试,让我认识到了做软件调试的基本方法与流程: (1)认真检查源代码,看是否有文字或语法错误 (2)逐段子程序进行设计,找出错误出现的部分,重点排查 (3)找到合适的方法,仔细检查程序,分步调试直到运行成功 5.2 系统测试与分析系统测试与分析 为了确定系统与设计要求的符合程度,需要进行系统测试与分析,下面以 PID 调节器为例,具体说明经验法的整定步骤: 让调节器参数积分系数=0,实际微分系数=0,控制系统投入闭环运 I K D K 行,由小到大改变比例系数,让扰动信号作阶跃变化,观察控制过程,直到获 P K 得满意的控制过程为止。 取比例系数为当前的值乘以 5,由小到大增加积分系数,同样让扰动 P K I K 信号作阶跃变化,直至求得满意的控制过程。 积分系数保持不变,改变比例系数,观察控制过程有无改善,如有 I K P K 改善则继续调整,直到满意为止。否则,将原比例系数增大一些,调整积分系 P K 智能控制基础研究生课程设计报告 10 数,力求改善控制过程。如此反复,直到找到满意的比例系数和积分系数 I K P K 为止。 I K 引入适当的实际微分系数和实际微分时间,此时可适当增大比例系 D K D T 数和积分系数。和前述步骤相同,微分时间的整定也需反复调整,直到控 P K I K 制过程满意为止。 根据上诉方法,通过观察得出该系统比较合适的 P、I、D 三者的参数值为: =5, =0.00105, =0。 P K I K D K 6.总结与展望总结与展望 这一段时间过的无比的充实,每天都在忙碌着,查阅资料,翻看文档,了解相 关的知识,每一个设计细节都要仔细的考虑,每一个环节都要查阅相关的资料,争 取做到完美。在这个系统中以前学的很多东西现在都用上了,数码管的移位显示等 等都是在以前学习的基础上慢慢调试出来的,所以在写这篇论文的时候又让我对以 前的知识进行了一次回顾,对知识又有了新的认识!真是受益匪浅! 通过本次课程设计,我学到了许多了东西,知道光靠书本上的东西是不够的, 需额外去查资料。无论是在硬件、软件还是设计思路上,我都遇到了不少的问题, 在克服困难的过程中,我学到了许多。知道了 PID 算法的应用,以前总觉得 PID 就 是像做数学一样,不知道实际应用。通过本次设计,让我很好的锻炼了理论与具体 项目、课题相结合开发、设计产品的能力。既让我们懂得了怎样把理论应用于实际, 又让我们懂得了在实践中遇到的问题怎样用理论去解决。 智能控制基础研究生课程设计报告 11 附录一附录一 部分程序源程序 #include stm32f10 x.h #include delay.h #include exti.h #include lcd.h #include text.h #include #include float WishSpeedMax=360; float WishSpeedMin=0; float WishSpeed; extern float U_Out2; u8 WishSpeedChar11; u8 RealSpeedChar11; int main(void) SystemInit(); delay_init(72); NVIC_PriorityGroupConfig(NVIC_Priorit
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 奇葩谜语题目及答案
- 判断函数题目及答案
- 科技创新创业大赛奖金申请策略与实战技巧深度分析报告
- spss上机题目及答案
- hpv相关题目及答案
- 2025年在线教育平台课程内容与用户体验满意度研究
- 化工新材料在生物材料领域的应用现状与2025年市场分析报告
- 2025-2030烘焙食品节日包装视觉营销与消费者决策关联研究
- 2025-2030智能建筑管理系统集成标准与市场准入研究
- 2025年二级建造师之二建水利水电实务模拟题库及答案下载
- 2025年云南省事业单位招聘考试教师信息技术学科专业知识试卷试题
- 借款转为租金合法合同范本
- 2025年电子商务师(职业资格专业初级)考试试卷及答案
- 海姆立克急救法科普知识
- 《基本医疗卫生与健康促进法》试题(附答案)
- 2025年事业单位笔试-云南-云南药剂学(医疗招聘)历年参考题库含答案解析(5卷套题【单选100题】)
- 2025年度铝合金门购销及节能技术合同
- 2024届国家卫健委临床药师培训学员(抗感染专业)理论考核试题
- 【基层法工】基层法律服务工作者测试题附答案
- 浙江浙政钉管理办法
- 宁夏公休假管理办法
评论
0/150
提交评论