收藏 分享(赏)

工业控制中流水作业计数和定时装置设计案例分析报告.doc

上传人:春华秋实 文档编号:2906438 上传时间:2018-09-29 格式:DOC 页数:15 大小:98KB
下载 相关 举报
工业控制中流水作业计数和定时装置设计案例分析报告.doc_第1页
第1页 / 共15页
工业控制中流水作业计数和定时装置设计案例分析报告.doc_第2页
第2页 / 共15页
工业控制中流水作业计数和定时装置设计案例分析报告.doc_第3页
第3页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、.2012 微机接口技术课程案例分析报告 班级:自控 0904 学号:200941105北京化工大学自动化专业微机接口技术课程案例分析报告报告题目: 工业控制中流水作业的计数与定时装置设计 院 系: 信息科学与技术学院 专 业: 自动化 班 级: 自控 0904 学 号: 200941105 课程 序号: 185 指导 教师: 韩阳 2012 年 4 月 24 日完成.目录1.背景 .228253 功能实现 22.1 分析题目 22.2 方式选择与工作流程 32.3 软件编程 32.3.1 计数初值计算 .32.3.2 主体代码 .43. 心得体会 43.1 感受和收获 43.2 思考与扩展

2、54参考文献 .65. 附录 .65.1 8253 编程命令字 65.2 8253 的 6 种工作方式详细介绍 91.背景某机械零件加工产品包装流水线上需一自动计数定时装置:一个包装箱装24个零件,要求每通过24个,流水线要暂停5秒钟,等待封箱打包完毕,然后重启流水线继续装箱。微机控制流水线作业时按ESC键则停止生产。28253 功能实现2.1 分析题目.为了实现设计要求,有两个工作要做:一是对 24 个零件计数:一是对 5 秒钟停顿定时。并且两者之间又是相互关联的,因此,通过定时器的通道 0 作计数器,通道1 作定时器,并且把通道 0 的计数已到(24)输出 OUT0 信号连到通道 1 的

3、GATE。线上作为外部硬件启动信号去触发通道 l 的 5 秒定时,以及去控制流水线的暂停与重启。电路结构原理如图 1 所示,定时器端口地址为:320H(通道 0),321H( 通道 1),322H(通道 2),323H(命令口) 。图 1 中的虚线框是流水线工作台示意图,其中零件计数检测部分的原理是,零件从光源和光敏电阻 R 之间通过时,在晶体管 T 发射极上会产生零件的脉冲信号,此脉冲信号即可作为计数脉冲,接到 CLK。对零件进行计数。2.2 方式选择与工作流程8253 是 24 脚双列直插式芯片,+5V 电源供电。通道 0 作为计数器,工作在方式 2,因为 PTC82535 的 6 种工作

4、方式中,只有 2 方式和 3 方式具有自动重装计数.初值的功能,能输出连续波形,保证生产流水线循环往复运行。GATE0 接+5V 电源电压,输出端 OUT0 直接连接到通道的 GATE1 方式,以作通道 1 定时器的外部硬件启动信号。通道 1 作为定时器,工作在 1 方式,CLK1 为 100 Hz 时钟脉冲。输出端 OUT1接流水线工作台,进行 5 秒钟定时后重启流水线,继续工作,通道 0 又重新开始计数。2.3 软件编程2.3.1 计数初值计算计数初值的计算分两种情况,若 8253 作计数器用时,则将要求计数的次数就作计数初值,直接装入计数初值寄存器和减法计数器,不要经过计算;若作定时器用

5、时,则计数初值也就是定时常数需要经过换算才能得到。其换算方法如下:要求产生定时时间间隔的定时常数Tc=fclk*T (其中 fclk 为 100Hz,T 为 5s。)通道 0 的方式命令=00010100B=14H通道 0 的计数初值=24=18H通道 1 的方式命令=01110010B=72H通道 1 的定时系数 Tc=5*100=500=1F4H2.3.2 主体代码初始化部分省略,要注意的是通道一的初值大于 256 需要分两次写入。.下面给出等待按键的代码:CHECK: MOV AH,0BHINT 21HCMP AL,00H ;无键按下则等待。JE CHECKMOV AH,08HINT 2

6、1HCMP AL,1BH ;若不是 ESC 则等待。JNE CHECKMOV AH,4CH ;若是则结束。INT 21H3. 心得体会3.1 感受和收获此应用的特殊之处,在于把计数器和定时器组合应用。把定时和计数连结起来,相互作用,使其在实际生活中发挥更大的作用。还有一点特别地方,在于此例程巧妙应用了 8253 计数器在不同方式下的输出不同的特性。结合流水线设备的触发条件,使整个工作流程衔接流畅,前后联系紧密才得以实现其整体功能。3.2 思考与扩展.这就引发我们对定时器/计数器几种不同工作方式的思考。由于工作方式不同,其计数过程,基本功能,启动方式,输出波形,初值重装,中止方式及典型应用都有差

7、别。因此,在使用 8253 或 8254 时,应根据不同的用途来选择不同的工作方式,以充分发挥其作用。在此,再把 8254 的 6 中工作方式的特点复习一下。1方式 0 的计数结束中断计数结束,输出端产生 0-1 的上升沿,利用此信号可申请中断。2方式 1 的可编程单稳态触发器功能负脉冲的宽度可以由程序控制,改变计数初值就可以改变延时时间。3方式 2 的分频功能产生宽度相等连续的负脉冲,可以用作分频器,分频系数即计数初值。4方式 3 的方波发生器功能输出占空比近 1:1 的重复连续波形。5方式 4 和方式 5 的单个负脉冲发生器方式 4 和方式 5 都是单个负脉冲发生器,输出一个完整负脉冲,但

8、两者启动方式不同,前者为软件启动,后者为硬件启动。以上 5 种功能为 8254 的基本功能,用户以这些原始功能为基础,通过组合和设计可以进一步开发各种各样的应用。例如,用于计时系统,作定时中断;用于通信系统,作波特率始终发生器;用于实时控制系统,作数据采集和速度控制;还可以用于发声系统,作音乐发生器等。它们都是基于 8254 的原始功能或相互间的组合来.实现的。4参考文献1. 刘乐善主编,华中科技大学出版社,32 位微型计算机接口技术及应用2. 李玉声,现代机械2006 年第一期,机加零件自动包装计数定时装置的设计5. 附录5.1 8253编程命令字使用 8253 时,必须首先进行初始化编程。

9、初始化编程的步骤和内容如下:首先写入方式控制字,以选择计数通道,确定其工作方式。每一计数通道的方式控制字都是由 CPU 依次写入控制字寄存器的,控制字寄存器端口地址只有一个。然后写入计数初值到对应的计数通道中。若规定只写低 8 位,则写入的计数初值为低 8 位,高 8 位自动清 0;若规定只写高 8 位,则写入的计数初值为高 8 位,低 8位自动清 0;若规定写 16 位,则分两次写入,先写入的计数初值为低 8 位,后写入的计数初值为高 8 位,每个计数通道均有自己的端口地址。方式控制字的格式如下:SC1、SC0:计数通道选择。确定这个方式控制字是确定哪个计数通道的工作方式的。若 SC1SC0

10、=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 位

11、的寄存器。如果只写入低 8 位初值,则初值寄存器的高 8 位自动清 0;如果只写入高 8 位初值,则初值寄存器的低 8 位自动清 0;如果写入 16 位初值,则先写入低 8 位初值后写入高 8 位初值。计数通道在计数过程中,CPU 可以随时读取计数通道的当前值且不影响计数通道的现行计数,CPU 读取的计数通道的当前值是锁存寄存器中的值。在未锁存时(RL1RL000) ,减 1 计数器减 1 计数的同时把当前值送到锁存寄存器中,即锁存寄存器的值跟随减 1 计数器当前值的变化而变化。若在读计数通道当前值之前,先写入锁存命令(RL1RL0 = 00 ) ,则在计数过程中,减 1 计数器减 1 计数虽

12、然照常进行,但不把当前值送到锁定寄存器中,即锁定寄存器的值被锁定,当对计数通道重新初.始化或 CPU 读计数通道锁定值后,自动解除锁存命令,锁定寄存器的值又随减 1 计数器变化。在未锁定时,若 RL1RL0 = 11,可能会使从计数器直接读出的数值不正确,因为若先读入的低 8 位值 00H 时,由于在两次读数值之间计数器计数低 8 位可能向高 8 位有借位,造成后读入的高 8 位值错误,克服的办法可以用 GATE 无效或阻断CLK 时钟脉冲输入等方法,使计数器暂停计数,以保证 CPU 读到正确的计数器当前值。为了计数过程照常进行和保证 CPU 读到正确的计数器当前值,常常采用先写入锁存命令后读

13、入计数器当前值的方法。例如,若要读取计数通道 2 的 16 位计数值,初始化时若计数通道 2 工作在方式0,按二进制计数,设控制字寄存器地址为 F6H,计数通道 2 地址为 F4H,则程序为:MOV AL,10000000B ;计数器 2 锁存命令OUT 0F6H,AL ;写入锁存命令IN AL,0F4H ;读低 8 位当前值MOV CL,AL ;存入 CL 中IN AL,0F4H ;读高 8 位当前值并解除锁存状态MOV CH,AL ;存入 CH 中M2M1M0: 由这 3 位决定计数通道的工作方式。规定如下:M2M1M0: 000,计数通道工作在方式 0M2M1M0: 001,计数通道工作

14、在方式 1.M2M1M0: X10,计数通道工作在方式 2M2M1M0: X11,计数通道工作在方式 3M2M1M0: 100,计数通道工作在方式 4M2M1M0: 101,计数通道工作在方式 5BCD:该位用来决定计数通道在减 1 计数过程中是按二进制计数还是按二検 疲CD 计数制)以及写入的计数初值是二进制还是 BCD 数,若 BCD=0,则按二进制计数,写入的计数初值是二进制数初值范围是 0000FFFFH,其中 0000 为最大值,代表 65536;若 BCD=1,则按 BCD 计数,初值范围是 00009999H,它是十进制数的 BCD 码,其中 0000 是最大值,代表 10000

15、,9999H 代表 9999。注:读取计数器的当前值 直接读计数器:输出锁存器在非锁存状态会跟随计数器计数的变化而变化,直接读计数器是从锁存器得到计数器的当前值。但由于计数器处于工作状态,读出值不一定能稳定。 先锁存再读取:通过方式选择控制字对指定通道(SC1、SC0) 的计数值锁入锁存器(RL1RL0=00), 锁存器一旦锁存了当前计数值,就不再随计数器变化直到被读取。读计数器通道(有锁存器) 。5.2 8253的6 种工作方式详细介绍8253 的六种工作方式区别三个计数通道可有 6 种可供选择的工作方式, 以完成定时、计数或脉冲发生器.等多种功能: 方式 0:计数结束则中断 工作方式 0

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

17、变, 待 GATE 重新有效后,减“1”计数继续进行。 显然,利用工作方式 0 既可完成计数功能, 也可完成定时功能。当用作计数器时,应将要求计数的次数预置到计数器中,将要求计数的事件以脉冲方式从 CLK 端输入, 由它对计数器进行减“1”计数,直到计数值为 0,此刻 OUTi 输出正跳变,表示计数次数到。当用作定时器时,应把根据要求定时的时间和 CLKi 的周期计算出定时系数,预置到计数器中。从 CLK,输入的应是一定频率的时钟脉冲,由它对计数器进行减“1”计数, 定时时间从写入计数值开始,到计数值计到“0”为止,这时 OUTi 输出正跳变,表示定时时间到。 有一点需要说明,任一通道工作在方

18、式 0 情况下, 计数器初值一次有效,经过一次计数或定时后如果需要继续完成计数或定时功能,必须重新写入计数器的初值。.方式 1:单脉冲发生器 工作方式 1 被称作可编程单脉冲发生器。进入这种工作方式, CPU 装入计数值 n 后 OUT 输出高电平, 不管此时的 GATE 输入是高电平还是低电平, 都不开始减“1”计数,必须等到 GATE 由低电平向高电平跳变形成一个上升沿后,计数过程才会开始。与此同时,OUT 输出由高电平向低电平跳变,形成了输出单脉冲的前沿,待计数值计到“0” , OUT 输出由低电平向高电平跳变,形成输出单脉冲的后沿, 因此,由方式 l 所能输出单脉冲的宽度为 CLK 周

19、期的 n 倍。 如果在减“1”计数过程中, GATE 由高电平跳变为低电乎,这并不影响计数过程,仍继续计数;但若重新遇到 GATE 的上升沿,则从初值开始重新计数, 其效果会使输出的单脉冲加宽,如教材图 9-22(b)中的第 2 个单脉冲。 这种工作方式下,计数值也是一次有效,每输入一次计数值,只产生一个负极性单脉冲。 方式 2:速率波发生器 工作方式 2 被称作速率波发生器。进入这种工作方式, OUT 输出高电平,装入计数值 n 后如果 GATE 为高电平,则立即开始计数,OUT 保持为高电平不变; 待计数值减到“1”和“0”之间, OUT 将输出宽度为一个 CLK 周期的负脉冲,计数值为“

20、0”时,自动重新装入计数初值 n,实现循环计数,OUT 将输出一定频率的负脉冲序列, 其脉冲宽度固定为一个 CLK 周期, 重复周期为 CLK 周期的 n 倍。 如果在减“1”计数过程中,GATE 变为无效(输入 0 电平) ,则暂停减“1”计.数,待 GATE 恢复有效后,从初值 n 开始重新计数。这样会改变输出脉冲的速率。 如果在操作过程中要求改变输出脉冲的速率,CPU 可在任何时候,重新写人新的计数值, 它不会影响正在进行的减“1”计数过程,而是从下一个计数操作用期开始按新的计数值改变输出脉冲的速率。 方式 3:方波发生器 工作方式 3 被称作方波发生器。任一通道工作在方式 3, 只在计

21、数值 n 为偶数,则可输出重复周期为 n、占空比为 1:1 的方波。 进入工作方式 3,OUT 输出低电平, 装入计数值后,OUT 立即跳变为高电平。如果当 GATE 为高电平, 则立即开始减“1”计数, OUT 保持为高电平,若 n 为偶数,则当计数值减到 n/2 时,OUT 跳变为低电平,一直保持到计数值为“0” ,系统才自动重新置入计数值 n,实现循环计数。这时 OUT 端输出的周期为 nCLKi 周期,占空比为 1:1 的方波序列; 若 n 为奇数, 则 OUTi 端输出周期为 nCLK 周期,占空比为(n+1)/2)/(n-1)/2)的近似方波序列。 如果在操作过程中, GATE 变

22、为无效,则暂停减“1”计数过程,直到 GATE再次有效,重新从初值 n 开始减“l”计数。 如果要求改变输出方波的速率, 则 CPU 可在任何时候重新装入新的计数初值n,并从下一个计数操作周期开始改变输出方波的速率。 方式 4:软件触发方式计数 工作方式 4 被称作软件触发方式。进入工作方式 4,OUT 输出高电平。 装入计数值 n 后, 如果 GATE 为高电平,则立即开始减“1”计数,直到计数值减到.“0”为止,OUT 输出宽度为一个 CLKi 周期的负脉冲。由软件装入的计数值只有一次有效,如果要继续操作, 必须重新置入计数初值 n。如果在操作的过程中,GATE 变为无效,则停止减“1”计

23、数, 到 GATE 再次有效时,重新从初值开始减“1”计数。 显然,利用这种工作方式可以完成定时功能,定时时间从装入计数值 n 开始,则 OUT 输出负脉冲(表示定时时间到) ,其定时时间nCLK 周期。 这种工作方式也可完成计数功能,它要求计数的事件以脉冲的方式从 CLK 输入,将计数次数作为计数初值装入后,由 CLK 端输入的计数脉冲进行减“1”计数,直到计数值为“0”,由 OUTt 端输出负脉冲(表示计数次数到) 。 当然也可利用 OUT 向 CPU 发出中断请求。 因此工作方式 4 与工作方式 0 很相似,只是方式 0 在 OUT 端输出正阶跃信号、方式 4 在 OUT 端输出负脉冲信

24、号。 方式 5:硬件触发方式计数 工作方式 5 被称为硬件触发方式。进入工作方式 5, OUT 输出高电平, 硬件触发信号由 GATE 端引入。 因此,开始时 GATE 应输入为 0, 装入计数初值 n 后,减“1”计数并不工作,一定要等到硬件触发信号由 GATE 端引入一个正阶跃信号,减“1”计数才会开始,待计数值计到“0” , OUT 将输出负脉冲,其宽度固定为一个 CLK 周期,表示定时时间到或计数次数到。 这种工作方式下,当计数值计到“0”后, 系统将自动重新装入计数值 n,但并不开始计数, 一定要等到由 GATE 端引入的正跳沿,才会开始进行减“1”计数,因此这是一种完全由 GATE

25、 端引入的触发信号控制下的计数或定时功能。如果由.CLKi 输入的是一定频率的时钟脉冲,那么可完成定时功能,定时时间从 GATE 上升沿开始,到 OUT 端输出负脉冲结束。如果从 CLK 端输入的是要求计数的事件,则可完成计数功能,计数过程从 GATE 上升沿开始,到 OUT 输出负脉冲结束。GATE 可由外部电路或控制现场产生,故硬件触发方式由此而得名。 如果需要改变计数初值, CPU 可在任何时候用输出指令装入新的计数初值m,它将不影响正在进行的操作过程, 而是到下一个计数操作周期才会按新的计数值进行操作。 从上述各工作方式可看出,GATE 作为各通道的门控信号,对于各种不同的工作方式,它所起的作用各不相同。在 8253 的应用中,必须正确使用 GATE 信号,才能保证各通道的正常操作。 门控信号 GATE 的作用方式 功 能 GATE=1 GATE=0 GATE 上升沿0 计数结束产生中断 允许计数 停止计数 不受影响1 可重触发单稳 不受影响 不受影响 从初值开始重新计数2 分频器 允许计数 停止计数 从初值开始重新计数3 方波信号发生器 允许计数 停止计数 从初值开始重新计数4 软件触发选通 允许计数 停止计数 从初值开始重新计数5 硬件触发选通 不受影响 不受影响 硬件触发信号

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

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报