《一种基于MATLAB的红外触摸屏算法的测试方法.pdf》由会员分享,可在线阅读,更多相关《一种基于MATLAB的红外触摸屏算法的测试方法.pdf(16页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201410638521.X (22)申请日 2014.11.06 G06F 9/455(2006.01) (71)申请人 北京千里触控科技有限公司 地址 100000 北京市大兴区经济技术开发区 天华园二里二区 19 幢一层 F1B9 (72)发明人 杨运 张自能 (74)专利代理机构 北京信远达知识产权代理事 务所 ( 普通合伙 ) 11304 代理人 魏晓波 (54) 发明名称 一种基于 MATLAB 的红外触摸屏算法的测试 方法 (57) 摘要 本发明提供的一种基于 MATLAB 的红外触摸 屏算法的测试方法, 其红外触摸屏上设置。
2、有多个 红外发射管, 每个红外发射管包括多条光路, 且 每条光路对应设置一个 mask 值 ; 方法包括 : 在 MATLAB 中输入模拟运动轨迹, 并获取模拟运动轨 迹中触点的坐标值 ; 依据坐标值, 并同时依据预 设的触摸物的参数信息, 确定触点对应的触摸物 的遮挡区域信息 ; 依据遮挡区域信息和每条光路 的 mask 值, 确定遮挡光路信息 ; 将遮挡光路信息 记录并保存到遮挡光路对应的红外发射管的光路 数据中, 形成激励文件 ; 将激励文件加入到红外 触摸屏算法中进行仿真。 因此, 本发明不依赖于红 外触摸屏的硬件而独立进行, 系统调试效率高。 (51)Int.Cl. (19)中华人民。
3、共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书8页 附图5页 (10)申请公布号 CN 104461684 A (43)申请公布日 2015.03.25 CN 104461684 A 1/2 页 2 1. 一种基于 MATLAB 的红外触摸屏算法的测试方法, 所述红外触摸屏上设置有多个 红外发射管, 其中每个所述红外发射管包括多条光路, 且每条所述光路对应设置一个掩膜 mask 值 ; 其特征在于, 所述方法包括 : 在 MATLAB 中输入模拟运动轨迹, 并获取所述模拟运动轨迹中触点的坐标值 ; 依据所述坐标值, 并同时依据预设的触摸物的参数信息, 确定所述触点对应的触摸。
4、物 的遮挡区域信息 ; 依据所述遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息 ; 将所述遮挡光路信息记录并保存到所述遮挡光路对应的红外发射管的光路数据中, 形 成激励文件 ; 将所述激励文件加入到所述红外触摸屏算法中进行仿真。 2. 根据权利要求 1 所述的方法, 其特征在于, 所述在 MATLAB 中输入模拟运动轨迹包 括 : 在 MATLAB 中输入正弦波运动轨迹产生公式, 或在 MATLAB 中输入圆形运动轨迹产生公 式 ; 其中, 所述正弦波运动轨迹产生公式为 : y y+A*sin(2*f/X_LIGHT_NUM*x) ; 其中, y 为正弦波的起始位置, A 为正弦波。
5、的振幅, f 为正弦波的频率, X_LIGHT_NUM 为 所述红外触摸屏水平边上设置的红外发射管数 ; 其中, 所述圆形运动轨迹产生公式为 : x x+R*cos(2*1/X_LIGHT_NUM*t) ; y y+R*sin(2*1/X_LIGHT_NUM*t) ; 其中, x 为圆心横坐标, y 为圆心纵坐标, (x , y ) 为圆心坐标, R 为半径, X_LIGHT_ NUM 为所述红外触摸屏水平边上设置的红外发射管数, t 为自变量, t 的取值范围为 (1, X_ LIGHT_NUM)。 3. 根据权利要求 1 所述的方法, 其特征在于, 所述获取所述模拟运动轨迹中触点的坐 标值。
6、包括 : 间隔预设时间在所述模拟运动轨迹上采集一次触点, 获取所述触点的x值和y值, 以此 获得所述触点的坐标值 (x, y)。 4. 根据权利要求 1 所述的方法, 其特征在于, 所述预设的触摸物的参数信息包括所述 触摸物的形状参数和所述触摸物的大小参数 ; 其中, 所述触摸物的形状参数包括正方形参数或圆形参数。 5. 根据权利要求 4 所述的方法, 其特征在于, 所述依据所述坐标值, 并同时依据预设的 触摸物的参数信息, 确定所述触点对应的触摸物的遮挡区域信息具体包括 : 当所述触摸物的形状参数为正方形参数时, 以所述坐标值为中心点, 按照所述触摸物 的大小参数进行扩展, 得到一正方形形状。
7、的遮挡区域, 确定所述正方形形状的遮挡区域的 遮挡区域信息 ; 当所述触摸物的形状参数为圆形参数时, 以所述坐标值为中心点, 按照所述触摸物的 大小参数进行扩展, 得到一圆形形状的遮挡区域, 确定所述圆形形状的遮挡区域的遮挡区 域信息。 权 利 要 求 书 CN 104461684 A 2 2/2 页 3 6. 根据权利要求 5 所述的方法, 其特征在于, 所述依据所述遮挡区域信息和每条光路 的 mask 值, 确定遮挡光路信息具体包括 : 当确定所述遮挡区域为圆形形状的遮挡区域时, 在所述圆形形状的遮挡区域上选取两 条平行的圆周切线, 其中所述两条平行的圆周切线与所述红外触摸屏水平方向的 x。
8、 轴成一 定夹角 ; 通过对所述两条平行的圆周切线的判断, 确定遮挡光路范围 ; 当确定所述遮挡区域为正方形形状的遮挡区域时, 在所述正方形形状的遮挡区域上选 取两条平行的分割线, 其中所述两条平行的分割线与所述红外触摸屏水平方向的 x 轴成一 定夹角, 且所述两条平行的分割线分别穿过所述正方形的两个边的中心点 ; 通过对所述正 方形的四个边的中心点的判断, 确定遮挡光路范围。 7. 根据权利要求 1 所述的方法, 其特征在于, 所述将所述遮挡光路信息记录并保存到 所述遮挡光路对应的红外发射管的光路数据中, 形成激励文件后, 所述方法还包括 : 判断与所述遮挡光路平行的其他光路是否为遮挡光路 。
9、; 如果是, 将其他光路的遮挡光路信息记录并保存到与所述其他光路对应的红外发射管 的光路数据中, 形成激励文件。 8. 根据权利要求 7 所述的方法, 其特征在于, 还包括 : 当完成与所述遮挡光路平行的其他光路是否为遮挡光路的判断后, 进一步依次判断下 一组平行光路中的每一光路是否为遮挡光路 ; 当判断所述下一组平行光路中的一条或多条光路为遮挡光路时, 将所述下一组平行光 路中的一条或多条光路的遮挡光路信息分别记录并保存到与其光路对应的红外发射管的 光路数据中, 形成激励文件。 9. 根据权利要求 1 所述的方法, 其特征在于, 所述将所述遮挡光路信息记录并保存到 所述遮挡光路对应的红外发射。
10、管的光路数据中后, 所述方法还包括 : 写入数据包头信息 ; 其中所述数据包头信息用于表示当前所述红外触摸屏支持的触摸 物的个数。 10. 根据权利要求 1 所述的方法, 其特征在于, 所述将所述激励文件加入到所述红外触 摸屏算法中进行仿真包括 : 通过所述Visual Studio 2010读取所述激励文件中的数据信息, 将所述数据信息加入 到所述红外触摸屏算法中进行仿真。 权 利 要 求 书 CN 104461684 A 3 1/8 页 4 一种基于 MATLAB 的红外触摸屏算法的测试方法 技术领域 0001 本发明涉及红外触摸屏算法测试技术领域, 更具体地说, 涉及一种基于 MATLA。
11、B 的 红外触摸屏算法的测试方法。 背景技术 0002 红外触摸屏由安装在触摸屏外框上的红外线发射与接收感测元件构成, 在其触摸 屏表面上, 形成红外线探测网。 具体地, 在红外触摸屏屏幕的四边排布的电路板装置有红外 发射管和红外接收管, 红外发射管和红外接收管对应形成横竖交叉的红外线矩阵, 任何触 摸物体可改变触点上的红外线, 进而转化成触点坐标, 并传送给 CPU(Central Processing Unit, 中央处理器 ) 实现触摸屏操作。 0003 因此, 为了保证红外触摸屏系统各项参数的精度, 需要对红外触摸屏算法进行测 试。现有红外触摸屏算法的测试工作通常基于系统硬件进行, 即。
12、通过手指或其他不透明物 体在触摸屏上进行划线, 并通过实时采集遮挡数据的方式完成对红外触摸屏算法的测试。 0004 然而本申请的发明人发现, 现有红外触摸屏算法的测试方法对系统硬件依赖性较 高, 且测试必须基于系统硬件完成, 因此系统调试效率低。 且在测试出现问题时不易定位是 红外触摸屏系统硬件出现问题, 如坏灯、 AD 转化器的转换精度低等, 还是红外触摸屏系统软 件出现问题, 如出现伪触点、 检测运动轨迹不准确等问题。 发明内容 0005 有鉴于此, 本发明提供一种基于 MATLAB 的红外触摸屏算法的测试方法, 以解决现 有技术中系统调试效率低, 且在测试出现问题时不易定位是红外触摸屏系。
13、统硬件出现问 题, 还是红外触摸屏系统软件出现问题的问题。技术方案如下 : 0006 本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方法, 所述红外触摸屏 上设置有多个红外发射管, 其中每个所述红外发射管包括多条光路, 且每条所述光路对应 设置一个掩膜 mask 值 ; 其特征在于, 所述方法包括 : 0007 在 MATLAB 中输入模拟运动轨迹, 并获取所述模拟运动轨迹中触点的坐标值 ; 0008 依据所述坐标值, 并同时依据预设的触摸物的参数信息, 确定所述触点对应的触 摸物的遮挡区域信息 ; 0009 依据所述遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息 ; 。
14、0010 将所述遮挡光路信息记录并保存到所述遮挡光路对应的红外发射管的光路数据 中, 形成激励文件 ; 0011 将所述激励文件加入到所述红外触摸屏算法中进行仿真。 0012 优选地, 所述在 MATLAB 中输入模拟运动轨迹包括 : 0013 在 MATLAB 中输入正弦波运动轨迹产生公式, 或在 MATLAB 中输入圆形运动轨迹产 生公式 ; 0014 其中, 所述正弦波运动轨迹产生公式为 : 说 明 书 CN 104461684 A 4 2/8 页 5 0015 y y+A*sin(2*f/X_LIGHT_NUM*x) ; 0016 其中, y 为正弦波的起始位置, A 为正弦波的振幅,。
15、 f 为正弦波的频率, X_LIGHT_ NUM 为所述红外触摸屏水平边上设置的红外发射管数 ; 0017 其中, 所述圆形运动轨迹产生公式为 : 0018 x x+R*cos(2*1/X_LIGHT_NUM*t) ; 0019 y y+R*sin(2*1/X_LIGHT_NUM*t) ; 0020 其中, x 为圆心横坐标, y 为圆心纵坐标, (x , y ) 为圆心坐标, R 为半径, X_ LIGHT_NUM 为所述红外触摸屏水平边上设置的红外发射管数, t 为自变量, t 的取值范围为 (1, X_LIGHT_NUM)。 0021 优选地, 所述获取所述模拟运动轨迹中触点的坐标值包括。
16、 : 0022 间隔预设时间在所述模拟运动轨迹上采集一次触点, 获取所述触点的x值和y值, 以此获得所述触点的坐标值 (x, y)。 0023 优选地, 所述预设的触摸物的参数信息包括所述触摸物的形状参数和所述触摸物 的大小参数 ; 0024 其中, 所述触摸物的形状参数包括正方形参数或圆形参数。 0025 优选地, 所述依据所述坐标值, 并同时依据预设的触摸物的参数信息, 确定所述触 点对应的触摸物的遮挡区域信息具体包括 : 0026 当所述触摸物的形状参数为正方形参数时, 以所述坐标值为中心点, 按照所述触 摸物的大小参数进行扩展, 得到一正方形形状的遮挡区域, 确定所述正方形形状的遮挡区。
17、 域的遮挡区域信息 ; 0027 当所述触摸物的形状参数为圆形参数时, 以所述坐标值为中心点, 按照所述触摸 物的大小参数进行扩展, 得到一圆形形状的遮挡区域, 确定所述圆形形状的遮挡区域的遮 挡区域信息。 0028 优选地, 所述依据所述遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息具 体包括 : 0029 当确定所述遮挡区域为圆形形状的遮挡区域时, 在所述圆形形状的遮挡区域上选 取两条平行的圆周切线, 其中所述两条平行的圆周切线与所述红外触摸屏水平方向的 x 轴 成一定夹角 ; 通过对所述两条平行的圆周切线的判断, 确定遮挡光路范围 ; 0030 当确定所述遮挡区域为正方形形状。
18、的遮挡区域时, 在所述正方形形状的遮挡区域 上选取两条平行的分割线, 其中所述两条平行的分割线与所述红外触摸屏水平方向的 x 轴 成一定夹角, 且所述两条平行的分割线分别穿过所述正方形的两个边的中心点 ; 通过对所 述正方形的四个边的中心点的判断, 确定遮挡光路范围。 0031 优选地, 所述将所述遮挡光路信息记录并保存到所述遮挡光路对应的红外发射管 的光路数据中, 形成激励文件后, 所述方法还包括 : 0032 判断与所述遮挡光路平行的其他光路是否为遮挡光路 ; 0033 如果是, 将其他光路的遮挡光路信息记录并保存到与所述其他光路对应的红外发 射管的光路数据中, 形成激励文件。 0034 。
19、优选地, 还包括 : 0035 当完成与所述遮挡光路平行的其他光路是否为遮挡光路的判断后, 进一步依次判 说 明 书 CN 104461684 A 5 3/8 页 6 断下一组平行光路中的每一光路是否为遮挡光路 ; 0036 当判断所述下一组平行光路中的一条或多条光路为遮挡光路时, 将所述下一组平 行光路中的一条或多条光路的遮挡光路信息分别记录并保存到与其光路对应的红外发射 管的光路数据中, 形成激励文件。 0037 优选地, 所述将所述遮挡光路信息记录并保存到所述遮挡光路对应的红外发射管 的光路数据中后, 所述方法还包括 : 0038 写入数据包头信息 ; 其中所述数据包头信息用于表示当前所。
20、述红外触摸屏支持的 触摸物的个数。 0039 优选地, 所述将所述激励文件加入到所述红外触摸屏算法中进行仿真包括 : 0040 通过所述Visual Studio 2010读取所述激励文件中的数据信息, 将所述数据信息 加入到所述红外触摸屏算法中进行仿真。 0041 应用上述技术方案, 本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方 法中, 红外触摸屏上设置有多个红外发射管, 其中每个红外发射管包括多条光路, 且每条光 路对应设置一个 mask 值 ; 方法包括 : 在 MATLAB 中输入模拟运动轨迹, 并获取模拟运动轨迹 中触点的坐标值 ; 依据坐标值, 并同时依据预设的触摸。
21、物的参数信息, 确定触点对应的触摸 物的遮挡区域信息 ; 依据遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息 ; 将遮挡 光路信息记录并保存到遮挡光路对应的红外发射管的光路数据中, 形成激励文件 ; 将激励 文件加入到红外触摸屏算法中进行仿真。因此, 本发明通过 MATLAB 生成包括遮挡光路信息 的激励文件, 将所述激励文件加入到红外触摸屏算法中进行仿真, 不依赖于红外触摸屏的 硬件而独立进行, 且在测试出现问题时可以非常清晰而准确地进行定位, 系统调试效率高。 附图说明 0042 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现 有技术描述中所需要使用的。
22、附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本 发明的实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以根据 提供的附图获得其他的附图。 0043 图 1 为本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方法的一种流程 图 ; 0044 图2a为本发明提供的一种基于MATLAB的红外触摸屏算法的测试方法中正方形形 状的遮挡区域的示意图 ; 0045 图2b为本发明提供的一种基于MATLAB的红外触摸屏算法的测试方法中正方形形 状的遮挡区域的另一种示意图 ; 0046 图3a为本发明提供的一种基于MATLAB的红外触摸屏算法的测试方法中圆形形状 。
23、的遮挡区域的示意图 ; 0047 图3b为本发明提供的一种基于MATLAB的红外触摸屏算法的测试方法中圆形形状 的遮挡区域的另一种示意图 ; 0048 图 4 为本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方法的仿真效果 图 ; 0049 图 5 为本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方法的另一仿真 说 明 书 CN 104461684 A 6 4/8 页 7 效果图 ; 0050 图 6 为本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方法的另一种流 程图。 具体实施方式 0051 下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进。
24、行清楚、 完 整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。基于 本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例, 都属于本发明保护的范围。 0052 在介绍本发明前, 发明人首先需要对现有红外触摸屏的相关知识进行说明。 0053 红外触摸屏在紧贴屏幕前密布有 X、 Y 方向上的红外线矩阵, 通过不停的扫描是否 有红外线被物体阻挡检测并定位用户的触摸。 在红外触摸屏屏幕的四边排布的电路板装置 有红外发射管和红外接收管, 红外发射管和红外接收管对应形成横竖交叉的红外线矩阵。 0054 MATLAB 是一种用于算法开发、。
25、 数据可视化、 数据分析以及数值计算的高级技术计 算语言和交互式环境。 0055 本发明基于上述现有技术, 同时在红外触摸屏上设置一 (X、 Y) 坐标系, 其中该坐 标系的 X 轴方向与水平方向平行, 该坐标系的 Y 轴方向与竖直方向平行。对于坐标系的圆 心的位置, 本发明可以将坐标系的圆心设置在红外触摸屏的中心, 也可设置于红外触摸屏 的左下角或右下角, 本发明对此不作限定。 0056 实施例一 0057 请参阅图 1, 其示出了本发明提供的一种基于 MATLAB 的红外触摸屏算法的测试方 法的流程图。其中红外触摸屏上设置有多个红外发射管, 其中每个红外发射管包括多条光 路, 且每条光路对。
26、应设置一个 mask( 掩膜 ) 值。方法包括 : 0058 步骤 101, 在 MATLAB 中输入模拟运动轨迹, 并获取模拟运动轨迹中触点的坐标值。 0059 在本发明中, 本发明不再局限于红外触摸屏系统硬件, 无需用户通过手指或其他 不透明物体在红外触摸屏上进行划线, 而是通过 MATLAB, 在 MATLAB 中输入模拟运动轨迹, 利用 MATLAB 数值计算的功能实现模拟运动轨迹的软件输入。 0060 具体地, 在 MATLAB 中输入的模拟运动轨迹可以包括 : 正弦波运动轨迹产生公式或 圆形运动轨迹产生公式。 0061 其中正弦波运动轨迹产生公式为 : 0062 y y+A*sin。
27、(2*f/X_LIGHT_NUM*x) ; 其中, y 为正弦波的起始位置, A 为正弦 波的振幅, f 为正弦波的频率, X_LIGHT_NUM 为所述红外触摸屏水平边上设置的红外发射管 数 ; 0063 圆形运动轨迹产生公式为 : 0064 x x+R*cos(2*1/X_LIGHT_NUM*t) ; 0065 y y+R*sin(2*1/X_LIGHT_NUM*t) ; 0066 其中, x 为圆心横坐标, y 为圆心纵坐标, (x , y ) 为圆心坐标, R 为半径, X_ LIGHT_NUM 为所述红外触摸屏水平边上设置的红外发射管数, t 为自变量, t 的取值范围为 (1, X。
28、_LIGHT_NUM)。 说 明 书 CN 104461684 A 7 5/8 页 8 0067 当在 MATLAB 中输入上述正弦波或圆形运动轨迹产生公式后, MATLAB 可以依据公 式得到一正弦波波形图或圆形波形图。 0068 在本实施例中, 依据正弦波运动轨迹产生公式或圆形运动轨迹产生公式可以计算 得到运动轨迹中每一个触点的坐标值 (x, y)。然而如果对运动轨迹中的每一个触点都进行 分析会加大系统的处理负荷, 基于此本发明采用间隔预设时间在模拟运动轨迹上采集一次 触点, 进而获取该采集的触点的 x 值和 y 值, 以此获得触点的坐标值 (x, y)。 0069 其中, 预设时间可以为。
29、 0.1 秒, 0.5 秒等, 可以根据实际需要进行灵活设置。 0070 步骤 102, 依据坐标值, 并同时依据预设的触摸物的参数信息, 确定触点对应的触 摸物的遮挡区域信息。 0071 其中, 预设的触摸物的参数信息可以包括触摸物的形状参数和触摸物的大小参 数。较优的, 还可以包括触摸物允许检测的个数, 以及多个触摸物间的间隔参数等。因此, 本发明通过灵活改变触摸物的参数信息, 如形状参数、 大小参数、 个数以及间隔参数等, 大 大提高了系统算法测试的覆盖率。 0072 在本实施例中, 较优的, 触摸物的形状参数可以包括正方形参数和 / 或圆形参数。 在实际测试过程中, 圆形参数更贴近真实。
30、情况, 本发明创新地提出圆形触摸物的概念, 使其 更加接近实际触摸物形状, 提高了数据的准确度。 0073 具体在本发明中, 分别如图 2a 和图 3a 所示, 当触摸物的形状参数为正方形参数 时, 将前述采集获得的触点的坐标值视为中心点, 按照触摸物的大小参数进行扩展, 得到一 正方形形状的遮挡区域, 确定正方形形状的遮挡区域的遮挡区域信息 ; 0074 当触摸物的形状参数为圆形参数时, 将前述采集获得的触点的坐标值视为中心 点, 按照触摸物的大小参数进行扩展, 得到一圆形形状的遮挡区域, 确定圆形形状的遮挡区 域的遮挡区域信息。 0075 需要说明的是, 本发明中触摸物的大小参数用于表示触。
31、摸物接触在红外触摸屏上 的接触面积, 其数值大小通常根据人手指接触红外触摸屏的接触面积或其他物体接触红外 触摸屏的接触面积进行设定。 0076 步骤 103, 依据遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息。 0077 在本实施例中, 每个红外发射管包含多条光路, 针对不同的光路对应设置每条光 路的 mask 值。本实施例中每条光路的 mask 值可如下表 1 所示 : 0078 0079 说 明 书 CN 104461684 A 8 6/8 页 9 0080 表 1 0081 本发明中每个红外发射管包括 15 条光路, 每条光路对应的 mask 值不同。在系统 中, mask。
32、 值通过二进制数据存储。 0082 在本实施例中, 当判断得知某条光路被遮挡时, 将其光路的 mask 值进行重置。例 如, 光路正常导通, 没有被遮挡时用二进制 1 表示, 当光路被遮挡时, 则将 1 置为 0。 0083 当确定遮挡区域为正方形形状的遮挡区域时, 如图 2b 所示, 在正方形形状的遮挡 区域上选取两条平行的分割线, 其中两条平行的分割线与红外触摸屏水平方向的 x 轴成一 定夹角, 且两条平行的分割线分别穿过正方形的两个边的中心点L和R ; 通过对正方形的 四个边的中心点 L、 T、 R、 B 的判断, 确定遮挡光路范围。 0084 具体地本实施例中, 遮挡光路范围为 (L+。
33、x,R+x)。 0085 在本发明中, 当确定遮挡区域为圆形形状的遮挡区域时, 如图 3b 所示, 在圆形形 状的遮挡区域上选取两条平行的圆周切线, 其中两条平行的圆周切线与红外触摸屏水平方 向的 x 轴成一定夹角 ; 通过对两条平行的圆周切线的判断, 确定遮挡光路范围。 0086 具体地本实施例中, 遮挡光路范围为 (x+x-R*cos,x+x+R*cos)。 0087 在本发明中, 依据确定的遮挡光路范围即遮挡区域信息, 以及每条光路的 mask 值, 即其二进制是 0 还是 1 来确定遮挡光路信息。 0088 步骤 104, 将遮挡光路信息记录并保存到遮挡光路对应的红外发射管的光路数据 。
34、中, 形成激励文件。 0089 在本发明中, 仍以前文所述每个红外发射管包括 15 条光路为例进行说明。在每个 红外发射管中保存的光路数据可以为一组二进制数据, 该二进制数据包括至少 15 位。其 说 明 书 CN 104461684 A 9 7/8 页 10 中, 每一位二进制数值对应一条光路。 正如前文所述, 本发明可以预先定义每一路导通未被 遮挡的光路对应的二进制数值为 1, 被遮挡的光路对应的二进制数值为 0。因此, 本发明中 将遮挡光路信息记录并保存到遮挡光路对应的红外发射管的光路数据中指的是将红外发 射管的光路数据中与该光路对应的二进制数值由 1 改成 0。 0090 步骤 105。
35、, 将激励文件加入到红外触摸屏算法中进行仿真。 0091 在本实施例中, 通过 MATLAB 计算得到包括遮挡光路信息的激励文件后, 将该激励 文件加入 Visual Studio 2010, Visual Studio 2010 读取激励文件中的数据信息, 将数据 信息加入到红外触摸屏算法中进行仿真。 0092 仿真效果图如图 4、 图 5 所示。其中图 4 为对红外触摸屏的边界测试效果, 图 5 为 在红外触摸屏上进行的多点测试效果。 0093 应用本发明上述技术方案, 本发明在 MATLAB 中输入模拟运动轨迹, 并获取模拟运 动轨迹中触点的坐标值 ; 依据坐标值, 并同时依据预设的触摸。
36、物的参数信息, 确定触点对应 的触摸物的遮挡区域信息 ; 依据遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息 ; 将遮挡光路信息记录并保存到遮挡光路对应的红外发射管的光路数据中, 形成激励文件 ; 将激励文件加入到红外触摸屏算法中进行仿真。因此, 本发明通过 MATLAB 生成包括遮挡光 路信息的激励文件, 将激励文件加入到红外触摸屏算法中进行仿真, 不依赖于红外触摸屏 的硬件而独立进行, 且在测试出现问题时可以非常清晰而准确地进行定位, 系统调试效率 高。 0094 此外, 本发明通过灵活改变触摸物的参数信息, 如形状参数、 大小参数、 个数以及 间隔参数等, 大大提高了系统算法。
37、测试的覆盖率。 0095 实施例二 0096 在上述实施例的基础上, 请参阅图 6, 其示出了本发明提供的一种基于 MATLAB 的 红外触摸屏算法的测试方法的另一种结构示意图, 包括 : 0097 步骤 201, 在 MATLAB 中输入模拟运动轨迹, 并获取模拟运动轨迹中触点的坐标值。 0098 步骤 202, 依据坐标值, 并同时依据预设的触摸物的参数信息, 确定触点对应的触 摸物的遮挡区域信息。 0099 步骤 203, 依据遮挡区域信息和每条光路的 mask 值, 确定遮挡光路信息。 0100 步骤 204, 将遮挡光路信息记录并保存到遮挡光路对应的红外发射管的光路数据 中, 形成激。
38、励文件。 0101 本实施例中的步骤 201- 步骤 204 与前述实施例中的步骤 101- 步骤 104 相同, 发 明人在此不再赘述。 0102 步骤 205, 判断与遮挡光路平行的其他光路是否为遮挡光路, 如果是, 执行步骤 206, 如果否, 执行步骤 207。 0103 通过判断与遮挡光路平行的其他光路是否为遮挡光路可以将当前采集的触点有 关的所有偏线进行判断, 以保证数据的精度。 0104 步骤 206, 将其他光路的遮挡光路信息记录并保存到与其他光路对应的红外发射 管的光路数据中, 形成激励文件。 0105 步骤207, 判断是否还有与遮挡光路平行的其他光路未判断。 如果还有与遮。
39、挡光路 平行的其他光路未判断, 返回执行步骤 205, 如果已经完成了与遮挡光路平行的所有其他光 说 明 书 CN 104461684 A 10 8/8 页 11 路是否为遮挡光路的判断时, 执行步骤 208。 0106 步骤 208, 依次判断下一组平行光路中的每一光路是否为遮挡光路。 0107 步骤 209, 当判断下一组平行光路中的一条或多条光路为遮挡光路时, 将下一组平 行光路中的一条或多条光路的遮挡光路信息分别记录并保存到与其光路对应的红外发射 管的光路数据中, 形成激励文件。 0108 在本实施例中, 当依据坐标值, 并同时依据预设的触摸物的参数信息, 确定触点对 应的触摸物的遮挡。
40、区域信息后, 本发明还会依次对每个红外发射管包含的多条光路进行循 环判断, 以此确定所有被遮挡的光路数据信息。 0109 步骤 210, 将数据包头信息写入所有激励文件中。 0110 其中数据包头信息用于表示当前红外触摸屏支持的触摸物的个数。 0111 在本实施例中, 当数据包信息记录的数据为 1 时, 表示当前红外触摸屏在同一时 刻只支持并识别一个触摸物的触摸, 即只能识别一个触点, 当数据包信息记录的数据为 2 时, 表示当前红外触摸屏在同一时刻可以同时支持并识别两个触摸物的触摸, 以此类推, 当 数据包信息记录的数据为 n 时, n 大于等于 3, 表示当前红外触摸屏在同一时刻同时支持并。
41、 识别 n 个触摸物的触摸, 即同时识别 n 个触点。 0112 在本发明中, 系统可以根据数据包头信息选择与当前红外触摸屏在同一时刻支持 并识别的触点数相应的算法进行仿真。 0113 步骤 211, 将所述所有激励文件加入到红外触摸屏算法中进行仿真。 0114 应用本发明上述技术方案, 本发明实现了对红外触摸屏上所有光路是否被遮挡的 判断, 提高了红外触摸屏算法测试的准确度。 0115 需要说明的是, 本说明书中的各个实施例均采用递进的方式描述, 每个实施例重 点说明的都是与其他实施例的不同之处, 各个实施例之间相同相似的部分互相参见即可。 0116 还需要说明的是, 在本文中, 术语 “包。
42、括” 、“包含” 或者其任何其他变体意在涵盖非 排他性的包含, 从而使得包括一系列要素的过程、 方法、 物品或者设备不仅包括那些要素, 而且还包括没有明确列出的其他要素, 或者是还包括为这种过程、 方法、 物品或者设备所固 有的要素。在没有更多限制的情况下, 由语句 “包括一个” 限定的要素, 并不排除在包 括所述要素的过程、 方法、 物品或者设备中还存在另外的相同要素。 0117 以上对本发明所提供的一种基于 MATLAB 的红外触摸屏算法的测试方法进行了详 细介绍, 本文中应用了具体个例对本申请的原理及实施方式进行了阐述, 以上实施例的说 明只是用于帮助理解本申请的方法及其核心思想 ; 同。
43、时, 对于本领域的一般技术人员, 依据 本申请的思想, 在具体实施方式及应用范围上均会有改变之处, 综上所述, 本说明书内容不 应理解为对本申请的限制。 说 明 书 CN 104461684 A 11 1/5 页 12 图 1 说 明 书 附 图 CN 104461684 A 12 2/5 页 13 图 2a 图 2b 说 明 书 附 图 CN 104461684 A 13 3/5 页 14 图 3a 图 3b 说 明 书 附 图 CN 104461684 A 14 4/5 页 15 图 4 图 5 说 明 书 附 图 CN 104461684 A 15 5/5 页 16 图 6 说 明 书 附 图 CN 104461684 A 16 。