红外编码识别方法

文档序号:9889286阅读:512来源:国知局
红外编码识别方法
【技术领域】
[0001]本发明涉及红外通信技术领域,具体讲是一种红外编码识别方法。
【背景技术】
[0002]家用电器是现代家庭生活的必需品。随着科技的发展及国家政策的鼓励,家庭配备的家用电器越来越多,种类越来越齐全。当前市场上的家用电器多使用手持红外遥控器来控制家用电器。但是,传统的手持红外遥控器具有一一对应的特性,每个厂商通过设备ID来限定只识别一个手持红外遥控器,即一个手持红外遥控器只能控制一家用电器,兼容性差,即使当今市场上常见的万能遥控器也只能对几种产品进行控制,不能做到真正的万能,而且不能对新上市的产品进行控制,无法做到众多手持红外遥控器合一的目的,用户使用起来操作不便,经常会出现四处寻找手持红外遥控器的情况,从而给使用者带来极大地不方便。
[0003]另一方面,随着手机行业的发展及智能手机的普及,手机已经成为人手必备的装备。由于智能手机能够安装软件、游戏等第三方服务商提供的程序,因此利用智能手机和红外通信模块对所有的家用电器进行控制成为可能。红外通信模块虽然能发射和接收红外信号,但是由于红外的编码方式多种多样,因此若是手机将所有编码内置,则会增加手机的存储。而若是只下载一些,则又无法准确删选。因此,亟待需要一种红外编码识别方法,该方法使得智能手机能够通过红外通信模块识别红外编码以使得手机下载该编码,以解决上述问题。

【发明内容】

[0004]本发明要解决的技术问题是,提供一种红外编码识别方法,该方法使得智能手机能够通过红外通信模块识别红外编码。
[0005]本发明的技术方案是,提供一种红外编码识别方法,包括以下步骤:
[0006](I)、利用红外通信模块的微处理器定时捕捉红外接收管接收到的红外编码信息的脉宽值,单位为微秒;
[0007](2)、把脉宽的原始数据转换成一个数组a,数组个数为n,索引范围为O到n-1,对数组a进行如下运算:用a[0]逐一和后面的元素进行相除,大的为分母,小的为分子,如果商值不小于0.7,则改变为a[0],否则保持原始值;
[0008](3)、用a[l]逐一和后面的元素运算,大的为分母,小的为分子,如果商值不小于
0.7,则改变为a[0],否则保持原始值;以此类推,得到规整数据;
[0009](4)、对规整数据进行取值,相同的值只取一个;
[0010](5)、统计每个样本值的个数,得到统计个数在前两位的样本值为b0,bl;在步骤(3)中得到的规整数据中,从头部开始找第一次等于bO或者bl的索引位置,记录为p0,从尾部开始找第一次不等于bO和bl的索引位置,记录为pi;
[0011]其中,红外头信息为p0-l,p0-2索引位置的数据,从pi索引位置开始到结束为红外尾信息数据,PO到Pl-1的索引位置为具体的红外编码信息数据,有效红外信息数据个数为n-(p0-2);
[0012](6)、对pO到pl-1位置的红外信息按红外规则进行编码,其编码字节个数为(pl-p0)/16,以识别出红外编码。
[0013]在步骤(5)中,如果没找到,那么pi等于n-1,修正pi的值,使其等于pl-(pl-p0+l)/
16+1 ο
[0014]采用以上结构后,本发明与现有技术相比,具有以下优点:
[0015]本发明红外编码识别方法通过对红外编码进行读取、排列、规整,取值编码而别出红外编码,并将识别后的数据通过WiFi发送至远程服务器进行匹配以识别出家电设备的具体型号,并通过手机有选择地下载,从而通过手机和红外通信模块对家里所有的家电设备进行控制,以方便用户使用。
【具体实施方式】
[0016]下面结合具体实施例对本发明作进一步说明。
[0017]本发明一种红外编码识别方法,包括以下步骤:
[0018](I)、利用红外通信模块的微处理器定时捕捉红外接收管接收到的红外编码信息的脉宽值,单位为微秒;在本实施例中,红外通信模块设置在家用电器的插座中。
[0019](2)、把脉宽的原始数据转换成一个数组a,数组个数为n,索引范围为O到n-Ι,对数组a进行如下运算:用a[0]逐一和后面的元素进行相除,大的为分母,小的为分子,如果商值不小于0.7,则改变为a[0],否则保持原始值;
[0020](3)、用a[l]逐一和后面的元素运算,大的为分母,小的为分子,如果商值不小于
0.7,则改变为a[0],否则保持原始值;以此类推,得到规整数据;
[0021](3)、对规整数据进行取值,相同的值只取一个;
[0022](4)、统计每个样本值的个数,得到统计个数在前两位的样本值为b0,bl;在步骤
(3)中得到的规整数据中,从头部开始找第一次等于bO或者bl的索引位置,记录为p0,从尾部开始找第一次不等于bO和bl的索引位置,记录为pi;
[0023]其中,红外头信息为p0-l,p0-2索引位置的数据,从pi索引位置开始到结束为红外尾信息数据,PO到Pl-1的索引位置为具体的红外编码信息数据,有效红外信息数据个数为n-(p0-2);
[0024](5)、对pO到pl-1位置的红外信息按红外规则进行编码,其编码字节个数为(pl-p0)/16,以识别出红外编码。
[0025]在步骤(4)中,如果没找到,那么pi等于n-1,修正pi的值,使其等于pl-(pl-p0+l)/
16+1 ο
[0026]下面给出一个具体实施例:
[0027](I)、微处理器定时捕捉以下数据:[8960 4437 659 2008 560 2050 558 808553727 622 751 602 759 617 1951 657 2011 557 2005 603 2002 603 1971 614 20006082006 614 725 639 771 553 2053 554 760 599 729 613 806 556 806 566 716 650775550 809 555 806 574 1948 618 757 605 805 563 718 624 1998 600 759 622 721639762 559 805 557 806 559 730 614 753 600 757 622 1948 658 2006 562 759 604808554 722 625 751 602 806 571 723 640 769 555 806 556 760 600 726 614 806 557759 614 721 644 772 552 805 558 2045 577 717 606 805 558 759 610 716 651 776549 808 602 690 640 713 608 807 556 805 561 719 626 754 598 759 621 720 642765 557 756 607 805 556 724 624 752 600 806 570 722 642 764 558 2047 560 757602 729 611 806 557 754 620 721 643 725 600 807 556 806 573 714 605 759 6041999 616 716 652 1971 599 806 557 810 569 712 608 805 557 808 559 717 626 804548 809 572 1946 660 2007 560 2046 562 758 606 721 615],其个数η等于211,索引位置的值从O到210;
[0028](2)、规整后的数据为:8960 4437 659 2008 659 2008 659 659 659 659 659659 659 659 659 2008 659 2008 659 2008 659 2008 659 2008 659 2008 659 2008659 659 659 659 659 2008 659 659 659 659 659 659 659 659 659 659 659 659 659659 659 659 659 2008 659 659 659 659 659 659 659 2008 659 659 659 659 659 659659 659 659 659 659 659 659 659 659 659 659 2008 659 2008 659 659 659 659 659659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659659 659 659 659 659 659 659 2008 659 659 659 659 659 659 659 659 659 659 659659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 2008 659 659 659659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659 2008659 659 659 2008 659 659 659 659 659 659 659 659 659 659 659 659 659 659 659659 659 2008 659 2008 659 2008 659 659 659 659 659;
[0029](3)、对规整后的数据进行取值,对相同的值只取一个,得到:[8960 4437 6592008];
[°03°] (4)、得到统计个数在前2位的样本值bO等于2008,bl等于659,计算出pO等于2,pl等于210,修正后的值也为210,红外头信息数据为[8960 4437],红外编码信息数据为O到209的索引位置的数据,红外尾信息数据为[659];
[0031](5)、对从O到209的索引位置的红外编码信息数据按一定规则进行编码,字节数为13,编码原则为:红外字节中的一个比特由2个脉宽组成,从编码数据可以分析出组成比特I和比特O的脉宽组合为[659 2008]或者[659 659],由于脉宽为659的个数大于脉宽为2008的个数,我们认为[659 2008]组成比特I,[659 659]组成比特O,因此我们可以得到红外编码信息数据为[0xC3 0xF9 0x00 0x88 0x06 0x00 0x02 0x00 0x00 0x04 0x00 OxAO0xlC]o
[0032](6)、将识别出的红外头数据,红外编码数据和红外尾数据,通过WIFI发送到远程服务器(服务器记录了各种家电的红外编码信息),即可匹配出哪个型号的家电。
[0033]以上仅就本发明的最佳实施例作了说明,但不能理解为是对权利要求的限制。本发明不仅限于以上实施例,其具体结构允许有变化。但凡在本发明独立权利要求的保护范围内所作的各种变化均在本发明的保护范围内。
【主权项】
1.一种红外编码识别方法,其特征在于:包括以下步骤: (1)、利用红外通信模块的微处理器定时捕捉红外接收管接收到的红外编码信息的脉宽值,单位为微秒; (2)、把脉宽的原始数据转换成一个数组a,数组个数为n,索引范围为O到n-1,对数组a进行如下运算:用a[0]逐一和后面的元素进行相除,大的为分母,小的为分子,如果商值不小于0.7,则改变为a[0],否则保持原始值; (3)、用a[l]逐一和后面的元素运算,大的为分母,小的为分子,如果商值不小于0.7,则改变为a[0],否则保持原始值;以此类推,得到规整数据; (4)、对规整数据进行取值,相同的值只取一个; (5)、统计每个样本值的个数,得到统计个数在前两位的样本值为bO,bl;在步骤(3)中得到的规整数据中,从头部开始找第一次等于bO或者bl的索引位置,记录为pO,从尾部开始找第一次不等于bO和bl的索引位置,记录为pi; 其中,红外头信息为pO-Ι,p0-2索引位置的数据,从pi索引位置开始到结束为红外尾信息数据,PO到pl-1的索引位置为具体的红外编码信息数据,有效红外信息数据个数为n-(P0-2); (6)、对pO到pl-1位置的红外信息按红外规则进行编码,其编码字节个数为(pl-pO)/16,以识别出红外编码。2.根据权利要求1所述的红外编码识别方法,其特征在于:在步骤(5)中,如果没找到,那么pi等于n-Ι,修正pi的值,使其等于pl-(pl-p0+l)/16+l。
【专利摘要】本发明公开了一种红外编码识别方法,包括以下步骤:利用红外通信模块的微处理器定时捕捉红外接收管接收到的红外编码信息的脉宽值;把脉宽的原始数据转换成一个数组a,数组个数为n,索引范围为0到n-1,对数组a进行如下运算:用a[0]逐一和后面的元素进行相除,得到规整数据;对规整数据进行取值,相同的值只取一个;统计每个样本值的个数,得到统计个数在前两位的样本值为b0,b1;得到的规整数据中,从头部开始找第一次等于b0或者b1的索引位置,记录为p0,从尾部开始找第一次不等于b0和b1的索引位置,记录为p1;对红外信息按红外规则进行编码,以识别出红外编码。该方法使得智能手机能够通过红外通信模块识别红外编码。
【IPC分类】H04M1/725, G08C23/04
【公开号】CN105654707
【申请号】
【发明人】郑坚江, 庄克成, 戴旭毅, 蔡晋
【申请人】宁波三星医疗电气股份有限公司
【公开日】2016年6月8日
【申请日】2016年1月22日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1