数控操作面板控制功能的CPLD实现方法_第1页
数控操作面板控制功能的CPLD实现方法_第2页
数控操作面板控制功能的CPLD实现方法_第3页
数控操作面板控制功能的CPLD实现方法_第4页
数控操作面板控制功能的CPLD实现方法_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 本文由beiketong681贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 2008年第 5期 文章编号 : 1001 - 2265 ( 2008) 05 - 0051 - 04 控制与检测 ? 数控操作面板控制功能的 CPLD 实现方法 张晶 ,王立松 1 1, 2, 李铁才 2 (1. 华南理工大学 ,广州 510640; 2. 深圳航天科技创新研究院 ,深圳 510000) 摘要 :文章针对数控操作面板 ,研究将其控制功能在 结果 。该方法采用一片 操作面板需处理的 IO 节点多 ,同时硬件空间受限的矛盾 。 关键词 :数控系统 ; CPL

2、D;键盘扫描 文献标识码 文献标识码 : A 中图分类号 : TG65 CPLD 中实现方法 。首先介绍了系统工作原理及整 120个 IO 点的处理 ,有效解决了数控 体结构 ,接着重点讨论了键盘扫描及去抖动电路与串行通信电路的实现方法 ,最后给出正确的仿真实验 CPLD 芯片可最多完成 Im plem en ta tion of Con trol Function s of the CNC Con tro l Panel w ith CPLD ZHANG J ing , WANG L i2song1, 2 , L I Tie2cai2 1 ( 1. South China Universit

3、y of Technology, Guangzhou 510640; 2. ShenzhenTech2Innovation International, Shenzhen 510000, China) A bstra ct: 且整个处理电路体积庞大 ,无法将处理电路直接做在 收稿日期 : 2007 - 11 - 27 Key words: 0 引言 数控面板为数控系统中基本的人机交互部件 ,主 要由按键 、指示灯以及各种数字旋钮开关组成 ,用于实 现数控人机界面的菜单选择 、数据输入以及进给倍 率 、 快速倍率 、主轴倍率 、运行方式等选择 。其按键主 要可 分为功能键 、字符键 、编辑键和菜

4、单选择功能软键以 及 辅助功能控制键等 。图 1为所设计的数控操作面板 外 观图 。图中有 72个按键 , 22个指示灯 , 4个旋钮 开关 , 每个旋钮开关的输出为 5位二进制 20 路输 编码 ,共有 出电平信号 。采用单片机完成键盘扫描与指示灯显示 是常规的处理方法 ,但是由于数控操作面板需要处理 的 IO点数过于庞大 ,如采用单片机处理就需要大量扩 展外围接口电路 ,不仅占用硬件资源多 ,增加成本 ,而 2 编程和实现方案容易改动 、引脚属性可定义等特点 ,并 且程序直接生成硬件电路 ,有很好的硬件加密性 26 。 出于以上考虑 ,本文采用性价比较高的 CPLD 代替传 统的单片机实现

5、键盘扫描 、显示及旋钮开关处理 、与上 位机的串行通信等功能 。 2 体积有限 的数 控操 作面 板上 lexPro2 1 。 CPLD ( Comp gramm ableLogicDevice) ,即复杂可编程逻辑器件 ,可以 图 1 数控操作面板外观图 替代几十甚至上百块通用 IC 芯片 。这种芯片具有可 作者简介 :张晶 ( 1973 ) ,女 ,苗族 ,湖南花垣人 ,华南理工大学讲师 ,博士 ,研究领域为计算机应用 , ( E - mail) zhjing scut. edu. cn。 51? 控制与检测 ? 1 系统工作原理及总体结构 为实现 6行 12列的矩阵键盘接口电 52? 整

6、个系统可分为外围接口电路和 CPLD 驱动 控制 电路两部分 ,系统硬件结构框图如图 2所示 。外围接 口电路包括 6行 12列的键盘矩阵电路 、旋钮倍率开关 接口电路 、指示灯驱动电路 ;图中的 CPLD 驱动控制电 路可分为键盘扫描及去抖动电路 、倍率开关扫描电 路 、 编码电路 、并串和串并转换电路以及串行通信控制电 路等 。CPLD 的控制功能可归纳如下 : 外界信息的 获 取 ,包括键盘按键的行列信息 、各旋钮倍率开关的编 码 信息 ; 通过并串转换电路 ,将外界获取的信息以基于 485的串行传输模式发送到上位机 ,由上位机对相应信 息进行处理 ; 上位机根据其处理结果 ,将操作面板

7、上 指示灯的驱动信息通过串行总线发送到 CPLD 上 ,由 内部的串并转换电路转化为并行 驱动信号 , 驱动 22 路指示灯控制信号 。 CPLD 其中键盘扫描和倍率开关扫描电路占用 38路 IO ,指示灯控制占用 22 路 IO ,串行 通信需要 12路 IO 口 ,本文选用 A ltera 公 司 MAX7000 系列的 EPM7512AETC144, 该器件可提供 120路可编程输入输出引 脚 , 10000个可用门 ,具有 512个宏单元 , 32个逻辑 阵 列 块 , 具 有 ISP 编 程 能 力 。 因此 ,一片 CPLD 可满足系统对输入输出 节点及宏单元的要求 ,不必另外扩展

8、 。 2 CPLD 控制功能的具体实现 图 2 系统结构框图 2 11 键盘扫描与去抖动电路的实现 组合机床与自动化加工技术 路 ,首先将串行输入时钟信号 clk 通过分频电路分频到 5m s作为按键查询时钟 keyclkout, keyclkout十分频后 得到 50m s触发时钟 chuckclk,在 chuckclk时钟的高电 平期间 ,通过程序控制各列线 ( CPLD 的输出口线 )依 次置低 ;各行线一端通过上拉电阻连接到电源 ,另一端 通过去抖动电路输入到 CPLD 供检测 。当无键按下 时 ,各行线均保持为高电平 ,当有键按下时 ,该键对应 的行列线导通 ,则该键所在的行线为低电

9、平 ,同时读取 此时的列线信息 ,软件可得出该按键对应的行列扫描 码 。去抖电路如图 3所示 ,它由 D触发器和 RS触发器 构成 ,要求信号的稳定时间由 D 触发器的个数决定 ,在 该电路中采用 5m s的时钟接收输入数据 ,按键抖动一 般在几毫秒时间内 ,如果连续三个时钟周 期即 延时 15m s后输出仍为低电平 ,则可确认数据稳定并可以接 图 3 去抖动电路 收 。 键盘扫描电路通过在每个 50m s触发脉冲 chuck2 clkout的低电平期间设置键盘列选信号 ,该列 选信号在 chuckclkout下一周期的高电平期间 由 ou tkey输出 。列选信号在每个触发时钟周 期内 从

10、到 依 次 循环变化 。 inkeym ap 为经过去抖动电路后的 键盘行输入信息 ,通过在每个触发周期内读取 inkeym ap 值 , 当 有 键 按 下 时 , inkeym ap / =” 111111”,将此时的行信息 inkeym ap 和列信息 chuout经编码电路后送到并串转换电路输入 端 。图 扫 描 的 段 7 4 为 实 现 键 盘 VHDL 代 码 片 。其中 try为编码电路输出信号 ,编码电 路实现 12 位二进制列选输出信号到 BCD 编 码 ,编码输出值从0000 到 1011依次变化 ,代表 12 位 列选输出信号的哪一位为零 。如 对应 2008年第 5期

11、 控制与检测 ? 码输出到串行总线上 ,其它位由低到高循环移位处理 。 clk计数值小于 46时为 compare状态 ,该状态下由高到 编码值为 0000, 对应编码值为 1011。 clk_chu_out: p rocess ( chuclkout) begin if ( chuclkoutevent and chuclkout = 0 ) then IF chout = THEN if inkeym ap / = 111111THEN keyout < = try&inkeymap; END IF; chuout < = ; try < = 0001; ELSI

12、F chuout = THEN if inkeym ap / = 111111THEN keyout < = try&inkeymap; END IF; chuout < = ; try < = 0010; ELSE chuout < = ; try < = 0000; keyout < = try&inkeymap; END IF; end if; end p rocess clk_chu_out; 低输出 23位并行信号的原码到串行总线上 ,用于传输 误码信号判别 。 clk 计数值大于 46 时为 comp lete 状 态 ,该状态设

13、置为了同步通信过程 ,等待下个 fram e信 号的低电平出现 。 通信控制电路输出的控制信号时序图 图 5 通信控制电路输出的控制信号时序图 串并 转 换 电 路 也 同 样 分 为 comp are 和 reserved、 comp lete三个转换态 , reserved态在每个时钟周期下依 次将串行输入信号反码读入寄存器中 , comp are态下在 每个时钟周期下依次将串行输入信号的原码读入另个 reserved态读入值比较 ,看是否是位 寄存器中 ,同时与 反关系 ,如果每位比较都正确 ,在 comp lete态将积存器 的值输出到并行输出口 ,否则给出误码标志 ,重新读 入 。

14、22 路指示 outkey < = chuout; 图 4 键盘扫描和编码电路 键盘扫描和编码电路 2 12 数控操作面板的串行通信电路设计 CPLD 与上位机的信息交换包括 3 仿真结果 文中对数控操作面板的驱动控制电路进行了仿 灯的驱 真 ,程序采用 VHDL 语言编写 ,采用 动信息 、4个旋钮开关编码信息 ,以及键盘的行列扫描 m axp lus +软件包 信息 。由于所传输信息量大 ,如采用并行通信模式将 6为去抖动电路仿真结果 。 占用过多的 IO 资源 ,难于实现 ,因此文中采用了基于 进行编译和仿真 8 。图 图 485总线的串行通信模式 ,通过自定义通信协议 ,将并 行

15、信号转换为串行信号 ,在减少 IO 资源的同时 ,增强 6中 , clk为按键查询时钟输入信号 , a为矩阵键盘某行 2u s处 a由 输入信号 , b为去抖动后输入信号 ,图中 传输信息的可靠性 。文中所设计的串行通信电路主要 包括并串转换电路 、串并转换电路和通信控制电路 。 变为 0,在该位置的下一个 clk 处 , b变为 0,去抖动电 通信控制电路实现串行通信所必须的片选信号 fram e 路维持三个 clk周期为 0,因此 , 2us以后的两个抖动信 和时钟信号 clk 的获取 ,以及串行输入时钟的计数功 号被有效的滤除 。在 5u s处 , a由 0变为 1,且维持了三 能 。按

16、计数值将传输过程分为 个 clk周期以上 ,因此 b在 a跳变 三个状 态 : reserved、comp are 和 的三个周期后也由 0 comp lete 态 。图 5 为通信控制 变为 1。仿真结果看出 ,去抖动电路实现了设计的目 电路输出的控制信号时序图 。 标 。 fram e信号为周期性信号 ,其低 电平为一个时钟周期 clk的宽 度 ,对于本文设计的 23位串并转换 电路 ,在 fram e低电 平期间完成 23路待转换并行信号的赋值 ,并标识一个 通信桢的开始 。 fram e高电平期间 , 通信控制电路对 clk计数 ,计数值小于 23 时为 reserved状态 ,该状态

17、下 23位并行信号在每个 clk上升沿跳变时 ,最高位的反 1 图 6 去抖动电路仿真图 图 7为并串转换电路仿真图 , inclk 为串行时钟信 号 , fram e为片选信号 , inpo rt_ temp 为 23 位信号 量 ,用 于 保 存 移 位 值 , 转 换 初 值 为 " " , data_ou t为串行输出 , sta2 tus标志传输状态 , status为 0时候为 reserved态 ,见图 53? 控制与检测 ? 7a; status为 1时为 compare抬 ,见图 7b, count为时钟计 组合机床与自动化加工技术 果良好 ,具有较大的实

18、际应用价值 。 参考文献 参考文献 1 姚德法. 单片机应用中的键盘模块设计 J . 信息技术与 数值, count值为 ”17”即十进制的23时, status由re served态切换到compare态 。图7a和图7b的 位分别在每个时钟的跳变沿输出了inpo rt_ temp的第 22位的反码和原码,与设计的目标一致 。 信息化 , 2005 ( 6) : 47 - 49. 2 李剑中 ,姜成航. 基于 CPLD的键盘与显示模块设计 J . 中 国 仪 器 仪 表 , 2005 (4) : 101 - 104. 3 王 志 辉 , 林 水 生. 基 于 FPGA 的键盘扫描 模 块 的

19、 设 计 与 实 现 J . 国 外 电 子 元 器 件 , 2006 ( 5) : 67 - 69. 4 樊 国 梁 , 张 晓 燕. 基 于 VHDL的键盘扫描 及显示电路设计 J . 电子 世 界 , 2005 ( 2 ) : 25 - 26. 5 马 学 文 , 朱 名 日. 嵌 图7 4 结论 入式设备中 CPLD 的键盘控制实现 J . 电子产品世界 , 2004 ( 6) : 65 - 66. 6 张志利 ,侯传勋. 盘控制器 IP核的实现 M . 国 防 工 业 J . 电子技术应用 , 2006 ( 10) : 111 - 113. 7 辛春 艳. VHDL 硬件 描 述 语

20、 言 出 版 社 , 2002. 8 潘 松 , 黄 继 业. M . EDA 技 术 实 用 教 程 科 学 出 版 社 , 全功能硬件扫描键 针对数控操作面板需要控制的IO点数多,控制电 路体积受限的问题,文中在一片复杂可编程逻辑器件 CPLD实现了键盘扫描和去抖动,倍率开关扫描,指示 灯驱动,以及与上位机串行通信等功能,并通过仿真证 明了所设计的功能模块的正确性 。目前基于CPLD的 数控操作面板已经成功地应用于实际数控系统中,效 (上接第50页)铣床数控系统,在开放式平台的基础 上,采取了上 、下位机的结构,上位机用于人机界面和 后台管理,下位机进行实时扫描跟踪运动,并将采集的 数据送到DPRAM。目前该系统已投入实际运行,并能 够长期可靠工作,可以满足工业生产要求 。该系统的 开发,可以极大地提高系统的可扩展性和可移植性,当 系统升级时,只需要更改相应软件,而无需更换很多硬 件设备 。这对于缩短新产品的开发周期 、节约开发成 本 、扩展或改进系统功能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论