第3章HMI与打印机接口技术在计算机控制系统中,为了实现人机对话或某种操作,需要一个人机接口(HMI-HumanMachineInterface或MMI-ManMachineInterface),通过设计一个过程运行操作台(或操作面板)来实现。由于生产过程各异,要求管理和控制的内容也不尽相同,所以操作台(面板)一般由用户根据工艺要求自行设计。操作台(面板)的主要功能如下:输入和修改源程序。显示和打印中间结果及采集参数。对某些参数进行声光报警。启动和停止系统的的运行。选择工作方式,如自动/手动(A/M)切换。各种功能键的操作。显示生产工艺流程。为了完成上述功能,操作台一般由数字键、功能键、开关、显示器和各种输入输出设备组成。键盘是计算机控制系统中不可缺少的输入设备,它是人机对话的纽带,它能实现向计算机输入数据、传送命令。1.1.1键盘的特点及确认1.键盘的特点键盘实际上是一组按键开关的组合。按键所用开关为机械弹性开关,均利用了机械触点的合、断作用。一个按键开关通过机械触点的断开、闭合过程,其波形如图3-1所示。1.1计算机控制系统的概念后沿抖动前沿抖动键按下键闭合图3-1按键抖动波形2.按键的确认一个按键的电路如图3-2所示。键的闭合与否,反应在电压上就是呈现出高电平或低电平,如果高电平表示断开的话,那么低电平则表示闭合,所以对通过电平的高低状态的检测,便可确认按键按下与否。S10KΩ+5VVA图3-2按键电路3.消除按键的抖动消除按键抖动的方法有两种:硬件方法和软件方法。(1)硬件方、法采用RC滤波消抖电路或RS双稳态消抖电路。(2)软件方法如果按键较多,硬件消抖将无法胜任,因此,常采用软件的方法进行消抖。第一次检测到有键按下时,执行一段延时10ms的子程序后,再确认该键电平是否仍保持闭合状态电平,如果保持闭合状态电平则确认为真正有键按下,从而消除了抖动的影响,但此种方法占用CPU的时间。3.1.2独立式按键扩展实例独立式按键电路配置灵活,软件结构简单。但每个按键需占用一根输入口线,在按键数量较多时,输入口浪费大,电路结构显得很复杂。采用74HC245三态缓冲器扩展独立式按键的电路如图3-3所示。图3-3采用74HC245扩展独立式按键1A2A3A4A5A6A7A8AG1B2B3B4B5B6B7B8BDIRD0D1D2D3D4D5D6D7KEYCSS1S2S3S4S5S6S7S810kΩX8+5V74HC245在图3-3中,KEYCS为读键值口地址。按键S1~S8的键值为00H~07H,如果这八个按键均为功能键,为简化程序设计,可采用散转程序设计方法。1A2A3A4A5A6A7A8AG1B2B3B4B5B6B7B8BDIRD0D1D2D3D4D5D6D7KEYCSS1S2S3S4S5S6S7S810kΩX874HC245+5V图3-3采用74HC245扩展独立式按键矩阵式键盘适用于按键数量较多的场合,它由行线和列线组成,按键位于行、列的交叉点上。如图3-4所示,一个4×4的行、列结构可以构成一个含有16个按键的键盘。3.2.1矩阵键盘工作原理按键设置在行、列线交点上,行、列线分别连接到按键开关的两端,行线通过上拉电阻接到+5V上。平时无按键动作时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线电平决定。3.2矩阵式键盘接口设计3.2.2按键的识别方法矩阵式键盘结构如图3-4所示。矩阵键盘按键的识别方法,此方法分两步进行:第一步,识别键盘有无键被按下;;第二步,如果有键被按下,识别出具体的按键。+5V10kΩX4121314154891011345672012311234图3-4矩阵式键盘结构3.2.3键盘的编码对于独立式按键键盘,由于按键的数目较少,可根据实际需要灵活编码。对于矩阵式键盘,按键的位置由行号和列号唯一确定,所以分别对行号和列号进行二进制编码,然后将两值合成一个字符,高4位是行号,低4位是列号,这将是非常直观的。3.3.1旋转编码器的工作原理旋转编码器是一种将轴的机械转角转换成数字或模拟电信号输出的传感器件,按照工作原理可分为增量式和绝对式两类。下面以ALPS公司的EC11J152540K型旋转编码器为例进行介绍,其外形如图3-5所示。3.3旋转编码器接口设计图3-5EC11J152540K型旋转编码器该旋转编码器为双路输出的增量式旋转编码器,定位数为30,脉冲数为15,并且带有按开开关。旋转编码器旋转一周共有30个定位,每旋转两个定位将产生一个脉冲,旋转时将输出A、B两相脉冲,根据A、B间正交90度的相位差(顺时针旋转时A相滞后于B相,逆时针时A相超前于B相),可以判断出旋转编码器的旋转方向。另外,当旋转编码器的按开开关未按下时,它的4和5引脚内部断开;按下时,4和5引脚内部接通。3.3.2旋转编码器的接口电路设计通过对旋转编码器的输出信号进行相应地处理和检测,可利用旋转编码器实现KEY1、KEY2、KEY3三个按键的功能,除其自带的按开开关KEY1外,规定旋转编码器逆时针旋转一个定位表示KEY2按键按下一次,顺时针旋转1个定位表示KEY3按键按下一次。利用旋转编码器来实现按键功能具有结构紧凑和操作方便等优点。旋转编码器与STM32F407的接口电路如图3-6所示。R33.3kR43.3kC10.1uFC20.1uFR14.7kR24.7kVCC3.3VCC3.3A1B1A2Q21U2BS1DC1R74HC74D旋转编码器Q2CP2D2SD2RD2__R54.7kKEY145123ABC11U1C74HC14DVCC3.3R64.7kSTM32F407PA6PA5PF11/INTPA4Q1U2AS1DC1R74HC74DQ1CP1D1SD1RD1__U1B74HC14DU1A74HC14D图3-6旋转编码器与STM32F407的接口电路3.3.3旋转编码器的时序分析旋转编码器旋转时将输出相位互差90度的A、B两相脉冲,每旋转一个定位,A、B两相都将输出一个脉冲边沿,下面分不同情况对旋转编码器的工作时序进行分析。1.旋转编码器顺时针旋转时的时序分析多定位顺时针旋转时序如图3-7所示。t1t2ABCP1(A1)D1/D2(B1)CP2(A2)Q1Q2t3图3-7多定位顺时针旋转时序2.旋转编码器逆时针旋转时的时序分析多定位逆时针旋转时序如图3-8所示。图3-8多定位逆时针旋转时序t1t2ABA1(CP1)B1(D1/D2)A2(CP2)Q1Q2t33.3.4旋转编码器的软件设计旋转编码器软件设计分为旋转编码器旋转检测程序设计和按开开关检测程序设计两部分。1.旋转编码器旋转检测程序设计旋转编码器旋转检测,包括顺时针旋转和逆时针旋转检测。STM32F407通过外部中断引脚PF11检测中断边沿触发信号,在EXTI15_10的中断程序中,通过通用IO口PA5、PA6读取旋转编码器鉴相信号,从而确定其旋转方向及按键KEY2、KEY3的状态。旋转编码器旋转检测中断程序清除中断标志PA5读取Q2为低电平?下降沿中断?PA6读取Q1为低电平?中断返回YNYYNN为顺时针旋转,旋转计数加1,调用键值保存函数,记录KEY3按下为逆时针旋转,旋转计数减1,调用键值保存函数,记录KEY2按下图3-9旋转编码器旋转检测中断程序流程图2.旋转编码器按开开关检测程序设计旋转编码器按开开关检测,包括长按和短按检测。在STM32F407的按键扫描程序中,通过调用按开开关检测程序,读取IO口PA4的电平状态,以确定按键KEY1的状态。按开开关检测开始KEY1是否按下?延时消抖置位短按标志调用键值保存函数记录KEY1短按KEY1是否按下?短按标志未置位?长按时间计数值加1长按时间计数大于设定阈值置位长按标志调用键值保存函数记录KEY1长按检测结束并返回延时消抖KEY1是否弹起?长按标志已置位?清零长按及短按标志短按标志已置位?清零短按标志调用键值保存函数记录KEY1弹起清零长按计数值YYYNNNNNNNYYYY图3-10旋转编码器按开开关检测程序流程图3.4.1显示技术的发展20世纪是信息大爆炸的时代。1960~1990年信息的平均年增长率为20%,到2020年将达到每两个半月翻一番的惊人速度。大量的信息通过“信息高速公路”传送着,要将这些信息传送给人们必然要有一个下载的工具,即接口的终端。研究表明,在人们经各种感觉器官从外界获得的信息中,视觉占60%,听觉占20%,触觉占15%,味觉占3%,嗅觉占2%。可见,近2/3的信息是通过眼睛获得的。所以图像显示成为信息显示中的最重要的方式。进入20世纪以来,显示技术作为人机联系和信息展示的窗口已应用于娱乐、工业、军事、交通、教育、航空航天、卫星遥感和医疗等各个方面,显示产业已经成为电子信息工业的一大支柱产业。在我国,显示技术及相关产业的产品占信息产业总产值的45%左右。3.4显示技术的发展及其特点电子显示器可分为主动发光型和非主动发光型两大类。前者是利用信息来调制各像素的发光亮度和颜色,进行直接显示;后者本身不发光,而是利用信息调制外光源而使其达到显示的目的。按显示原理分类,其主要类型有:发光二极管(LED)显示液晶显示(LCD)阴极射线管(CRT)显示等离子显示板(PDP)显示电致发光显示(ELD)有机发光二极管(OLED)显示真空荧光管显示(VFD)场发射显示(FED)只有LCD是非主动发光显示,其它皆为主动发光显示。3.4.2显示器件的主要参数1.亮度亮度(L)的单位是坎德拉每平方米(cd/m2)。2.对比度和灰度对比度(C)是指画面上最大亮度(Lmax)和最小亮度(Lmin)之比,即:好的图像显示要求显示器的对比度至少要大于30,这是在普通观察环境光下的数据。灰度是指图象的黑白亮度层次。3.分辨力分辨力是指能够分辨出电视图像的最小细节的能力,是人眼观察图像清晰程度的标志,通常用屏面上能够分辨出的明暗交替线条的总数来表示,而对于用矩阵显示的平板显示器常用电极线数目表示其分辨力。maxminLCL只有兼备高分辨力、高亮度和高对比度的图像才可能是高清晰度的图像,所以上述三个指标是获得高质量图像显示所必不可少的。4.响应时间和余辉时间响应时间是指从施加电压到出现图像显示的时间,又称上升时间。从切断电源到图像显示消失的时间称为下降时间,又称余辉时间。5.显示色发光型显示器件发光的颜色和非发光型显示器件透射或反射光的颜色称作显示色。显示色分为黑白、单色、多色和全色四大类。6.发光效率发光效率是发光型显示器件所发出的光通量与器件所消耗功率之比,单位为流明每瓦(lm/W)。7.工作电压与消耗电流驱动显示器件所施加的电压为工作电压(V),流过的电流称为消耗电流(A)。工作电压与消耗电流的乘积就是显示器件的消耗功率。外加电压有交流电压与直流电压之分,如LCD必须用交流供电,而OLED、LED等则用直流供电。在计算机控制系统中,常用的显示器有:发光二极管(LED)显示器,液晶显示器(LCD)。根据不同的应用场合及需要,选择不同的显示器。发光二极管(LightEmittingDiode,LED)是一种电—光转换型器件,是PN结结构。在PN结上加正向电压,产生少子注入,少子在传输过程中不断扩散,不断复合而发光。改变所采用的半导体材料,就能得到不同波长的发光颜色。Losev于1923年发现了SiC中偶然形成的PN结中的发光现象。早期开发的为普通型LED,是中、低亮度的红、橙、黄、绿LED,已获广泛使用。近期开发的为新型LED是指蓝光LED和高亮度、超高亮度LED。LED产业重点一直为可见光范围380~760nm,约占LED总产量的90%以上。LED的发光机理是电子、空穴带间跃迁复合发光。3.5LED显示器接口设计LED的主要优点:主动发光,一般产品亮度1cd/m2,高的可达10cd/m2;工作电压低,约为2V;由于是正向偏置