440 likes | 514 Views
第十四章 微型计算机控制系统设计. 设计原则:. ☻ 可靠性高. ☻ 操作性好. ☻ 实施性强. ☻ 通用性好. ☻ 经济效益高. 第一节 控制系统设计的一般步骤. 一般设计步骤: ► 系统总体控制方案设计 ► 微型计算机选择 ► 控制算法设计 ► 硬件设计 ► 软件设计 ► 系统联调. 一、确定系统总体控制方案. 构思系统的整体方案,应从以下几方面入手 : ► 考虑系统结构 ► 执行机构采用什么方案 ► 有否特殊控制要求?特殊要求应采取那些措施。
E N D
第十四章 微型计算机控制系统设计 设计原则: ☻可靠性高 ☻操作性好 ☻实施性强 ☻通用性好 ☻经济效益高 第一节 控制系统设计的一般步骤 一般设计步骤: ► 系统总体控制方案设计 ► 微型计算机选择 ► 控制算法设计 ► 硬件设计 ► 软件设计 ► 系统联调
一、确定系统总体控制方案 构思系统的整体方案,应从以下几方面入手 : ► 考虑系统结构 ► 执行机构采用什么方案 ► 有否特殊控制要求?特殊要求应采取那些措施。 ► 确定计算机在整个控制系统中所起的作用 二、选择计算机 所选计算机应满足以下要求: ► 完善的中断系统 ► 足够的存储容量 ► 完备的I/O通道和实时时钟 三、控制算法设计
四、硬件设计 任务:根据系统总体框图,设计出系统的电气原理图,再按照电气原理图选购元件和进行施工设计。 包括:► 接口电路和I/O通道的扩充 ► 组合逻辑或时序逻辑电路 ► 供电电源 ► 光电隔离 ► 电平转换 ► 驱动放大电路等
★接口设计 接口设计内容: ► 扩充接口 ► 安排接口电路的I/O信号及交换方式。 常用的扩充方法: ► 选用专门的功能接口板 ► 选用通用接口电路 ► 用集成电路自行设计接口电路 接口电路I/O信号的交换方式: ► 中断控制读取I/O方式 ► 直接存储器存取方式
★ 通道设计 系统I/O通道:► 数字量I/O通道 ► 开关量I/O通道 ► 模拟量I/O通道 ► 脉冲量I/O通道 在总体设计中,应确定本系统应设置什么样的通道、每个通道由几部分组成,各部分选用什么器件等。 ★ 操作员控制台设计 包括:各种转换开关、按钮、键盘、数字显示器、状态故障指示灯等。 ★ 可靠性设计
五、软件设计 系统软件 应用软件 软件 组织应用软件的内容及步骤: ► 确定具体要求 ► 软件规划 ► 程序编制 ► 软件调试 ► 善后工作 ★ 确定具体要求 ► 管理要求 ► 输入输出要求 ► 语言加工要求 ► 功能处理要求
★ 软件规划 ► 模式选择 ► 语言选择 ► 汇编语言 ► 高级语言 ► 确定数据结构 ► 划分程序块 ► 确定程序编制顺序 ► 内存安排 ► 用符号来代替某部分程序的首址。 ► 粗略估算各部分容量 ► 根据具体情况对内存作精确安排
★ 程序编排和分配 ★ 软件装配和总调 ★ 软件设计的善后工作 六、系统联调 ★ 硬件软件功能分配与协调 大量使用硬件会增加成本,影响系统可靠性;增加软件,系统速度相应降低 。
第二节 微型计算机控制系统的软件 一、软件的分类 操作系统 语言加工系统 诊断系统 编辑程序 编译程序 连接、装配程序 调试程序 子程序库 系统软件 应用软件 软件 控制程序 数据采集及处理程序 巡回检测程序 数据管理程序 数据可靠性检查程序 A/D转换及采样程序 数字滤波程序 线性化处理程序 数据采集程序 越限报警程序 事故预告程序 画面显示程序
二、应用程序的语言选择及设计步骤 1、语言选择 ► 机器语言 ► 汇编语言 ► 高级语言 2、应用程序的设计步骤和方法 应用程序设计的五个步骤: ► 问题定义 ► 程序设计 ► 编码 ► 调试 ► 改进和再设计
程序设计通常采用模块程序设计法和结构程序设计法程序设计通常采用模块程序设计法和结构程序设计法 结构化程序设计基本思想的三种基本结构表示: 顺序结构 选择结构 循环结构
三、高级语言和汇编语言的混合编程 1、 混合语言编程的基本概念 1)程序接口 在一种语言程序中调用由其他语言编写的程序模块。 2)命名约定 为了解决不同语言对名称标识符的不同处理,对目标文件名长度的不同限制的约定。 3)调用约定 在两种程序语言中为实现彼此调用而建立的一种协定,它具体对应了一个函数、一个过程或者是一个子程序的调用过程。 4)参数传递约定 在定义或说明时用形式参数,调用时则替换成实际参数.
参数传递方式: ► 传值 ► 传址 ► 传名 ► 传结果 2、 C语言程序对汇编语言程序的调用 1)C语言程序中的接口处理 ► 命名约定 ► 调用约定 ► 参数传递约定
2) 汇编语言中的接口处理 ► 在定义和编写汇编语言程序的被调用过程时,应以下划线开头,并用PUBLIC说明. ► 如果C语言程序以巨型、大型、存储模式编译,被C语言调用的汇编过程应说明成fa;小型、紧凑型存储模式编译,被调用的汇编过程应说明成NEAR。 ► 考虑调用约定 ► 在被C语言调用的汇编过程中用指令RET返回,而在BASIC等其他语言中要求用指令RETn返回。 ► 根据缺省默认,C语言的参数传递方式是传值,但数组总是采用传址方式。
3、汇编语言程序对C语言程序的调用 1)命名约定 2)调用约定 3)参数传递的方式 4、微型计算机控制系统的研制工具 利用联机仿真器可以实现以下开发手段: 1)系统实时仿真 2)资源借调 3)控制系统综合设计和调试
三、常用应用程序设计 1、 数字滤波器 ► 算术平均值滤波 算术平均值滤波程序流程图
► 中值滤波 中值滤波程序流程图
► 一阶滞后滤波 一阶滞后滤波程序流程图
► 程序判断滤波 ★限幅滤波 限幅滤波程序流程图
★ 限速滤波 限速滤波程序流程图
2、 线性化处理 分段线性插值
3、数码显示 两位十进制数显示程序流程图
第五节 炉温控制系统 电阻炉微型计算机温度控制系统的设计。 一、系统总体设计 1、确定系统的控制任务 控制对象:电阻炉。 设计要求:►温度在6001000℃范围内连续可控; ►要求系统能够对温度巡回检测、显示和定时打印。 计算机控制系统应完成的主要任务有: ►温度的闭环直接数字控制。 ►温度的巡回检测、显示和定时打印。
系统组成: ☻ 微型计算机 ☻ 输入通道 ☻ 输出通道
2、输入输出通道及其接口设计 1)温度检测模拟输入通道设计
小信号 V.I f 信 号 放大器 0~ 10V 光 电 耦合器 传感器 CPU V/F 特点:采用了由V/F变换器和定时计数器组成的A/D转换器。 V/F转换输入通道的结构通常为:
设V/F变换器的额定输出频率为F,计数器对输出脉冲的计数时间为Ts,A/D转换结果的分辨率为i,则有: 取Ts=1s,则在V/F的输出频率范围0~10kHz内,可以得到13位的A/D转换结果。
导通角 R ↓iA + VAK - + ~US _ IG→ 2) 晶闸管数字触发输出通道设计 ★ 晶闸管简介 晶闸管(可控硅整流器) ——功率放大器件。 晶闸管的工作方式有: ► 调压方式 ► 调功方式 调压方式:是通过利用移相触发脉冲调节晶闸管的导通角,使输入到电加热元件的电压改变,达到调节用电器的输入功率,来实现控制目的 。
调功方式:触发电路采用的是过零触发方式,外加正弦电压过零时控制信号才使晶闸管的触发导通,则负载上得到的电压是一个正弦波。调功方式:触发电路采用的是过零触发方式,外加正弦电压过零时控制信号才使晶闸管的触发导通,则负载上得到的电压是一个正弦波。 调功方式输入电炉的平均功率为: P——输入电炉的功率;R——负载有效电阻;U——电网电压 ;n——允许导通的波头数;N——设定的波头数。 当 n=0时,电炉的输入功率为零; n=N,电炉的输入功率为满功率。
电网电压 同步脉冲 ★ 晶闸管数字触发输出通道设计 过零检测同步脉冲电路 :
3) 拨码盘给定输入通道 拨码盘作为数字量的输入设备,设定和修改码盘值可作为控制系统的给定值。 输入非数字信息时,需要事先将非数字信息转换为数字代码,再由拨码盘输入。 4) 数码显示输出通道 包括:► 数字量输出接口电路 ►锁存译码驱动电路 ►七段数码管显示器 炉温显示:一位显示温区代号,四位显示4位温度值; 网带速度显示:一位显示网带速度代号,四位显示网带速度。
5) 打印机输出通道 ► 系统配置了通用打印机接口电路。 ► 打印内容包括表头、制表、采样数据和采样时间。 二、微型计算机选择 控制系统选取采用STD总线标准的模块式工业控制计算机。 本系统: ►主机板采用8031单片机多功能CPU模板。 ►配置了显示及操作面板接口模板, ►打印机接口模板。 ►非通用数字触发控制模板 ►反馈通道的V/F变换及A/D转换模板,
三、控制算法设计 整个系统属于多变量系统,其数学描述传递矩阵为: 其中: 离散后可近似为: 式中:y(k)—— 6×6矩阵;U(k)—— 6×1矩阵; A —— 6×6矩阵; B —— 6×6矩阵。
对于系统的每一个温区,其简化动态结构: 广义传递函数为: 广义脉冲传递函数为: 系统的闭环脉冲传递函数为:
数字控制器的脉冲传递函数为: 进一步简化为: 式中: 差分化后得到控制器差分方程:
四、硬件设计 硬件电路设计有: ► 前级放大器及多路模拟转换开关。 ►A/D转换模板。 ► 数字触发控制模板。
五、软件设计 ★ 系统控制程序的任务 ► 系统初始化。 ► 多路模拟转换开关的切换控制。 ► 温度反馈信号采样和数字滤波、线性化处理。 ► 读给定输入值,且将BCD码转换为二进制码。 ► 完成系统的控制算法和控制输出。 ► 定点或巡回显示温度值。 ► 定时打印时间、温度。
★ 系统控制程序的模块化 按控制功能将程序分成三个程序模块: ● 系统初始化程序模块 系统初始化包括: ► 设置堆栈 ► 清除动态数据缓冲区 ► 初始化打印缓冲区 ► 设置8253计数器的控制字和计数初始值 ► 设置时钟系统的初始值 ► 设置控制算法程序的初始值 ►系统中断控制初始化等
● 外部中断服务程序模块 中断服务程序的任务: ►读取A/D转换结果,以BCD码的形式送到数码管中显示。 ►读取温度给定值并将BCD码转换为二进制码。 ►外部中断产生ls钟内,将多路模拟转换开关切换到下一个通道。
●定时打印程序模块 程序内容: ►实时时钟程序 ►根据设定时间完成打印控制