工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx

上传人:b****4 文档编号:6555191 上传时间:2023-05-10 格式:DOCX 页数:12 大小:37.78KB
下载 相关 举报
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第1页
第1页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第2页
第2页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第3页
第3页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第4页
第4页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第5页
第5页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第6页
第6页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第7页
第7页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第8页
第8页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第9页
第9页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第10页
第10页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第11页
第11页 / 共12页
工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx

《工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx》由会员分享,可在线阅读,更多相关《工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx(12页珍藏版)》请在冰点文库上搜索。

工业控制中流水作业的计数与定时装置设计案例分析报告资料.docx

工业控制中流水作业的计数与定时装置设计案例分析报告资料

班级:

自控0904

学号:

200941105

2012微机接口技术课程案例分析报告

北京化工大学自动化专业微机接口技术课程案例分析报告

报告题目:

工业控制中流水作业的计数与定时装置设计

院系:

信息科学与技术学院专业:

自动化

班级:

自控0904

学号:

200941105

课程序号:

185

指导教师:

韩阳

2012年4月24日完成

1.背景

2.8253功能实现2

2.1分析题目2

2.2方式选择与工作流程3

2.3软件编程4

2.3.1计数初值计算4

2.3.2主体代码4

3.心得体会5

3.1感受和收获5

3.2思考与扩展5

4.参考文献7

5.附录7

5.18253编程命令字7

 

1.背景

某机械零件加工产品包装流水线上需一自动计数定时装置:

一个包装箱装24个零

件,要求每通过24个,流水线要暂停5秒钟,等待封箱打包完毕,然后重启流水线继续装箱。

微机控制流水线作业时按ESC键则停止生产。

2.8253功能实现

2.1分析题目

为了实现设计要求,有两个工作要做:

一是对24个零件计数:

一是对5秒钟停顿定时。

并且两者之间又是相互关联的,因此,通过定时器的通道0作计数器,通道1作定时器,并且把通道0的计数已到(24)输出OUT0信号连到通道1的GATE。

线上作为外部硬件启动信号去触发通道l的5秒定时,以及去控制流水线的暂停与重启。

电路结构原理如图1所示,定时器端口地址为:

320H(通道0),321H(通道1),322H(通道2),323H(命令口)。

图1中的虚线框是流水线工作台示意图,其中零件计数检测部分的原理是,零件从光源和光敏电阻R之间通过时,在晶体管T发射极上会产生零件的脉冲信号,此脉冲信号即可作为计数脉冲,接到CLK。

对零件进行计数。

2.2方式选择与工作流程

8253是24脚双列直插式芯片,+5V电源供电。

通道0作为计数器,工作在方式2,因为PTC8253—5的6种工作方式中,只有2方式和3方式具有自动重装计数初值的功能,能输出连续波形,保证生产流水线循环往复运行。

GATE0接+5V电源电压,输出端OUT0直接连接到通道的GATE1方式,以作通道1定时器的外部硬件启

动信号

通道1作为定时器,工作在1方式,CLK1为100Hz时钟脉冲。

输出端OUT1接流水线工作台,进行5秒钟定时后重启流水线,继续工作,通道0又重新开始计数。

2.3软件编程

2.3.1计数初值计算

计数初值的计算分两种情况,若8253作计数器用时,则将要求计数的次数就作计数初值,直接装入计数初值寄存器和减法计数器,不要经过计算;若作定时器用时,则计数初值也就是定时常数需要经过换算才能得到。

其换算方法如下:

要求产生定时时间间隔的定时常数

Tc=fclk*T(其中fclk为100Hz,T为5s。

通道0的方式命令=00010100B=14H

通道0的计数初值=24=18H

通道1的方式命令=01110010B=72H

通道1的定时系数Tc=5*100=500=1F4H

2.3.2主体代码

初始化部分省略,要注意的是通道一的初值大于256需要分两次写入。

下面给出等待按键的代码:

CHECK:

MOVAH,0BH

INT21H

CMPAL,00H;无键按下则等待。

JECHECK

MOVAH,08H

INT21H

CMPAL,1BH;若不是ESC则等待。

JNECHECK

MOVAH,4CH;若是则结束。

INT21H

3.心得体会

3.1感受和收获

此应用的特殊之处,在于把计数器和定时器组合应用。

把定时和计数连结起来,相互作用,使其在实际生活中发挥更大的作用。

还有一点特别地方,在于此例程巧妙应用了8253计数器在不同方式下的输出不同的特性。

结合流水线设备的触发条件,使整个工作流程衔接流畅,前后联系紧密才得以实现其整体功能。

3.2思考与扩展

这就引发我们对定时器/计数器几种不同工作方式的思考。

由于工作方式不同,其计数过程,基本功能,启动方式,输出波形,初值重装,中止方式及典型应用都有差别。

因此,在使用8253或8254时,应根据不同的用途来选择不同的工作方式,以充分发挥其作用。

在此,再把8254的6中工作方式的特点复习一下。

1.方式0的计数结束中断

计数结束,输出端产生0-1的上升沿,利用此信号可申请中断。

2.方式1的可编程单稳态触发器功能

负脉冲的宽度可以由程序控制,改变计数初值就可以改变延时时间。

3.方式2的分频功能

产生宽度相等连续的负脉冲,可以用作分频器,分频系数即计数初值。

4.方式3的方波发生器功能

输出占空比近1:

1的重复连续波形。

5.方式4和方式5的单个负脉冲发生器

方式4和方式5都是单个负脉冲发生器,输出一个完整负脉冲,但两者启动方式不同,前者为软件启动,后者为硬件启动。

以上5种功能为8254的基本功能,用户以这些原始功能为基础,通过组合和设计可以进一步开发各种各样的应用。

例如,用于计时系统,作定时中断;用于通信系统,作波特率始终发生器;用于实时控制系统,作数据采集和速度控制;还可以用于发声系统,作音乐发生器等。

它们都是基于8254的原始功能或相互间的组合来实现的。

4.参考文献

1.刘乐善主编,华中科技大学出版社,《32位微型计算机接口技术及应用》

2.李玉声,《现代机械》2006年第一期,《机加零件自动包装计数定时装置的设计》

5.附录

5.18253编程命令字

使用8253时,必须首先进行初始化编程。

初始化编程的步骤和内容如下:

首先写入方式控制字,以选择计数通道,确定其工作方式。

每一计数通道的方式控制字都是由CPU依次写入控制字寄存器的,控制字寄存器端口地址只有一个。

然后写入计数初值到对应的计数通道中。

若规定只写低8位,则写入的计数初值为低8位,高8位自动清0;若规定只写高8位,则写入的计数初值为高8位,低8位自动清0;若规定写16位,则分两次写入,先写入的计数初值为低8位,后写入的计数初值为高8位,每个计数通道均有自己的端口地址。

方式控制字的格式如下:

SC1、SC0:

计数通道选择。

确定这个方式控制字是确定哪个计数通道的工作方式的。

若SC1SC0=00,选择计数通道0;若SC1SC0=01,选择计数通道1;若SC1SC0=10,选择计数通道2;若SC1SC0=11,为非法选择。

RL1、RL0:

规定CPU向计数通道写入计数初值的格式和向计数通道锁存器发锁存命令,以及未锁存时CPU从计数通道读取当前计数值的格式。

数据读/写格式为:

RL1RL0=00,计数器锁存命令

RL1RL0=01,只读/写低8位数据

RL1RL0=10,只读/写高8位数据

RL1RL0=11,读/写16位数据,先低8位,后高8位

CPU写入计数通道的计数初值是写到计数通道的初值寄存器中的,而初值寄存器是16位的寄存器。

如果只写入低8位初值,则初值寄存器的高8位自动清0;如果只写入高8位初值,则初值寄存器的低8位自动清0;如果写入16位初值,则先写入低8位初值后写入高8位初值。

计数通道在计数过程中,CPU可以随时读取计数通道的当前值且不影响计数通道的现行计数,CPU读取的计数通道的当前值是锁存寄存器中的值。

在未锁存时(RL1RL0≠00),减1计数器减1计数的同时把当前值送到锁存寄存器中,即锁存寄存器的值跟随减1计数器当前值的变化而变化。

若在读计数通道当前值之前,先写入锁存命令(RL1RL0=00),则在计数过程中,减1计数器减1计数虽然照常进行,但不把当前值送到锁定寄存器中,即锁定寄存器的值被锁定,当对计数通道重新初始化或CPU读计数通道锁定值后,自动解除锁存命令,锁定寄存器的值又随减1计数器

变化。

在未锁定时,若RL1RL0=11,可能会使从计数器直接读出的数值不正确,因为若先读入的低8位值00H时,由于在两次读数值之间计数器计数低8位可能向高8

位有借位,造成后读入的高8位值错误,克服的办法可以用GATE无效或阻断CLK时钟脉冲输入等方法,使计数器暂停计数,以保证CPU读到正确的计数器当前值。

为了计数过程照常进行和保证CPU读到正确的计数器当前值,常常采用先写入锁存命令后读入计数器当前值的方法。

例如,若要读取计数通道2的16位计数值,初始化时若计数通道2工作在方式

0,按二进制计数,设控制字寄存器地址为F6H,计数通道2地址为F4H,则程序为:

MOVAL,10000000B;计数器2锁存命令

OUT0F6H,AL;写入锁存命令

INAL,0F4H;读低8位当前值

MOVCL,AL;存入CL中

INAL,0F4H;读高8位当前值并解除锁存状态

MOVCH,AL;存入CH中

M2M1M0:

由这3位决定计数通道的工作方式。

规定如下:

M2M1M0:

=000,计数通道工作在方式0

M2M1M0:

=001,计数通道工作在方式1

M2M1M0:

=X10,计数通道工作在方式2

M2M1M0:

=X11,计数通道工作在方式3

M2M1M0:

=100,计数通道工作在方式4

M2M1M0:

=101,计数通道工作在方式5

BCD:

该位用来决定计数通道在减1计数过程中是按二进制计数还是按二検

疲˙CD计数制)以及写入的计数初值是二进制还是BCD数,若BCD=0,则按二进制计数,写入的计数初值是二进制数初值范围是0000~FFFFH,其中0000为最大值,代表65536;若BCD=1,则按BCD计数,初值范围是0000~9999H,它是十进制数的BCD码,其中0000是最大值,代表10000,9999H代表9999。

注:

读取计数器的当前值

⑴直接读计数器:

输出锁存器在非锁存状态会跟随计数器计数的变化而变化,直接读计数器是从锁存器得到计数器的当前值。

但由于计数器处于工作状态,读出值不

⑵先锁存再读取:

①通过方式选择控制字对指定通道(SC1、SC0)的计数值锁入锁存器(RL1RL0=00),锁存器一旦锁存了当前计数值,就不再随计数器变化直到被读取。

②读计数器通道(有锁存器)。

5.28253的6种工作方式详细介绍

8253的六种工作方式区别

三个计数通道可有6种可供选择的工作方式,以完成定时、计数或脉冲发生器等多种功能:

方式0:

计数结束则中断

工作方式0被称为计数结束中断方式。

当任一通道被定义为工作方式0时,OUTi输出为低电平;若门控信号GATE为高电平,当CPU利用输出指令向该通道写入计数值使WR#有效时,OUT仍保持低电平,之后的下一时钟周期下降沿计数器开始减“1”计数,直到计数值为“0”,此刻OUT将输出由低电平向高电平跳变,可用它向CPU发出中断请求,OUT端输出的高电平一直维持到下次再写入计数值为止。

在工作方式0情况下,门控信号GATE用来控制减“1”计数操作是否进行。

当GATE=1时,允许减“1”计数;GATE=0时,禁止减“1”计数;计数值将保持GATE有效时的数值不变,待GATE重新有效后,减“1”计数继续进行。

显然,利用工作方式0既可完成计数功能,也可完成定时功能。

当用作计数器时,应将要求计数的次数预置到计数器中,将要求计数的事件以脉冲方式从CLK端输入,由它对计数器进行减“1”计数,直到计数值为0,此刻OUTi输出正跳变,表示计数次数到。

当用作定时器时,应把根据要求定时的时间和CLKi的周期计算出定时系数,预置到计数器中。

从CLK,输入的应是一定频率的时钟脉冲,由它对计数器进行减“1”计数,定时时间从写入计数值开始,到计数值计到“0”为止,这时OUTi输出正跳变,表示定时时间到。

有一点需要说明,任一通道工作在方式0情况下,计数器初值一次有效,经过一次计数或定时后如果需要继续完成计数或定时功能,必须重新写入计数器的初值。

方式1:

单脉冲发生器

工作方式1被称作可编程单脉冲发生器。

进入这种工作方式,CPU装入计数值n后OUT输出高电平,不管此时的GATE输入是高电平还是低电平,都不开始减“1”计数,必须等到GATE由低电平向高电平跳变形成一个上升沿后,计数过程才会开始。

与此同时,OUT输出由高电平向低电平跳变,形成了输出单脉冲的前沿,待计数值计到“0”,OUT输出由低电平向高电平跳变,形成输出单脉冲的后沿,因此,由方式l所能输出单脉冲的宽度为CLK周期的n倍

如果在减“1”计数过程中,GATE由高电平跳变为低电乎,这并不影响计数过程,仍继续计数;但若重新遇到GATE的上升沿,则从初值开始重新计数,其效果会使输出的单脉冲加宽,如教材图9-22(b)中的第2个单脉冲。

这种工作方式下,计数值也是一次有效,每输入一次计数值,只产生一个负极性单脉冲。

方式2:

速率波发生器

工作方式2被称作速率波发生器。

进入这种工作方式,OUT输出高电平,装入计数值n后如果GATE为高电平,则立即开始计数,OUT保持为高电平不变;待计数值减到“1”和“0”之间,OUT将输出宽度为一个CLK周期的负脉冲,计数值为“0”时,自动重新装入计数初值n,实现循环计数,OUT将输出一定频率的负脉冲序列,其脉冲宽度固定为一个CLK周期,重复周期为CLK周期的n倍。

如果在减“1”计数过程中,GATE变为无效(输入0电平),则暂停减“1”计数,待GATE恢复有效后,从初值n开始重新计数。

这样会改变输出脉冲的速率。

如果在操作过程中要求改变输出脉冲的速率,CPU可在任何时候,重新写人新的计数值,它不会影响正在进行的减“1”计数过程,而是从下一个计数操作用期开始按新的计数值改变输出脉冲的速率。

方式3:

方波发生器

工作方式3被称作方波发生器。

任一通道工作在方式3,只在计数值n为偶数,则可输出重复周期为n、占空比为1:

1的方波。

进入工作方式3,OUT输出低电平,装入计数值后,OUT立即跳变为高电平如果当GATE为高电平,则立即开始减“1”计数,OUT保持为高电平,若n为偶数,则当计数值减到n/2时,OUT跳变为低电平,一直保持到计数值为“0”,系统才自动重新置入计数值n,实现循环计数。

这时OUT端输出的周期为n×CLKi周期,占空比为1:

1的方波序列;若n为奇数,则OUTi端输出周期为n×CLK周期,占空比为((n+1)/2)/((n-1)/2)的近似方波序列。

如果在操作过程中,GATE变为无效,则暂停减“1”计数过程,直到GATE再次有效,重新从初值n开始减“l”计数。

如果要求改变输出方波的速率,则CPU可在任何时候重新装入新的计数初值n,并从下一个计数操作周期开始改变输出方波的速率。

方式4:

软件触发方式计数

工作方式4被称作软件触发方式。

进入工作方式4,OUT输出高电平。

装入计数值n后,如果GATE为高电平,则立即开始减“1”计数,直到计数值减到“0”为止,OUT输出宽度为一个CLKi周期的负脉冲。

由软件装入的计数值只有一次有效,如果要继续操作,必须重新置入计数初值n。

如果在操作的过程中,GATE变为无效,则停止减“1”计数,到GATE再次有效时,重新从初值开始减“1”计数。

显然,利用这种工作方式可以完成定时功能,定时时间从装入计数值n开始,则OUT输出负脉冲(表示定时时间到),其定时时间=n×CLK周期。

这种工作方式也可完成计数功能,它要求计数的事件以脉冲的方式从CLK输入,将计数次数作为计数初值装入后,由CLK端输入的计数脉冲进行减“1”计数,直到计数值为“0”,由

OUTt端输出负脉冲(表示计数次数到)。

当然也可利用OUT向CPU发出中断请求因此工作方式4与工作方式0很相似,只是方式0在OUT端输出正阶跃信号、方式

4在OUT端输出负脉冲信号。

方式5:

硬件触发方式计数

工作方式5被称为硬件触发方式。

进入工作方式5,OUT输出高电平,硬件触发信号由GATE端引入。

因此,开始时GATE应输入为0,装入计数初值n后,减“1”计数并不工作,一定要等到硬件触发信号由GATE端引入一个正阶跃信号,减“1”计数才会开始,待计数值计到“0”,OUT将输出负脉冲,其宽度固定为一个CLK周期,表示定时时间到或计数次数到。

这种工作方式下,当计数值计到“0”后,系统将自动重新装入计数值n,但并不开始计数,一定要等到由GATE端引入的正跳沿,才会开始进行减“1”计数,因此这是一种完全由GATE端引入的触发信号控制下的计数或定时功能。

如果由CLKi输入的是一定频率的时钟脉冲,那么可完成定时功能,定时时间从GATE上升沿开始,到OUT端输出负脉冲结束。

如果从CLK端输入的是要求计数的事件,则可完成计数功能,计数过程从GATE上升沿开始,到OUT输出负脉冲结束。

GATE可由外部电路或控制现场产生,故硬件触发方式由此而得名。

如果需要改变计数初值,CPU可在任何时候用输出指令装入新的计数初值m,它将不影响正在进行的操作过程,而是到下一个计数操作周期才会按新的计数值进行操作。

从上述各工作方式可看出,GATE作为各通道的门控信号,对于各种不同的工作

方式,它所起的作用各不相同。

在8253的应用中,必须正确使用GATE信号,才能保证各通道的正常操作

门控信号GATE的作用

方式

功能

GATE=1

GATE=0

GATE上升沿

0

计数结束产生中断

允许计数

停止计数

不受影响

1

可重触发单稳

不受影响

不受影响

从初值开始重新计数

2

分频器

允许计数

停止计数

从初值开始重新计数

3

方波信号发生器

允许计数

停止计数

从初值开始重新计数

4

软件触发选通

允许计数

停止计数

从初值开始重新计数

5

硬件触发选通

不受影响

不受影响

硬件触发信号

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

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2