基于数字PID控制的直流伺服电机控制系统设计.doc

上传人:zf 文档编号:30815677 上传时间:2024-01-30 格式:DOC 页数:24 大小:498.50KB
下载 相关 举报
基于数字PID控制的直流伺服电机控制系统设计.doc_第1页
第1页 / 共24页
基于数字PID控制的直流伺服电机控制系统设计.doc_第2页
第2页 / 共24页
基于数字PID控制的直流伺服电机控制系统设计.doc_第3页
第3页 / 共24页
基于数字PID控制的直流伺服电机控制系统设计.doc_第4页
第4页 / 共24页
基于数字PID控制的直流伺服电机控制系统设计.doc_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

基于数字PID控制的直流伺服电机控制系统设计.doc

《基于数字PID控制的直流伺服电机控制系统设计.doc》由会员分享,可在线阅读,更多相关《基于数字PID控制的直流伺服电机控制系统设计.doc(24页珍藏版)》请在冰豆网上搜索。

基于数字PID控制的直流伺服电机控制系统设计.doc

摘要

直流伺服电动机的广泛使用,将计算机与伺服控制系统相结合实现数字化控制是现代伺服控制系统的一个发展趋势。

而模拟PID控制算法是比较理想的控制算法,在工业上得到了广泛应用。

随着计算机技术与智能控制理论的发展,数字PID技术渐渐发展起来,它不仅能够实现模拟PID所完成的控制任务,而且具备控制算法灵活、可靠性高等优点,应用面越来越广。

为了实现直流伺服电动机的数字化控制,采用数字PID控制算法。

目前,国内开发的计算机控制伺服系统基本上都采用计算机的串行口与伺服端进行有线连接,伺服端一般采用DSP芯片进行控制。

本研究设计了一个基于数字PID控制的直流伺服电机控制系统,采用单片机80C51作为数字控制器,产生占空比受数字PID算法控制的PWM脉冲实现对直流伺服电机转速的控制,进而转化成对电机位移的控制。

对电动机的位移进行控制,用软件方式实现数字PID控制算法。

由测量元件(位移传感器)对被控对象(电机)的被控参数(位移)进行测量,由变换发送单元(A\D转换器)将被控参数(位移)变成一定形式的信号,送给控制器CPU,控制器将测量信号(实际位移量)与给定信号(位移量)进行比较,若有误差则按预定的控制规律产生一控制信号驱动执行机构(伺服电机控制电源)工作,使被控参数(实际位移量)与给定值(给定位移量)保持一致。

同时利用位移传感器将电机位移转换成脉冲反馈到单片机中,实现位移闭环控制,达到位移无静差调节的目的。

关键字:

数字PID;直流伺服系统;闭环控制

序言

21世纪,科学技术日新月异,科技的进步带动了控制技术的发展,现代控制设备的性能和结构发生了翻天覆地的变化。

我们已进入高速发展的信息时代,控制技术成为当今科技的主流之一,广泛深入到研究和应用工程等各个领域。

控制理论的发展经历了古典控制理论、现代控制理论和智能控制理论三个阶段。

其控制系统包括控制器﹑传感器﹑变送器﹑执行机构﹑输入输出接口。

控制器的输出经过输出接口﹑执行机构、加到被控系统上;控制系统的被控量、经过传感器、变送器、通过输入接口送到控制器。

不同的控制系统、传感器﹑变送器﹑执行机构是不一样的。

比如压力控制系统要采用压力传感器。

电加热控制系统的传感器是温度传感器。

目前,PID控制及其控制器或智能PID控制器已经很多,产品已在工程实际中得到了广泛的应用。

受益于数十年来全球经济高速成长所获得的PID控制成果,在中国市场,一大批机器设备制造商正处于蓬勃发展阶段,除满足本土市场庞大的机器设备需求外,走向国际市场,参与国际竞争也成为现实需求。

在应用方面,这种控制技术已经渗透到了医疗、汽车制造、铁道运输、航天航空、钢铁生产、物流配送、饮料生产等多个方面。

但是由于中国科技落后,为此,我们需要更进一步的学习、掌握与应用先进的控制技术与解决方案,以提升设备性能、档次与市场竞争力。

在国外,尤其在运动控制及过程控制方面PID控制技术的应用更是越来越广泛和深入。

随着科技的进步,人们对生活舒适性的追求将越来越高,PID控制技术作为一项具有发展前景和影响力的新技术,正越来越受到国内外各行业的高度重视。

1总体方案设计

通过查找资料和理解题意后,决定从以下几个模块进行系统设计:

单片机模块、电源模块、输入模块、A/D转换模块、D/A转换模块、显示模块、反馈模块、电压放大模块等。

通过分析题意系统结构框图如图所示:

8

0

C

5

1

输入模块

模块

反馈模块

电源模块

D/A转换模块

电机驱动模块

电动机

A/D转换模块

2.控制系统的建模和数字控制器设计

2.1控制系统的建模

设计一个计算机控制的直流伺服电机控制系统。

由测量元件(位移传感器)对被控对

象(电机)的被控参数(位移)进行测量,由变换发送单元(A\D转换器)将被控参数(位移)变成一定形式的信号,送给控制器CPU,控制器将测量信号(实际位移量)与给定信号(位移量)进行比较,若有误差则按预定的控制规律产生一控制信号驱动执行机构(伺服电机控制电源)工作,使被控参数(实际位移量)与给定值(给定位移量)保持一致。

其电机位置随动系统:

式中,K=100,T1=1.8,T2=0.035,T3=0.15。

根据以上设计要求,设计的系统框图如下:

给定位移量

CPU

执行机构

D/A

电机

位移量

位移传感器

变送器

A/D

e

u

2.2数字控制器的设计

2.2.1数字PID的推导

由于数字控制器采用单片机80C51,因此系统中数字控制的设计,实际上是计算机数字PID控制算法的设计。

PID调节器是一种线性调节器,它根据给定值与实际输出值构成的控制偏差:

=-(1.1)

将偏差的比例、积分、微分通过线性组合构成控制量,对控制对象进行控制,故称为PID调节器。

模拟PID调节器的控制规律为

(1.2)

式中,为比例系数,为积分时间常数,为微分时间常数。

由于计算机只能识别数字量,不能对连续的PID控制算式直接进行运算,故在计算机控制系统中,首先必须对控制规律进行离散化的算法设计。

为将模拟PID控制规律按式(1.2)离散化,我们把1.1式中、、、在第n次采样的数据分别用、、、表示,于是式(1.1)变为:

=-(1.3)

当采样周期T很小时可以用T近似代替,可用近似代替,“积分”用“求和”近似代替,即可作如下近似

(1.4)

(1.5)

这样,式(1.2)便可离散化以下差分方程

(1.6)

由于(1.6)的输出量为全量输出,它对于被控对象的执行机构每次采样时刻应达到的位置。

因此,式(1.6)又称为位置型PID算式。

由(1.6)可看出,位置型PID控制算式不够方便,这是因为要累加偏差,不仅要占用较多的存储单元,而且不便于编写程序,为此对式(1.6)进行改进。

根据式(1.6)不难看出u(n-1)的表达式,即

(1.7)

将式(1.6)和式(1.7)相减,即得数字PID增量型控制算式为

(1.8)

式中:

称为比例增益;

称为积分系数;

称为微分系数。

2.2.2数字PID的参数整定

PID调节器的参数整定方法有很多,但可归结为理论计算法和工程整定法两种。

用理论计算法设计调节器的前提是能获得被控对象准确的数学模型,这在工业过程中一般较难做到。

因此,实际用得较多的还是工程整定法。

这种方法最大优点就是整定参数时不依赖对象的数学模型,简单易行。

当然,这是一种近似的方法,有时可能略嫌粗糙,但相当适用,可解决一般实际问题。

下面介绍两种比较简单的整定方法:

扩充临界比例度法和扩充响应曲线法。

(1)扩充临界比例度法

扩充临界比例度法是简易工程整定方法之一。

这种方法的最大优点是整定参数时不必依赖被控对象的数学模型,适用于现场应用。

具体步骤如下:

①选择一个足够小的采样周期Tmin。

例如带有纯滞后的系统,其采样周期取纯滞后时间的十分之一以下。

②求出临界比例度和临界振荡周期。

具体方法是:

将上述的采样周期Tmin输入到计算机中,使用纯比例控制,调节比例系数KP,直到系统产生等幅振荡为止。

所得到的比例度()即为临界比例度。

此时的振荡周期即为系统的临界振荡周期。

③选择控制度:

所谓控制度就是以模拟调节器为基准,将DDC的控制效果与模拟调节器的控制效果相比较。

控制效果的评价函数通常用误差平方面积表示。

控制度=(1.18)

实际应用中并不需要计算出两个误差平方面积,控制度仅表示控制效果的物理

概念。

通常,当控制度为1.05时,就可以认为DDC与模拟控制效果相当;当控制度为2.0时,DDC比模拟控制效果差。

④根据选定的控制度,查表1.1求得T、、、的值[1]。

表1.1扩充临界比例度法整定参数

控制度

控制规律

T

1.05

PI

0.03

0.53

0.88

1.05

PID

0.014

0.63

0.49

0.14

1.20

PI

0.05

0.49

0.91

1.20

PID

0.043

0.047

0.47

0.16

1.50

PI

0.14

0.42

0.99

1.50

PID

0.09

0.34

0.43

0.20

2.00

PI

0.22

0.36

1.05

2.00

PID

0.16

0.27

0.40

0.22

⑤按求得的参数运行,在运行中观察控制效果,再适当地调整参数,直到获得满意的控制效果。

(2)扩充响应曲线法

扩充响应曲线法是又一种简易的工程整定方法。

对于那些不允许进行临界振荡的实验的系统,可以采用扩充响应曲线法。

具体方法如下:

①断开数字PID控制器,使系统在手动状态下工作。

当系统在给定值处达到平衡以后,给一个阶跃输入信号。

②用仪表记录下被控参数在此阶跃输入信号作用下的变化过程,即阶跃响应曲线。

③在曲线的最大斜率处作切线,该切线与横轴以及系统响应稳态值的延长线相交于a、b两点,过b点作横轴的垂线,并与横轴交与c点,于是得到滞后时间Td和被控对象的时间常数t。

④选择控制精度。

⑤查表即可求出T、Kp、KI、TD的值。

⑥按求得的参数运行,在运行中观察控制效果,再适当地调整参数,直到获得满意的控制效果。

表1.2扩充响应曲线法参数整定公式

控制度

控制规律

T

1.05

PI

0.1Td

0.84t/Td

0.34Td

1.05

PID

0.05Td

0.15t/Td

2.0Td

0.45Td

1.20

PI

0.2Td

0.78t/Td

3.6Td

1.20

PID

0.16Td

1.0t/Td

1.9Td

0.55Td

1.50

PI

0.5Td

0.68t/Td

3.9Td

1.50

PID

0.34Td

0.85t/Td

1.62Td

0.65Td

2.00

PI

0.8Td

0.57t/Td

4.2Td

2.00

PID

0.6Td

0.6t/Td

1.5Td

0.82Td

选择扩充临界比例度法进行PID参数整定。

①打开Matlab的Simulink,新建.m文件。

②输入如下程序并保存。

num=conv(100,15);

den=conv([1,0],conv([1.8,1],[0.035,1]));

g=tf(num,den);

kp=0.0195;

gc=feedback(g*kp,1);

t=0:

0.01:

10;

step(gc,t);

gridon;

③运行上述程序得到下图:

从而求出临界比例度=1/Kp=1/0.0195=51.28

=2.43-0.81=1.62

选择控制精度为1.05,则

T=0.014=0.02268

=0.63=32.3064

=0.49=0.7938

=0.14=0.2268

④再运行如下程序:

num=conv(100,15);

den=conv([1,0],conv([1.8,1],[0.035,1]));

gg=tf(num,den);

kp=0.0195;

tu=1.62;

detak=1/0.0195;

T=0.014*tu;

kp=0.63*detak;

ti=0.49*tu;

td=0.14*tu;

T,kp,ti,td

s=tf('s');

gc=kp*(1+1/(ti*s)+td*s);

gcg=feedback(gg*gc,1);

t=0:

0.01:

10;

figure

(1);

step(gcg);

ggd=c2d(gg,T,'zoh');

d0=1+T/ti+td/T;

d1=-1-2*td/T;

d2=td/T;

numd=kp*[d0d1d2];

dend=[1-10];

dd=tf(numd,dend,T);

sysd=feedback(ggd*dd,1);

figure

(2);

step(sysd);

得到下图:

所以所整定的参数满足系统要求。

3硬件的设计和实现

硬件的设计是软件实现的基础,为软件提供平台。

3.1单片机模块

单片机80C51介绍:

 

80C51属于MCS-51系列单片机,由Intel公司开发,其结构是8048的延伸,改进了8048的缺点,增加了如乘(MUL)、除(DIV)、减(SUBB)、比较(CMP)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。

采用40引脚双列直插式DIP(DualInLinePackage),内有128个RAM单元及4K的ROM。

80C51有两个16位定时计数器,两个外中断,两个定时计数中断,及一个串行中断,并有4个8位并行输入口。

80C51内部有时钟电路,但需要石英晶体和微调电容外接,本系统中采用12MHz的晶振频率。

由于80C51的系统性能满足系统数据采集及时间精度的要求,而且产品产量丰富来源广,应用也很成熟,故采用来作为控制核心。

由于直流电机控制系统比较简单,数字PID算法采用软件方式实现比较简单,占用的内存比较少,因此选择我们比较熟悉的单片机80C51作为数字控制器。

下面介绍单片机各个端口在系统中的作用和功能:

(1)P0口有三个功能

  1、外部扩展存储器时,当做数据总线(D0~D7为数据总线接口)

  2、外部扩展存储器时,当作地址总线(A0~A7为地址总线接口)

3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。

系统中P0口即用作数据总线也作地址总线。

(2)P1口只做I/O口使用:

其内部有上拉电阻。

P1.0用来判断是否有新的位移给定值输入。

P1.1用来增加或右移数码管显示的各位数值。

P1.2用来减少或左移数码管显示的各位数值。

P1.3用来确认数码管显示数值的输入。

(3)P2口有两个功能:

  1、扩展外部存储器时,当作地址总线使用

2、做一般I/O口使用,其内部有上拉电阻;

系统中P2口用作一般I/O口。

P2.0-P2.3用作四位数码管的位选端,从而实现动态显示。

P2.4用来控制数码管段码数值的锁存。

P2.5用来控制数码管位码数值的锁存。

P2.6作为DAC0832的片选控制信号。

P2.7作为ADC0809的片选控制信号。

(4)P3口有两个功能:

除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。

P3.0用来判断ADC0809转换是否结束。

P3.6用来作写入信号。

P3.7用来作读出信号。

ALE/PROG地址锁存控制信号:

在系统扩展时,ALE用于控制把P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。

ALE有可能是高电平也有可能是低电平,当ALE是高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即由正变负)将P0口上低8位地址信号送入锁存器。

当ALE是低电平时,P0口上的内容和锁存器输出一致。

在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储器以1/12振荡周期输出(12分频)。

从这里我们可以看到,当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以做为外部时钟,或者外部定时脉冲使用。

XTAL1和XTAL2外接晶振引脚。

当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。

VCC:

电源+5V输入

3.2输入模块

1.按按键的控制方式有两种方案:

一、独立式键盘

独立式键盘,每个按键一般只实现一个功能,易于控制而且编程简单,容易理解。

直接与单片机I/0接口相连,所以占用的I/0接口比较多。

二、矩阵式键盘

矩阵式键盘可以减少I/O口的使用,而且扫描M*N个按键只需要占用M+N个按键,但是编程比较复杂,占用较多的内存。

由于使用较少的按键就可以实现输入位移给定值,所以选择独立式键盘。

2.键盘工作方式的方案选择

一、编程扫描法

所谓编程扫描法就是CPU对键盘的扫描采用程序控制方式,一旦进入键扫状态,则反复地扫描键盘,等待用户从键盘上输入命令或数据。

而在执行键入命令或处理键入数据过程中,CPU将不再响应键入要求,直到CPU返回重新扫描键盘为止。

所以实时性较差,占用CPU的大量时间,但编程简单。

二、定时扫描法

定时扫描工作方式就是CPU每隔一定的时间对键盘扫描一遍。

当发现有按键按下时,便进行读入键盘操作,以求出键值,并分别进行处理。

三、中断扫描法

当没有键入操作时,CPU不对键盘进行扫描,以节省出大量的时间对系统进行监控和数据处理。

一旦键盘有输入,则向CPU申请中断,中断响应后进行中断服务程序的处理。

经过综合考虑后决定选择定时扫描法,因为采用定时扫描法可以很好地响应按键的输入,而不影响其他程序的执行。

3.3显示模块

设置显示模块是为了能直观的了解系统的正常运行,用来显示设定值和反馈值,这样能实时的了解闭环系统反馈值跟随给定值的变化,最终误差为零。

显示模块有两种方案:

LED显示和LCD显示

LED显示

LED显示器是由八段发光二极管组成的,可分为共阴极和共阳极两种。

四、LCD显示

LCD显示器是一种借助外界光线照射液晶材料而实现显示的被动显示器件。

本设计采用方案一即LED显示,并且使用动态显示,因为动态显示能减少对I/O口的占用。

首先对LED比较了解而且已熟练掌握,LED编程比较简单,能完成显示设定值的任务。

其次,LED显示器与LCD显示器相比,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。

3.4A/D转换模块

A/D转换器的作用就是把位移传感器检测电动机的位移量对应的模拟电压转换成数字量,是模拟量输入通道必不可少的器件。

选择8通道A/D转换器ADC0809。

3.5D/A转换模块

D/A转换器的作用就是把单片机按控制规律处理的结果转换成模拟控制量,再经过驱动机构来驱动电动机。

选择普通型D/A转换器DAC0832

3.6反馈模块

因为反馈模块的内部干扰对闭环控制系统的影响较大,所以选择反馈模块应尽量减少反馈模块的干扰,应采用一定的抗干扰措施,例如屏蔽、采用双绞线等。

3.7电源模块

电源模块的稳定性要求非常高,会影响系统的可靠性。

所以选择直接的直流电源供电。

3.8电机驱动模块

电机驱动模块是为了放大电压来驱动电动机。

本次设计的主要目的是控制电机的转速,因此电机驱动模块是必不可少,其方案有以下两种:

方案一:

采用大功率晶体管组合电路构成驱动电路,这种方法结构简单,成本低、易实现,但由于在驱动电路中采用了大量的晶体管相互连接,使得电路复杂、抗干扰能力差、可靠性下降,我们知道在实际的生产实践过程中可靠性是一个非常重要的方面。

因此此中方案不宜采用。

方案二:

采用专用的电机驱动芯片,例如L298N、L297N等电机驱动芯片,由于它内部已经考虑到了电路的抗干扰能力,安全、可靠行,所以我们在应用时只需考虑到芯片的硬件连接、驱动能力等问题就可以了,所以此种方案的电路设计简单、抗干扰能力强、可靠性好。

设计者不需要对硬件电路设计考虑很多,可将重点放在算法实现和软件设计中,大大的提高了工作效率。

基于上述理论分析和实际情况,电机驱动模块选用方案二。

L298N芯片的介绍:

L298是ST公司生产的一种高电压、大电流电机驱动芯片。

该芯片的主要特点是:

工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等感性负载;采用标准TTL逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。

L298芯片引脚功能见表3.1

表3.1 L298引脚功能表

引脚

符号

功能

1

15

SENSINGA

SENSINGB

此两端与地连接电流检测电阻,并向驱动芯片反馈检测到的信号

2

3

OUT1

OUT2

此两脚是全桥式驱动器A的两个输出端,用来连接负载

4

Vs

电机驱动电源输入端

5

7

IN1

IN2

输入标准的TTL逻辑电平信号,用来控制全桥式驱动器A的开关

6

11

ENABLEA

ENABLEB

使能控制端.输入标准TTL逻辑电平信号;低电平时全桥式驱动器禁止工作。

8

GND

接地端,芯片本身的散热片与8脚相通

9

Vss

逻辑控制部分的电源输人端口

10

12

IN3

IN4

输入标准的TTL逻辑电平信号,用来控制全桥式驱动器B的开关

13

14

OUT3

OUT4

此两脚是全桥式驱动器B的两个输出端,用来连接负载

L298的逻辑控制

L298的逻辑控制见如下表3.3。

其中C、D分别为IN1、IN2或IN3、IN4;L为低电平,H为高电平,※为不管是低电平还是高电平。

表3.3 L298对直流电机控制的逻辑真值表

输入

输出

Ven=H

C=H;D=L

正转

C=L;D=H

反转

C=D

制动

Ven=L

C=※;D=※

没有输出,电机不工作

 

4软件设计

软件设计主要是PID控制算法的软件实现、键盘扫描程序、LED显示器的显示程序,A/D、D/A和电机控制程序等

4.1分配系统资源,编写系统初始化和主程序模块框图

首先为A/D转换器、D/A转换器分配地址,采用模块化设计,为各个模块分配内存,在利用主程序来调用各个模块子程序,从而实现整个系统的功能。

开始

初始化显示器

初始化A/D转换器

初始化D/A转换器

初始化键盘

系统初始化框图

开始

系统初始化

键盘扫描子程序

定时中断服务程序

电机驱动子程序

PID控制程序

D/A转换子程序

A/D转换子

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 中考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1