加速度传感手势操作系统及操作方法

文档序号:6303055阅读:242来源:国知局
加速度传感手势操作系统及操作方法
【专利摘要】本发明涉及一种加速度传感手势操作系统,包括型号为Arduino?mega2560的处理器、加速度传感器、电机驱动模块和直流电机;所述加速度传感器和电机驱动模块分别与所述的Arduino?mega2560的处理器相连;所述的电机驱动模块与直流电机相连,用于控制所述直流电机开启或关闭。本发明是基于加速度传感器及单片机,实现了通过感知手势以控制小车运动的功能,在人机对话操作领域将得到广泛的应用。本发明利用加速度传感器提高了系统的灵活性和精确度,成本低廉,应用范围广泛。
【专利说明】加速度传感手势操作系统及操作方法
【技术领域】
[0001]本发明涉及加速度传感手势操作系统及操作方法,属于人机对话操作的【技术领域】。
【背景技术】
[0002]目前,控制设备角度或方向的方法主要是使用摇杆,由基座和固定在上面作为枢轴的主控制杆组成,向其控制的设备传递角度或方向信号。这个方法存在一个很大的缺陷:在遥控中不能使用单手操作,操作过程中需要一只手拖住基座,另一只手控制控制杆,所以,控制单一,无法解放双手进行更多操作。

【发明内容】

[0003]针对现有技术的缺陷,本发明提供一种加速度传感手势操作系统。
[0004]本发明还提供上述加速度传感手势操作系统的操作方法。
[0005]本发明的技术方案如下:
[0006]一种加速度传感手势操作系统,包括型号为Arduino mega2560的处理器、加速度传感器、电机驱动模块和直流电机;
[0007]所述加速度传感器和电机驱动模块分别与所述的Arduino mega2560的处理器相连;所述的电机驱动模块与直流电机相连,用于控制所述直流电机开启或关闭及速度。
[0008]根据本发明优选的,所述的加速度传感器为ADXL345加速度传感器。
[0009]根据本发明优选的,电机驱动模块的型号为Arduino motor shield L293D。
[0010]一种上述加速度传感手势操作系统的操作方法,包括步骤如下:
[0011]I)将ADXL345加速度传感器使用皮带固定于用户手上,分别测试出用户手掌前倾的角度或后仰的角度,所述前倾对应小车前进,所述后仰对应小车后退;对所述ADXL345加速度传感器进行设置,使所述用户手掌前倾的角度对应沿X轴正方向的重力加速度值,所述用户手掌后仰的角度对应沿X轴负方向的重力加速度值;分别测试出用户手掌左转角度或右转角度:所述手掌左转对应小车左转,所述手掌右转对应小车右转,所述手掌左转的角度对应沿Y轴负方向的重力加速度值,所述手掌右转的角度对应沿Y轴正方向的重力加速度值;
[0012]用户手掌前倾并略向右转:小车前行右转,手掌转角越大则右转越快,反之越慢;
[0013]用户手掌前倾并略向左转:小车前行左转,手掌转角越大则左转越快,反之越慢;
[0014]用户手掌后仰并略向右转:小车后退右转,手掌转角越大则右转越快,反之越慢;
[0015]用户手掌后仰并略向左转:小车后退左转,手掌转角越大则左转越快,反之越慢;
[0016]所述ADXL345加速度传感器与Arduino mega2560处理器采用I2C通信,所述测试出用户手势沿X轴方向、和/或Y轴方向的重力加速度值通过ADXL345加速度传感器分别换算为对应的数值0-500通信至Arduino mega2560处理器;按照现有技术对上述ADXL345加速度传感器进行设置,使其测试到用户手势沿X轴方向的重力加速度XgjP /或沿Y轴方向的重力加速度Yg分别与数值0-500线性对应;
[0017]2)按照现有技术对Arduino mega2560处理器设置:建立数值0-500与Xg、Yg的线性对应关系;Arduino mega2560处理器将接收到的数值0-500根据上述线性对应关系还原 Xg、Yg ;
[0018]3)控制小车移动方法:
[0019]在所述Arduino mega2560处理器内计算小车的直行速度及拐弯速度,所述小车的直行速度V=XgX255 ;所述小车左拐弯速度的确定:小车右车轮的速度大于小车左车轮的速度,其速度差AV=YgXZOO ;所述小车右拐弯速度的确定:小车右车轮的速度小于小车左车轮的速度,其速度差Λ V=Yg X 200 ;
[0020]4)所述Arduino mega2560处理器将所述小车的直行速度及拐弯速度传输给电机驱动模块 Arduino motor shield L293D ;
[0021]5)电机驱动模块Arduino motor shield L293D驱动控制小车移动的电机,使所述小车按照步骤4)移动。
[0022]根据本发明优选的,所述沿Y轴方向的重力加速度Yg为0_2g,所述的g为9.8m\s。
[0023]根据本发明优选的,当所述沿Y轴方向的重力加速度|Yg| >0.7g时,小车原地顺时针或逆时针原地旋转。
[0024]本发明的有益效果:
[0025]本发明是基于加速度传感器及单片机,实现了通过感知手势以控制小车运动的功能,在人机对话操作领域将得到广泛的应用。本发明利用加速度传感器提高了系统的灵活性和精确度,成本低廉,应用范围广泛。
【专利附图】

【附图说明】
[0026]图1是本发明的结构框图;
[0027]图2是本发明的所述操作方法的流程图;
[0028]在图1、2中,1、用户;2、加速度传感器;3、Arduino mega2560处理器;4、电机驱动模块;5、电机。
具体实施例
[0029]下面结合实施例和说明书附图对本发明做全面的说明,但不限于此。
[0030]如图1-2所示。
[0031]实施例1、
[0032]一种加速度传感手势操作系统,包括型号为Arduino mega2560的处理器、加速度传感器、电机驱动模块和直流电机;
[0033]所述加速度传感器和电机驱动模块分别与所述的Arduino mega2560的处理器相连;所述的电机驱动模块与直流电机相连,用于控制所述直流电机开启或关闭及速度。
[0034]所述的加速度传感器为ADXL345加速度传感器。
[0035]电机驱动模块的型号为Arduino motor shield L293D。
[0036]实施例2、
[0037]—种如实施例1所述加速度传感手势操作系统的操作方法,包括步骤如下:[0038]I)将ADXL345加速度传感器使用皮带固定于用户手上,分别测试出用户手掌前倾的角度或后仰的角度,所述前倾对应小车前进,所述后仰对应小车后退;对所述ADXL345加速度传感器进行设置,使所述用户手掌前倾的角度对应沿X轴正方向的重力加速度值,所述用户手掌后仰的角度对应沿X轴负方向的重力加速度值;分别测试出用户手掌左转角度或右转角度:所述手掌左转对应小车左转,所述手掌右转对应小车右转,所述手掌左转的角度对应沿Y轴负方向的重力加速度值,所述手掌右转的角度对应沿Y轴正方向的重力加速度值;
[0039]用户手掌前倾并略向右转:小车前行右转,手掌转角越大则右转越快,反之越慢;
[0040]用户手掌前倾并略向左转:小车前行左转,手掌转角越大则左转越快,反之越慢;
[0041]用户手掌后仰并略向右转:小车后退右转,手掌转角越大则右转越快,反之越慢;
[0042]用户手掌后仰并略向左转:小车后退左转,手掌转角越大则左转越快,反之越慢;
[0043]所述ADXL345加速度传感器与Arduino mega2560处理器采用I2C通信,所述测试出用户手势沿X轴方向、和/或Y轴方向的重力加速度值通过ADXL345加速度传感器分别换算为对应的数值0-500通信至Arduino mega2560处理器;按照现有技术对上述ADXL345加速度传感器进行设置,使其测试到用户手势沿X轴方向的重力加速度XgjP /或沿Y轴方向的重力加速度Yg分别与数值0-500线性对应;
[0044]2)按照现有技术对Arduino mega2560处理器设置:建立数值0-500与Xg、Yg的线性对应关系;Arduino mega2560处理器将接收到的数值0-500根据上述线性对应关系还原 Xg、Yg ;
[0045]3)控制小车移动方法:
[0046]在所述Arduino mega2560处理器内计算小车的直行速度及拐弯速度,所述小车的直行速度V=XgX255 ;所述小车左拐弯速度的确定:小车右车轮的速度大于小车左车轮的速度,其速度差AV=YgXZOO ;所述小车右拐弯速度的确定:小车右车轮的速度小于小车左车轮的速度,其速度差Λ V=Yg X 200 ;
[0047]4)所述Arduino mega2560处理器将所述小车的直行速度及拐弯速度传输给电机驱动模块 Arduino motor shield L293D ;
[0048]5)电机驱动模块Arduino motor shield L293D驱动控制小车移动的电机,使所述小车按照步骤4)移动。
[0049]所述沿Y轴方向的重力加速度Yg为0_2g,所述的g为9.8m\s。
[0050]当所述沿Y轴方向的重力加速度I Yg I > 0.7g时,小车原地顺时针或逆时针原地旋转。用户手掌水平后右转:小车原地顺时针转动,手掌转角越大则转速越大;用户手掌水平后左转:小车原地逆时针转动,手掌转角越大则转速越大。
【权利要求】
1.一种加速度传感手势操作系统,其特征在于,该系统包括型号为Arduino mega2560的处理器、加速度传感器、电机驱动模块和直流电机; 所述加速度传感器和电机驱动模块分别与所述的Arduino mega2560的处理器相连;所述的电机驱动模块与直流电机相连,用于控制所述直流电机开启或关闭及速度。
2.根据权利要求1所述的一种加速度传感手势操作系统,其特征在于,所述的加速度传感器为ADXL345加速度传感器。
3.根据权利要求1所述的一种加速度传感手势操作系统,其特征在于,电机驱动模块的型号为 Arduino motor shield L293D。
4.一种如权利要求1所述加速度传感手势操作系统的操作方法,其特征在于,该方法包括步骤如下: 1)将ADXL345加速度传感器使用皮带固定于用户手上,分别测试出用户手掌前倾的角度或后仰的角度,所述前倾对应小车前进,所述后仰对应小车后退;对所述ADXL345加速度传感器进行设置,使所述用户手掌前倾的角度对应沿X轴正方向的重力加速度值,所述用户手掌后仰的角度对应沿X轴负方向的重力加速度值;分别测试出用户手掌左转角度或右转角度:所述手掌左转对应小车左转,所述手掌右转对应小车右转,所述手掌左转的角度对应沿Y轴负方向的重力加速度值,所述手掌右转的角度对应沿Y轴正方向的重力加速度值; 所述ADXL345加速度传感器与Arduino mega2560处理器采用I2C通信,所述测试出用户手势沿X轴方向、和/或Y轴方向的重力加速度值通过ADXL345加速度传感器分别换算为对应的数值0-500通信至Arduino mega2560处理器;按照现有技术对上述ADXL345加速度传感器进行设置,使其测试到用户手势沿X轴方向的重力加速度Xg、和/或沿Y轴方向的重力加速度Yg分别与数值0-500线性对应; 2)按照现有技术对Arduinomega2560处理器设置:建立数值0-500与Xg、Yg的线性对应关系;Arduino mega2560处理器将接收到的数值0-500根据上述线性对应关系还原Xg、Yg ; 3)控制小车移动方法: 在所述Arduino mega2560处理器内计算小车的直行速度及拐弯速度,所述小车的直行速度V=XgX255 ;所述小车左拐弯速度的确定:小车右车轮的速度大于小车左车轮的速度,其速度差AV=YgXZOO ;所述小车右拐弯速度的确定:小车右车轮的速度小于小车左车轮的速度,其速度差Λ V=Yg X 200 ; 4)所述Arduinomega2560处理器将所述小车的直行速度及拐弯速度传输给电机驱动模块 Arduino motor shield L293D ; 5)电机驱动模块Arduinomotor shield L293D驱动控制小车移动的电机,使所述小车按照步骤4)移动。
5.根据权利要求4所述加速度传感手势操作系统的操作方法,其特征在于,所述沿Y轴方向的重力加速度Yg为0-2g,所述的g为9.8m\s。
6.根据权利要求5所述加速度传感手势操作系统的操作方法,其特征在于,当所述沿Y轴方向的重力加速度|Yg| > 0.7g时,小车原地顺时针或逆时针原地旋转。
【文档编号】G05D1/02GK103744427SQ201410004847
【公开日】2014年4月23日 申请日期:2014年1月6日 优先权日:2014年1月6日
【发明者】李茂奎, 贾小雨, 蔡永青, 闫维义, 王健, 杨佳 申请人:山东大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1