1、 计算机检测与控制技术X课程设计报告 题 目: 基于PID控制的直流电机PWM调速系统 姓 名: 班 级:学 号: 2017年7月4日 基于PID控制的直流电机PWM调速系统 本论文是以51系列单片机为控制核心,系统产生占空比由数字PID算法控制的PWM脉冲信号实现对直流电机的供电电源进行控制从而达到调速目的。同时利用光电编码器将电机转速转换成脉冲信号反馈到单片机中,形成转速闭环控制系统,实现转速无静差的调速系统设计。人机界面采用12864LCD显示器显示电机当前的参数、正反转状态、转速以及运行时间;通过44键盘实现;数字PID参数设置、速度、电机正反转、加速、减速、启动、停止。 关键字 数字
2、PID无静差调节PWM脉冲 DC motor PWM speed control system based on PID ABSTRACT This thesis design is 51 series microcontroller as control corethe system produces PWM impulse whose duty ratio is controlled by digital PID arithmetic to control the power of DC motor,to make sure the running of DC motors rotate
3、speed. At the same time the design uses photoelectric sensor to transduce the electromotor speed into impulse frequency and feed it back to microcontroller as speed closed loop control system to attain the purpose of rotate speeds astatic modulation.In this system , 12864LCDdisplay shows the current
4、 parameters of the motor、the direction of rotation、speed and Running time. Through the 44 keyboard realized: digital PID parameters settings、the direction of rotation settings、speed setting、start and stop. KEY WORDS digital PID; astatic modulation; PWM impulse 目录第一章绪论41.1 、PID简介41.2、反馈回路基础61.3、理论7第2
5、章 设计原理7第三章 调速系统总体设计103.1、系统总体设计说明103.2、系统总体设计框图103.3、电机驱动电路设计113.3.1、驱动电路原理介绍113.4、电机转速采集电路设计123.4.1、速度采集的原理及方法12第四章调速系统数字部分的设计与原理134.1、PID 控制器134.1.1、PID 控制的原理与方法134.1.2、数字 PID 算法的实现164.2、数字测速模块174.2.1、数字测速模块的设计思想与算法174.3 PWM调速方法设计184.3.1 对PWM控制的介绍184.3.2 PWM脉冲的产生214.4.3相关程序23结束语29参考文献30 第一章 绪论 1.1
6、 、PID简介 PID(比例、积分、微分)是一个数学物理术语。PID控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。PID控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。PID控制器参数的工程整定方法,主要有临界比例法、反应 曲线法和衰减法。三种方法各有其特点,其共同点都
7、是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需要在实际运行中进行最后调整与完善。现在一般采用的是临界比例法。利用该方法进行PID控制器参数的整定步骤如下:(1)首先预选择一个足够短的采样周期让系统工作;(2)仅加入比例控制环节,直到系统对输入的阶跃响应出现临界振荡,记下这时的比例放大系数和临界振荡周期;(3)在一定的控制度下通过公式计算得到PID控制器的参数。 PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的
8、其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、 积分、微分计算出控制量进行控制的。 PID(比例-积分-微分)控制器作为最早实用化的控制器已有50多年历史,现在仍是应用最广泛的工业控制器。PID控制器简单易懂,使用中不需精确的系统模型等先决条件,因而成为应用最为广泛的控制器。 PID控制器由比例单元(P)、积分单元(I)和微分单元(D)组成。其输入e (t
9、)与输出u (t)的关系为 u(t)=kp(e(t)+1/TIe(t)dt+TD*de(t)/dt) 式中积分的上下限分别是0和t 因此它的传递函数为:G(s)=U(s)/E(s)=kp(1+1/(TI*s)+TD*s)其中kp为比例系数; TI为积分时间常数; TD为微分时间常数。 P I 被控对象 r(t) + Error output D 图1、 PID控制器方框图 PID 控制器是一个在工业控制应用中常见的反馈回路部件。这个控制器把收集到的数据和一个参考值进行比较,然后把这个差别用于计算新的输入值,这个新的输入值的目的是可以让系统的数据达到或者保持在参考值。和其他简单的控制运算不同,P
10、ID控制器可以根据历史数据和差别的出现率来调整输入值,这样可以使系统更加准确,更加稳定。可以通过数学的方法证明,在其他控制方法导致系统有稳定误差或过程反复的情况下,一个PID反馈回路却可以保持系统的稳定。 1.2、反馈回路基础 PID回路是要自动实现一个有量具和控制旋钮的操作人员的工作。这个操作人员会用量具测系统输出的结果,然后用控制旋钮来调整这个系统的输入,直到系统的输出在量具上显示稳定的需求的结果。在旧的控制文档里,这个过程叫做“复位”行为。量具被成为“测量”。需要的结果被成为“定值”。定值和测量之间的差别被成为“误差”。 一个控制回路包括三个部分:(1)系统的传感器得到的测量结果;(2)
11、控制器作出决定;(3)通过一个输出设备作出反应。控制器从传感器得到测量结果,然后用需求结果减去测量结果来得到误差。然后用误差来计算出一个对系统的纠正值来作为输入结果,这样系统就可以从它的输出结果中消除误差。在一个PID回路中,这个纠正值有三种算法,消除目前的误差,平均过去的误差,和透过误差的改变来预测将来的误差。比如说,假如一个水箱在为一个植物提供水,这个水箱的水需要保持在一定的高度。一个传感器就会用来检查水箱里水的高度,这样就得到了测量结果。控制器会有一个固定的用户输入值来表示水箱需要的水面高度,假设这个值是保持65的水量。控制器的输出设备会连在一个马达控制的水阀门上。打开阀门就会给水箱注水
12、,关上阀门就会让水箱里的水量下降。这个阀门的控制信号就是我们控制的变量,它也是这个系统的输入来保持这个水箱水量的固定。PID控制器可以用来控制任何可以被测量的并且可以被控制变量。比如,它可以用来控制温度,压强,流量,化学成分,速度等等。汽车上的巡航定速功能就是一个例子。一些控制系统把数个PID控制器串联起来,或是链成网络。这样的话,一个主控制器可能会为其他控制输出结果。一个常见的例子是马达的控制。我们会常常需要马达有一个控制的速度并且停在一个确定的位置。这样呢,一个子控制器来管理速度,但是这个子控制器的速度是由控制马达位置的主控制器来管理的。连合和串联控制在化学过程控制系统中是很常见的。 1.
13、3、理论 PID是以它的三种纠正算法而命名的。这三种算法都是用加法调整被控制的数值。而实际上这些加法运算大部分变成了减法运算因为被加数总是负值。这三种算法是: (1)比例- 来控制当前,误差值和一个负常数P(表示比例)相乘,然后和预定的值相加。P只是在控制器的输出和系统的误差成比例的时候成立。比如说,一个电热器的控制器的比例尺范围是10C,它的预定值是20C。那么它在10C的时候会输出100%,在15C的时候会输出50%,在19C的时候输出10,注意在误差是0的时候,控制器的输出也是0。(2)积分- 来控制过去,误差值是过去一段时间的误差和,然后乘以一个负常数I,然后和预定值相加。I从过去的平
14、均误差值来找到系统的输出结果和预定值的平均误差。一个简单的例系统会振荡,会在预定值的附近来回变化,因为系统无法消除多余的纠正。通过加上一个负的平均误差比例值,平均的系统误差值就会总是减少。所以,最终这个PID回路系统会在预定值定下来。(3)微分- 来控制将来,计算误差的一阶导,并和一个负常数D相乘,最后和预定值相加。这个导数的控制会对系统的改变作出反应。导数的结果越大,那么控制系统就对输出结果作出更快速的反应。这个D参数也是PID被成为可预测的控制器的原因。D参数对减少控制器短期的改变很有帮助。一些实际中的速度缓慢的系统可以不需要D参数。 用更专业的话来讲,一个PID控制器可以被称作一个在频域
15、系统的滤波器。这一点在计算它是否会最终达到稳定结果时很有用。如果数值挑选不当,控制系统的输入值会反复振荡,这导致系统可能永远无法达到预设值。 第2章 设计原理基本的设计核心是运用PID调节器,从而实现直流电机的在带动负载的情况下也能稳定的运行。运用A/D转换芯片将滑动变阻器的模拟电压转换为数字量作为控制直流电机速度的给定值;用压控振荡器模拟直流电机的运行(电压高-转速高-脉冲多),单片机在单位时间内对脉冲计数作为电机速度的检测值;应用数字PID模型作单片机控制编程,其中P、I、D参数可按键输入并用LCD液晶显示;单片机PWM调宽输出作为输出值,开关驱动、电子滤波控制模拟电机(压控振荡器)实现对
16、直流电机的PID调压调速功能。 基于以上的核心思想,我们把这次设计看成五个环节组成,其具体的原理如下 ,见原理图 压频转换器 驱动 电路 单片机u(t) y(t) 调节器 检测装置 图2、 PID调速设计原理框图 如图可以知道,这是一个闭环系统,我们借助单片机来控制,我们现运用AD芯片,运用单片机来控制AD芯片来转换模拟电压到数字电压,AD给定的电压越大,则产生的数字量越大,单片机再控制这个数字量来产生一个PWM,PWM占空比越大,就驱动晶体管导通的时间越长,这样加到压频转换器的电压也就越大,电压越大,则压频转换器输出的计数脉冲再单位时间也就越多,这样就相当于电机的电压越大,其转速也就会越快,
17、我们再用单片机对压频转换器的输出脉冲计数,PID调节器就把这个计数脉冲和预先设定的值进行比较,比设定值小,这样就会得到一个偏差,再把这个偏差加到AD的给定电压,这样就相当于加大了PWM的占空比,要是比设定值大,这样也会得到一个偏差,就把这个变差与给定的电压相减,这样就可以减少PWM的占空比,通过改变占空比来改变晶体管的导通时间,就可以改变压频转换器的输入电压,也就改变压频转换器的单位计数脉冲,达到调电动机速度的目的。 随着生产需求的日新月异,我们对控制系统的要求也越来越高。而对生产而言,电机调速是人们一直在研究的课题。直到目前为止,电机调速方法十分多样、普遍。其中对直流电机转速的控制方法可分为
18、两类:励磁控制与电枢电压控制。励磁控制调速法是通过控制磁通,从而控制电机转速。这类方法,控制功率小、转速较低时、收到磁饱和的限制;当转速较高时,收到换向火花和换向器结构强度的限制;而且,由于励磁线圈存在较大电感,导致了系统动态响应较差。所以,此法应用较少。电枢电压控制方式也可分为两种:一为调节电压,二为调节电流。过去传统的调速系统是采用模拟电子电路来实现其功能,这种电路优势在于响应快,但是灵活性较差,难易维修。然而单片机作为一种可编程控制器,已经得到成熟的应用。而且基于单片机的直流电机调速系统已经得到广泛的关注,且已有多样的成果。单片机具有性能高、体积小、速度快、稳定可靠、经济、应用广泛、高通
19、用性等优点。 随着单片机性能的日益提高与完善,与此同时,电子电力器件及驱动技术也更加成熟,在前者的基础上,伴随着PWM控制技术及电机控制技术的发展,PWM技术在电机驱动控制中的应用逐渐受到人们更多的关注。由于PWM控制技术的控制简单、灵活和较好的动态响应等优点,而成为电力电子技术最广泛应用的控制方式。 PWM控制的基本思想很早就已被提出,但受制于电力电子器件的发展水平,在上世纪80年代之前一直未能得到实现。直到迈进上世纪80年代,随着全控型电力电子器件的出现和迅猛发展,PWM控制技术终于得到了真正的实现与应用。随着电力电子技术、自动控制技术以及微电子技术的发展以及各种新的控制理论方法的提出,如
20、现代控制理论、非线性系统控制思想等。PWM控制技术获得了空前发展。到目前为止,已经出现了多种PWM控制技术。在如此多样的PWM控制技术中SPWM控制技术是其中最为成熟的控制方法,而本文也将采用此种控制方法。 在运动控制系统中,电机的转速控制是一个至关重要的领域。它的控制手段、算法和方法很多样,作为最早发展起来的控制策略,模拟PID控制长期以来形成了典型的结构,并且在参数整定较方便,能够满足一般控制的要求。但其缺点是一旦参数整定完毕后,在整个控制过程中将无法改变,然而在实际应用中,由于现场的系统参数、环境温度、湿度等客观条件都会发生变化,这样就使得控制系统难易达到最佳的控制效果。随着计算机技术和
21、终能控制理论的逐步发展,以软件实现的数字PID控制技术逐渐发展起来。数字PID控制技术不但能完成模拟PID的控制任务,而且控制算法灵活、可靠性高所以应用面越来越广。 本设计是以51系列单片机为控制核心,产生占空比由数字PID算法控制的PWM脉冲信号实现对直流电机转速的控制。同时利用光电编码器将电机转速转换成脉冲信号反馈到单片机中,形成转速闭环控制系统,以达到转速无静差调节。人机界面采用12864LCD显示器显示电机当前的参数、正反转状态、转速以及运行时间,通过44键盘实现:数字PID参数设置、电机正反转、加速、减速、启动、停止。 第三章 调速系统总体设计 3.1、系统总体设计说明 本文设计了一
22、个直流电机的调速控制系统,以单片机为控制核心产生PWM信号对直流电机的供电电源进行控制从而达到调速目的。采用闭环结构实现转速无静差,以软件方式实现数字PID,系统可以实现可逆调速,应具备必要的人机界面可对电机转速进行设置,并可以手动调整控制器的PID参数,具备堵转保护等必要的保护手段。 其中总体设计中设计如下模块:PWM产生及控制、功率放大及驱动电路、电机测速、闭环速度反馈电路、PID控制器、速度显示、键盘控制、保护性电路。 3.2、系统总体设计框图 图3、 调速系统总体设计框图3.3、电机驱动电路设计 3.3.1、驱动电路原理介绍 在直流电机驱动方面,普遍应用H桥电路来实现对直流电机的调速,
23、如图4 图4、H桥驱动电路由图可知,H桥驱动电路由4个三极管与电机组成,其形状与字母H相似,所以被称为“H桥驱动电路”。若想要让电机运行,需要导通对角的两个三极管,Q1与Q4或Q2与Q3。 当Q1与Q4导通时,如图5, 图5、电机顺时针运行 电流从从电源正极流出后,从Q1由左向右流过电机,再从Q4流出回来电源的负极。此时,电流以从左往右的方向流过电机,从而使电机按顺时针方向运转。 当Q2与Q3导通时,如图6, 图6、电机逆时针运行电流从电源正极流出后,从Q3由右向左流过电机,再从Q2流出回来电源的负极。此时,电流以从右往左的方向流过电机,从而使电机按逆时针方向运转。3.4、电机转速采集电路设计
24、3.4.1、速度采集的原理及方法 本调速系统中由于要将电机当前采样的速度与上次采样的速度进行比较,计算出偏差,然后进行PID运算,因此速度采集电路在整个系统中是不可缺少的。 目前在速度采集技术上主要有以下三种方法:方法一:霍尔集成片。这是由三片霍尔金属板组成的器件,当磁铁正面朝向金属板时,便产生霍尔效应,金属板会产生横向导通的现象。因此,我们只要把磁片安装在电机上,并将霍尔集成片安装在固定轴上,这样便可以将电机的速度以脉冲的形式检测出来。方法二:测速发电机。将测速发电机与直流电机的转轴相连,当直流电机运转时,带动测速发电机一起转动,此时测速发电机会产生大小取决于电机转速的感应电动势。方法三:光
25、电编码器。这是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。其工作原理将在下文详述。 将上诉三种方法进行比较,由于高性能的霍尔元件较难购置,且成本较高,所以不采用方法一。测速发电机虽然采样精度较高,但是其实际的安装电路较复杂,而且成本也是三者中最高的,所以也不予采用。因此,本课题将采用方法三光电编码器来作为电机转速采集模块的传感器。光电编码器由光栅盘和光电检测装置组成。光栅盘是在一个一定直径的圆板上等分地裁剪出若干个长方形孔如图7(a)所示。光电码盘与电机同轴,当电机运转时,光栅盘与电机一起转动,经发光二极管等电子器件组成的检测装置检测的脉冲信号。再通过计算一个周期内光
26、电编码器输出的脉冲数,从而得到当前电机的转速如图7(b)所示。而且,编码盘还可提供相位相差/ 2 的两路脉冲信号来判断旋转方向。 (a) (b) 图7 光电编码器原理图 第四章 调速系统数字部分的设计与原理4.1、PID 控制器4.1.1、PID 控制的原理与方法 对于一个控制系统,通常要求其具有快速性、稳定性的品质和性能指标,为了提高调速系统对直流电机在速度运行的上述要求,将采用转速闭环系统来对本直流电机调速进行优化,并采用数字PID控制器来实现电机的无静差运行。 速度闭环控制结构可以对直流电机的调速范围以及调速的精度进行提高。在原来开环形的驱动器的基础上,加上速度闭环,这样就形成了直流电机
27、的速度闭环控制系统。在本直流电机速度闭环调速系统中,速度控制器的输出信号,作为脉宽调制器的控制信号,经过传感器处理后,形成速度反馈信号,反馈信号直接送到电子数字计算机直接数字控制系统中去。我们采用的PID控制器是通过计算机基于PID控制算法通过软件程序实现的。我们需要通过数值逼近的方法来PID控制规律的实现。当采样周期相当短时,通过求和代替积分,以及差分代替微分,使PID算法离散化,将描述连续-时间PID算法的微分方程,转化成描述离散-时间PID算法的差分方程。PID控制器的原理框图如图8所示 图8 PID 控制器的原理框图PID控制公式: 式(1)中: 为比例项,为比例放大系数;为积分项,
28、为积分放大系数;为微分项,为微分放大系数。 比例控制的作用是对于当前的偏差信号e(t)进行放大或者衰减后作为输出的控制信号。系数Kp越大,控制左右也越强,系统的动态特性也越强,即表现为起动快,对阶跃设定跟随得快。但对于存在惯性环节的系统,Kp过大时会出现较大的超调量,甚至会导致系统震荡,影响系统的稳定性。比例控制能够减小偏差,但是不能消除静态偏差。 图9、比例(P)控制阶跃响应 积分控制的作用是将系统从零开始到当前的偏差信号进行积累。积分控制的输出与偏差信号e(t)存在的时段有关,只要时间足够,积分控制将静态偏差消除。其缺点是积分控制不能及时克服扰动的影响。 图10、积分(I)和比例积分(PI
29、)控制阶跃响应 微分控制的作用是根据偏差信号e(t)当前的变化率de/dt来判断随后的偏差时增大还是减少,以及增大或减少的幅度。微分控制作用正比于偏差信号e(t)的变化率,其特点是只对偏差e(t)变化的速度起反应,对于固定不变的偏差,不会产生微分作用输出。因为只在偏差刚出现时产生很大的控制作用,所以微分控制可以加快系统的响应速度,减少调整时间,从而达到提高系统快速性的作用,而且还有助于减小超调,克服震荡,达到提高系统稳定性的作用,但是微分控制不能消除静态偏差。值得注意的是,微分控制不能独立存在,一般情况下,都要配合比例控制存在,实现PD控制。 图11、微分(D)和比例积分(PD)控制阶跃响应上
30、述对 P、I、D 控制各项的阐述可由表1可进行直观的对比增益常数(系数) 上升时间 过冲 建立时间 稳态误差 Kp 减小 增大 很小变化 减小 K1 减少 增大 增加 消除 Kd 很小变化 减小 减少 很小变化 表1、 积分(I)和比例积分(PI)控制阶跃响应4.1.2、数字 PID 算法的实现 在单片机的应用中,可选用的控制方法其实很多,但最常用的还是数字PID算法。通过最优控制理论可以证明,PID控制能够满足非常多工业控制对象的控制要求。PID算法也存在多种算法,如位置式PID算法、增量式PID算法等。本课题的直流电机调速系统采用的核心算法是增量式PID算法,它是根据本次采样的数据与设定值
31、进行比较,求出误差e(t),然后通过 P、I、D 运算,一步步逼近设定值,最终输出运算结果来控制PWM脉冲的占空比来调节直流电机两端的电压值,从而达到控制点自己转速的作用。增量式PID算法公式为: 数字增量式PID程序的流程如图12所示 计算 e(n) 计算 U(n) 返回E 计算 计算 Ki e(n)()计算 计算Kp(e(n)e(n-1)计算Kd(e(n)-2e(n-1)+e(n-2) 图12、数字增量式PID程序流程4.2、数字测速模块4.2.1、数字测速模块的设计思想与算法 单片机接收从光电编码器的脉冲,然后进行数字运算,计算出当前电机转速,最后将转速值传送给LCD显示与PID控制模块
32、。如图13所示 光电编码器 LCD单片机光耦合器 光电编码 PID 图13、 数字测速模块设计思想 利用单片机的外部中断来记录脉冲数。每当编码器旋转一周记为一个脉冲,由脉冲触发外部中断,累计外部中断的次数,除以编码盘上的总开口数,便可得到编码器旋转地圈数。再利用单片机的定时器,利用软件定时产生1秒的定时时间,在1秒定时时间到达时,所记录的外部中断发生中断的次数,便是电机的转速(r/s)。转速计算公式: 4.3 PWM调速方法设计 4.3.1 对PWM控制的介绍 由电机原理可得一下公式: (1-1) 在确定的调速系统中,I、R、K及都是确定,则由式(1-1)可知,转速n与直流电机的电枢电压存在一
33、定关系,只要调节点数电压U,就能改变转速n,此法称为调压调速法。对于直流电机的调压调速方法,常见的有以下三种:晶闸管调速、发电机电动机调速以及直流斩波调速(脉宽调制(PWM)。 由于全空性功率电子器件的逐步发展,PWM控制技术与开关功率电路已经成为主流技术,以其能减小功率器件导通损耗、提高驱动效率等优点,所以在功率应用方面已经基本取代了现行功率放大电路。在PWM控制技术中,让功率器件按一个固定频率工作在“开”与“关”两个状态,即开关饱和和导通状态。通过这种方式来改变公路器件的驱动脉冲信号的通、断的时间,来改变负载两端的平均电压的大小。当这个负载为直流电机时,就实现了电机的调压调速。 为什么PW
34、M控制技术能改变负载两端电压呢? 在采样控制理论中存在一个重要的结论,冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量指窄脉冲的面积,效果基本相同,是指环节的输出响应波形基本相同。低频段非常接近,仅在高频段略有差异。这个结论就是面积等效原理,它是PWM控制技术的重要基础理论。 由这个原理我们可以用一些等幅不等宽的脉冲来等效代替一个正弦半波。我们把一个正弦半波分成N份,看做N个相连的脉冲序列,等宽但不等幅;我们再用等幅不等宽的矩形脉冲来表示代替这个正弦半波,由图14可知,它们面积(冲量)相等,宽度按正弦规律变化。 32 图14 PWM替换正弦半波原理图 下面举例说明下,PW
35、M的工作原理,如下图所示: 图15 PWM波形图 设T为脉冲的周期,t1为电枢两端高电平时电压为Ud所用的时间,为占空比,得: 因此,我们可得电枢两端电压的平均值 通过PROTEUS仿真,我们可以得到电枢两端的平均电压不同时的PWM波形, 平均电压较高时 图16、PWM波形图(电压高) 平均电压一般时 图17、PWM波形图(电压一般) 平均电压较低时 图18、PWM波形图(电压低)4.3.2 PWM脉冲的产生 目前在键盘输入模块主要有以下四种方法: 方法一:分立电子元件组成的PWM信号发生元件。该法是以分立的逻辑电子元件组成PWM信号电路。它是最早期的方式。 方法二:专业PWM集成芯片。制造商
36、生产的专用于PWM控制的集成电路芯片,如Ti公司的tl494芯片,东芝公司的2sk3131芯片等。这些芯片一般都还具有“死区”调节功能、过流过压保护功能等。 方法三:软件模拟法。采用软件编程的方法让单片机的一个I/O引脚不间断地输出高低电平来实现PWM波。 方法四:单片机的PWM口。新一代的单片机增加了许多功能,其中包括PWM功能。在这些单片机中我们只要通过初始化设置,就能使其PWM输出口自动输出PWM脉冲波,只有在改变占空比时CPU才进行干预。 将上诉四种方法进行比较,为了减少硬件电路的复杂性,减少成本,以及为了锻炼自己的编程能力,本设计采用软件模拟法来完成PWM脉冲波的产生。本设计通过延时
37、程序来控制PWM脉冲的占空比。 4.4.3相关程序 1.PWM源程序 ADC EQU 35H ;定义ADC0808时钟芯片 CLOCK BIT P2.4 ST BIT P2.5 EOC BIT P2.6 OE BIT P2.7 PWM BIT P3.7 ORG 00H SJMP START ORG 0BH LJMP INT_TO START: MOV TMOD,#02H MOV TH0,#00H MOV TL0,#00H MOV IE ,#82H SETB TR0 WAIT:CLR ST SETB ST CLR ST ;启动A/D转换等待结果 JNB EOC,$ SETB OE MOV ADC
38、,P1 ;启动/D转换结果 CLR OE SETB PWM ;PWM输出 MOV A,ADC LCALL DELAY CLR PWM MOV A,#0FEH SUBB A,ADC LCALL DELAY SJMP WAIT INT_TO:CPL CLOCK RETI ;提供ADC0808时钟信号 DELAY: CJNE A ,#00H, L INC A L: MOV R6,#1 D1:DJNZ R6 ,D1 DJNZ ACC,D1 RET END 2.PID调速程序 ADC EQU 35H CLK BIT P2.4 ST BIT P2.5 EOC BIT P2.6 OE BIT P2.7 PWM BIT P3.7; PID 调节设置 EK0 EQU 40H EK1 EQU 41H EK2 EQU 42H PP EQU 43H II EQU 44H DD EQU 45H UK0 EQU 70H UK1 EQU 71H ORG 00H SJMP START ORG 0BH LJMP INT_TO START: MOV TMOD, #62H MOV TH0, #00H MOV TL0, #00H MOV IE, #86H SETB TR0 ; SETB TR1 MOV R0, #00 MOV R1, #00 MOV R2, #00 MOV R