余志鹏,蔡泽凡
(顺德职业技术学院,广东顺德,528300)
安卓设备控制的万能遥控器的设计与实现
余志鹏,蔡泽凡
(顺德职业技术学院,广东顺德,528300)
本设计目的在于实现一个体积细小,功能强大,使用方便的万能遥控器,包含外围硬件和安卓app的设计。在现今流行度最广的安卓终端安装app后,硬件插入即能启动软件,无需再人工启动,支持51个常用品牌达1000种型号的空调,且有100个命令的学习功能,不像传统万能遥控器一样只能看说明书输入遥控型号代码,各型号遥控按品牌进行分类,易于操作。对于自定义按钮可自定义按钮名称。外围硬件的尺寸为49*36mm,非常小巧方便。
安卓;万能;遥控器;app;学习功能
市场上的万能遥控,体积庞大,需外接电池,通常只有一个小型的屏幕,与按键阵列相结合,对空调选择的操作非常不方便,如果遥控器的数据库没有合适的空调,也不能自行学习。现存的一些基于安卓设备的外围应用,没有插入即弹出功能,需用户自行打开相匹配的app,用户体验不好。
本实设计利用现今流行度最广的安卓平台,结合外围硬件和安卓应用,做出一个小巧精致,功能强大,方便使用,界面友好的安卓设备控制的万能遥控器。
图1 应用于安卓移动设备的带自学习功能的万能遥控器
本设计的硬件实现思路如图1所示。从图1可以看出,本设计包含硬件部分,实现手机对硬件终端的数据处理以及红外信号发射;另一个是软件部分,即需要在安卓平台终端上安装人机界面app。
该万能遥控器的硬件设计如图2所示,1是micro usb公口、2是usb协议与RS232协议转换芯片、3是遥控红外信号接收电路、4是基于RS232协议的遥控数据存储芯片、5是遥控红外信号发射电路。
图2 万能遥控器硬件组成
其中,usb协议与RS232协议转换芯片通过micro usb公口与安卓移动设备的micro usb母口电连接。遥控红外信号接收电路、遥控数据存储芯片及遥控红外信号发射电路依次串联;usb协议与RS232协议转换芯片的输出端与遥控数据存储芯片的输入端电连接,从而将遥控数据存储芯片内的数据通过遥控红外信号发射电路发射出去或将遥控红外信号接收电路的数据存储到遥控数据存储芯片内。安卓移动设备的micro usb母口对该设计的硬件部分供电并传输数据,usb协议与RS232协议转换芯片是FTDI 公司的FT232RL。
(二)坚持政府和民间协同维护地方生态自治及基层主体多样性发展的原则,体现革命性。在共产党领导下,建立人民当家作主的民主制度,实行最广泛的社会主义民主,为个体自主自由地发展创造必要的政治条件;通过所有制结构调整、市场化与民主化体制改革,进一步解放社会生产力。随着社会主义制度和市场经济体制的日趋完善,各种社会生态主体的积极性、主动性、创造性得到显著增强。同时,在同一切阻碍生产力发展的旧体制、旧思想的批判斗争中,社会生态系统不断由内在矛盾的优化调整和生物多样性发展而更加地勃发生机和活力,各种创造社会财富的潜能必将在生态化革新中得到更充分的释放。
数据通过协议转换后,可直接把安卓设备上的app的指令发送到遥控数据存储芯片,本设计采用了singlechip solution公司的SC6688AC。
如图3所示,在本实施例中,遥控红外信号发射电路4包括红外二极管DS、三极管Q1、Q2、二极管D及电阻若干。芯片有发射模式和学习模式,在发射模式中,红外二极管DS的供电电压为3.3V,三极管Q2起放大电流作用,电阻R11是限流电阻,遥控数据存储芯片的输出OUT通过电阻R17后连接到Q2的基极,经Q2放大信号后从红外二极管DS输出红外数据。在学习模式中,遥控数据存储芯片的输出OUT一直保持低电平,红外二极管DS仅作输入使用,红外二极管DS接收到的红外数据经由电阻R11、第R1来到Q3的基极,该红外数据经三极管Q3、Q1二级放大后输入到遥控数据存储芯片的输入端IN,遥控数据存储芯片把接收到的高低电平的信号存储到内部的寄存器里,遥控数据存储芯片的DIS引脚连接的是发光二极管LED,用于显示遥控数据存储芯片在不同的工作状态。
图3 遥控红外信号发射和学习电路
本设计的软件部分指安卓终端的app部分,本文着重介绍业务逻辑的实现。软件流程如图4所示。
2.1 安卓app端业务的实现
在符合要求的安卓终端上正确安装app后,app可在后台运行服务,当检测到安卓设备控制的万能遥控器插入安卓设备的micro usb口,app会自动弹出。
如安卓设备控制的万能遥控器数据库内包含要使用空调的数据,通过品牌型号查找可找到对应型号并对空调的温度,风量,角度,摆风等参数进行操作;如不清楚空调型号,也可以用遍历方法,app将以2秒一个周期,按顺序切换空调型号,并对空调发送开关信号,使用者可观察空调有没有反应来确认型号是否正确。
如安卓设备控制的万能遥控器数据库内不包含要使用空调的数据,可进入学习界面,在学习界面里有16个按键,最多可以学习遥控里16个按键的信息。按“学习”按钮,所有按键会闪烁,选择要学习的按键,然后把目标空调对准如“安卓设备控制的万能遥控器”,如“安卓设备控制的万能遥控器”就能学习目标空调按键的数据。学习时间为5秒,超时后如得到“安卓设备控制的万能遥控器”确认信息,app知道学习成功,否则学习失败。学习成功后,按对应按键,“安卓设备控制的万能遥控器”就能把之前学习的信号发出。长按16个学习按键其中某个3秒,可弹出文本框,改变按键名称。
2.2 遥控数据存储芯片的控制协议的实现
遥控数据存储芯片是一款串口控制芯片,通讯参数设置为:波特率:9600bps,数据位:8 bits, 停止位:1 bits,校验:无。
芯片的数据帧格式如下表:
其中,CMD表示命令字,PAR1-PAR3表示参数集,XOR:前四个字节的XOR结果作为一帧数据的校验。下面以学习红外信号,设定空调型号为例说明,其他命令可参考文献[6]。
(1)学习红外信号命令
作用:学习红外信号
命令:0x88
PAR1:学习代号(0x00 — 0x64)
PAR2:保留(0x00)
PAR3:保留(0x00)
XOR:前四个字节的XOR 。
(2)设定空调型号
作用:从芯片遥控库中调出某种空调遥控器作为当前遥控器,未设置之前的遥控器型号是不确定的。
命令:0x02
DataH:空调型号高字节
DataL:空调型号低字节
TM: 实时时间的分钟参数,如果不能提供实时时间填入0x08
XOR:前四个字节的XOR 。
根据厂家提供的数据以及实际测试,要实现app的自动弹出功能,安卓设备须满足以下条件:
(1) 安卓移动设备系统版本4.0或以上;
(2)安卓移动设备带有usb otg功能,目前大部分型号平板电脑和一部分型号的手机都带有此功能;
(3)安卓移动设备系原生系统;其他经简化或优化或定制的系统不一定具有usb协议与RS232协议转换芯片的驱动。
经测试,现在市面上流行的大部分空调品牌的大部分型号都可以通过本万能遥控器进行控制。而且,本万能遥控器除了可以学习空调遥控数据外,还能学习其他类型遥控,如电视机、风扇等的数据。实现了体积细小,功能强大,使用方便的万能遥控功能。
[1] 黄宇, 面向智能家居的安卓控制系统设计与实现[D], 武汉:华中科技大学, 2013:17-21.
[2] 李萌, 李山, 秦雪, 基于安卓操作系统的掌上设备在医学检验教育中的应用[J]. 检验医学与临床, 2013.11(10):2907-2908.
[3] Bill Phillips, Brian Hardy, Android编程权威指南[M], 北京:人民邮电出版社, 2014.4: 267-233.
[4] 凡建辉, 安卓商店客户端系统设计与实现[D], 北京: 北京交通大学, 2013: 89-92.
[5] FTDI Chip Co.Ltd, FT232R USB UART IC Datasheet Version 2.10[OL], 2012.3: 1-40.
[6] singlechip solution,通用空调万能遥控方案-SC6688AC[OL], 2013.08: 1-4.
The design and realization of a powerful remote controller handle by Android terminate
Yu Zhipeng,Cai Zefan
(institute of technology of profession of shunde guangdong shunde 528300)
The aim of this design is to realize a small-volume,powerful,convenient remote controller, including peripheral and app design.After installing app in the Android terminate,the app will launch when the hardware inserted in the Android terminate.The controller support more than 1000 air conditioner models of 51 branches,moreover there are 100 study space in the hardware.Unlike the traditional remote controllers that control through model code in the instructions, the models and the branches are visible in the monitor of the Android terminate.The custom buttons' names can be customized,too.The size of the hardware is 49*36mm,which is exquisite.
Android;powerful;remote controller;app;study function
图4 安卓设备控制的万能遥控器的软件流程图