小型PLC通用人机界面装置设计.pdf
小型P L C 通用人机界面装置设计 Gener aI hum an- m achi ne i nt er f ace devi ce of s m al l PLC 林植洲,蔡启仲,李克俭,潘绍明,未庆超 L I N Z h i - z h o u ,CA I Qi z h o n g ,L I K e - j i a n ,P AN S h a o . rui n g ,WE I Qi n g . c h a o 广西科技大学 电子与信息工程学院,柳州 5 4 5 0 0 6 摘 要针对自主研制的通用小型可编程控制器被控对象的不同,设计了一种通用人机界面装置。给出 了人机界面装置的总体设计方案 ,详述了硬件结构设计、软件设计过程,软件设计中重点介 绍了人机界面物理量与PL C 软元件映射关系的建立过程 ,最后结合具体应用实例说明了该通用 人机界面装置的可行性。 关键词人机界面;小型P L C;CA N;软元件;L P C2 4 7 8 中图分类号 T P2 3 文献标识码 A D o i 1 0 . 3 9 6 9 / J . i s s n . 1 0 0 9 -0 1 3 4 . 2 0 1 3 . 1 2 上 . 3 7 0 引言 在工业控制领域 ,人机界面 Hu ma n Ma c h i n e I n t e r f a c e , 简称H MI 以其友好的人机交互功能,被 广泛的使用在工业控制设备之中,人机界面和P L C 组合的控制系统更是得到 了广泛的应用 ,根据P L C 被控 对象的不同或应用场合 的不同 ,用户对人机 界面的需 求也有所不 同 q 。为 了满 足不 同被 控 对 象的应用需求,提高人机界 面的开发效率和 利 用率,本文结合 自主研制 的通用 小型可编程控制 器 ,设计了一种通 用人机界面 装置,给 出了具体 软硬件设计,并建立了人机界面的物理量与P L C软 元件的映射关 系,使人机界面能和P L C进行准确通 讯,最后以具体实例进行了验证。 1 人机界面总体方案 通用人机界面作为小型P L C 控制系统中的监控 装置 ,通过CA N总线与由A R M和F P GA 构成的P L C 主机进行通讯 ‘ 。通用人机界面装置的设计遵循 以下原则 1 硬件简单、可靠 、廉价且运行环境 好 ,并配有大容量存储器 ,提供静态与动态参数 数据等的存储;2 软件简单、实用、开发方便 3 人 机交互界面友好;4 通用性好 ,能应用于 不同被控对象。 在人机界面装置 的电路系统设 计方面 ,采用 L P C2 4 7 8 微控制器和迪文智能显示终端为核心硬 件 ,配置CAN接 口模块 以及其 他外 围电路模块 , 能够达 到一 台 P L C 配置 多台人机界面 ;在软件 结构方面 ,由界面设计软件和 系统程序作支持 , 文章编号1 0 0 9 -0 1 3 4 2 0 1 3 1 2 上 - O l 3 2 -0 4 系统程序采用 C语言结合迪文指令集进行二次开 发 ,在此基础上实现人机界面的各项功能 ,设计 人机 交互 系统 。 2 人机界面硬件结构设计 人机界面硬 件 由主控制器模块 、显示模块 、 CAN接 口模块、辅助模块 、其他接 口模块组成 。 硬件框图如图1 所示。 1 L P C2 4 7 8 是基 于3 2 位ARM7 内核的微控 制器,工作频率为7 2 MHz ,集成 了丰富的外设组 件 ,作为人机界面的主控制器 ,主要承担系统各 模块的控制任务及通讯功能。 2 显示模块 采用5 . 6 寸迪文智能 显示终端 , 显示终端通过RS 一 2 3 2 串 口与L P C 2 4 7 8 或P C 机进行 通讯 。通过显示终端 的显示屏和触摸屏实现被控 对象控制参数 的输入和 显示 、运行参数 的实时显 示 、报警信息显示等;显示终端 自带 1 2 8 MB Na n d F L AS H的用户存 储空间 ,其 中6 4 MB的 图片存储 器能存储6 4 0 4 8 0 的全屏图片1 0 2 幅 ;最大3 2 MB 的数 据存储器, 其 中6 4 KB的用作 随机存储空 间、 2 9 . 8 7 5 MB的作 为顺序存储 空间用于存 储历 史数 据,以便 于对数据 进行分析 ;显示终端 能外接最 大66 矩阵键盘 ,便于用户在需要使用外接键 盘 时,接入人机界面进行输入。 3 由于L P C 2 4 7 8 内部集成 了CA N控 制器 ,本 文采用具有DC 2 5 0 0 V隔离功能的CT M8 2 5 l T 芯片 作为CAN收发器 ,人机界面通过C AN接 口与小型 P L C系统连接 ,C AN接 口模块主要实现C AN总线 上信息的接收和发送 。 收稿日期2 0 1 3 - 0 8 -1 8 基金项目广西科学基金项 目 桂科 自0 9 9 1 0 6 7 作者简介林植洲 1 9 8 5一 ,男,福建福州人,硕士研究生,研究方向为过程控制与自动化装置。 [ 1 3 2 ] 第3 5 卷第1 2 期2 0 1 3 1 2 上 学兔兔 w w w .x u e t u t u .c o m l 匐 似 围显 示 溪 块 -● ●_ __ __ ● I P Lc主机 R S . 2 i2 .油 寸 内 枋 鳜 动 越 鲴I. 广 ] . 触 摸 屏 P C机 -.4 K 6 0 0 广 _ 1 l一 和 外 接 l ARM 键盘 ’ 1 I l _ l l 2 8 M B 存 储 器l l I R S 之3 2 F P G A l c A N接 口模块 I I L P C 2 4 7 8 图 幸 CAN总 线 l 接 口 I 嵩啬啬 茵 I 他接口 漠块 图1 人机界 面硬 件结构框图 4 辅助模块由电源管理模块、时钟模块、报 警模块 、复位模块组成 ,为 系统功能 的实现提供 了必要的协助 。其它接 口模块 中还配置 有US B接 口与 调 试接 口。 3 人机界面软件设计 软件设计包括 界面设 计 ,系统程序设计 以及 人机界面物理量与P L C 软元件映射关 系的设计。映 射关系的设计为界面设计中的键码配置、系统程序 设计中键码与软元件编码转换程序提供了依据。 3 . 1人机界面物理量与P L C 软元件的映射设计 3 . 1 . 1设计思路 在 由AR M与F P GA组 成的P L C主机 的用户存 储 区中每个软 元件 保存的信息都与被控对象的工 作状态或运行参数相关H ’ ,即每一个软元件编号 与每 一个被控 对象实际物理量都有唯一的对应关 系,每一个软 元件 的信息表示了该物理 量的数 据 或开关量状态 。为 了使人机界 面能够显示被控 对 象实 际物理量 的信 息,应建立起 人机 界面物理 量 与P L C 软元件唯一的映射关 系。 在P L C主 机 中与人机 界面通讯 的P L C软元件 有输入继 电器 、输 出继 电器 、辅 助继电器、定时 器 、计数器 、状态器 、数据寄存 器。为了建立 人 机 界面物理量与软元件 的映射关 系,首先给每个 ] I I J I I l f l ~ P L C 软元件赋予一个确定值;接着在给人机界面物 理 量配 置键码值时,根 据人机 界面 的开关量要 与 P L C 主机 中保存被控对象开关量状态的软元件相对 应、人机界面显示的模拟量要与P L C主机中保存被 控对象模 拟量设定值 或当前值的软 元件相对应的 原则,把 人机界 面物理 量的键码值配置成 与其对 应P L C 软元件 的赋值相同。这样就建立起了人机界 面物理 与P L C 软元件的映射关系。 3 . 1 . 2具体设计 考虑到本装置最大配置键码值为9 9 9 9 ,而P L C 主机 中与人机界面通讯 的软 元件 总个数超过这个 数值 ,因此要对P L C软元件的个数 做进一步的限 定 。在考虑实 际使用情况后 ,本设计对与人机界 面通讯的P L C 软元件做 了如下规定,并赋给一个确 定值,具体如表 1 所示。 表1 与人机界面通讯的P L C软元件赋值设计表 软元件 软 元件编 号 赋值 输入继 电器 X X O 。 X1 2 7 0 1 0 0 0 2 2 7 输 出继 电器 Y Y 0 . Y1 2 7 0 3 0 0 . 0 4 2 7 定时器 T T 0 . T 2 5 4 0 5 0 o . 0 6 5 4 计数器 c C 0 。 C 2 5 4 0 7 O 0 9 5 4 状态器 S S O . 4 9 9 1 0 0 0 . 1 4 9 9 辅助继 电器 M Ⅳ 【 0 一 M2 9 9 9 1 5 0 0 4 4 9 9 数据寄存器 D DO . D4 9 9 9 4 5 0 0 9 4 9 9 第3 5 卷第1 2 期2 0 1 3 -1 2 上 1 1 3 3 ] 学兔兔 w w w .x u e t u t u .c o m l 匐 似 自主 研 制 的小 型P L C控 制 系统 采 用 了C AN 2 . 0 B 标 准帧格式的 自定义CAN协议作为系统的通 信协 议 ,该协议采用起始位设 备地址数 据类 型数据号 数据长度数据 - 4 - C R C 校验 结束 标志 。在协议中定义 了软元件的编码规则 ,具体 如 表2 所示 。 表2 人机界面与P L C 主机通讯的软元件编码 数 据类型 8 位 数 据号 1 6 位 0 x 0 1 x 输 入继电器 0 x 0 2 Y 输 出继 电器 0 x 0 3 S 状态器 对于P L C软元件 X / Y / S / 0 x 0 4 M 辅助继 电器 T / D / M/ C ,数据号指后 0 x 0 5 D 数据寄存器 面的编号 ,例如 ,X1 2 的 数 据号为1 2 。 0 x 0 6 C 计数器 0 x 0 7 T 定时器 3 . 1 . 3 实现过程 以保 存P L C主机 工作状 态 “ 手动 ”信息的软 元件M1 为 例, 将显示界 面 中 “ 手动 ”控制按钮 的 键码值依 据表 1 配置为 1 5 0 1 0 x 0 5 0 x DD,当按 下 “ 手动 ”按钮 时显示终端通过 串 口上传一个携 带键码值为 0 x 0 5 0 x DD的迪文指令给L P C2 4 7 8 , L P C 2 4 7 8 收到这条指令提取键码为0 x 0 5 0 x DD时, 判断为改变P L C主机的工作状 态为手动 ,并 将键 码值转 换成软 元件M1 的编码信 息 数 据类 型为 0 x 0 4 、数据号为0 x 0 0 0 x 0 1 。将编码信息按照 自定 义 的CAN协议进 行填 充编码 写成改变M1 状态 的 C AN指令,通过C AN总线传给P L C主机 。这样就 实现了通讯过程 中人机界面物理量与P L C 软元件映 射关系的转换 。 3 . 2 界面设计 界面设计软件 由P C机上的画图软件 、迪文触 控界面制作软件 、迪文演示助理软件构成 。界面 设计采用迪文触控界面设计方式 ,用户可 以根据 需要在P C 机上用画图软件设计出类似wi n d o ws 风格 的 图形 界面 来 实现人 机 交互 。 显示界面 用画图软件制 作完成之后 ,由迪文 触控界面制作软件配置界面 间的触控关 系、界面 中显示 的物理 量按人机界面物理量与P L C软 元件 映射关 系进行键码配置 ,并生 成触控配置文件 。 通过迪文演示 助理软件调试 后把 显示界面和触控 配置文件下载到 显示终端 ,并 对显示终端 的参数 进 行设置 包括界 触控 方式设 置、串 口通信 波特 率设 置等。本设 计把 触控 方式设计 成点击 有效触 [ 1 3 4 ] 第3 5 卷第1 2 期2 0 1 3 -1 2 上 控 区域才发 出声音 ,并上传触控键码值 当点击 显示界面 中的控制按钮 、数值显示框或数字键盘 时 ,迪文智能显示终端通过 串口 自动上传一 个携 带相应键码值的迪文指令到L P C 2 4 7 8 。 3 . 3 系统程序设计 系统程序通 过c语言结合 迪文指 令集进行开 发,采用模 块化结构设计 方法进行设计 。人机 界 面系统程序由4 个模块组成 系统初始化模块 、中 断模 块 、功能 模块 和 主控模 块 。 系统初始化任务主要是实现人机界 面系统各 个硬件驱动的初始化;中断模块包括串 口接收 中 断程序和CA N接收 中断程序 ,通过 中断程序保证 迪文显示终端通过 串口发送来的数据和CA N总线 上的数据的实时接收 ;主控模块完成系统工作任 务判断 ,进行正常控制循环 ;功能模块包括键盘 输入程序、键码 与软元件编码转换程序 、CA N编 码程序 、CAN解码程序 、串 口编码程序 、串口解 码程序 、数据保存程序、光标显示程序等具体功能 小模块 。本文的键盘输入程序采用工业中应用比较 广泛的 “ 防错误输 入法”进行设计 ,即当输入错误 值时,不用退出,只需重新输入正确的值即可。 人机 界面装置每个功能都 是通过调 用这 些具 体功能小模块来实现的,如对P L C被控对象参数进 行设定功能 的实现过程如图2 所示。 开 始 ’ j 点 击 数 字 键 盘 中 的 上 数 字 调 用 数 据 显 示 程 序 点击参数设定 一 把设计值发送到屏 的数值显框 幕进行显示 1L 调 用 键 盘 输 入 程 序 实 现 数 值 输 入 r 显示终端经串口上 调用键码 与软元件 传一个携带数值显 / 否 转 换 程 序 进 行 信 息 示 框 键 码 值 的 指 令 转 换 到I P C 2 4 7 8 』 1 r 调 用 C A N 编码程序对 调 用 串 口 解 码 程 序 足I 软 元 件 和 设 定 值 进 进 行 解 码 行 编 码 点击数字键盘 中的 “ [ K ”键进行确认 1 r 主控模块中工作任 调硐C A N 发送程序将 务通过键码值判断 编码的信息发送到 为参数设定任务 调用关闭光标程序 C A N 总线上 关闭闪动光标 I 调用显示光标程序 调用随机参数保存 ● 在 数 值 显 示 框 中 闪 程 序 保 存 设 定 值 结 束 动光标 I l 1............ .........一 图2 参数设 定功 能的实现 过程 学兔兔 w w w .x u e t u t u .c o m I 违 匐 似 4 实例验证 本文 以太阳能热水器控制 系统 为试 验对象 , 在构建好 的通 用人机界 面平台上进行二次开发 。 依据 系统要 求 】 ,人机界 面要 实现的主要功能 有 水位显示/ 设定 、温度显示/ 设定、自动/ 手动控制、 报警显示 等,系统显示界面的显示菜单设为2 级菜 单的形式 ,例举菜单 中参数设置界面功能如果图3 所示。 图3 太阳能热水器控制系统人机界面功能莱单 首 先将人机界面的物理量 与保存太 阳能热水 器信息的P L C 软元件进行一一映射,例举部分映射 关 系如表3 所示;接着用画图软件制作所需 的显示 界面 ,并配置各界 面的触 控关 系和键码值 ;最后 经调试无误后把显示界面 、触 控配置 文件下载到 人机界面装置。 表3 部分人机界面物理量与P L C 软元件的映射关系 物理量 键码值 P L C 软元件及其 信息 水 位上 限 4 5 1 3 D1 3 保存水位上限设定值 水 位下 限 4 5 1 4 D1 4 保存水位下限设定值 温 度上 限 4 5 1 5 D1 5 保存温度上限设定值 温度下限 4 5 1 6 D1 6 保存温度下限设定值 出水温 度 4 5 1 7 D1 7 保存出水温度设定值 将人机界 面装置接入控制 系统对太 阳能热 水 器进行实时监控 。显示 系统运行时参数设置界面 如图4 所示。 图4 参数设置界面 5 结束语 采用L P C2 4 7 8 微 控制器结合迪文的智能显示 终端进行通用人机界面设计 ,提高 了系统的处理 速度和设计的可靠性 ,也便于功能的扩展 ;采用 迪文触控界面设计方式简化 了界面设计过程 ,而 且界面设计可 以和 系统程序设计 同时进行,缩短 了设计周期时间 。经实例验证表 明本文设计的通 用人机界面装置开发方式简单 ,满足实际应用需 求,达到友好人机交互的目的。 参考文献 [ 1 】陈永利, 李玉 鼎. P L C 与人机界面组合 的控 制系统研究[ J 】 . 制造业 自动化 ,2 0 1 2 , 3 4 7 1 4 8 1 5 0 . 【 2 】蔡 启 仲 , 贺 漾 , 潘 绍 明 . 基 于 CAN总 线 的 塑 料 助 吹 中空 成型机 人机界 面装置 [ J 】 . 仪表 技术与 传感器, 2 01 1 , 4 2 8 3 0 . [ 3 ]邴旭, 化春雷, 李焱, 等. 西门子数控系统人机界面二次开 发方法研究【 J ] . 制造技术与机床, 2 0 1 1 , 1 0 1 6 3 1 6 7 . 【 4 】侯鸿佳, 蔡启仲, 陈文辉, 等. AR Mq - F P GA组成的P L C结 构的通信系统[ J ] . 广西工学院学报, 2 0 1 2 , 2 3 1 1 4 1 9 . [ 5 】蔡启仲, 郭毅锋, 陈文辉, 等. 通用小型可编程控制器及其 控制方法 中国, 2 0 0 7 1 0 0 5 2 9 4 1 . X[ P ] . 2 0 0 9 0 8 1 9 . [ 6 ]6 北京迪文科技 有限公司.DMT 6 4 4 8 0 T 0 5 6 _ 0 1 WT 数据手册 【 OL ] . 2 0 1 0 0 7 0 1 [ 2 0 1 3 0 3 1 6 ] . h t t p \ \ w w w. d wi n . t o m. c a . 【 7 】方承远, 张振国. 工厂电气控制技术[ M】 . 北京 机械工业出 版社 , 2 0 0 8 . 【 8 】耿立 明, 刘 漫洲, 刘 雨刚, 等. 基 于P L C的太 阳能热水 器 的 自动控制系统f J ] . 电气传动, 2 0 0 6 , 3 6 1 1 5 4 5 6 . 第3 5 卷第1 2 期2 0 1 3 - 1 2 上 [ 1 3 5 1 学兔兔 w w w .x u e t u t u .c o m