CN101763198B - 一种基于SoC的背投影式多点触摸的定位方法 - Google Patents
一种基于SoC的背投影式多点触摸的定位方法 Download PDFInfo
- Publication number
- CN101763198B CN101763198B CN 200910273382 CN200910273382A CN101763198B CN 101763198 B CN101763198 B CN 101763198B CN 200910273382 CN200910273382 CN 200910273382 CN 200910273382 A CN200910273382 A CN 200910273382A CN 101763198 B CN101763198 B CN 101763198B
- Authority
- CN
- China
- Prior art keywords
- touch
- point
- soc
- user
- back projection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Position Input By Displaying (AREA)
Abstract
一种基于SoC的背投影式多点触摸屏装置及多点触摸的定位方法,其装置包括:背投影屏幕或投影膜(104)、带有可检测并跟踪光点的感应SoC的多点触摸控制板(103)、投影仪(102)及多支有源触摸笔(105和106)。其优点在于:本发明的多点触摸屏装置结构简单紧凑,调试方便,成本低廉;可按照区分多用户或不区分多用户的工作模式,分别提供区分各触摸点所属用户或模拟光标左键或右键按下的功能;由于触摸点的识别与跟踪功能均由SoC完成,因此故障率低,触摸点位置坐标计算方便、准确可靠;可通过使用多个SoC拼接的方法提高触摸分辨率;可方便地使用本方法改装其他背投影屏幕或背投拼接墙,使其具有多点触摸功能。
Description
技术领域
本发明涉及人机交互技术及多点触摸屏领域,特别涉及一种采用传感器SoC的可识别及跟踪多个触摸点并且支持区分多用户的背投影式多点触摸屏这一新型人机交互设备。
背景技术
目前,触摸屏技术已在多种电子设备中得到了广泛的应用。近两年来,还出现了数种多点触摸屏技术。而随着人机交互及3维GIS等技术的发展,对于新型人机交互设备的要求越来越高。单机平台上的多用户协作提出了对于支持区分多用户的多点触摸屏技术的需求。
多点触摸屏技术多为2006年以后才出现的,除微软的surfacecomputer多点触摸平台外,其他多点触摸屏多不支持区分各触摸点所属用户,即无法将各触摸点与用户身份对应起来,这样不能支持两个或两个以上的多用户在单台多点触摸屏上进行不同的操作,限制了多点触摸技术的应用范围;其次,部分多点触摸技术存在误触摸问题或遮挡问题,各触摸点之间存在相互干扰,如部分红外扫描式多点触摸屏即存在此问题;还有些触摸屏需要外部辅助光源及某些特殊的膜或面板材料,安装及调试较复杂,生产成本较高;另外,目前的多点触摸屏在进行单点触摸时均只提供利用单点触摸动作硬件模拟鼠标左键按下的方法,而未提供与电磁感应式单点触摸屏类似的以单点触摸硬件模拟鼠标右键按下的方法,这样就限制了触摸动作的功能,如光标右键点击调出快捷菜单,或Google Earth中右键双击缩小地图等功能。
比如陈伟山申请的“多点及物体触摸屏装置及多点触摸的定位方法”,申请号为200810065714.5,该专利使用多个置于触摸面板侧面的红外发射LED作为受抑内全反射的辅助红外光源,对于红外发射LED的光线指向要求 较严;与其相似的美国纽约大学的JeffHan教授于2006年研制的基于受抑内全反射的多点触摸屏专利也存在此问题。
又如广东威创日新电子有限公司申请的“一种多点触摸定位方法”,申请号为200710028038.X,及该公司申请的其他相关专利。在对该公司相应的威创IDB5360等离子多点触摸屏的使用过程中发现,该多点触摸专利技术存在遮挡问题,即当两个触摸点的x坐标或y坐标重合时,有时不能够正确识别两个触摸点并正确地给出触摸点位置;且只能使用触摸点按下持续数秒不移动的方法模拟鼠标右键按下,使用不够方便,无法模拟右键双击等动作。
另外以上提到的多点触摸屏专利技术均不支持区分各触摸点属于哪个用户,因此不能支持多个用户同时在同一多点触摸屏上以各自的触摸点完成不同的操作,难以方便地支持单台触摸屏上的多用户协同工作;在做单点触摸时,也不能如电磁感应式单点触摸屏那样提供以直观的触摸动作模拟光标右键的功能,而只能以按住同一触摸点数秒的方式模拟光标右键单击,无法完成光标右键双击等功能,如在Google Earth或NASA WorldWind中使用光标右键双击完成的缩小地图的功能。
因此,提供一种既能支持多点触摸,又能根据各触摸点的特征判断触摸点所属用户的低成本多点触摸屏实现方法就极为必要。
发明内容
本发明的目的在于提供一种支持多支触摸笔的背投影显示方式的多点触摸屏的实现方法与设备,及根据各触摸点的特征判断触摸点所属用户的方法,或根据触摸点的特征区分为光标左键按下或右键按下的方法。本发明所涉及的多点触摸屏依照驱动程序中的设置可工作于不区分多用户或区分多用户两种工作模式下。
本发明一种基于SoC的背投影式多点触摸屏装置,包括:
一种基于SoC的背投影式多点触摸屏,包括:一块很薄的强化玻璃,其表面的耐磨性较好;一片背投影屏幕或投影膜,贴附在强化玻璃表面;
一块多点触摸控制电路板,控制板包括一个蓝牙通信芯片或其他USB 及串口的通信芯片,用于存储初始化信息的EEPROM及控制板一端的感应SoC,感应SoC的前部带有一个红外滤光片,且感应SoC的感应平面与背投影屏幕或投影膜表面平行,其感应范围覆盖整个背投影屏幕或投影膜表面;
一个投影仪,以背投影的方式向背投影屏幕或投影膜投射影像;
多支触摸笔,触摸笔笔尖及笔尾带有不同直径的红外发射LED,触摸时会接通这些红外发射LED。
多点触摸控制电路板板载的感应SoC的感应范围覆盖整个背投影屏幕或投影膜表面。该SoC可识别多个触摸点(不多于4个)处红外亮点的位置、大小并跟踪这些亮点的运动轨迹,并将这些信息以蓝牙、USB或串口等通信方式发回主机,主机接收这些信息并由驱动程序按照预设的不区分多用户或区分多用户的工作模式将这些信息解释为各种触摸动作,并发送相应的触摸消息。
在不区分多用户的工作模式下,支持使用触摸笔笔尖端与笔尾端触摸点的不同特征分别判别为光标左键或右键按下,但不支持以触摸点的特征区分各用户。此时,该多点触摸屏设备所用的传感器SoC同时接受Z(Z≤4)支触摸笔笔尖或笔尾触摸位置的红外发光点的红外线,其中触摸笔笔尖与笔尾采用不同直径的发射LED,因而红外发光点的大小不同;SoC感应触摸笔笔尖或笔尾在触摸时发出并经红外滤光片过滤后的光线,给出红外触摸光点的位置信息及大小信息;驱动程序接受SoC通过蓝牙、USB或串口等通信方式发回的触摸笔笔尖或笔尾触摸光点的位置信息及大小信息,利用四维转换矩阵将触摸光点的位置(称为触摸坐标)转换为背投影幕显示画面上对应的像素位置(称为显示坐标),并按照触摸光点的大小判断为笔尖触摸或笔尾触摸,并分别将笔尖触摸或笔尾触摸模拟为光标左键按下或右键按下。
在区分多用户的工作模式下,以触摸点的特征区分该触摸点所属的用户,但不支持以触摸点的特征区分为光标左键按下或右键按下。该多点触摸屏设备所用的传感器SoC同时接受Z(Z≤4)支触摸笔笔尖触摸位置的红外发光点的红外线,其中几个用户各自触摸笔笔尖的红外发光点的大小不同;SoC感应触摸笔笔尖在触摸时发出并经红外滤光片过滤后的光线,给出 红外触摸光点的位置信息及光点的大小信息;驱动程序接收SoC通过蓝牙、USB或串口等通信方式发回的触摸笔笔尖触摸光点的位置信息及大小信息,利用四维转换矩阵将触摸光点的位置转换为背投影幕显示画面上对应的像素位置,并以触摸光点的大小区分不同的用户。目前暂时只支持区分两个不同的用户,其中用户1的触摸动作可控制系统光标,而用户2的触摸动作则只能控制自己的用户光标。
以上提到的四维转换矩阵在本多点触摸屏装置首次使用时由用户使用驱动程序附带的四点校正程序求得并保存;并在每次多点触摸控制电路板与背投影屏幕或投影膜的相对位置发生改变后,或在屏幕的显示分辨率进行更改后由用户再次使用四点校正程序求得并保存。
结合上述说明,本发明一种基于SoC的背投影式多点触摸屏的多点触摸的定位方法,其步骤如下:
(1)启动计算机主机,投影仪和多点触摸控制电路板,并将控制电路板连接至主机,投影仪将主机的输出视频以背投影方式投射在背投影屏幕或投影膜上;
(2)驱动程序读写控制板上的EEPROM中的控制信息,设置感应SoC的工作模式及感应亮度阈值;
(3)若为第一次使用该多点触摸屏,或在上次校正后更改过显示分辨率,或上次校正后控制电路板与背投影屏幕或投影膜的相对位置发生了改变,则需校正,使用四点校正程序进行一次四点校正过程以得到四维转换矩阵,若无需校正,则驱动程序会读出上次校正时存盘的四维转换矩阵;
(4)用户打开需要多点触摸功能的应用程序,该多点触摸应用程序在驱动程序中注册自己的窗口信息;
(5)用户同时使用多支(不超过4支)触摸笔在多点触摸屏表面进行触摸操作;
(6)多点触摸控制板一端的SoC感应多支触摸笔笔尖或笔尾的触摸亮点,将亮点的亮度值与EEPROM中预设的感应亮度阈值(共8级可调)进行比较,若超过亮度阈值,则认为该亮点为触摸点,给出其触摸坐标及亮点的大小;
(7)SoC将各触摸点(不超过4个触摸点)的触摸坐标及亮点大小编码后通过I2C总线发送到控制板板载的蓝牙接口芯片,或其他USB或串口的通信接口芯片;
(8)蓝牙接口芯片或其他通信接口芯片以固定的频率将包含此次各触摸点的触摸坐标及亮点大小信息的数据包发回主机;
(9)驱动程序接收并解析数据包,得到各触摸点的触摸坐标及亮点大小,并将触摸坐标与四维转换矩阵相乘以得到对应的显示坐标;
(10)驱动程序根据触摸点的信息在屏幕上多个触摸点相应的显示坐标处绘制各触摸点对应的多个光标;
(11)按照区分多用户或不区分多用户的工作模式,驱动程序发送系统光标消息,或向已注册的多点触摸应用程序窗口发送相应的多点触摸消息;
(12)多点触摸应用程序根据驱动程序发送的触摸消息执行相应的功能;
(13)重复步骤(6)-(12),开始新的循环。
本发明的特点是使用SoC感应多支触摸笔笔尖或笔尾的触摸点处光点的位置及大小,从而支持多个触摸点,并以触摸点处光点大小的不同作为区分触摸点所属用户的特征,或作为判别触摸为触摸笔笔尖或笔尾触摸从而模拟光标左键或右键按下的依据;由于SoC在很小的体积下完成了识别并跟踪光点坐标位置及大小的功能,并能提供较高的分辨率,不需要任何的扫描及检测电路,也不需要任何辅助光源或摄像机,因此本多点触摸平台的控制卡结构极为简单,成本低廉,并可通过拼接使用多个SoC提高触摸分辨率,降低触摸误差。
与现有的多点触摸技术相比较,本发明一种基于SoC的背投影式多点触摸屏装置及多点触摸的定位方法的优点在于:
1、本发明的多点触摸屏装置结构简单紧凑,调试方便,成本低廉;
2、可按照区分多用户或不区分多用户的工作模式,分别提供区分各触摸点所属用户或模拟光标左键或右键按下的功能;
3、由于触摸点的识别与跟踪功能均由SoC完成,因此故障率低,触摸点位置坐标计算方便、准确可靠;
4、可通过使用多个SoC拼接的方法提高触摸分辨率;
5、可方便地使用本方法改装其他背投影屏幕或背投拼接墙,使其具有多点触摸功能。
附图说明
图1为基于SoC的背投影式多点触摸屏装置的结构示意图;
图2为基于SoC的背投影式多点触摸屏装置的侧面示意图;
图3为基于SoC的背投影式多点触摸屏装置可使用的一种简易触摸笔的结构示意图;
图4为基于SoC的背投影式多点触摸屏装置的硬件原理框图;
图5为基于SoC的背投影式多点触摸屏装置的感应SoC的12个字节的多点触摸数据定义;
图6为基于SoC的背投影式多点触摸屏装置的驱动程序在不区分多用户的工作模式下的流程框图;
图7为基于SoC的背投影式多点触摸屏装置的驱动程序在区分多用户的工作模式下的流程框图。
具体实施方式
下面结合附图进一步说明本发明的技术方案。
图1是本发明基于SoC的背投影式多点触摸屏装置的结构示意图。该装置包括:一块贴于耐磨性较好的强化玻璃内侧表面的背投影屏幕或投影膜104;多支使用不同直径的红外发射二极管作为笔尖或笔尾的有源触摸笔105和106;多点触摸控制板103,该控制板上板载感应SoC,EEPROM及蓝牙通信芯片,该三者之间通过I2C总线连接,且蓝牙通信芯片通过标准的蓝牙通信协议与计算机主机通信;带有蓝牙适配器的计算机主机101,该计算机主机的视频通过投影仪102以背投影方式投射在背投影屏幕104上。
图2是本发明基于SoC的背投影式多点触摸屏装置的侧面示意图,其中背投影屏幕或投影膜202对于光线有较强的散射及折射能力,贴于耐磨性较好的强化玻璃203的内侧表面。有源触摸笔204和205在强化玻璃203 表面进行触摸操作时其触摸点处笔尖的红外发射LED被接通而发出红外线,其峰值波长为940nm。由于背投影屏幕或投影膜对于光线有较强的散射及折射能力,因而触摸笔发出的红外线经散射与折射后被多点触摸控制板206上的SoC识别为背投影屏幕或投影膜表面的亮点,且该亮点的直径正比于笔尖红外发射LED的直径及射束角。由于SoC的前端带有的红外滤光片主要通过940nm附近波段的近红外光线,因此环境光及投影仪201所投射并在背投影屏幕或投影膜表面反射的光线几乎全部被滤光片吸收,对SoC的识别结果没有影响。且由于背投影屏幕及投影膜对光线的散射及折射作用,因而触摸笔在使用时基本没有倾斜角度的限制。
图3为本发明可使用的一种简易触摸笔的结构示意图,亦可使用其他笔尖带有压感式机械结构的触摸笔,只要触摸笔的笔尖或笔尾使用不同直径及射束角的红外发射LED,且触摸点压下的同时能够接通红外发射LED的电源即可。例如图3中的触摸笔分别使用射束角均为60°,峰值波长均为940nm,而直径分别为5mm和3mm的红外发射LED制作笔尖301和笔尾302。两个限流电阻303和304依使用的笔身电池的电压而有所不同:若使用1.5V电源,则可省略;若使用3V电源,则取15~30欧姆;若使用5V电源,则取40~70欧姆。
图4为本发明的硬件原理框图,其中多点触摸控制板上的传感器SoC及EEPROM与蓝牙通信芯片的I2C总线控制器通过I2C总线连接,工作于400kHz。EEPROM中存储该多点触摸控制板的Vendor ID与Device ID,SoC的感应亮度阈值(共8级可调)以及传感器SoC的工作方式。该传感器SoC可工作于Basic或Advanced两种工作方式,分辨率为1024×768。在Basic工作方式下,该SoC可识别并跟踪2个光点;在Advanced工作方式下,该SoC可识别并跟踪4个光点。本控制板的SoC设置工作于Advanced工作方式下。
图5为传感器SoC在Advanced工作方式下通过蓝牙通信芯片发回的数据包中包含的4个光点的信息,序号为1~4,每秒钟发送100次。每个光点占用3个字节,共12个字节。对于每个光点的3个字节,第1个字节为光点X坐标的低8位;第2个字节为光点Y坐标的低8位;第3个字节的 bit7~bit6为Y坐标的高2位,bit5~bit4为X坐标的高2位,bit3~bit0为该光点的大小。X坐标的取值范围为0~1023,Y坐标的取值范围为0~767,触摸光点大小的取值范围为0~15。例如图3中的笔尖301被识别到的光点大小为2,笔尾302被识别到的光点大小为1或0。由于该SoC在识别光点的同时具有跟踪光点运动轨迹的功能,因此同一触摸点处的光点信息在触摸点按下至触摸点抬起的过程中的触摸点序号是不变的。当相应序号的触摸点不存在时,则数据包中对应的3个字节X坐标与Y坐标的数据位被置为全1而触摸光点大小的数据位被置为全0。
图1所示的多点触摸屏装置实例按照以下步骤完成多支触摸笔同时进行触摸的功能:
(1)通过Z(Z≤4)支笔尖及笔尾带有红外发射LED的有源触摸笔105和106在背投影屏幕104表面的触摸,接通笔尖或笔尾的红外发射LED,在笔尖或笔尾的触摸点处形成一个红外亮点。使用不同的红外发射LED分别制作各用户的触摸笔笔尖或笔尾。如分别使用射束角均为60°,峰值波长均为940nm,而直径分别为3mm和5mm的红外发射LED制作两个用户的触摸笔302和301的笔尖。一种简易的触摸笔的结构如图3所示,在触摸的同时按下笔身上的触点开关;或可采用其他笔尖带有压感式机械结构的触摸笔,在触摸点压下的同时能够接通红外发射LED的电源即可。
(2)触摸笔笔尖或笔尾发出的红外线经过背投影屏幕的折射与散射后,与环境光及投影屏反射光一起经红外滤光片滤光后被传感器SoC所感应。由于环境光及投影屏反射光的主要为可见光波段,而红外滤光片主要透过近红外波段,因此触摸点被SoC识别为暗背景下的亮点,并给出其位置信息与大小信息。对于环境中存在的点光源,由于其近红外波段部分的光强通常较弱,与触摸点处亮点的光强相比较小(通常至少低一个数量级),小于SoC的光强感应阈值(共8级可调)而被忽略。
(3)SoC将触摸点的位置及大小编码后,通过蓝牙或USB等通信方式以固定的频率(100Hz)将数据包发回给主机,主机通过驱动程序读取数据包并按照图5所示的格式将其解析,以判断触摸点的个数、位置及触摸点处光点大小信息。
(4)解析后的坐标为触摸坐标,与显示坐标即背投影屏幕上触摸点处的像素位置即显示坐标往往不能一一对应。触摸坐标经过与四维转换矩阵相乘后转化为各触摸点处的像素位置,即显示坐标。该四维转换矩阵为支持触摸坐标系与显示坐标系间的平移变换、旋转变换与比例变换的复合变换矩阵,通过校准程序求得。
(5)驱动程序按照预设的区分用户或不区分用户的模式分别模拟触摸动作并发送相应的消息。在区分多用户的工作模式下,按照触摸点处光点大小区分各用户身份,目前区分为两个用户,其中用户1的触摸动作可控制系统光标,用户2的触摸动作不控制系统光标,只控制自己的用户光标;在不区分多用户的工作模式下,由于笔尖与笔尾采用了不同直径的红外发射LED,因而在触摸点处的光点大小不同,按照触摸光点大小的不同区分笔尖触摸或笔尾触摸,从而分别将其模拟为光标左键按下或右键按下。
其中,多点触摸控制板板载的SoC能够感应并跟踪可见光与近红外波段的亮点,SoC与蓝牙通信芯片之间通过I2C总线进行数据通信,EEPROM中存储预设的SoC控制信息。在触摸时,环境光与触摸笔笔尖触摸点处的红外线经红外滤光片过滤后被控制板前端的感应SoC所接收,红外滤光片能够吸收绝大部分可见光波段的能量而保留大部分近红外波段的能量。感应SoC能够识别并跟踪触摸时多支触摸笔笔尖或笔尾端的触摸点处的红外亮点轨迹,SoC将该红外亮点区域的亮度与控制板的EEPROM中预设的亮度阈值(共8级可选的预设值)相比,若达到预设的亮度阈值,则认为该亮点是触摸点处的红外亮点,若小于亮度阈值,则认为该亮点是环境光的干扰,舍去该亮点。该SoC最多可同时感应并跟踪4个亮点的大小及位置,若多于4个,则只取其中亮度最高的4个亮点。该SoC将触摸点处的红外光点的大小及位置坐标进行编码,并通过I2C总线发送至控制板板载的蓝牙接口芯片。蓝牙接口芯片再通过标准的蓝牙通信协议将包含红外光点的大小及位置坐标的数据包发送回主机。其通信格式符合微软所定义的USB/蓝牙人机接口设备标准,因此驱动程序可通过该标准定义的函数读取数据包信息。驱动程序每秒钟接收100次蓝牙接口芯片所发回的数据包并将其解析,每个数据包共有12个有效字节,每个可能的触摸点占据3个字节,其编码格 式如图5所示。驱动程序按照图5所示格式将数据包解析为各触摸点的触摸坐标及触摸点的大小,并将触摸坐标与四维转换矩阵相乘,从而得到各触摸点的显示坐标。
四维转换矩阵由用户在首次使用该多点触摸屏,或在上次校正后更改过显示分辨率,或上次校正后控制电路板与背投影屏幕或投影膜的相对位置发生了改变时使用四点校正程序获得。由于感应SoC的感应平面与背投影幕表面的显示区域均为平面线性坐标系,而在安装时一般不能够确保两个平面的表面及坐标轴精确平行,另外触摸分辨率与显示分辨率往往也不相同,因此,校正过程即可视为两个z=0的空间三维坐标系之间的复合变换问题,即触摸坐标系与显示坐标系间的复合变换问题。复合变换由三维平移变换,使用四点校正程序重新对多点触摸屏进行校正,以计算复合变换矩阵的具体原理说明如下:
(1)两个空间三维线性坐标系间的三维平移变换为
其中Tx,Ty,Tz分别是触摸坐标沿x,y,z轴方向所做的平移距离。
(2)两个空间三维线性坐标系间的绕x轴旋转变换为
其中α是绕x轴逆时针旋转的角度。
(3)两个空间三维线性坐标系间的绕y轴旋转变换为
其中β是绕y轴逆时针旋转的角度。
(4)两个空间三维线性坐标系间的绕z轴旋转变换为
其中γ是绕z轴逆时针旋转的角度。
(5)两个空间三维线性坐标系间的三维比例变换为
sx,sy,sz分别是三坐标轴方向的比例系数。
(6)复合变换的变换矩阵即为将此5个变换矩阵相乘得到,如下所示
由于触摸坐标系及显示坐标系均为三维线性坐标系在z=0时的特殊情况,故复合变换矩阵T的第三列的向量为[0 0 1 0]。即复合变换矩阵的形式为:
由于该变换矩阵中存在8个未知系数,因此共需要8个共4对相对应的触摸坐标系与显示坐标系中的坐标,即4个点的触摸坐标及相应的显示坐标。因此取得该复合变换矩阵的4点校正方法过程如下:
(1)将屏幕的整个背景设置为白色。
(2)在接近屏幕左上角预设的显示坐标[x1 *,y1 *]处显示一个红色十字叉,红色十字叉中心位置的显示坐标为[x1 *,y1 *],等待用户点击。若用户点击成功则得到该显示坐标对应的触摸坐标[x1,y1]。
(3)在接近屏幕左下角预设的显示坐标[x2 *,y2 *]处显示一个红色十字叉,等待用户点击。若用户点击成功则得到该显示坐标对应的触摸坐标[x2,y2]。
(4)在接近屏幕右上角预设的显示坐标[x3 *,y3 *]处显示一个红色十字叉,等待用户点击。若用户点击成功则得到该显示坐标对应的触摸坐标[x3,y3]。
(5)在接近屏幕右下角预设的显示坐标[x4 *,y4 *]处显示一个红色十字叉,等待用户点击。若用户点击成功则得到该显示坐标对应的触摸坐标[x4,y4]。
(5)由4对分别对应的触摸坐标[x1,y1][x2,y2][x3,y3][x4,y4]与显示坐标[x1 *,y1 *][x2 *,y2 *][x3 *,y3 *][x4 *,y4 *]进行矩阵运算,从而得到变换矩阵中的8个系数并将其存盘。
图6是驱动程序在不区分多用户的工作模式下的流程框图。由于多点触摸控制板103与主机间的通信格式符合USB/蓝牙HID标准,因此其数据包可使用C:\Windows\System32下的hid.dll中包含的Hid User Library标准库函数进行读写。每次在主机连接至多点触摸控制板时,驱动程序进行设备枚举,通过读取的Vendor ID和Device ID识别多点触摸控制板并获取相应的读写句柄,并通过该句柄读取该多点触摸控制板发回的数据包。在不区分多用户的工作模式下,使用笔尖或笔尾端触摸点处的红外光点大小区分是笔尖端触摸或笔尾端触摸,在单点触摸时以笔尖端触摸模拟光标左键按下而以笔尾端触摸模拟光标右键按下,并利用标准的mouse_event 等函数将对应的消息发送至系统鼠标消息队列中。由于需要保持系统鼠标队列中光标按下及抬起的消息平衡,因此在单点触摸变为多点触摸时需发送一次光标抬起的消息而在多点触摸变为单点触摸时则发送一次光标按下的消息。由于图3中的笔尖端301触摸点的光点大小被SoC检测为2,而笔尾端302触摸点的光点大小被SoC检测为0或1,因而设置判别阈值为1。由于多点触摸消息并非标准的Windows消息,因此多点触摸应用程序在启动时向驱动程序注册自己的窗口信息,在进行多点触摸时驱动程序只向处于活动状态的多点触摸应用程序窗口发送相应的多点触摸消息。
图7是驱动程序在区分多用户的工作模式下的流程框图。在此种工作模式下用户1只使用图3中的触摸笔尖端301进行触摸而用户2只使用图3中的触摸笔尾端302进行触摸,因而不能支持模拟光标右键的功能。用户1可控制系统光标,对应的光标消息被置于系统鼠标消息队列中;而用户2则只能控制自己的用户光标,为用户2设置与系统鼠标消息类似的用户光标消息。与图6所示的不区分多用户的工作模式类似,在区分多用户的工作模式下,仍然以类似的方法保持系统鼠标消息队列与用户光标消息队列中光标按下及抬起的消息平衡;而该模式下的多点触摸消息则带有用户标识。
经过以上所述步骤,本发明的实施例实现了对同时使用多支触摸笔时的多触摸点的检测、定位及跟踪,并可根据预设的驱动程序的工作模式的不同完成区分两个用户或分别模拟鼠标左键与右键的功能。
Claims (3)
1.一种基于SoC的背投影式多点触摸屏的多点触摸的定位方法,其特征在于:其步骤如下:
(1)启动计算机主机,投影仪和多点触摸控制电路板,并将控制电路板连接至主机,投影仪将主机的输出视频以背投影方式投射在背投影屏幕或投影膜上;
(2)驱动程序读写控制板上的EEPROM中的控制信息,设置感应SoC的工作模式及感应亮度阈值;
(3)若为第一次使用该多点触摸屏,或在上次校正后更改过显示分辨率,或上次校正后控制电路板与背投影屏幕或投影膜的相对位置发生了改变,则需校正,使用四点校正程序进行一次四点校正过程以得到四维转换矩阵,若无需校正,则驱动程序会读出上次校正时存盘的四维转换矩阵;
(4)用户打开需要多点触摸功能的应用程序,该多点触摸应用程序在驱动程序中注册自己的窗口信息;
(5)用户同时使用不超过4支触摸笔在多点触摸屏表面进行触摸操作;
(6)多点触摸控制板一端的SoC感应多支触摸笔笔尖或笔尾的触摸亮点,将亮点的亮度值与EEPROM中预设的感应亮度阈值进行比较,感应亮度阈值共8级可调,若超过亮度阈值,则认为该亮点为触摸点,给出其触摸坐标及亮点的大小;
(7)SoC将不超过4个的各触摸点的触摸坐标及亮点大小编码后通过I2C总线发送到控制板板载的蓝牙接口芯片,或其他串口的通信接口芯片;
(8)蓝牙接口芯片或其他通信接口芯片以固定的频率将包含此次各触摸点的触摸坐标及亮点大小信息的数据包发回主机;
(9)驱动程序接收并解析数据包,得到各触摸点的触摸坐标及亮点大小,并将触摸坐标与四维转换矩阵相乘以得到对应的显示坐标;
(10)驱动程序根据触摸点的信息在屏幕上多个触摸点相应的显示坐标处绘制各触摸点对应的多个光标;
(11)按照区分多用户或不区分多用户的工作模式,驱动程序发送系统 光标消息,或向已注册的多点触摸应用程序窗口发送相应的多点触摸消息;
(12)多点触摸应用程序根据驱动程序发送的触摸消息执行相应的功能;
(13)重复步骤(6)-(12),开始新的循环。
2.根据权利要求1所述的一种基于SoC的背投影式多点触摸屏的多点触摸的定位方法,其特征在于:触摸笔笔尖端与笔尾端采用不同直径及射束角的红外发射LED,在触摸屏表面的触摸点处形成不同大小的红外亮点,利用亮点大小不同区分笔尖端与笔尾端,以分别模拟光标左键与右键。
3.根据权利要求1所述的一种基于SoC的背投影式多点触摸屏的多点触摸的定位方法,其特征在于:不同用户的触摸笔笔尖端采用不同直径及射束角的红外发射LED,在触摸屏表面的触摸点处形成不同大小的红外亮点,利用亮点大小不同区分各触摸点所属的用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910273382 CN101763198B (zh) | 2009-12-25 | 2009-12-25 | 一种基于SoC的背投影式多点触摸的定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910273382 CN101763198B (zh) | 2009-12-25 | 2009-12-25 | 一种基于SoC的背投影式多点触摸的定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101763198A CN101763198A (zh) | 2010-06-30 |
CN101763198B true CN101763198B (zh) | 2012-03-28 |
Family
ID=42494385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910273382 Expired - Fee Related CN101763198B (zh) | 2009-12-25 | 2009-12-25 | 一种基于SoC的背投影式多点触摸的定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101763198B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073414B (zh) * | 2010-10-29 | 2013-10-30 | 广东威创视讯科技股份有限公司 | 基于机器视觉的多点触摸跟踪方法 |
JP5743198B2 (ja) * | 2011-04-28 | 2015-07-01 | 株式会社ワコム | マルチタッチ・マルチユーザ検出装置 |
CN102419650A (zh) * | 2011-05-06 | 2012-04-18 | 北京汇冠新技术股份有限公司 | 一种多点触控的实现方法及系统 |
US9348466B2 (en) | 2011-06-24 | 2016-05-24 | Hewlett-Packard Development Company, L.P. | Touch discrimination using fisheye lens |
CN104035632B (zh) * | 2013-03-04 | 2017-11-07 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106302676B (zh) * | 2016-08-05 | 2019-11-29 | 南京仁光电子科技有限公司 | 大屏幕智能交互系统 |
CN117953018B (zh) * | 2024-03-26 | 2024-06-18 | 深圳康荣电子有限公司 | 红外感应的屏幕跟随方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101281441A (zh) * | 2008-05-19 | 2008-10-08 | 广州成沣信息科技有限公司 | 一种构造大屏幕多点触摸屏的系统和方法 |
CN101414225A (zh) * | 2008-11-21 | 2009-04-22 | 广东威创视讯科技股份有限公司 | 电子书写笔以及交互式输入系统 |
CN101419513A (zh) * | 2008-12-09 | 2009-04-29 | 安徽大学 | 一种红外激光笔遥指虚拟触摸系统 |
CN101464754A (zh) * | 2008-12-19 | 2009-06-24 | 卫明 | 任何平面四边无附加设备实现多点触控的定位方法和装置 |
CN101464745A (zh) * | 2007-12-17 | 2009-06-24 | 北京汇冠新技术有限公司 | 一种背投光源式触摸识别装置及其触摸识别方法 |
CN101477427A (zh) * | 2008-12-17 | 2009-07-08 | 卫明 | 接触或无接触式红外线激光多点触控装置 |
-
2009
- 2009-12-25 CN CN 200910273382 patent/CN101763198B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101464745A (zh) * | 2007-12-17 | 2009-06-24 | 北京汇冠新技术有限公司 | 一种背投光源式触摸识别装置及其触摸识别方法 |
CN101281441A (zh) * | 2008-05-19 | 2008-10-08 | 广州成沣信息科技有限公司 | 一种构造大屏幕多点触摸屏的系统和方法 |
CN101414225A (zh) * | 2008-11-21 | 2009-04-22 | 广东威创视讯科技股份有限公司 | 电子书写笔以及交互式输入系统 |
CN101419513A (zh) * | 2008-12-09 | 2009-04-29 | 安徽大学 | 一种红外激光笔遥指虚拟触摸系统 |
CN101477427A (zh) * | 2008-12-17 | 2009-07-08 | 卫明 | 接触或无接触式红外线激光多点触控装置 |
CN101464754A (zh) * | 2008-12-19 | 2009-06-24 | 卫明 | 任何平面四边无附加设备实现多点触控的定位方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101763198A (zh) | 2010-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101763198B (zh) | 一种基于SoC的背投影式多点触摸的定位方法 | |
CN105760019B (zh) | 基于交互式电子白板的触摸操作方法及其系统 | |
CN101661352B (zh) | 光触摸屏和触摸笔以及装有光触摸屏的桌子 | |
JP4442877B2 (ja) | 座標入力装置およびその制御方法 | |
CN100511115C (zh) | 触摸板以及与触摸板一起使用的触笔和操作触摸板的方法 | |
CN101208738A (zh) | 自动投影校准 | |
US9189107B2 (en) | Eraser for use with optical interactive surface | |
KR20140016987A (ko) | 가상 필기 입력을 위한 방법 및 전자 장치 | |
CN101256457A (zh) | 带用户身份标识的无线控制激光笔及多用户光点识别系统 | |
CN102436327B (zh) | 一种屏幕输入系统及其实现方法 | |
CN103995623B (zh) | 一种非接触式触屏控制装置 | |
CN107656633A (zh) | 一种智能笔、智能笔的控制方法、装置、设备及存储介质 | |
KR20110122897A (ko) | 광학인식펜을 이용한 인터랙티브 전자 칠판 시스템 및 운영 방법 | |
CN108027648A (zh) | 一种可穿戴设备的手势输入方法及可穿戴设备 | |
CN102163108A (zh) | 多触摸点识别方法及装置 | |
KR20140038745A (ko) | 광 터치 패널과 터치 펜을 포함하는 터치 시스템 및 터치 시스템에서 간섭 광신호 제어 방법 | |
CN104423721A (zh) | 基于雷达眼的无框式多点触控人机交互方法及系统 | |
WO2010110683A2 (en) | Optical imaging secondary input means | |
CN102478996A (zh) | 对映触控面板上的手指动作至电脑屏幕的方法 | |
CN103150059B (zh) | 电子系统与轨迹检测方法 | |
KR101512239B1 (ko) | 터치 명령 및 특이 터치를 이용한 디바이스 간 컨텐츠 이동 시스템 및 방법 | |
CN104142739A (zh) | 一种基于光学鼠标传感阵列的激光点追踪系统及方法 | |
CN107239179A (zh) | 一种触摸识别装置及包含该装置的人机交互系统 | |
CN203606780U (zh) | 多点触摸和手势识别融合系统 | |
CN103399671A (zh) | 双摄像头触摸屏及其触摸笔 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120328 Termination date: 20191225 |