基于Java的望远镜的移动控制系统的制作方法

文档序号:7684358阅读:264来源:国知局
专利名称:基于Java的望远镜的移动控制系统的制作方法
技术领域
本发明涉及望远镜的移动控制系统,特别涉及基于Java的望远镜的移动 控制系统。
背景技术
大型天文望远镜一般架设在地理位置较为特殊的地方,望远镜工程技术 人员希望能够"随时、随地、随身"了解及控制望远镜的状态,移动通信技 术的发展使之成为了可能。现有望远镜的移动、远程控制釆用基于短消息的方式来实现,发明 CN200510094716.3中公开了一种通过GSM手机短信实现天文望远镜的无线 通信系统,通过短信实现对望远镜总控系统进行控制。基于短信的方式由于 受短信技术本身的限制,具有如下不足短信长度有限,发送信息量受限; 短信通信无法满足实时、在线控制的需要;短信指令编写较为麻烦,操作不 便等。JAVA语言从其诞生起就以其运行的平台无关性这一强大的优势而成为 网络应用的宠儿。J2ME是JAVA2标准版本的微型版本,专门为小型移动终 端所设计。J2ME只包含了 J2SE中在移动通信设备上所必需的功能和组件, 使其能够在移动终端及其有限的资源上开发出丰富多彩且平台无关的应用。发明内容本发明的目的在于克服望远镜的移动、远程控制的现有技术的缺陷,提供一种基于Java的望远镜的移动控制系统,使移动用户通过移动终端(手机、 PDA等)与指定的WEB服务器进行HTTP连接,实现与天文望远镜"及时在 线的"交互,获取望远镜的相关状态,对望远镜实现移动的实时的控制。本发明的技术方案是 一种基于Java的望远镜的移动控制系统,包括移 动终端、望远镜控制系统和服务器(Webserver),所述移动终端和所述 Web服务器之间通过TCP/IP进行HTTP通讯,所述望远镜控制系统和服务器 之间通过TCP/IP协议连接,其特征是,所述在移动终端中设置有移动信息设 备描述(MIDP)、应用程序模块(MDlet)、应用程序管理软件(AMS)、 可扩展标识语言(XML)编码器和一步解析器(NanoXML解析器);可扩 展标识语言(XML)编码器,用于用XML描述终端与服务器数据交互的格 式;所述NanoXML解析器,用于解析上述XML描述的协议文档,并把它 转换成一棵元素树,通过调用方法来遍历整棵树,得到数据信息;所述WebServer中设有四个模块服务器小程序模块(Servlet模块)、 解析器模块、JavaBeans组件(可重用组件)模块、消息发送模块(SMS、 socket或datagram) ; Servle讨莫块负责与手机用户通信,接收用户的请求, 发送服务器响应结果,并与解析器模块交换信息;解析器模块负责解析 Servlet接收到的用户请求数据,并将返回信息按协议规范打包送给Servle讨莫 块;JavaBeans组件模块主要负责与本地望远镜控制系统通信;消息发模块 负责通过SMS、 socket或datagram发送消息给移动终端;所述移动终端通过MIDP中Connector类,使用HttpConnection.POST方式 来实现与所述Web服务器之间的TCP/IP的HTTP通讯。所述移动信息设备描述(Mobile Information Device Profile,MDP)是一套Java应用编禾呈4妾口 (Application Programmer's Interfaces(APIs))。它们与有限连 接设备配置(Connected Limited Device Configuration,CLDC)—起向诸如蜂窝 电话等移动信息设备提供了 一个完整的Java应用运行环境。所述通过调用方法来遍历整棵树,是指通过调用getChildren、 getTagName 、 getContents和getProperty等来遍历整棵树。上述移动终端与Web服务器之间的通信连接中,通过MIDP中Connector 类,使用HttpConnection.POST方式进4亍TCP/IP协i义(Transmission Control Protocol/Internet Protocol传输控制/网际协议)的HTTP (超文体传输协议)通 讯连接。上述移动终端的应用程序模块中设有在运行时使用PushRegistry类,调 用registerConnection注册基于网络编程接口 (socket)、短信服务(SMS) 或datagram的网络连接,将push注册机制特征添加到移动终端应用程序中的 程序。所述注册基于网络编程接口 (socket)、短信服务(SMS)或datagram 的网络连接,是指通过指定目标设备的电话号码或IP,服务器端应用程序发 送消息到移动终端。移动终端是支持SMS、 socket或datagram作为push注册 机制的触发器的。上述系统进一步包括如下步骤1) 移动终端采用基于socket的网络连接,系统监听5001端口,通过连接类的 getLocalAddress()及getLocalPort()获得当前连接的服务器IP地址及端口号, 终端通过HTTP协议与服务器建立双向的连接;2) 当望远镜发生重要状态变化时,控制系统通过服务终端并使用上述移动 终端中MIDlet注册监听的协议和端口主动将望远镜的当前相关状态发送给 移动终端;3)望远镜的当前相关状态信息进入移动终端,移动终端启动注册了监听此 端口和协议的MIDlet并且处理发送过来的数据。上述步骤总体概括地说,就是从一个Java服务器端应用程序发送一条消 息到一个移动终端的指定端口 ,并自动启动一个运行在移动终端中的应用程 序模块(MDlet)对消息进行处理。上述系统执行的通信过程分为移动用户主动发起的PULL过程及望远镜 控制系统发起的PUSH过程,过程分别如下PULL通信过程1) 终端用户选择要执行的操作;2) 终端系统按定义的XML通信格式进行编码;3) 通过连接器与服务器进行连接,通过HTTP协议发送数据;4) 服务器接收数据;5 )服务器通过解析器对数据进行解码,并将指令转给本地控制系统;6) 本地控制系统将执行结果返回给服务器;7) 服务器编码器按XML格式编码;8) 数据返回给终端用户;9) 用户接收数据,调用解析器解码,并显示给用户。 PUSH通信过程1) 在服务器程序中设定接收信息的移动终端,用户注册网络连接;2) 服务器获取要PUSH的数据;3) 服务器编码程序对数据按XML编码;4) 服务器PUSH通知消息给终端;5) 用户接收消息,AMS启动消息相关联的应用程序,处理消息,获 得当前连接的服务器IP地址及端口号;6 )终端通过HTTP协议与服务器建立双向的连接,实现用户与服务器 间的交互。本发明具有如下有益效果利用J2me开发移动终端控制系统,用户操作方便;服务器利用Java开发 Servlet、 socket、 Java Bean,安全可靠高效;利用HTTP协议实现终端与Web服务器间的连接,通过XML实现数据的 交换;能实现及时在线的控制与信息交互;通过注册网络连接,接收望远镜本地控制系统PUSH的望远镜状态,并 激活相应的终端处理程序;采用XML格式编写控制指令简明高效,易于扩充。


图l是本发明的系统结构框图 图2是本发明实施例2的流程图 图3是本发明实施例3的流程图具体实施方式
下面结合实施例做进一步说明。 实施例l如图1所示, 一种基于Java的望远镜的移动控制系统,包括支持Java的手 机、望远镜控制系统和服务器(Web Server),手机和服务器之间通过TCP/IP 进行HTTP通讯,望远镜控制系统和服务器之间通过TCP/IP协议连接。在手机中设置有移动信息设备描述(MIDP)、应用程序模块(MIDlet)、应用程序管理软件(AMS )、可扩展标识语言(XML)编码器和NanoXML解 析器;可扩展标识语言(XML)编码器,用于用XML描述终端与服务器数 据交互的格式;NanoXML解析器,用于解析上述XML描述的协议文档, 并把它转换成一棵元素树,通过调用方法getChildren、 getTagName、 getContents和getProperty等来遍历整棵树,得到数据信息。WebServer中设有四个模块Servlet模块、解析器模块(编码器/解析器 模块)、可重用组件(JavaBeans组件)模块、消息发送模块(SMS、 socket 和datagram) ; Servle讨莫块负责与手机用户通信,接收用户的请求,发送服 务器响应结果,并与解析器模块交换信息;解析器模块负责解析Servlet接收 到的用户请求数据,并将返回信息按协议规范打包送给Servlet模块; JavaBeans组件模块主要负责与本地望远镜控制系统通信;消息发模块负责 通过SMS、 socket和datagram^送消息给移动用户。移动终端与Web服务器之间,通过MIDP中Connector类,使用 HttpConnection.POST方式进行TCP/IP的HTTP通讯连接。实施例2如图2所示,移动用户远程打开圆顶的过^E如下1、 移动用户在移动终端上启动远程望远镜终端控制系统,选择"dome", 执行"open"命令;2、 终端编码程序按XML格式进行编码,格式如下<formula>formula see original document page 10</formula>< /command></instrument> </system>3、 终端连接器调用Connector与设定的望远镜控制系统服务器进行连 接,采用HttpConnection.POST用户请求给服务器;4、 服务器通过servlet接收用户的请求;5、 服务器调用NanoXML解析请求数据,知是圆顶操作命令,将命令传 送给本地圆顶控制器;6、 圓顶控制器执行"open"命令,并将执行结果返回给服务器;7、 服务器编码器将执行状态按XML格式编码;8、 服务器将数据传回给用户;9、 终端程序调用NanoXML解析接收到的数据,并将结果显示给用户; 通信过程结束。实施例3PUSH圆顶的温度的移动控制过程如下望远镜是精密仪器,对环境要求高,当望远镜出现异常情况时,要及时 将望远镜的状态告诉相关人员。将LAMOST圓顶的温度发送指定人员的手 机中,并启动温度处理程序。本实施例中,手机的应用程序中设有在运行时使用PushRegistry类,调 用registerConnection注册基于短信服务(SMS)、网络编程接口 (socket)、 datagram的网络连接,将push注册机制特征添加到移动终端应用程序中的装 置。如图3所示,PUSH圆顶的温度的移动控制过程如下1) 在服务器程序中设定接收信息的手机,并在手机中注册网络连接;2) 本地控制系统采集到圆顶的温度,并传给服务器; 服务器编码器对温度数据按XML格式编码,格式如下 <systemtitle=,, dome system" ID=,, 2101003451 date=,, 2007-03-20 20:21:32.076" ><instrument name=,, dome" ><status name=,, temperature" value=,, 20" ></status> </instrumcnt> </system>3 )服务器通过socket方式PUSH已编码的数据到指定的手机; 4)终端接收到数据,AMS启动相关联的温度处理程序,处理数据,并获得当前连接的服务器IP地址及端口号;5 )终端通过HTTP协议与服务器建立双向的连接,终端对望远镜的移动控制过程如实施例2。
权利要求
1、一种基于Java的望远镜的移动控制系统,包括移动终端、望远镜控制系统和服务器,所述移动终端和所述Web服务器之间通过TCP/IP进行HTTP通讯,所述望远镜控制系统和服务器之间通过TCP/IP协议连接,其特征是,所述在移动终端中设置有移动信息设备描述、应用程序模块、应用程序管理软件、可扩展标识语言编码器和一步解析器;可扩展标识语言编码器,用于用XML描述终端与服务器数据交互的格式;所述一步解析器,用于解析上述XML描述的协议文档,并把它转换成一棵元素树,通过调用方法来遍历整棵树,得到数据信息;所述Web Server中设有四个模块服务器小程序模块、解析器模块、JavaBeans组件模块、消息发送模块;服务器小程序模块负责与手机用户通信,接收用户的请求,发送服务器响应结果,并与解析器模块交换信息;解析器模块负责解析服务器小程序模块接收到的用户请求数据,并将返回信息按协议规范打包送给服务器小程序模块;JavaBeans组件模块主要负责与本地望远镜控制系统通信;消息发模块负责通过SMS、socket或datagram发送消息给移动终端;所述移动终端通过MIDP中Connector类,使用HttpConnection.POST方式来实现与所述Web服务器之间的TCP/IP的HTTP通讯。
2、 根据权利要求l所述的移动控制系统,其特征是,该系统还包括一个 在运行时使用PushRegistry类,调用registerConnection注册基于SMS、 socket 和datagram的网络连接,将push注册机制特征添加到移动终端应用程序中的 移动终端应用程序。
3、 根据权利要求l所述的移动控制系统,其特征是,该系统执行移动用户主动发起的PULL过程如下1) 终端用户选择要执行的操作;2) 终端系统XML编码器按定义的XML通信格式进行编码;3) 通过连接器与服务器进行连接,通过HTTP协议发送数据;4) 服务器接收数据;5 )服务器通过NanoXML解析器对数据进行解码,并将指令转给本地 控制系统;6) 本地控制系统将执行结果返回给服务器;7) 服务器XML编码器按XML格式编码;8) 数据返回给终端用户;9) 用户接收数据,调用解析器解码,并显示给用户。
4、 根据权利要求1或2所述的移动控制系统,其特征是,该系统执行望 远镜控制系统发起的PUSH过程如下1) 在服务器程序中设定接收信息的移动终端,用户注册网络连接;2) 服务器获取要PUSH的数据;3 )服务器编码器对数据按XML编码;4) 服务器PUSH通知消息给终端;5) 用户接收消息,AMS启动消息相关联的应用程序,处理消息,获得当 前连接的服务器IP地址及端口号;6) 终端通过HTTP协议与服务器建立双向的连接,实现用户与服务器间的 交互。
5、 根据权利要求2所述的移动控制系统,其特征是,该系统还执行以下 步骤l)移动终端采用基于socket的网络连接,系统监听5001端口,通过连接类的getLocalAddress()及getLocalPort()获得当前连接的服务器IP地址及端口 号,终端通过HTTP协议与服务器建立双向的连接;(2) 当望远镜发生重要状态变化时,控制系统通过服务终端并使用上述 移动终端中MIDlet注册监听的协议和端口主动将望远镜的当前相关状态发 送给移动终端;(3) 望远镜的当前相关状态信息进入移动终端,移动终端启动注册了监 听此端口和协议的MIDlet并且处理发送过来的数据。
全文摘要
本发明涉及基于Java的望远镜的移动控制系统,目的在于实现与天文望远镜“及时在线的”交互,获取望远镜的相关状态,对望远镜实现移动的实时的控制。一种基于Java的望远镜的移动控制系统,包括移动终端、望远镜控制系统和服务器,所述在移动终端中设置有移动信息设备描述、应用程序模块、应用程序管理软件、可扩展标识语言编码器和一步解析器;所述服务器中设有四个模块服务器小程序模块、解析器模块、JavaBeans组件模块、消息发送模块;所述移动终端通过移动信息设备描述中Connector类,使用HttpConnection.POST方式来实现与所述Web服务器之间的TCP/IP的HTTP通讯。
文档编号H04M11/00GK101242429SQ200810019779
公开日2008年8月13日 申请日期2008年3月14日 优先权日2008年3月14日
发明者帅小应, 张振超 申请人:中国科学院国家天文台南京天文光学技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1