111 信息终端与显示I I NFORMATION TERMINAL &D ISPLAY γ,赞哩'[本文献信息]李磊,崔建明,余磊,等.基于IGRS的Android智能遥控器设计[J].电视技术,2013,37(6).基于IGRS的Android智能遥控器设计李磊,崔建明,余磊,袁兴(山东科技大学信息科学与工程学院,山东青岛266590)[摘要]主要实现了一种基于闪联协议核和多屏互动的智能遥控器。遥控器采用Linux平台基础上的Java架构。针对机顶盒或电视在其内部按照需求进行Linux的移植同时对Android-SDK进行编译移植。设备的搜索发现依靠系统启动后的看门狗程序递归调用,最后启动闪联协议梭,该协议校为数据提供传输通道。无线路由器、智能机顶盒或电视和平板PC组成局域网,平板PC与机顶盒或电视通过WiFi进行相互通信完成数据的网络传输。[关键词]闪联协议校;网络传输;多屏互动;Android [中图分类号文献标志码JB Design of Android Intelligent Remote Control ased on IGRS LI Le , CUI J anm ng, YU Le , YUAN X ng (College 01 b伪rmalionScienceαnd Engineering, Shandong University 01 Scienceαnd Technology, Shandong Qi喀彻o266590, China) [Abstract] A design of intelligent remote control is mainly implemented based on IGRS protocol stack and multi-interactive screen. The remote control is designed based on Linux platform of Java architecture. According to the demand of the set-top box or TV, it implements Linux transplantation. At the same time, it also needs to transplant the Android-SDK after compiling. Discovery of the equipment relies on recursive calls of the watchdog program which starts after the booting of system. Finally, the IGRS works and it provides transmission channel for the data. Wireless router, intelligent set-top box or TV and Pad compose LAN, Pad communicates with the set-top box or TV by WiFi to complete the network transmission of the data. [Key words] IGRS protocol stack; network transmission; multi-interactive screen; Android 随着互联网的发展,移动互联网逐渐成为主流。客线路由器承担通信中继器的作用。平板PC与机顶盒或户的需求也在不断的多元化。本文主要设计为通过平板电视都带有相应的WiFi模块。局域网中的设备IP设置PC的智能遥控器控制机顶盒或电视。当平板PC和机顶到同一网段,局域网中设备在启动后会基于IGRS自动地盒或电视处于同一个局域网中时,平板PC发现机顶盒或相互发现,发现设备后,平板PC与机顶盒或电视通过各电视,这时应用平板PC上的智能遥控器软件实现对智能自的WiFi模块发送/接收信号,通过无线路由器完成通机顶盒或电视的智能遥控,实现实体遥控器的相应功能。信。功能模块中最重要的就是基于IGRS的设备发现,交随着多屏互动技术的发展,平板PC上实现实体遥控互流程如图1所示。器的相应功能,方法也越来越成熟[1飞本文采用IGRS协IGRS设备客户议发现设备并通过IGRS提供数据的传输通道,最后数据|功能」一…lJ_一--旦唾些旦一一←通过网络传输完成键值的传送。I调用I1 系统介绍 IGRS概念IGRSf3J是一种为信息设备提供设备发现、数据传输通道以及资源共享的一种传输协议。 功能模块SOAP 智能遥控器功能在一个局域网内实现,局域网中相SOAP 应的设备包括基于Android的平板PC、机顶盒、无线路由HTIP 器和智能电视。TCP/UDP TCPIIP 局域网通过无线路由器搭建,局域网搭建过程中,元图1IGRS设备交互92 <<电视技术》第37卷第6期(总第叫)I投稿网址http:叫
| 信息终端与显示-NFORMATION TERMINAL & DISPLAY 基础上的Java架构。生成的镜像文件如表l所示。得到2 智能遥控器实现上述的镜像后,完成镜像烧制.结束系统的搭建。 局域网设备表l镜像同域网中主要包括以下设备:无线路!书器sdk. kernel b∞ Image rccovt’ s) TL-WR941N;瑞心做机顶盒RK2908_SmarITV-BOX;Hi-主监是是育ense801电视;8ndroid-sdk是再是Hisense I’TV pad M280。通过上述的物理怒门kernf'1杏是严f硬件设备.得到阁2所示的硬件交E流藉。在阁2中,平板电视可以直接通过WiFi元线路由器控制平板电视, 遥控器实现机制i亥功能的实现依赖于电视中已经集成了机顶盒相应的系统启动时运行IgrsWatchOogApp服务,TgrsWatch›功能,随着市场上各种平饭电视的开友,此类电视越来DogApp第一次启动闪联协议战。在平饭PC与trL顶盒越多,I夫l而此遥控器的开发同时针对f在智能电视的端,闪联协议战启动之后,通过交互,互相发现对方,并且实现。建立连接。对于闪联协议拢的启动过程(通过看门狗的调用)及设备发现的相关文件主要是和W,,;(,丁-'-).。在闪联协议战启动时,可以通过函数(,'r号------ ---inl igrs_slart(void)来启动,同时在该函数巾区分设备确定(l川Uj"('Ube平版电视设备编号的唯一性和设备名称的一致性,通过雨数voidon_device_slalus (consl char *device_id, IgrsDeviceSlalus 图2硬件交互流程status)和1void on_Jan_Jevice_slalus (consl char *device_id, 设备发现const char *nllme,const chllJ *hostnamc, lInsigncd inl ip, 基于IGRS的设备发现141是通过WiFi的支持米实现inl port,lgrsDeviceStatus lype)可以得的。在设备启动过程巾,首先建立网络连接,使设备处于到设备的上下线通知.通过inligrs_cnd(void)钻柬协议拢同一个局域网中,网络连接之后,启动闪联协议拢,主播的运行,函数intgel_key(KEY_CODE *k3ode)可以得到发出WiFi信号.从设备接收到信号,主从设备建立连按键的键值等。通过系统打印信息得到平板PC键值和接。眩过程中设备的发现及提供数据的传输通道部是通遥控器键值的对应。在键值的修改过程巾,通过在打印过|川联协议战实现,在闪联协议槽的发现过程中,通过设信息中加入输出,最后在文件中跟踪到备的设备号和1名称来确定设备的唯-性。在设备发现的雨数inltranslllle_key(chllJ *key),追踪到该函数后,对比过程当中,可能有很多设备,但是闪联协议校负责发现设系统的打印信息,对和中备,并没有显示山来。在此可以借助多屏互动阳的技术,宏定义做相应修改,对中结构体变量进在平版PC上应用Java开发-个显示页面,用于显示发现行修改,达到平板PC键值与遥控器键值的一致性。连接的设备,从而)j使选择与平版PC交互的设备。当用户选机制如|到3所示。中要操作的设备,此时建立连接,平板PC即可操作机顶盒或电视。 实现过程 系统搭建系统的基础架构是,kernel编译环境为-24-generic,Makefile文件中内核版本号与开发板的基础架构版本一致,同时将键值的驱动() 1JO到编译的过程lS10键值的驱动编译过程可图3连接机制分为两种,一种直接编译进内核,另一种是编译成ko文件手动捕入。添加键值的驱动前要为其编写Makefile文对键值做出修改,重新得到l陆i泊b刷igψrS-ln肌』件,仿照驱动目录下的其他驱动的Makefìle文件加以编相应库目录,在平板P眈C上进行智能遥控器的测试。键值写。配置Menuconfig,选中遥控器相应的驱动,其他系统的传输可以通过开发的软件封装成网络数据,然后通过默认。同时在该Ubunlu下编译-SDK,即Linux网络传输在局域网内实现。投稿网址(电视技术用37卷第6期(总第407期)93
IIINFORMATION TE γ,费哩'出,这样可以保证结果的正确性。3 实验验证对于该遥控器的实现,用户界面(UserInte白白,u4 小结I) 方面的开发对于不同的控制端(平板PC端),设计的UI本文设计了一种基于闪联协议战和Android多屏互有不同的类型。本实验中的遥控器UI也有两种不同的动的智能遥控器。对于目前产品化的平板PC各个系列,类型,在此只给出一例,此UI是针对常用的按键进行设此应用已经添加,但本文的设计是其他平台上的开发,并计的。界面如图4所示。且结果相对稳定。通过此应用的实现,可以看到闪联协议拢在应用中的重要性。在协议应用的两端,关于接口j主注Cj]r.--) 的定义、实现、封装等都应制定统一的规则,而针对电视~[OK l~ ~手(卫王〉司~)或机顶盒的遥控器设计,在应用层,应实现对电视操作的最大化,这样遥控器才能体现其优越性。基于闪联协议(重)晶。fJ(1) 梭的遥控器的设计,可以看到闪联协议给应用开发带来图4遥控器UI了极大的方便。随着数字电视、平板PC、多网融合等技当触发主页键,电视将回到主页页面,通过系统的打印术的发展,闪联协议将会有更大的应用前景。现在其还信息可以看到打印的结果,给出主页键打印信息如图5所示。存在局限性,只是应用在Android平台下的手机或者平板电视,操作也存在单一性。不过相信在不久的将来,随着[ I 56fi4. ::JOOOOO] vkeyboaγd…wriLe dev:O type:! vHl=l codu吨"'19:-JrE:.~lx""'O rHly"-() with scan Gode 智能家居的发展,其应用范围会越来越广,给人们的生活[15654. :i08000J vkeyhoFt:rd_write dev:O type: 1 val=O c:ode=19:3 rulx=O左~'ly=Owi th scar1 eode I/gvent:}luh ( 877): ipv. COdH=] 9:-i keyCnclB=:l 带来方便和乐趣。ïlu~.s=OxOOO()0002 urr=O 1 /Ev(;>nt.(1uh (归77):iev.εode'=" 19::S keyCode=:i Í~=OxOOOOOO().::! err=O 参考文献:图5按键打印信息[1] 余泽喜,王香婷.多屏互动系统的研究与实现[J].智能计算机与应通过实验可看到,在输出上,Android底层指定的主用,2010,2(1):68-70.页按键的键值是对应的keyCode=3,相应的键值都在An[2]顾士平,丁爱国,黄前红,等.基于Android多屏互动的遥控器设计droid相应的文件中做出相应的规定。而对应的时.code=[J]电视技术,2012,36(4):30-31[3] 罗予晋.IGRS(问联)概述[J].信息技术与标准化,2∞6(3): 42-46. 193是方便高层的应用而做的相应映射,其最终映射到[4] 叶茂,雷航问联协议设备管理机制的研究与改进口1微计算机信Android 底层上的主页键。借助相应文件中对Android键息,2009,25(10) : 35-36. 值的映射过程,可以实现遥控器键值上的更多应用。实[5] 孙琼.嵌入式Linux应用程序开发详解[M].北京:人民邮电出版社,验通过高层文件对底层Android文件的调用而最终实现2006. 。遥控器的功能。作者简介:在该应用的开发过程中,从底层系统的搭建到高层李磊(1984-1,硕士生,主研嵌入式系统与集成电路设计;遥控器软件的调用都秉承力求稳定性的原则。对于第三崔建阴(1969-1,副教授,硕士生导师,研究领域为鼓字专用集成方封装好的应用,只是负责BUG的发现,而相应的解决电路;余磊(1987一1,硕士生,主研数字集成电路设计;问题提供BUG对应的打印信息。对遥控器键值的修改袁兴(1987一1,硕士生,主研嵌入式系统与集成电路设计。是借助打印信息的比对,此打印信息通过终端实时的给责任编辑:任健男收稿日期:2012-10-2588页)丰士,2007.系统管理工作。另外,如何使终端在保证内网资料不泄[3] 张琦,杨盈肉,张远,等.数字电视中心技术[M]jt京:中国传媒大学露的同时也能够访问外网;两台服务器完全达到自由的出版社,2001互相访问,使语录室和演播室终端可直接访问视音频资[4] 张琦,林正豹,杨盈向.数字电视制播技术[M].北京:中国广播电视料服务器下面的磁盘阵列。这些问题都需要在今后的实出版社,2∞3.[5] 陈怀民,骆学聪.中国国际广播中心(CRI)语录室的声学测量和分验室建设和播音教学设施改造中进一步完善。析[1].电声技术,1996(6):13-16. [6] 王昌煌.录音技术浅谈一一语音传声器的设置口].电声技术,2∞6,参考文献:30(3) :65-66 [1] 姜秀华.现代电视原理[M].~t京:高等教育出版社,2∞8。[2]姜秀华,张永辉.数字电视广播原理与应用[M].北京:人民邮电出版责任编辑:时雯收稿日期:2012-01-1494<电视技术》第37卷第6期{总第407期1I投稿网址h帕