550 likes | 726 Views
专业综合项目设计. 学院 : 中德学院 班级 : 中德电气 07 级 制作 : 邹 轩 日期 : 2010-8-20. 课程意义. 对若干专业课程知识的综合运用 训练动手能力 ( 硬件 , 软件 ) 建立自动化系统 ( 非局部模块 ) 的概念 培养工程师素质 ( 发现 , 分析,解决问题的能力 ). 课程目标.
E N D
专业综合项目设计 学院: 中德学院 班级: 中德电气07级 制作: 邹 轩 日期: 2010-8-20
课程意义 • 对若干专业课程知识的综合运用 • 训练动手能力(硬件,软件) • 建立自动化系统(非局部模块)的概念 • 培养工程师素质(发现,分析,解决问题的能力)
课程目标 通过该课程的学习,提高学生查阅专业资料的能力,工程实践动手能力,和团队协作的能力。该课程的任务将启发、引导学生设计、开发、调试一个小型的自动化控制系统。在设计过程中,使学生学习分析问题,解决问题的方法.小组成员如何分解任务,配合协调,共同完成课题内容。为后期的工业实习、毕业设计打下一个良好的基础。
相关课程 • 自控原理—系统控制目标?,策略 • 微机原理—软硬件如何实现控制 • 检测技术—物理量如何转换成电信号 • C语言—高级语言编制控制程序 • 数字/模拟电路—对象与控制芯片之间的接口
参考资料 • 项目设计指导书 • 相关课程教材 • 计算机控制实验教程pdf文件 • 网上搜寻 • 补充知识(定时器8253,ADC0809,DAC-TLC7528)
任务进度安排 • 第1周 明确任务,熟悉装置 • 第2周 完成任务一 • 第3周 完成任务二,三(选做) • 第4周 完成任务四 • 第5周 完成任务五 • 第6,7周 完成任务六 • 第8周 整理报告,机动
注意事项 • 1、进入实验室时必须作好准备工作,带好相关书籍、电路图、程序草稿、笔记等,便于查阅参考,签到时检查。 2、任务所涉及的电路图、程序框图及说明可参考实验教程文件。 3、每个任务完成后请指导教师验收。 4、成绩由准备情况、工作态度、提问、报告质量等综合组成。 5、设计报告每组交一份,最后部分每人写各自体会并署名,交打印稿和电子文档。 6、所有曲线、波形均处理成白底深色线打印。
实验室安排 • 每周四分2批进行,上/下午各1批,3或2人/组,共16组. • 时间:上午8:00~11:30 下午13:00~16:30 课代表?,分组表 志愿者问题? 几人? 1~3周保证志愿者全天进实验室.4~6周其余同学全天进实验室,7/8周按上述安排
计数器/定时器接口芯片8253 实现定时/计数功能的常用方法可归纳为以下三种: (1)软件定时—程序计数 (2)纯硬件定时 (3)可编程定时器—8253芯片
基本功能 1)有3个独立的16位计数通道。 2)计数频率范围为0~2MHz,改进型8254-2的计数频率范围为0~10MHz。 3)2种数制计数:可以按照二进制或十进制计数。 4)每个计数通道都有6种工作方式,可由程序设置或改变。 5)所有输入/输出引脚都与TTL兼容。
工作原理 • 芯片核心—减1计数器 • 作定时器由系统内部时钟触发计数 • 作计数器由外部脉冲触发计数
1、控制寄存器 从数据总线缓冲器中接收控制字,以确定计数器的操作方式。 2、初始值寄存器 用来存放计数器所需要的初始值,0000-ffff/9999。 3、计数输出寄存器 用来存放计数器中的内容,可由CPU读出。 4、 状态寄存器 提供计数器/定时器当前所处的状态. 5、计数器 实际是一个具有减“1”功能的减法器,减为零则输出信号。
计数器对外有三个重要信号 (1)OUT0-2信号 计数到0输出信号,通知外部,常作为中断申请信号. (2)CLK0-2信号 CLK是一个触发信号,它决定了计数速率。 定时器的定时时间取决于计数脉冲的频率和计数器的初值,即: 定时时间=时钟脉冲周期*预置的计数初值 (3)GATE0-2信号 GATE是一个门控信号, GATE =1允许计数。
8253的内部结构及引脚 图10.2 8253的内部结构及引脚图
数据总线缓冲器 (2) 读/写逻辑电路 各控制信号及作用如下: A1和A0:端口选择信号,00-11,4个寄存器。 RD:读信号,低电平有效。 WR:写信号,低电平有效。 CS:片选信号,低电平有效。
(3) 计数器 图10.38253计数器结构图
8253的控制字 图10.4 8253的控制字
8253的工作方式 1、方式0——计数结束中断方式 控制字CW=10H,初值LSB=4 图10.5方式0波形图
(1)OUT信号 控制字写入后,OUT变低电平,直到计数器减到0时才变为高电平。OUT输出可以作为计数结束的中断信号。 (2)GATE信号 计数器受GATE信号控制,当GATE=0时,停止计数器的计数操作;当GATE=1时,计数器继续计数。 (3)初始值 一是每次装入初始值后计数器只计数一遍。 二是计数过程中可重新装入计数初值。 另外,若设置初值为N,则输出信号OUT是在N+1个CLK脉冲之后才变高的。
2、方式1——可编程单稳触发器 图10.6方式1波形图
3、方式2——分频器 图10.7方式2波形图
4、方式3——方波发生器 图10.8方式3波形图
5、方式4——软件触发选通 图10.9方式4波形图
6、方式5——硬件触发选通 图10.10方式5波形图
8253各工作方式之间的异同点 1、各工作方式的共同点 (1)当控制字写入计数器时,所有的控制逻辑电路立即复位,输 出端OUT进入初始状态:高电平或者低电平。 (2)初始值写入后,要经过一个时钟上升沿和一个下降沿,计数执行部件才开始工作。 (3)在时钟脉冲CLK的上升沿时,门控信号GATE才被采样。 2、各工作方式的不同点 (1)软件触发启动计数 (2)硬件触发启动计数 (3)自动装入计数初值 (4)门控信号GATE的控制作用
计算计数初值 1) 已知:要求定时31.25us,外部脉冲f=2.432MHz 求:计数初值? 2) 已知:系统时钟f=1MHz,要求每20us在out0输出方波,每200us在out1输出一个负脉冲. 求: 通道0/1方式,初值0/1? 3)如要求定时的时间大于定时器能设定的范围,即初值大于FFFFH,怎么办?
CS CS 数据线 数据线 模拟量输入 D7 ┇ D0 IN:输入 EOC:转换结束 START:A/D转换启动 A/D IN D7~D0 8255A CPU EOC PC4 PC3 INTR START 地址译码 CLK0 GATE0 OUT0 方式2 时钟发生器 CLK1 GATE1 OUT1 · 方式1 数据线 +5V D7~D0 CLK2 GATE2 OUT2 D7~D0 方式3 · 手动开关或继电器 转换 8253 停止 10.5 8253的应用举例 设要求A/D转换器的采样周期为250ms,采样信号持续时间为1s。试用8253连接硬件电路,并编程实现此功能。 图10.11 8253作为定时器
具体的程序段如下:MOV AL,14H OUT 43H,AL MOV AL,0FAH OUT 40H,AL MOV AL,73H OUT 43H,AL MOV AX,05H OUT 41H,AL MOV AL,AH OUT 41H,AL MOV AL,96H OUT 43H,AL MOV AL,0C8H OUT 42H,AL
模/数转换器-- ADC 0809 性能 • 8bit逐次逼近式模/数转换 • 转换时间=100us, • 8通道(路)模拟量输入 • 分辨率=输入范围/28(mv/bit) 输入范围:0~5v,0~10v,-5~+5v • 最大量化误差1/2LSB(最低位二进制所表示的物理量), 如分辨率=20mv /bit,最大量化误差=? • 28脚双列直插式封装
ADC0809逻辑结构 逻辑框图 • 8路通道模拟开关,接收模拟信号 • 通道选择逻辑,地址锁存与译码 • 8位A/D转换器,有比较器、开关树、电阻网络、控制时序组成 • 三态输出锁存缓冲器,存放转换后的数字量
ADC0809引脚 • D7~0--数据线(已连CPU) • IN0-7--模拟量输入 IN1-5范围0~4.98v, IN6/7范围-5~4.98v, IN0对地500欧专用 • A、B、C--通道选择 000~111对应IN0-7 • ALE--锁存ABC端的通道号 • OE—三态锁存 OE上跳边 D7-0 输出, OE下跳边 D7-0 高阻
ADC0809引脚 • START -- 启动转换信号,上跳边有效,可 连Pci接口输出,程序启动 • EOC-- 转换结束信号,上跳边有效,告知CPU可读转换结果。启动后,CPU可用查询方式或 中断方式了解A/D 转换是否结束 查询:EOC—PC7 中断: EOC—IOR(INT) IN AL ,DX 申请中断 TEST AL , 80H 进入服务程序 JNZ(转入读结果) 读结果
时序图: 应用见任务书图1、3、4 ALE C.B.A START EOC t OE DATAOUT DO7-0
其他引脚: VREF(+) =5.12V VREF(-)=0V CLOCK—时钟 VCC—5V 电源 GND—地
数/模转换器-- DAC -TLC7528 一、性能 • 8位并行数据输入 • 2路电压型模拟量输出,电流型模拟量输出(DAC0832) • 转换时间100ns • 数字量范围00~FFH • 输出电压:-5v~+4.96v
TLC7528引脚 CS—片选 WR—写信号 A0—通道A/B选择 D7~0—数据线 OUTA、B—模拟量输出端 RFBA、B—反馈电阻
DAC输出调零 • 线性关系: 00h-- -5v,80h--0v,ffh--+5v 将80h输出到2个通道,调节W101/102电位器,使out1/2端为0v。 • 应用见任务书图2、3、4
其他问题 • 驱动模块(达林顿电路) ABCD—数字量来自并行口 A’B’C’D’—驱动输出0~12v,经功放可驱动对象 • LED点亮 A~H对应的8个段码要输入低电平
任务一(模/数转换) • 启动ADC STR连接OUT1(TMROUT1),定时器每1ms由上跳边触发SRT引脚,见图1 • 采样周期定时 AD0-9十个采样值间隔时间,由软件计数延时实现,CX计数值=3000H • 系统初始化程序 对各个芯片进行初始化,后续程序直接应用
任务一(数/模转换) • 产生锯齿和三角波 把时间坐标拉开后的波形? • 算法 锯齿波值: 00,01,02~ff, 00,01,02~ff… 三角波值: 00,01 ,02 ~ff, fe,fd~01,00,01… • 输出值保持定时 软件计数定时,定时器定时(成绩有区别) **出示程序初稿,完成后验收
任务二 采样和保持 • 输入正玄波 转换成数字量再输出 功能是将任务一的两部分合成 • 采样时间和保持时间 软件计数定时,定时器定时(成绩有区别) • 有时间和兴趣,试用C语言实现功能 • 任务三选做
下周准备工作 • 学习补充教程文件 • 任务四编程 提供主程序,自己编1ms定时程序 PWM波输出程序: 占空比=高电平时间VH/脉冲周期TK*100%, • 任务五提供程序,填入相关信息
任务四 PWM电机调速 • 端口描述 利用P2.0口输出脉宽变化的脉冲,引脚端是DOUT0,地址为:0F86AH • 驱动模块 A端为并行口输出0~5v,A’端经驱动输出0~12v,连接直流电机。 A端经反相器连接驱动模块, 故 DOUT0=0,电机转动 DOUT0=1,电机停止
任务四 PWM电机调速 • 测速方法 HR0为霍尔元件输出端,电机每转一圈, HR0输出一个负脉冲 • 程序计算转速 如设定时1MS,在1MS内读得n个脉冲, 转速= 1MS*103*60*n(rpm) • 看波形测转速 用虚拟示波器测HR0,由脉冲周期求得转速
实际对象 386 驱动 给定值 PWM/PID 电机 _ A/D 测速传感器 给定值 被控参数 控制器 执行机构 被控对象 转速调节原理 • 开环控制系统
转速程序原理 • 变量说明 TK—PWM周期 占空比—PWM-T=脉宽/TK*100% FPWM—PWM标志 FPWM=1,00=》 DOUT0 FPWM=0,01=》 DOUT0 • 高/低电平持续时间计算 VH=周期*占空比=TK* PWM-T/100 VL=周期- VH
转速程序原理 • 主程序 系统初始化、定时1MS初始化 • 中断程序 1MS定时时间到,判断应该输出00还是01,VL通过计数不为0输出低电平, VH通过计数不为0输出高电平