CN107678568A - 一种通过移动终端模拟激光笔的方法及装置 - Google Patents

一种通过移动终端模拟激光笔的方法及装置 Download PDF

Info

Publication number
CN107678568A
CN107678568A CN201710804052.8A CN201710804052A CN107678568A CN 107678568 A CN107678568 A CN 107678568A CN 201710804052 A CN201710804052 A CN 201710804052A CN 107678568 A CN107678568 A CN 107678568A
Authority
CN
China
Prior art keywords
mrow
msub
mobile terminal
msup
mtd
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.)
Granted
Application number
CN201710804052.8A
Other languages
English (en)
Other versions
CN107678568B (zh
Inventor
刘德建
陈时涛
曾少彬
方振华
郭玉湖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN201710804052.8A priority Critical patent/CN107678568B/zh
Publication of CN107678568A publication Critical patent/CN107678568A/zh
Application granted granted Critical
Publication of CN107678568B publication Critical patent/CN107678568B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0354Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
    • G06F3/03545Pens or stylus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Gyroscopes (AREA)
  • Position Input By Displaying (AREA)

Abstract

本发明提供的一种通过移动终端模拟激光笔的方法及装置,根据所述移动终端上重力传感器感应的实时数据,得出所述移动终端的旋转矩阵,根据陀螺仪传感器感应的实时数据,得出所述移动终端的角加速度,根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度,根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移,只需借助移动终端就可实现对激光点的控制,使用更加方便,根据终端的相对位移控制PC端激光点的位移,因此使用时无需对准PC屏幕,在使用陀螺仪传感器的数据之前先根据重力传感器感应的数据确定所述终端当前位置,克服了只采用陀螺仪传感器所带来的误差,性能更加稳定。

Description

一种通过移动终端模拟激光笔的方法及装置
技术领域
本发明涉及数据处理领域,特别涉及一种通过移动终端模拟激光笔的方法及装置。
背景技术
现有的物理激光笔使用时需要瞄准PC屏幕,使用不方便,使用范围较小,以陀螺仪为数据采集源的空中鼠标方案中,虽然可以较准确的实现对鼠标光标的控制,但是由于陀螺仪自身数据计算过程中的算法及制造工艺等问题,使用过程中,会出现逐渐积累的数据误差,从而导致控制鼠标点会出现误差,性能不够稳定,因此需要性能更加稳定的计算方法且使用时不需要对准PC屏幕就可实现模拟激光笔效果的装置。
发明内容
本发明所要解决的技术问题是:提供一种使用方便、性能更加稳定的通过移动终端模拟激光笔的方法及装置。
为了解决上述技术问题,本发明采用的一种技术方案为:
一种通过移动终端模拟激光笔的方法,包括步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种通过移动终端模拟激光笔的装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
本发明的有益效果在于:根据所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的旋转矩阵,根据移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的角加速度,根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度,根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移,只需借助移动终端就可实现对激光点的控制,使用更加方便,根据终端的相对位移控制PC端激光点的位移,因此使用时无需对准PC屏幕,在使用陀螺仪传感器的数据之前先根据重力传感器感应的数据确定所述终端当前位置,克服了只采用陀螺仪传感器所带来的误差,性能更加稳定。
附图说明
图1为本发明实施例的通过移动终端模拟激光笔的方法的流程图;
图2为本发明实施例的通过移动终端模拟激光笔的装置的结构示意图;
标号说明:
1、通过移动终端模拟激光笔的装置; 2、存储器; 3、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:通过移动终端上重力传感器和陀螺仪传感器的实时数据,得到移动终端的角速度,根据所述角速度和所述移动终端位置前后变化的时间间隔,得出所述终端的相对位移。
请参照图1,一种通过移动终端模拟激光笔的方法,包括步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
进一步,步骤S1具体包括:
接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx、gy、gz,
将所述重力加速度数据进行标准化,如下:
根据uz,得到θ=arccos uz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
将所述移动终端的旋转矩阵简写为
其中,将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’。
进一步,步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz。
进一步,步骤S3具体包括:
根据所述旋转矩阵和所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz计算得到所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz。
进一步,步骤S5具体包括:
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置。
从上述描述可知,本发明的有益效果在于:根据所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的旋转矩阵,根据移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的角加速度,根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度,根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移,只需借助移动终端就可实现对激光点的控制,使用更加方便,根据终端的相对位移控制PC端激光点的位移,因此使用时无需对准PC屏幕,在使用陀螺仪传感器的数据之前先根据重力传感器感应的数据确定所述终端当前位置,克服了只采用陀螺仪传感器所带来的误差,性能更加稳定。
请参照图2,一种通过移动终端模拟激光笔的装置1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,所述处理器3执行所述程序时实现以下步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
进一步,步骤S1具体包括:
接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx、gy、gz,
将所述重力加速度数据进行标准化,如下:
根据uz,得到θ=arccos uz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
将所述移动终端的旋转矩阵简写为
其中,将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’。
进一步,步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz。
进一步,步骤S3具体包括:
根据所述旋转矩阵和所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz计算得到所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz。
进一步,步骤S5具体包括:
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置。
从上述描述可知,本发明的有益效果在于:根据所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的旋转矩阵,根据移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,得出所述移动终端的角加速度,根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度,根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移,只需借助移动终端就可实现对激光点的控制,使用更加方便,根据终端的相对位移控制PC端激光点的位移,因此使用时无需对准PC屏幕,在使用陀螺仪传感器的数据之前先根据重力传感器感应的数据确定所述终端当前位置,克服了只采用陀螺仪传感器所带来的误差,性能更加稳定。
实施例一
一种通过移动终端模拟激光笔的方法,包括步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’;
接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx、gy、gz,
将所述重力加速度数据进行标准化,如下:
根据uz,得到θ=arccos uz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
将所述移动终端的旋转矩阵简写为
由于陀螺仪传感器工作原理是基于旋转,如所述移动终端绕X’或Z’从第一位置旋转到第二位置,可控制激光点竖直或水平方向的移动,所述移动终端绕对角线旋转,可控制激光点斜向上或斜向下移动,本发明中旋转矩阵的作用是确定所述移动终端在三维空间中的姿态变化;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和
竖直方向的角速度;
所得到的所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置,所述灵敏度系数为正数,优选取值范围在25-30,所述移动终端移动同样距离时,所乘的灵敏度系数的越大,PC屏幕上激光点移动距离也越大,通过手机陀螺仪传感器提供的实时三维数据,通过三维数据和手机的旋转矩阵计算出在X,Y轴的分量的和(将三维数据投影到二维屏幕),得出相对位移,使用者在移动终端屏幕向上时使用,左右移动手机,其实是以手肘为原点旋转,即绕着Z’轴旋转,PC屏幕上的激光点应该是左右移动,所以Z’轴的旋转加速度应该映射PC屏幕平面的X轴,同理,手机上下移动,其实是以手肘为原点旋转,即绕着X’轴旋转,PC屏幕上的激光点应该是上下移动,所以X’轴的旋转加速度应该映射到PC屏幕的Y轴,将相对位移传给PC,控制PC端屏幕绘制的激光点的位置,移动终端与PC端通过预先建立的Socket连接通道发送所述相对位移信息。
实施例二
一种通过移动终端模拟激光笔的装置1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,所述处理器3执行所述程序时实现以下步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’;
接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx、gy、gz,
将所述重力加速度数据进行标准化,如下:
根据uz,得到θ=arccousuz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
将所述移动终端的旋转矩阵简写为
由于陀螺仪传感器工作原理是基于旋转,如所述移动终端绕X’或Z’从第一位置旋转到第二位置,可控制激光点竖直或水平方向的移动,所述移动终端绕对角线旋转,可控制激光点斜向上或斜向下移动,本发明中旋转矩阵的作用是确定所述移动终端在三维空间中的姿态变化;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
所得到的所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置,所述灵敏度系数为正数,优选取值范围在25-30,所述移动终端移动同样距离时,所乘的灵敏度系数的越大,PC屏幕上激光点移动距离也越大,通过手机陀螺仪传感器提供的实时三维数据,通过三维数据和手机的旋转矩阵计算出在X,Y轴的分量的和(将三维数据投影到二维屏幕),得出相对位移,使用者在移动终端屏幕向上时使用,左右移动手机,其实是以手肘为原点旋转,即绕着Z’轴旋转,PC屏幕上的激光点应该是左右移动,所以Z’轴的旋转加速度应该映射PC屏幕平面的X轴,同理,手机上下移动,其实是以手肘为原点旋转,即绕着X’轴旋转,PC屏幕上的激光点应该是上下移动,所以X’轴的旋转加速度应该映射到PC屏幕的Y轴,将相对位移传给PC,控制PC端屏幕绘制的激光点的位置,移动终端与PC端通过预先建立的Socket连接通道发送所述相对位移信息。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种通过移动终端模拟激光笔的方法,其特征在于,包括步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
2.根据权利要求1所述的通过移动终端模拟激光笔的方法,其特征在于,
步骤S1具体包括:
接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx,gy,gz,
将所述重力加速度数据进行标准化,如下:
<mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>x</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
<mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>y</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
<mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>z</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
根据uz,得到θ=arccos uz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
<mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>x</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <msub> <mi>u</mi> <mi>y</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>u</mi> <mi>z</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <msub> <mi>u</mi> <mi>z</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>y</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <msub> <mi>u</mi> <mi>x</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>z</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>y</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <msub> <mi>u</mi> <mi>z</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>u</mi> <mi>x</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <msub> <mi>u</mi> <mi>x</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>y</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <msub> <mi>u</mi> <mi>y</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>x</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>z</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced>
将所述移动终端的旋转矩阵简写为
其中,将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’。
3.根据权利要求2所述的通过移动终端模拟激光笔的方法,其特征在于,
所述步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz。
4.根据权利要求3所述的通过移动终端模拟激光笔的方法,其特征在于,
所述步骤S3具体包括:
根据所述旋转矩阵和所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz计算得到所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz。
5.根据权利要求1所述通过移动终端模拟激光笔的方法,其特征在于,
步骤S5具体包括:
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置。
6.一种通过移动终端模拟激光笔的装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
S1、接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的旋转矩阵;
S2、接收所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,根据所述数据,得出所述移动终端的角加速度;
S3、根据所述旋转矩阵和所述角加速度,得出所述移动终端在水平方向和竖直方向的角速度;
S4、根据所述角速度和移动终端从第一位置移动到第二位置的时间间隔,得出所述移动终端的相对位移;
S5、将所述相对位移传输给PC端以控制PC端激光点的位置。
7.根据权利要求6所述的通过移动终端模拟激光笔的装置,其特征在于,
步骤S1具体包括:
接收所述移动终端上重力传感器感应的所述移动终端从第一位置移动到第二位置的实时数据,所述数据为移动终端分别在X’、Y’、Z’轴方向上的重力加速度gx、gy、gz,
将所述重力加速度数据进行标准化,如下:
<mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>x</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
<mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>y</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
<mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <mo>=</mo> <mfrac> <mrow> <mi>g</mi> <mi>z</mi> </mrow> <msqrt> <mrow> <msup> <mi>gx</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gy</mi> <mn>2</mn> </msup> <mo>+</mo> <msup> <mi>gz</mi> <mn>2</mn> </msup> </mrow> </msqrt> </mfrac> </mrow>
根据uz,得到θ=arccos uz,其中θ是所述移动终端从第一位置移动到第二位置关于Z’轴转过的角度;
由θ、uz、uy、ux得到所述移动终端的旋转矩阵
<mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>x</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <msub> <mi>u</mi> <mi>y</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>u</mi> <mi>z</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>x</mi> </msub> <msub> <mi>u</mi> <mi>z</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>y</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <msub> <mi>u</mi> <mi>x</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>z</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>y</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>y</mi> </msub> <msub> <mi>u</mi> <mi>z</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>u</mi> <mi>x</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <msub> <mi>u</mi> <mi>x</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>y</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <msub> <mi>u</mi> <mi>z</mi> </msub> <msub> <mi>u</mi> <mi>y</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>cos</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> <mo>+</mo> <msub> <mi>u</mi> <mi>x</mi> </msub> <mi>s</mi> <mi>i</mi> <mi>n</mi> <mi>&amp;theta;</mi> </mrow> </mtd> <mtd> <mrow> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>+</mo> <msubsup> <mi>u</mi> <mi>z</mi> <mn>2</mn> </msubsup> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <mi>c</mi> <mi>o</mi> <mi>s</mi> <mi>&amp;theta;</mi> <mo>)</mo> </mrow> </mrow> </mtd> </mtr> </mtable> </mfenced>
将所述移动终端的旋转矩阵简写为
其中,将所述移动终端屏幕朝上平行于水平面放置,以所述移动终端的中心为坐标原点,沿所述移动终端宽度的方向向右为X’轴正方向,沿所述终端长度的方向向外为Y’轴正方向,垂直于所述终端屏幕向上为Z’轴正方向,建立三维直角坐标系X’Y’Z’。
8.根据权利要求7所述的通过移动终端模拟激光笔的装置,其特征在于,
所述步骤S2中所述移动终端上陀螺仪传感器感应的所述移动终端从第一位置移动到第二位置的实时数据具体为,所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz。
9.根据权利要求8所述的通过移动终端模拟激光笔的装置,其特征在于,
所述步骤S3具体包括:
根据所述旋转矩阵和所述移动终端在X’、Y’、Z’轴方向上的角加速度tx、ty、tz计算得到所述移动终端在X’轴方向和Z’轴方向的角速度分别为v1=A00tx+A01ty+A02tz和v2=A20tx+A21ty+A22tz。
10.根据权利要求6所述通过移动终端模拟激光笔的装置,其特征在于,
步骤S5具体包括:
将所述移动终端的相对位移乘以灵敏度系数后传输给PC端以控制PC端激光点的位置。
CN201710804052.8A 2017-09-08 2017-09-08 一种通过移动终端模拟激光笔的方法及装置 Active CN107678568B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710804052.8A CN107678568B (zh) 2017-09-08 2017-09-08 一种通过移动终端模拟激光笔的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710804052.8A CN107678568B (zh) 2017-09-08 2017-09-08 一种通过移动终端模拟激光笔的方法及装置

Publications (2)

Publication Number Publication Date
CN107678568A true CN107678568A (zh) 2018-02-09
CN107678568B CN107678568B (zh) 2021-04-06

Family

ID=61134487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710804052.8A Active CN107678568B (zh) 2017-09-08 2017-09-08 一种通过移动终端模拟激光笔的方法及装置

Country Status (1)

Country Link
CN (1) CN107678568B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271017A (zh) * 2018-07-10 2019-01-25 广州小鸡快跑网络科技有限公司 iOS系统中陀螺仪事件的控制方法及装置
CN114237409A (zh) * 2021-11-26 2022-03-25 广东省内河港航产业研究有限公司 陀螺鼠标数据处理方法、装置、系统和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103713746A (zh) * 2013-12-18 2014-04-09 深圳市宇恒互动科技开发有限公司 三维惯性遥控装置的输入方法及三维惯性遥控装置
CN104123015A (zh) * 2014-07-18 2014-10-29 广东易凌信息科技有限公司 一种手机模拟激光笔系统及其实现方法
KR20150077388A (ko) * 2015-06-17 2015-07-07 박동원 스마트폰 마우스
CN106445193A (zh) * 2016-08-30 2017-02-22 朱于芝 一种基于手机操控的激光笔演示系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103713746A (zh) * 2013-12-18 2014-04-09 深圳市宇恒互动科技开发有限公司 三维惯性遥控装置的输入方法及三维惯性遥控装置
CN104123015A (zh) * 2014-07-18 2014-10-29 广东易凌信息科技有限公司 一种手机模拟激光笔系统及其实现方法
KR20150077388A (ko) * 2015-06-17 2015-07-07 박동원 스마트폰 마우스
CN106445193A (zh) * 2016-08-30 2017-02-22 朱于芝 一种基于手机操控的激光笔演示系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271017A (zh) * 2018-07-10 2019-01-25 广州小鸡快跑网络科技有限公司 iOS系统中陀螺仪事件的控制方法及装置
CN109271017B (zh) * 2018-07-10 2023-06-09 广州小鸡快跑网络科技有限公司 iOS系统中陀螺仪事件的控制方法及装置
CN114237409A (zh) * 2021-11-26 2022-03-25 广东省内河港航产业研究有限公司 陀螺鼠标数据处理方法、装置、系统和设备

Also Published As

Publication number Publication date
CN107678568B (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
US9098123B2 (en) Moving trajectory generation method
CN103940442B (zh) 一种采用加速收敛算法的定位方法及装置
CN103226398B (zh) 基于微惯性传感器网络技术的数据手套
CN104567931B (zh) 一种室内惯性导航定位的航向漂移误差消除方法
CN106445130B (zh) 一种用于手势识别的动作捕捉手套及其校准方法
CN104956648B (zh) 用于在固定参照系中感测物体在空间中的取向的方法和设备
US20080042973A1 (en) System for sensing yaw rate using a magnetic field sensor and portable electronic devices using the same
JP5017539B1 (ja) 地磁気を測定し、利用する応用機器
CN106706018B (zh) Vr设备中九轴传感器性能的测试方法、装置及测试转台
CN101178615A (zh) 姿态及运动感应系统及使用该系统的便携式电子设备
CN106323334B (zh) 一种基于粒子群优化的磁力计校准方法
CN103576901B (zh) 手持电子设备对屏幕进行光标控制的实现方法及该设备
CN103175502A (zh) 一种基于数据手套低速运动的姿态角检测方法
US20160169680A1 (en) Method and Apparatus for Calculating Rotation Angle of Device
CN103557866B (zh) 一种基于地磁技术的虚拟陀螺仪及算法的方法
JP2004286732A5 (zh)
CN106137209A (zh) 一种运动姿态检测方法及可穿戴式设备
CN109030867A (zh) 使用加速度传感器和地磁传感器计算角速度的方法和设备
CN106643717A (zh) 一种九轴传感器的性能检测方法及装置
CN104035552A (zh) 三维操作方法和三维操作装置
CN107329671A (zh) 模型显示方法和装置
CN202661077U (zh) 基于多mems传感器的动态载体姿态测量系统
CN107678568A (zh) 一种通过移动终端模拟激光笔的方法及装置
US8797262B2 (en) Method of sensing motion in three-dimensional space
CN107607899A (zh) 磁力计校准方法及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant