PID直流电机转速控制实验报告
- 格式:wps
- 大小:631.55 KB
- 文档页数:30
电机转速控制实验报告
1. 实验目的
本实验旨在研究电机转速控制的原理和方法,通过实际操作和数据分析来加深对电机控制的理解,并验证控制算法的有效性。
2. 实验原理
电机转速控制是通过改变电机供电电压或者改变电机绕组的接线方式来控制电机的转速。
在本次实验中,我们将采用调制技术来实现电机转速的控制。
3. 实验设备与材料
- 电机:直流电机
- 控制器:单片机控制器
- 传感器:转速传感器
- 电源
- 连接线
4. 实验步骤
1. 搭建实验电路:将电机和传感器连接至控制器,并接通电源。
2. 编写控制程序:根据所选的控制算法,编写相应的控制程序,并将其烧录至控制器中。
3. 运行实验:根据预设条件,控制电机的转速并记录数据。
4. 数据分析:对实测数据进行分析,验证控制算法的有效性。
5. 实验结果与分析
在实验过程中,我们采用了调制技术来实现电机转速的控制。
通过对控制程序的设计和实验数据的分析,我们得出以下结论:
- 当调制信号的频率增加时,电机的转速也随之增加,说明控制算法的设计是成功的。
- 通过调整调制信号的占空比,我们可以实现对电机转速的精确控制。
6. 实验总结
通过本次实验,我们深入了解了电机转速控制的原理和方法。
实验结果表明,调制技术能够有效地实现电机转速的控制,并且可以通过调整参数来实现不同的控制效果。
在实验过程中,我们还学习了如何编写控制程序和分析实验数据。
这些都对我们进一步深入研究电机控制提供了良好的基础。
7. 参考文献
- 电机控制技术原理与应用教材
- 直流电机转速控制实验指导书。
直流电机转速PID控制系统设计学院:专业班级:姓名:学号:指导老师:目录第一章PID简介 (1)第二章直流电机工作原理 (6)2.1 工作原理 (6)2.2、直流电机PID控制原理方框图 (7)第三章控制系统方案选择 (10)3.1 系统设计要求 (10)3.2 系统模块设计 (12)第四章硬件设计与实现 (17)4.1 硬件设计 (17)4.2系统面板图 (24)第五章流程设计 (26)5.1 软件设计流程图 (26)第六章程序说明 (30)6.1 直流电机部分程序 (30)6.2 温度检测部分程序 (37)第七章说明及调试 (46)7.1 调试过程 (46)7.2 运行结果 (47)第八章课程设计体会 (49)第一章 PID简介PID (比例积分微分,英文全称为Proportion Integration Differentiation)控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。
当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。
即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。
PID控制,实际中也有PI和PD控制。
PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。
PID控制器的参数整定是控制系统设计的核心内容。
它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。
PID控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。
它主要是依据系统的数学模型,经过理论计算确定控制器参数。
这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。
二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。
PID仿真实验报告PID控制算法是一种重要的控制算法,被广泛应用于工业控制系统中。
本文通过仿真实验的方式,对PID控制算法进行了验证和分析。
一、实验目的1.了解PID控制算法的基本原理和调节方法;2. 掌握MATLAB/Simulink软件的使用,进行PID控制实验仿真;3.验证PID控制算法的稳定性和性能。
二、实验内容本次实验选择一个常见的控制系统模型,以电感驱动的直流电机控制系统为例。
通过PID控制算法对该系统进行控制,观察系统的响应特性。
三、实验步骤1.搭建电感驱动的直流电机控制系统模型,包括电感、直流电机、PID控制器等组成部分;2.设置PID控制器的参数,包括比例增益Kp、积分时间Ti、微分时间Td等;3.进行仿真实验,输入适当的控制信号,观察系统的响应曲线;4.调节PID控制器的参数,尝试不同的调节方法,观察响应曲线的变化,寻找合适的参数。
四、实验结果与分析1.首先,设置PID控制器的参数为Kp=1,Ti=1,Td=0,进行仿真实验。
观察到系统的响应曲线,并记录与分析曲线的特点;2.其次,调整PID控制器的参数,如增大比例增益Kp,观察系统的响应曲线的变化;3.最后,调整积分时间Ti和微分时间Td,观察系统的响应曲线的变化。
通过实验结果与分析,可以得到以下结论:1.PID控制算法能够有效地控制系统,并实现稳定的控制;2.比例增益Kp对系统的超调量有较大的影响,增大Kp可以减小超调量,但也会增加系统的稳定时间;3.积分时间Ti对系统的稳态误差有较大的影响,增大Ti可以减小稳态误差,但也会增加系统的超调量;4.微分时间Td对系统的响应速度有较大的影响,增大Td可以增加系统的响应速度,但可能会引起系统的振荡。
五、实验总结通过本次实验,我深入理解了PID控制算法的原理和调节方法。
同时,通过对实验结果的分析,我也了解了PID控制算法的稳定性和性能。
在实际工程应用中,需要根据具体的控制对象,合理选择PID控制器的参数,并进行调节优化,以获得理想的控制效果。
PID控制电机实验报告实验目的本次实验的目的是掌握PID控制器的工作原理和应用,了解PID控制的基本概念和设计方法,并通过实验实现对电机的控制。
实验步骤材料准备本次实验所需要的材料如下:•电脑•Arduino开发板•直流电机•按钮•电位器•面包板•杜邦线•电源线硬件连接首先将直流电机连接到Arduino开发板的PWM引脚上,同时将按钮和电位器连接到开发板的数字引脚上,如下图所示:image1image1软件实现打开Arduino IDE,新建一个工程,然后编写如下代码:// 定义控制引脚和输入引脚const int CONTROL_PIN = 9;const int INPUT_PIN = A0;const int BUTTON_PIN = 2;// 设置时间间隔const int INTERVAL = 100;// 设置p、i、d系数和初始误差const float Kp = 0.8;const float Ki = 0.1;const float Kd = 0.1;const float TARGET = 500;float error = 0;float lastError = 0;float integral = 0;// 定义按钮状态和电位器值int buttonState = HIGH;int potValue = 0;// 初始化控制引脚和按钮引脚void setup() {pinMode(CONTROL_PIN, OUTPUT);pinMode(BUTTON_PIN, INPUT);digitalWrite(BUTTON_PIN, HIGH);}// 主循环void loop() {// 获取按钮状态和电位器值buttonState = digitalRead(BUTTON_PIN);potValue = analogRead(INPUT_PIN);// 判断按钮状态if (buttonState == LOW) {// 按下按钮时,执行pid控制error = TARGET - potValue;integral += error;float derivative = error - lastError;lastError = error;float output = Kp * error + Ki * integral + Kd * derivative;if (output > 255) {output = 255;}if (output < -255) {output = -255;}analogWrite(CONTROL_PIN, abs(output));} else {// 未按下按钮时,关闭电机analogWrite(CONTROL_PIN, 0);}// 等待一段时间delay(INTERVAL);}以上代码实现了一个PID控制器,当按下按钮时,控制器根据电位器的值计算出控制信号,并控制电机的转速,使电位器的值逐渐趋近于目标值,当释放按钮时,电机停止转动。
直流电机转速控制实验报告自动控制原理实验实验报告直流电机转速控制设计一、实验目的1、了解直流电机转速测量与控制的基本原理。
2、掌握LabVIEW图形化编程方法,编写直流电机转速控制系统程序。
3、熟悉PID参数对系统性能的影响,通过PID参数调整掌握PID控制原理。
二、实验设备与器件计算机、NI ELVIS II多功能虚拟仪器综合实验平台、LabVIEW软件、万用表、12V直流电机、光电管,电阻、导线。
三、实验原理直流电机转速测量与控制系统的基本原理是:通过调节直流电机的输入电压大小调节电机转速;利用光电管将电机转速转换为一定周期的光电脉冲、采样脉冲信号,获取脉冲周期。
将脉冲的周期变换为脉冲频率,再将脉冲频率换算为电机转速;比较电机的测量转速与设定转速,将转速偏差信号送入PID控制器,由PID 控制器输出控制电压,通可变电源输出作为直流电机的输入电压,实现电机转速的控制。
四、实验过程(1)在实验板上搭建出电机转速光电检测电路将光电管、直流电机安装在实验板上的合适位置,使得直流电机的圆片恰好在光电管之中,用导线将光电管与相应阻值的电阻相连,并将电路与相应的接口相连,连接好的电路图如下。
(2)编写程序,实现PID控制SP为期望转速输出,是用户通过转盘输入期望的转速;PV为实际测量得到的电机转速,通过光电开关测量马达转速可以得到;MV为PID输出控制电压,将其接到“模拟DBL”模块,实现控制电源产生所需的直流电机控制电压。
通过不断地检测马达转速与期望值对比产生偏差,通过PID控制器产生控制信号,实现对直流电机转速的控制。
编写的程序如下图所示五、调试过程及结果PID参数调整如下时,系统出现了振荡现象,导致了系统的不稳定。
于是将参数kc调小,调整后的参数如下:系统出现了一定程度的超调,不满足实际的应用。
继续将Ti参数调大,并加入移位寄存器,对转速测量值取滑动平均,得到较为理想的系统输出。
-全文完-。
直流电机转速测控实验一、实验目的1. 掌握电机转速的测量原理;学会根据被测环境、对象不同选择合适的传感器测量转速;2. 掌握电机转速控制的原理;学会用计算机和传感器组成转速测控系统。
二、实验原理图1所示为计算机直流电机转速测控系统原理图。
图1 计算机测控直流电机转速原理框图根据被测环境和对象选择不同转速传感器(光电、霍尔、磁电)实现直流电机转速的测量及控制。
三. 实验仪器和设备1. CSY-5000型传感器测控技术实训公共平台;2. 环形带综合测控实验台;3. 数据采集模板及测控软件(LabVIEW试用版);4. 12V直流电机调节驱动挂箱;5. 光电式、霍尔式、磁电式转速传感器各一件;6. PC机及RS232通讯接口。
四.实验预习要求1.查阅资料,了解旋转轴转速测量的常用方法;2.掌握采用光电式、霍尔式、磁电式传感器测量转速的原理及特点;3.理解计算机测控直流电机转速的系统工作原理;4.熟悉CSY-5000型传感器测控技术实训平台的硬件配置。
五. 实验步骤及内容第一部分:转速测量1、在关闭公共平台主机箱电源开关的前提下,连接数据采集模板电源线、RS232通讯线;2、根据你选用的转速传感器,按转速传感器附录图1、图2、图3示意图安装接线;(注意光电、霍尔传感器为+5V供电,磁电传感器为+15V供电)3、主机箱上0~12V可调电源与电压表(电压表量程选择20V档)及环形带综合测控实验台电机(环形带综合测控实验台背面)接口并接(注意接口的相应极性);4、检查接线无误后,首先将主机箱上0~12V可调旋钮逆时针方向缓慢调节到底(起始输出电压最小);然后桌面“环形带综合测试软件”(或者启动计算机中的测试软件目录“SensorTest.vi”),双击打开,显示图2环形带综合测试程序软件界面;再打开主机箱电源开关给测量系统供电。
图2 环形带综合测试软件界面5、在计算机的环形带综合测试程序软件界面采单栏下方栏点击运行按钮,串口通讯正常后选择测试软件中“手动转速控制与测量”选项,软件界面显示为图3转速测量选择传感器类型界面;在界面下方选择“传感器类型”为现在做测量转速实验相对应的转速传感器。
PID控制电机实验报告【摘要】本实验通过PID控制电机,对系统进行控制,实现系统的速度调节和位置调节。
首先通过对系统的建模和参数辨识,得到了系统的数学模型和参数,并根据模型设计了合适的PID控制器。
然后通过实验验证了设计的控制器的有效性,实现了对电机速度和位置的调节。
实验结果表明,PID控制器对于系统的速度调节和位置调节具有良好的性能,能够实现较好的控制效果。
【关键词】PID控制;电机;速度调节;位置调节一、实验目的1.通过PID控制器实现对电机的速度调节和位置调节;2.验证PID控制器的有效性和性能。
二、实验原理PID控制器是一种经典的控制策略,由比例(P)、积分(I)和微分(D)三个部分组成。
PID控制器的数学表达式为输出信号u(t) = Kp*e(t) + Ki*∫e(t)dt + Kd*de(t)/dt,其中e(t)为控制偏差,Kp、Ki和Kd分别为比例、积分和微分系数。
在电机控制中,可以将电机看作一个被控对象,输入电机的电压u(t)通过电机的转矩转化为输出角速度ω(t)。
通过对电机的数学建模,可以得到电机的传递函数为G(s)=k/(Ts+1),其中k为系统增益,T为系统时间常数。
根据系统传递函数的性质,可以得到电机系统的速度和位置闭环模型为Kv(s)=1/(Ts+1)和Kp(s)=Ks/(Ts+1),分别对应于速度和位置的调节。
三、实验装置1.PC机;2.PID控制器板卡;3.直流电机;4.电压放大电路;5.角度传感器。
四、实验步骤1.建立电机的数学模型,并利用实验数据辨识系统的参数;2.根据模型设计PID控制器的参数;3.连接实验装置,将PC机与PID控制器板卡连接,通过板卡控制电机的电压,实现速度和位置调节;4.设置不同的目标速度和目标位置,进行实验并记录实验数据;5.分析实验数据,评价控制器的性能和有效性。
五、实验结果与分析通过实验得到了电机系统的数学模型为G(s)=2/(s+1)和Ks=10/(s+1),并根据模型参数设计了PID控制器的参数为Kp=1,Ki=0.01和Kd=0.5、实验中设置了不同的目标速度和目标位置,通过对比实际速度和位置与目标值的差异,评价了控制器的性能。
pid控制实验报告pid控制实验报告篇一:PID控制实验报告实验二数字PID控制计算机控制是一种采样控制,它只能根据采样时刻的偏差值计算控制量。
因此连续PID控制算法不能直接使用,需要采用离散化方法。
在计算机PID控制中,使用的是数字PID控制器。
一、位置式PID控制算法按模拟PID控制算法,以一系列的采样时刻点kT代表连续时间t,以矩形法数值积分近似代替积分,以一阶后向差分近似代替微分,可得离散PID位置式表达式:Tu T ?kpeu=para; J=0.0067;B=0.1; dy=zeros= y= -+ = k*ts; %time中存放着各采样时刻rineu_1=uerror_1=error;%误差信号更新图2-1 Simulink仿真程序其程序运行结果如表2所示。
Matlab输出结果errori = error_1 = 表2 例4程序运行结果三、离散系统的数字PID控制仿真1.Ex5 设被控对象为G?num 仿真程序:ex5.m%PID Controller clear all; close all;篇二:自动控制实验报告六-数字PID控制实验六数字PID控制一、实验目的1.研究PID控制器的参数对系统稳定性及过渡过程的影响。
2.研究采样周期T对系统特性的影响。
3.研究I型系统及系统的稳定误差。
二、实验仪器1.EL-AT-III型自动控制系统实验箱一台 2.计算机一台三、实验内容1.系统结构图如6-1图。
图6-1 系统结构图图中 Gc(s)=Kp(1+Ki/s+Kds) Gh(s)=(1-e)/s Gp1(s)=5/((0.5s+1)(0.1s+1)) Gp2(s)=1/(s(0.1s+1))-TS 2.开环系统(被控制对象)的模拟电路图如图6-2和图6-3,其中图6-2对应GP1(s),图6-3对应Gp2(s)。
图6-2 开环系统结构图1 图6-3开环系统结构图2 3.被控对象GP1(s)为“0型”系统,采用PI控制或PID控制,可使系统变为“I型”系统,被控对象Gp2(s)为“I型”系统,采用PI控制或PID控制可使系统变成“II型”系统。
计算机控制技术综合性设计实验实验课程:直流电机转速控制实验设计报告学生姓名:学生姓名:学生姓名:学生姓名:指导教师:牛国臣实验时间:年月日直流电机转速控制实验设计报告一、实验目的:1.掌握电机的工作原理。
2.掌握直流电机驱动控制技术。
3.掌握增量式编码器位置反馈原理。
4.熟悉单片机硬件电路设计及编程。
5.实现直流电机的转速控制。
二、实验内容:已知某一直流永磁有刷伺服电机参数如下:设计直流电机转速控制系统。
要求:表1 直流伺服电机参数1.分析并建立电机的数学模型,分别得出在连续控制系统和离散控制系统中对应的传递函数;2.基于MATLAB软件对直流电机进行仿真,并通过PID控制器的参数整定对直流电机进行闭环控制,3.设计直流电机控制硬件电路,主要包括主控模块、电机驱动模块、编码器反馈模块、通信模块、电源模块、显示模块等。
4.对各模块进行单元调试,设计数字PID控制器,并基于A VR单片机编制程序,进行系统联调。
5.最终完成直流电机控制硬件平台的设计、搭建及软件调试,要求有速度设置、显示功能,速度控制误差在1%以内,具有与上位机通讯的接口,能通过上位机方便进行参数设置、速度控制等操作。
三、 实验步骤:1、建立电机的数学模型,得出控制统的传递函数;由直流电机得来的三个方程:n k dt di Li R s u E m m ++=)( i k T M m =f L m T dtdw J T T ++= 、 进行拉式变换得:)()()()(s n k s LSI s I R s U E m m ++=)(s I k T M m =f L m T s JS T T +Ω+=)(带入数据在进行z 变换得: 521039.19252.01394.0459.1)(-⨯+-+=z z z z G 2、.基于MATLAB 软件对直流电机进行仿真(1)连续系统阶跃响应程序为:>> num=[1]num =1>> den=[0.0000000542,0.00061,0.0468]den =0.0000 0.0006 0.0468>> G=tf(num,den)Transfer function:1----------------------------------5.42e-008 s^2 + 0.00061 s + 0.0468>> step(G)>> Gz=c2d(G,0.01,'zoh')Transfer function:11.43 z + 0.06868-----------------z^2 - 0.4618 zSampling time: 0.01>> step(Gz)阶跃响应曲线如图1所示:图1 阶跃响应曲线(2)离散系统的单位阶跃响应程序如下:>> num=[52.756.913];>> den=[1 -0.8009 0.0005123];>> sys=[num,den,0.001];>> dstep(num,den,100)离散系统的阶跃响应曲线如图2所示(T=1ms):图2 离散系统的阶跃响应曲线(3)PID参数整定1)设D(z)=错误!未找到引用源。
PID算法控制___实验报告开课实验室:2012 年 4 月日学院物电学院年级、专业、班09光信2班姓名成绩课程名称Dsp实验实验项目名称PID算法控制指导老师签名一、实验目的1.掌握利用ICETEK-VC5509-A板与ICETEK-CTR板上带速度反馈的直流电机 B 的连接和控制原理。
2.熟悉VC5509DSP 的通用IO端口和定时器的编程使用。
3.学习利用数字PID控制算法控制电机转速。
二、实验原理1.直流电机测速原理:直流电机B:在ICETEK-CTR 板上有一个带速度反馈的直流电机B,它的额定工作电压为+12V,额定转速为6500转,带有速度反馈线路,反馈信号为方波脉冲,其频率与转速成正比(电机转动一圈产生两个脉冲)。
电机闭环控制系统:如图在DSP系统板的控制下形成闭环速度控制系统,DSP发送的PWM波控制直流电机的转速,通过速度反馈,DSP 可实时读取当前速度值,利用DSP中运行的控制程序根据速度读数控制PWM 的脉宽,从而实现闭环调速控制。
2.数字PID控制器:将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,用这一控制量对被控对象进行控制,这样的控制器称PID控制器。
⑴模拟PID控制原理:模拟PID控制系统原理图如图所示。
该系统由模拟PID控制器和被控对象组成。
图中,r(t)瑞泰创新——ICETEK-VC5509-A评估板软件实验指导III-122是给定值,y(t)是系统的实际输出值,给定值与实际输出值构成控制偏差e(t)e(t)=r(t)-y(t)e(t)作为PID控制器的输入,u(t)作为PID控制器的输出和被控对象的输入比例环节的作用是对偏差瞬间做出快速反应。
偏差一旦产生,控制器立即产生控制作用,使控制量向减少偏差的方向变化。
控制作用的强弱取决于比例系数P K ,P K 越大,控制越强,但过大的P K 会导致系统震荡,破坏系统的稳定性。
积分环节的作用是把偏差的积累作为输出。
直流电机PID 闭环数字控制器设计姓名: 学院:实验内容:直流电机pid 闭环数字控制器设计 2015年 4月12日 实验地点: 实验目的:1.巩固闭环控制系统的基本概念。
2.了解闭环控制系统中反馈量的引入方法。
3.掌握PID 算法数字化的方法和编程及不同PID 算法的优缺点。
实验设备与软件: 1. labACT 实验台 2. MATLAB 软件 3. labACT 软件 实验原理: 1、PID 控制原理按偏差的比例、积分、微分控制(简称PID 控制)是过程控制中应用最广的一种控制规则。
由PID 控制规则构成的PID 调节器是一种线性调节器。
这种调节器将设定值U 与实际输出值Y 构成控制偏差(e=U —Y)的比例(P)、微分(D)、积分(I)的线性组合作为输出的控制量进行控制⎪⎪⎭⎫⎝⎛++=⎰dt t de T dt t e T t e K t u t)()(1)()(di p (1) 式中,()u t ——调节器的输出信号;()e t ——调节器的偏差信号;p K ——调节器的比例系数;T ——调节器的积分时间常数;T ——调节器的微分时间常数。
下面介绍比例、积分、微分各自的作用。
比例调节作用:按比例反应系统的偏差,一旦出现了偏差,比例调节立即产生调节作用用以减少偏差。
比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统不稳定。
积分调节作用:消除稳态误差。
有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一常值。
积分作用的强弱取决与积分时间常数Ti ,Ti 越小,积分作用就越强;反之,Ti 大则积分作用弱。
加入积分调节可使系统稳定性下降,动态响应变慢,即积分作用使响应滞后。
微分调节作用:微分作用反映系统偏差信号的变化率,能预见偏差变化的趋势,能产生超前的控制作用。
在偏差还没有形成之前,已被微分调节作用消除。
因此,可以改善系统的动态性能。
在微分时间选择合适情况下,可以减少超调,减少调节时间。
直流电机PID 控制实验一、 实验目的1、 学习数字控制器的模拟化设计方法;2、 学习数字PID 控制器的设计方法;3、 学习PWM 控制理论;4、 学习数字PID 控制器在DSP 上的实现方法。
二、 实验设备计算机,实验箱、DSP 仿真器、导线。
三、 基础理论PID 控制器(按闭环系统误差的比例、积分和微分进行控制的调节器)自30年代末期出现以来,在工业控制领域得到了很大的发展和广泛的应用。
它的结构简单,参数易于调整,在长期应用中已积累了丰富的经验。
特别是在工业过程控制中,由于被控制对象的精确的数学模型难以建立,系统的参数经常发生变化,运用控制理论分析综合不仅要耗费很大代价,而且难以得到预期的控制效果。
在应用计算机实现控制的系统中,PID 很容易通过编制计算机语言实现。
由于软件系统的灵活性,PID 算法可以得到修正和完善,从而使数字PID 具有很大的灵活性和适用性。
实现PID 控制的计算机控制系统如图1所示,其中数字PID 控制器是由软件编程在计算机内部实现的。
图1 模拟PID 控制 1、PID 控制规律的离散化PID 控制器是一种线性调节器,这种调节器是将系统的给定值r 与实际输出值y 构成的控制偏差y r c -=的比例(P )、积分(I )、微分(D ),通过线性组合构成控制量,所以简称PID 控制器。
连续控制系统中的模拟PID 控制规律为: ])()(1)([)(0dtt de T dt t e T t e K t u DtIp ++=⎰ (式1) 式中)(t u 是控制器的输出,)(t e 是系统给定量与输出量的偏差,P K 是比例系数,I T 是积分时间常数,D T 是微分时间常数。
其相应传递函数为:pK sT K I p sT K D p 对象r eyu+++-+)11()(s T sT K s G D I p ++= (式2) 比例调节器、积分调节器和微分调节器的作用:(1)比例调节器:比例调节器对偏差是即时反应的,偏差一旦出现,调节器立即产生控制作用,使输出量朝着减小偏差的方向变化,控制作用的强弱取决于比例系数。
基于PID的直流电机速度控制系统设计实验报告班级:姓名:学号:指导老师:张友旺中南大学机电工程学院基于PID的直流电机速度控制系统设计实验报告一、实验目的1.熟练并掌握89C51、ADC0809等芯片的原理、硬件以及接线;2.熟练89C51单片机的指令系统,完全掌握中断,子程序,查表程序等特殊语句的应用;3.学习并掌握浮点数的原理及应用;4.回顾《机械工程控制基础》的学习内容并掌握PID控制器的原理及用法;5.锻炼自己发现并解决问题的能力,同时将课本知识应用于实践以得到更好的理解。
二、实验原理1.闭环控制/开环控制对直流电机转速的控制有一般有两种方式,一种是开环控制,一种是闭环控制。
开环控制的优点是简单、稳定、可靠。
若组成系统的元件特性和参数值比较稳定,且外界干扰较小,开环控制能够保持一定的精度。
缺点是精度通常较低,无自动纠偏能力;闭环控制的优点是控制的精度可以达到很高,而且对外界的干扰和系统的参数变化有很好的抑制作用,且可以通过输出反馈控制系统的控制过程。
缺点是存在稳定性,振荡,超调等一系列问题,对系统的性能分析和设计远比开环控制麻烦。
经过利弊的取舍,本次试验选择的是闭环控制,因为准备应用PID算法控制电机的转速,故而需要有实际转速进行反馈与给定的转速形成对比,进而通过算法输出PWM波形来控制直流电机。
2. 调速方式本实验采用脉冲宽度(PWM)调速,PWM调速具有以下几种优点:(1)系统的响应速度以及稳定精度好;(2)电流的脉动量小,容易连续,运行平稳;(3)调速范围宽,抗噪性好;(4) 元件使用数少,线路简单。
PWM 的实现方式:将电机电压的通断转换为周期控制,用两个定时器T0,T1分别控制周期的时间和电压通的时间,从而调节电机的平均电压,以达到对电机电压大小的控制。
3.测速方式测速的传感器用的是光电编码器,它的原理是电动机的转动带动码盘的转动,码盘上有很多缝隙,缝隙每经过红外管一次就会产生一个脉冲,进而通过专门的芯片得到转动的频率。
( 实验报告)姓名:____________________单位:____________________日期:____________________编号:YB-BH-054024PID控制电机实验报告Experiment report of PID control motorPID控制电机实验报告摘要以电机控制平台为对象,利用51单片机和变频器,控制电机精确的定位和正反转运动,克服了常见的因高速而丢步和堵转的现象。
电机实现闭环控制的基本方法是将电机工作于启动停止区,通过改变参考脉冲的频率来调节电机的运行速度和电机的闭环控制系统由速度环和位置环构成。
通过PID调节实现稳态精度和动态性能较好的闭环系统。
关键词:变频器PID调节闭环控制一、实验目的和任务通过这次课程设计,目的在于掌握如何用DSP控制变频器,再通过变频器控制异步电动机实现速度的闭环控制。
为实现闭环控制,我们需完成相应的任务:1、通过变频器控制电机的五段调速。
2、通过示波器输出电机速度变化的梯形运行图与s形运行图。
3、通过单片机实现电机转速的开环控制。
4、通过单片机实现电机的闭环控制。
二、实验设备介绍装有ccs4.2软件的个人计算机,含有ADC模块的51单片机开发板一套,变频器一个,导线若干条。
三、硬件电路1.变频器的简介变频器(Variable-frequency Drive,VFD)是应用变频技术与微电子技术,通过改变电机工作电源频率方式来控制交流电动机的电力控制设备。
变频器主要由整流(交流变直流)、滤波、逆变(直流变交流)、制动单元、驱动单元、等组成。
变频器靠内部IGBT的开断来调整输出电源的电压和频率,变频器还有很多的保护功能。
随着工业自动化程度的不断提高,变频器也得到了非常广泛的应用。
2.变频器的使用变频器事物图变频器原理图可以在这输入你的名字You Can Enter Your Name Here.。
DBUF0 EQU 30H ;显示第一位的缓冲地址,设为30H~37HTEMP EQU 38H ;A/D转换暂存地址,设为38H-3FHPWMH EQU 4AH ;T1定时器高八位装载值PWML EQU 4BH ;T1定时器低八位装载值PWMF EQU 4CH ;T1定时器装载值浮点数WF EQU 46H ;期望频率地址EK0 EQU 59H ;E(K)地址EK1 EQU 56H ;E(K-1)地址EK2 EQU 53H ;E(K-2)地址UK1 EQU 5CH ;U(K-1)地址UK EQU 5FH ;U(K)地址A0 EQU 62H ;A0地址A1 EQU 65H ;A1地址A2 EQU 68H ;A2地址ZC EQU 6BH ;PID运算暂存地址ORG 0000HLJMP MAINORG 000BHAJMP INT0_PORG 001BHAJMP INT1_PORG 0030HMAIN: ;PWM调速主程序MOV TMOD,#11HMOV TH0,#0FCHMOV TL0,#18HMOV TH1,#0MOV TL0,#0MOV PWMH,#0FDHMOV PWML,#29HMOV 70H,#10MOV 71H,#200SETB TR0SETB TR1SETB EASETB ET0SETB ET1JC2: JNB 00H,JC1CLR 00HLCALL A_DLCALL READLCALL PIDLCALL U_PWMJC1: JNB 01H,JC2CLR 01HLCALL DISP1SJMP JC2INT0_P: MOV TH0,#0FCH ;PWM T0中断MOV TL0,#18HMOV TH1,PWMHMOV TL1,PWMLDJNZ 70H,NZW1SETB 00HMOV 70H,#10NZW1: DJNZ 71H,NZW2SETB 01HMOV 71H,#200NZW2: SETB P1.0SETB P1.2SETB TR1NOPRETIINT1_P: CLR P1.0 ;PWM T1中断CLR P1.2CLR TR1NOPRETI;===================================================================== =============;AD转换主程序;===================================================================== =============A_D: MOV 35H,#11H ;灭不需要的显示位MOV 36H,#11HMOV 37H,#11HMOV R0,#DBUF0MOV @R0,#0AH ;数码管第一位显示:AINC R0MOV @R0,#0DH ;数码管第二位显示:DINC R0MOV @R0,#11H ;数码管第三位不显示INC R0 ;R0=33HMOV DPTR,#0FEF0H ;A/D 置通道IN0地址MOV A,#0 ;设置通道0MOVX @DPTR,AWAIT: JB P3.3,W AIT ;等待转换完成的信号MOVX A,@DPTR ; A/D转换的数字量读入至AMOV 51H,A ;将A/D转换结果放置41H,做双字节定点数MOV B,A ;将A中数值暂存BSWAP A ;交换A的高四位与低四位ANL A,#0FH ;保留交换后的低四位,实际上是高4位XCH A,@R0 ;交换A与33H中的数据,数码管第四位显示为A/D转换的数字量的高四位INC R0 ;R0=34HMOV A,B ;将B中暂存的数字量还回AANL A,#0FH ;保留数字量的低四位XCH A,@R0 ;将保留后的数字量还回34H,数码管第五位显示为A/D转换的数字量的低四位;ACALL DISP1 ;调用显示程序;ACALL DELAY ;调用延时程序,延时260msRETDISP1: ;显示子程序MOV R0,#DBUF0MOV R1,#TEMPMOV R2,#8DP10: MOV DPTR,#SEGTABMOV A,@R0MOVC A,@A+DPTR ;查表程序,查SEGTABMOV @R1,A ;暂存查表结果至40H~47H地址单元中INC R0INC R1DJNZ R2,DP10MOV R0,#TEMPMOV R1,#8DP12: MOV R2,#8MOV A,@R0DP13: RLC AMOV 0B0H,CCLR 0B1HSETB 0B1HDJNZ R2,DP13INC R0DJNZ R1,DP12RETSEGTAB: DB 3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5DB 7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,BDB 58H,5EH,79H,71H,0,00H ;C,D,E,F,-DELAY: MOV R4,#0FFH ;延时程序,延时260msAA1: MOV R5,#0FFHAA: NOPNOPDJNZ R5,AADJNZ R4,AA1RET;===================================================================== ===;读取AD转换值子程序;===================================================================== ===READ: MOV 50H,#00H ;AD转换结果浮点化,放置到52H-54H中MOV R0,#50HMOV A,#16 ;为16位整数CLR 1FH ;1FH中存放定点数符号位,暂定为正LCALL DTOFMOV R0,#43H ;AD转换最大值放置到43H-45H,并将其浮点化MOV @R0,#00HINC R0MOV @R0,#0F7H ;最大值为0FA,根据八段数码管显示值为准MOV R0,#43HMOV A,#16CLR 1FHLCALL DTOFMOV R0,#40H ;最大转速对应频率放置到40H-43H,并将其浮点化MOV @R0,#01HINC R0MOV @R0,#0EAH ;最大频率为400(0190H),根据实际显示为准MOV R0,#40HMOV A,#16CLR 1FHLCALL DTOFMOV R0,#46H ;输入预期频率至46H-48H,并将其浮点化MOV @R0,#00HINC R0MOV @R0,#32HMOV R0,#46HMOV A,#16CLR 1FHLCALL DTOFMOV R0,#40H ;指向最大频率地址MOV R1,#43H ;求解实际频率,用浮点数表示,放置到40H-42HLCALL FDIV ;最大频率除以最大AD转换值,结果存在[R0]MOV R1,#50H ;指向AD转换结果地址LCALL FMUL ;结果再乘实际AD转换值,实际频率存在40H-42H RET;===================================================================== ==========;PID运算子程序;===================================================================== ==========PID: MOV R1,#46H ;将期望频率从46H-48H转至EK0MOV R0,#EK0LCALL FMOVMOV R0,#EK0 ;指向期望频率地址MOV R1,#40H ;指向实际频率地址LCALL FSUB ;求差,得偏差e(k),偏差地址暂存在EK0中MOV R0,#A0 ;初始化A0,设A0为浮点BCD码输入,将其转换为格式化浮点数做计算用MOV A0,#7FH ;假设初值为000000HINC R0MOV @R0,#10HINC R0MOV @R0,#34HMOV R0,#A0LCALL BTOF ;将A0转化为浮点数做计算用MOV R0,#A1 ;初始化A1,设A1为浮点BCD码输入,将其转换为格式化浮点数做计算用MOV A1,#7FH ;假设初值为000000HINC R0MOV @R0,#10HINC R0MOV @R0,#00HMOV R0,#A1LCALL BTOF ;将A1转化为浮点数做计算用MOV R0,#A2 ;初始化A2,设A2为浮点BCD码输入,将其转换为格式化浮点数做计算用MOV A2,#00 ;假设初值为000000HINC R0MOV @R0,#00INC R0MOV @R0,#00MOV R0,#A2LCALL BTOF ;将A2转化为浮点数做计算用MOV R1,#EK2 ;将EK2值调到PID运算暂存地址中做运算MOV R0,#ZCLCALL FMOVMOV R1,#A2LCALL FMUL ;ZC=A2*EK2MOV R1,#ZCMOV R0,#UKLCALL FMOV ;将ZC=A2*EK2值暂时赋给UKMOV R1,#EK1 ;将EK1值调到PID运算暂存地址中做运算MOV R0,#ZCLCALL FMOVMOV R1,#A1LCALL FMUL ;ZC=A1*EK1MOV R0,#UKMOV R1,#ZCLCALL FSUB ;UK=-A1*EK1+A2*EK2MOV R1,#EK0 ;将EK1值调到PID运算暂存地址中做运算MOV R0,#ZCLCALL FMOVMOV R1,#A0LCALL FMUL ;ZC=A0*EK0MOV R0,#UKMOV R1,#ZCLCALL FADD ;UK=A0*EK0-A1*EK1+A2*EK2MOV R0,#UKMOV R1,#UK1LCALL FADD ;UK=UK1+A0*EK0-A1*EK1+A2*EK2MOV R1,#UKMOV R0,#UK1LCALL FMOV ;将UK值赋给UK1MOV R0,#UK ;对UK做处理,如UK>5,则UK=5MOV R1,#ZCMOV @R1,#03H ;将5(030A00H)赋给地址ZC,做比较INC R1MOV @R1,#0A0HINC R1MOV @R1,#00HMOV R1,#ZCLCALL FCMPJNC UK_5 ;C=0,表示UK>5,将5赋给UKSJMP GO5 ;否则跳过赋值语句UK_5: LCALL FMOVGO5: CLR CMOV R0,#UK ;对UK做处理,如UK<0,则UK=0MOV R1,#ZCMOV @R1,#00H ;将0(000000H)赋给地址ZC,做比较INC R1MOV @R1,#000HINC R1MOV @R1,#00HMOV R1,#ZCLCALL FCMPJC UK_0 ;C=1,表示UK<0,将0赋给UKSJMP GO0 ;否则跳过赋值语句UK_0: LCALL FMOVGO0: CLR CMOV R1,#EK1MOV R0,#EK2LCALL FMOV ;将EK1值赋给EK2MOV R1,#EK0MOV R0,#EK1LCALL FMOV ;将EK0值赋给EK1RET;===================================================================== =====;输出电压转换为定时器T1装载值子程序;===================================================================== =====U_PWM: ;输出电压值转换成定时器T1的初值MOV R0,#PWMF ;定时器区间长度放在#PWMF中并将其浮点化MOV @R0,#03H ;0FFFFH-0FC29H=03D6HINC R0MOV @R0,#0D6HINC R0MOV @R0,#00HMOV R0,#PWMFMOV A,#16CLR 1FHLCALL DTOF ;转成浮点数MOV R1,#ZC ;电压最大值5V放到ZC中MOV @R1,#03H ;将5(030A00H)赋给地址ZC,做比较INC R1MOV @R1,#0A0HINC R1MOV @R1,#00HMOV R1,#ZCMOV R0,#PWMFLCALL FDIV ;03D6H/5V 结果放在PWMF中MOV R1,#UK ;将UK值挪到PWMF中经行运算MOV R0,#PWMFLCALL FMUL ;UK*03D6H/5V 结果放在PWMF中MOV R0,#ZC ;0FFFFH转成浮点数,暂存在ZC中,做被减数用MOV @R0,#0FFH ;INC R0MOV @R0,#0FFHINC R0MOV @R0,#00HMOV R0,#ZCMOV A,#16CLR 1FHLCALL DTOF ;转成浮点数MOV R0,#ZC ;0FFFFH-UK*03D6H/5V,得到T1定时器初始值浮点数结果MOV R1,#PWMFLCALL FSUB ;结果在ZC中MOV R0,#ZC ;结果取整LCALL FINTMOV R1,#ZC ;将结果转移至PWMFMOV R0,#PWMFLCALL FMOVMOV R0,#ZCLCALL FTOD ;浮点数转双字节定点数,结果存在ZC中MOV R0,#ZC ;将转换后的双字节定点数放到PWMH 和PWML中做定时器T1装载初值MOV R1,#PWMHMOV A,@R0MOV @R1,AINC R0MOV R1,#PWMLMOV A,@R0MOV @R1,ARET;================================================================;================================================================;浮点数运算子程序库;================================================================ DTOF: ;双字节定点数转规格化浮点数MOV R2,A ;按整数的位数初始化阶码MOV A,@R0 ;将定点数做尾数MOV R3,AINC R0MOV A,@R0MOV R4,ADEC R0LCALL RLN ;经行规格化LJMP MOV0 ;传送结果到[R0]RETFMOV: INC R0 ;浮点数传送,从[R1]传到[R0]INC R0INC R1INC R1MOV A,@R1MOV@R0,ADEC R0DEC R1MOV A,@R1MOV@R0,ADEC R0DEC R1MOV A,@R1MOV@R0,ARETFADD: CLR F0;设立加法标志程序功能:浮点加法运算SJMP AS;计算代数和FSUB: SETB F0;设立减法标志程序功能:浮点数减法运算AS: LCALL MVR1;计算代数和。