# 应用系统-基于PID的直流电机调速控制系统
> <p>本次应用系统课程设计主要涉及<b>基于STM32编程</b>、<b>直流电机的驱动</b>和<b>PID控制</b>的应用,根据课程设计要求完成了基于PID算法的简单直流电机调速练习,本系统目前还可以继续完善,有相当多的功能可以继续添加。另外,对于PID算法的调参问题一直是困扰做项目的人,后来我们采用Matlab&Simulink仿真的方式,大大缩短了参数整定的时间,具体参考本仓库中的另一个项目
🍉[04_Simulink4UART通信仿真](https://github.com/ChromeWei/Practicum/tree/master/04_Simulink4UART%E9%80%9A%E4%BF%A1%E4%BB%BF%E7%9C%9F).
> <p><b>特此感谢</b>,课程设计过程中任课老师陈老师给予的指导和帮助!</p>
<br>
## 摘要
  当今,自动化控制系统已经在各行各业得到了广泛的应用和发展,而直流电机驱动控制作为电器传动的主流在现代化生产中起着主要作用。长期以来,直流电动机因其转速调节比较灵活,方法简单,易于大范围平滑调速,控制性能好等特点,一直在传动领域占有统治地位。<br>
  本课程设计主要通过PWM调速实现直流电机的正转、反转、加速、减速、启停等操作,利用PID控制算法使系统更加快速和稳定。为实现系统的控制,采用了STC15F2K60S2增强型单片机作为整个控制系统的核心部分,配以OLED显示电机速度、AD测量值、电机正反转等参数,实现系统的人机交互。不断采集霍尔编码器的脉冲数读取电机的转速,利用PID增量式方法快速在旋钮调解时趋向目标值。同时,通关过匿名上位机实时观测调节过程,或是超调,亦或是振荡都能及时的看出来。<br>
  通过外部中断、定时器中断、AD中断操作,在方案实现的过程中,需要明确他们的优先级,防止发生冲突。这也是本系统设计的一个难题。<br>
<p><b>关键字:</b> 直流电机;单片机;PID;PWM 编码器</p><br>
目录
=================
* [摘要](#摘要)
* [第一部分 课程设计概述](#第一部分-课程设计概述)
* [第二部分 设计方案工作原理](#第二部分-设计方案工作原理)
* [2.1 预期实现目标定位](#21-预期实现目标定位)
* [2.2 技术方案分析](#22-技术方案分析)
* [2.3 功能指标实现方法](#23-功能指标实现方法)
* [第三部分 核心部件电路设计](#第三部分-核心部件电路设计)
* [3.1 关键器件性能分析](#31-关键器件性能分析)
* [3.2 电路工作原理](#32-电路工作原理)
* [3.3 电路驱动接口说明](#33-电路驱动接口说明)
* [第四部分 系统软件设计分析](#第四部分-系统软件设计分析)
* [4.1 系统总体工作流程](#41-系统总体工作流程)
* [4.2 程序设计思路](#42-程序设计思路)
* [4.3 关键模块程序清单](#43-关键模块程序清单)
* [4.3.1 编码器测速](#431编码器测速)
* [4.3.2 五向按键检测](#432五向按键检测)
* [4.3.3 OLED显示](#433-oled显示)
* [4.3.4 PID控制](#434-pid控制)
* [4.4 调试分析](#44-调试分析)
* [第五部分 心得体会](#第五部分-心得体会)
* [第六部分 附录](#第六部分-附录)
* [Ⅰ 参考文献](#ⅰ-参考文献)
* [Ⅱ 电路原理图](#ⅱ-电路原理图)
* [Ⅲ 核心源代码](#ⅲ-核心源代码)
* [相关阅读](#相关阅读)
<br>
# 第一部分 课程设计概述
## 1.1 课程设计的目的与任务
  《单片机应用系统设计》课程设计是运用“应用系统设计”这门课程所学的应用系统设计的各方面知识,进行综合设计的一门课程。设计者要熟练掌握 Keil C 软件编程环境和 STC 单片机的片上资源,并通过查文献资料了解掌握相关外围器件的用法,综合运用进行设计。本课程是配合单片机原理和应用系统设计及模拟、数字电路,传感器原理等多门课程教学的一个重要实践环节,能帮助学生应用课堂学习到的知识,加强综合能力,提高系统设计水平。
## 1.2 课程设计题目
  直流电机控制系统
## 1.3 设计功能要求
(1)焊接电机控制电路板,调试后电路功能正常; (30 分)<br>
(2)可以通过 5 向按键左右控制电机正反转、侧向按键控制电机启动/停止;(10 分)<br>
(3)通过旋纽电阻控制电机转速或角度(可二选一);(20 分)<br>
(4)相关电机转速或角度,转动方向信息在 LCD1602 或 OLED 上显示; (20 分)<br>
(5)通过 PID 调节,通过旋纽控制转速或转动角度(可二选一),数据通过串口,在电脑上显示曲线(可借助匿名地面站工具),相应的在显示器上显示目标转速或角度。(15 分)<br>
(6)其他。(5 分)<br>
## 1.4 课程设计的内容与要求
(1)设计制作硬件电路;<br>
(2)编写单片机系统软件;<br>
(3)软硬件调试;<br>
(4)写课程设计报告<br>
## 1.5 实验仪器设备及器件
  1)PC机;<br>
  2)Keil C51软件;<br>
  3)STC15F2K60S2增强型单片机,TB6612电机驱动芯片,直流电机,OLED显示屏;<br>
<br><br>
# 第二部分 设计方案工作原理
  经过对本课程设计的分析,本直流电机控制系统将通过控制电机的转速完成相关设计要求。AD采样判别五向按键,定时器控制系统工作时间,外部中断(In0P31和In1P32)读取编码器A、B相的脉冲数,单位时间内的总数即为电机的转速。测得的速度值和旋钮采样值通过OLED显示出来,通过PID算法实现速度控制,并在匿名上位机上实时显示目标值和当前值。不断调节比例系数和积分系数,是系统达到稳定性、快速性、准确性的基本要求。
## 2.1 预期实现目标定位
  主要通过PWM调速实现直流电机的正转、反转、加速、减速、启停等操作,利用PID控制算法使系统更加快速和稳定。为实现系统的控制,采用了STC15F2K60S2增强型单片机作为整个控制系统的核心部分,配以OLED显示电机速度、AD测量值、电机正反转等参数,实现系统的人机交互。不断采集霍尔编码器的脉冲数读取电机的转速,利用PID增量式方法快速在旋钮调解时趋向目标值。
## 2.2 技术方案分析
### 2.2.1 系统框图
<div align=center><img src="https://img-blog.csdnimg.cn/20191209234244676.png" ></div>
<p align="center">
图2.1 系统框图
</p>
### 2.2.2 电路工作原理
  根据励磁方式不同,直流电机分为自励和他励两种类型。 不同励磁方式的直流电机机 械特性曲线有所不同。对于直流电机来说,认为机械特性方程式为:<br>
$$  n=UN/(KeφN)-(Rad+Ra)/(K eKtφ2N)T=n-△n (公式 1-1)$$
式中:
     UN ,φN ---------- 额定电枢电压、额定磁通量;<br>
     Ke ,Kt---与电机有关的常数; <br>
     Rad ,Ra-----电枢外加电阻、电枢内电阻; <br>
     n ,△n—理想空载转速、转速降。 <br>
  分析公式 1-1 可得,当分别改变 UN 、φN 和 Rad时,可以得到不同的转速 n,从而实现对速度的调节。由于φ=T,当改变励磁电流 If 时,可以改变磁通量φ的大小,从而达到变磁通调速的目的。 但由于励磁线圈发热和电动机磁饱和的限制,电动机的励磁电流 If 和磁通量 φ只能在低于其额定值的范围内调节,故只能弱磁调速。而对于调节电枢外加电阻Rad时,会使机械特性变软,导致电机带负载能力减弱。<b
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于PID的直流电机调速控制系统-内含源码和说明书.zip (86个子文件)
ANO_TC匿名上位机V65_.exe 67.96MB
课程设计:直流电机控制Code
Note
说明.txt 3KB
FDC2214-IIC时序.jpg 84KB
底板原理图.jpg 131KB
SYSTEM
GPIO.c 4KB
IIC.c 3KB
AnoTc.c 2KB
config.h 2KB
STC15Fxxxx.H 32KB
AD.c 708B
GPIO.h 2KB
IIC.h 541B
Serial.c 1KB
STC15F2K60S2.h 12KB
Serial.h 296B
AnoTc.h 168B
AD.h 402B
USER
ex1.uvgui.chenlei 146KB
ex1.uvgui.张益达 90KB
Objects
oled(CHENLEI-LAPTOP--chenlei--2018-09-17-19,24,26).obj 31KB
main(CHENLEI-LAPTOP--chenlei--2018-09-09-20,17,48).obj 9KB
oled(CHENLEI-LAPTOP--chenlei--2018-09-17-19,21,22).obj 31KB
ex1 119KB
ex1(CHENLEI-LAPTOP--chenlei--2018-09-17-19,21,22) 99KB
AD.obj 8KB
ex1(CHENLEI-LAPTOP--chenlei--2018-09-09-20,17,48) 34KB
IIC.obj 13KB
myself.obj 24KB
Listings
ex1(CHENLEI-LAPTOP--chenlei--2018-09-09-20,17,48).m51 17KB
FDC2214.lst 12KB
main.lst 6KB
ex1(CHENLEI-LAPTOP--chenlei--2018-09-09-20,12,30).m51 17KB
oled.lst 16KB
AD.lst 2KB
IIC.lst 973B
NoKiaLcd.lst 20KB
ex1.m51 57KB
GPIO.lst 6KB
Lcd.lst 594B
Serial.lst 3KB
main(CHENLEI-LAPTOP--chenlei--2018-09-09-20,17,48).lst 4KB
myself.lst 8KB
NoKiaLcd.obj 8KB
ex1.plg 6KB
ex1(CHENLEI-LAPTOP--chenlei--2018-09-17-19,24,26) 99KB
AnoTc.obj 10KB
Serial.obj 8KB
ExtDll.iex 17B
GPIO.obj 9KB
oled.obj 30KB
ex1(CHENLEI-LAPTOP--chenlei--2018-09-09-20,12,30) 34KB
FDC2214.obj 21KB
ex1.hex 31KB
ex1.lnp 261B
main.obj 21KB
ex1.build_log.htm 2KB
PWM.obj 5KB
myself.c 7KB
Listings
PWM.lst 3KB
FDC2214.lst 12KB
AnoTc.lst 4KB
main.lst 10KB
oled.lst 16KB
AD.lst 2KB
IIC.lst 6KB
ex1.m51 69KB
GPIO.lst 6KB
Serial.lst 3KB
myself.lst 13KB
ex1.uvproj 15KB
ex1.uvgui_chenlei.bak 146KB
ex1.uvopt 12KB
ex1.uvgui.cl 169KB
ex1.uvgui.Administrator 85KB
main.c 5KB
myself.h 756B
HARDWARE
oled.c 8KB
bmp.h 11KB
PWM.c 2KB
oled.h 2KB
FDC2214.c 7KB
PWM.h 203B
oledfont.h 16KB
FDC2214.h 2KB
《单片机应用系统设计》课程设计.doc 1.84MB
README.md 33KB
共 86 条
- 1
资源评论
- bq200412ln2024-05-19资源内容总结地很全面,值得借鉴,对我来说很有用,解决了我的燃眉之急。
小码蚁.
- 粉丝: 2530
- 资源: 4146
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功