王 丹,王 斌,张庭波,杜占军
1.海军驻沈阳地区电子系统军事代表室 , 辽宁沈阳 110000
2.海军驻沈阳地区发动机专业军事代表室, 辽宁沈阳 110000
3.中船重工集团六一三厂 , 辽宁沈阳 110000
触摸屏技术被认为是未来人机交互技术的主流方向之一,相关产业及其产品的应用也正在成为一个技术热点。由于科学技术的发展越来越多的机器与现场操作都趋向于使用人机界面。触摸屏的应运而生无疑是21 世纪自动化领域里的一个巨大的革新。触摸屏以其坚固耐用、反应速度快、节省空间、易于交流等许多优点得到大众的认可。触摸屏是用户和计算机之间实现互动的最简单、最直接的方式。
触摸屏的基本原理是,用手指或其他物体接触安装在显示器前端的触摸屏时,所触摸的位置(以坐标形式)由触摸屏控制器检测,并通过接口(如RS-232 串行口)送到CPU,从而确定输入的信息。触摸屏系统一般包括触摸屏控制器和触摸检测装置两个部分。其中,触摸屏控制器主要是从触摸点检测装置上接收触摸信息,并将它转换成触点坐标,再送给CPU,它同时能接收CPU 发来的命令并加以执行。触摸检测装置一般主要安装在显示器的前端,主要作用是检测用户的触摸位置,并传送给触摸屏控制器。
鉴于红外触摸屏的优良性,因此在显示设备的终端我们采用了一块第五代远红外触摸屏。它的触摸分辨率为4096*4096, 触摸屏控制器的接口为RS-232 串行口,触摸屏的屏幕输入信号为标准LVDS 信号。触摸屏与计算机连接如下图。将触摸屏的屏线与计算机的LVDS 视频输出口相连接,触摸屏的控制器的端口接到5V、12V 直流电源。通电后,触摸屏的信息输出端RS232 串行口接到计算机的串口输出端。
设置触摸屏输出信息的通讯协议如下:
通讯方式为RS232 通讯。
数据格式为串口通讯格式,波特率9600,8 位数据位,1位起始位。1 位停止位,无奇偶检验。
命令和格式响应。
起始8 字节命令或响应包校验和命令数据起始字字节1字节2字节3字节4字节5字节6字节7字节8 CRC
0X55 crc
命令和响应包格式
接口命令格式为:
〈起始字节〉+〈8 字节命令或响应〉+〈检验和字节〉
其中,CRC=〈AAH〉+〈起始字节〉+〈8 字节数据〉标准起始字节为‘U’(55H)。
命令响应包的第一字节为命令字节,余下七字节为数据字节。大写的命令字节表示设置命令。数据字节用来改变控制器内部设置。小写命令字节表示查询命令。控制器忽略数据字节。控制器以响应包回答。响应包与设置命令完全相同(包括命令字节)。这样,主机可以先查询当前设置,改变某参数,把相同的包作为命令包送给控制器。命令与确认每一送给触摸屏控制器的命令由一确认响应包确认。这一响应包包括错误或以及迄今为止出现的错误。
我们使用触摸屏最主要关心的是触摸屏的反馈数据,触摸屏的反馈数据格式如下:
前置字字节1字节2字节3字节4字节5字节6字节7字节8 CRC 0X55 0x54 status Xhigh Xlow Yhigh Ylow 0xff 00 crc
本信息由触屏发向主机,主机无需响应。
其中:Status 各位的意义:位0 为1 表示开始触摸;位1为1 表示连续触摸;位2 为1 表示触摸结束;位4 为1 表示有警告信息。位7 可为0 或1。字节3 为X 坐标的低字节。字节4 为X 坐标高字节。字节5 为Y 坐标的低字节。字节6 为Y 坐标高字节,X 值为0~4095,Y 值为0~4095。将触摸屏与计算机连接好后我们就可以通过计算机上的串口精灵监测触摸屏的数据输出了。按通讯协议设置好串口精灵,下图是检测触摸屏后所监测到的数据,发现触摸屏控制器发出的每组数据status 位都是以触摸开始命令0x81 开始, 以触摸结束命令0x84结尾,中间为连续触摸命令0x82。
用串口精灵监测触摸屏反馈命令,测试过程中发现当长时间触摸屏幕时,屏幕反馈数据存在着延时,我们分别记录从触屏开始到触屏幕结束的时间和串口精灵从收到触屏数据到收数结束的时间,然后比较这两个时间值算出相对延时:
触屏所用时间收数所用时间相对延时2s 3.764s 1764ms 1.525s 3.7s 2175ms 1.360s 3.2s 1840ms
1s 3s 2000ms 0.860s 1.1s 240ms 2.174s 8.3s 6126ms 1.585s 5.5s 3915ms 1.3s 3.6s 2300ms
通过上述测试数据发现该延时是非线性变化的,如果触摸屏真的存在着上述非线性的延时,那么用户是无法对每次的触屏动作进行准确的编辑和判断的。
为了验证以上结论的准确性,我们使用示波器直接检测触摸屏的输出数据。用示波器监测数据的结果。监测结果与使用串口精灵的监测结果大相径庭,经示波器测试发现输出基本上没有延时,输出延时都是在毫秒级内的。分析上述两个结果,得出结论:串口精灵采用收数缓冲造成了触摸屏存在非线性延时的假象,红外触摸屏可以在每次触摸动作结束时立即反馈结束命令,我们是可以通过查询触摸命令来判断触摸动作的开始和结束的,也可以通过计算连续触摸的时间来编辑每次的触摸动作,区分触摸动作的时间长短,针对时间的长短可以让系统产生不同的响应。
通过编程我们可以实现屏幕上的任何一块区域都是输入命令的输入点,通过手指的触摸来直接改变某个的参数或某项功能状态。而在触摸动作结束的同时,我们的屏幕就能立即显示刚才操作结束后的结果,因此触摸屏既可以作为输入设备,也可以作为输出设备。
触摸屏有着良好的抗干扰性与应用的稳定控制性,在工业生产线乃至日常生活的不同应用环境下都有着广阔的应用前景,是目前电脑微型化的替代品。作为一个输入输出设备,它能为我们带来的良好人机界面操作,触摸屏与水声设备的结合必将使其占有更小的使用空间,具有更高的灵活性和更丰富的拓展功能。