图形终端扫描仪控制方法

文档序号:7612517阅读:212来源:国知局
专利名称:图形终端扫描仪控制方法
技术领域
本发明涉及图形终端控制领域,尤其涉及图形终端控制扫描仪领域。
背景技术
从上个世纪90年代以来,传统字符终端得到了充分的应用。但传统字符终端只能显示字符。随着客户需求的不断增长,单纯字符终端不能满足使用需要,于是出现了可以显示一些简单线格的字符终端。后来,出现了可以显示彩色图像的图形终端。
图形终端是相对于Unix字符终端的下一代终端,在图形终端上可以显示图形用户界面(Graphic User Interface,简称GUI)。
如附图1所示,这里所说的图形终端是指Windows操作系统图形终端或Unix/Linux操作系统X-Server的图形终端。通过图形终端,可以在远程使用图形窗口界面访问服务器上的资源。
图形终端通过以太网络与服务器进行连接,在图形终端上可以连接键盘、鼠标等简单输入设备。图形终端本身含有中央处理器(CPU),内存等基本硬件,并运行嵌入式操作系统(如Windows CE/Linux等)。
图形终端开启后,一般需要连接并登录到服务器上。登录后,在图形终端上所显示的界面是服务器端的界面在本地终端上的展示,在图形终端上显示和运行的程序,实际在服务器端运行。
图形终端一般具有传统字符终端的全部功能,并可以显示图形用户界面,但在使用中仍然有一定的局限性,主要表现在图形终端不能像PC机那样可以方便的控制外部设备。
造成图形终端不能方便控制外部设备的原因,主要是因为显示在终端上的应用程序,实际并不运行在终端上,而是运行在后台服务器上。因此程序所操作的硬件资源,实际上是服务器上设备。(例如,在图形终端上编辑的文件,保存后是保存在服务器的硬盘上。)这样,就使得图形终端无法直接控制终端上的硬件资源。

发明内容
本发明旨在解决图形终端的这一局限,成功实现在图形终端上控制扫描仪。
本发明提供一种图形终端控制扫描仪的方法,所述图形终端包括扫描仪控制服务程序模块以及扫描仪底层控制逻辑模块,图形终端通过以太网和远程服务器连接,扫描仪连接在图形终端上,所述方法包括在图形终端上运行扫描仪控制服务程序,监听网络请求;当扫描服务程序监听到请求时,先接收请求数据,然后解析请求的报文,从中提取控制信息,并将控制信息传递给扫描仪控制逻辑模块,进行扫描。
扫描完成后,先将图形数据存储在终端的内存中,再由扫描仪服务程序将该图像数据通过已建立的套接字连接发送到客户端——即向扫描仪控制服务发送扫描请求并接收图像数据的一方。
扫描步骤包括首先初始化扫描设备,其次设置扫描参数,然后扫描仪进行扫描,最后保存图形数据返回。
扫描仪连接在图形终端的USB接口上。


图1为图形终端的连接方式;图2为图形终端控制扫描仪硬件连接示意图;图3为图形终端控制扫描仪结构的硬件方框图;图4为扫描仪工作流程图;图5为扫描仪控制服务程序流程图;
图6为扫描控制应用程序的流程图;图7为具有多个图形终端的系统示意图。
具体实施例方式
以下实施例用于说明本发明,但不用来限制本发明的范围。
附图1示出了图形终端的连接方式。
附图2为图形终端控制扫描仪的硬件连接示意图。如图所示,图形终端与服务器按照通常的连接方式进行连接。扫描仪连接在图形终端的USB接口上。
显示在图形终端上的程序仍然运行在服务器上,在需要扫描的时候,自动控制连接在终端上的扫描仪完成扫描。
以下同时参照附图1和附图2对图形终端控制扫描仪技术的硬件和软件方面分别进行说明。
图形终端扫描控制技术硬件方面由如下部分构成●服务器——应用程序运行环境●图形终端——应用程序显示环境及操作环境●扫描仪——连接在图形终端上,用于图形扫描采集。
图形终端扫描控制技术软件方面由如下部分构成●图形界面应用程序——运行于服务器端,显示于图形终端上●底层网络API函数库——由操作系统提供●扫描仪控制服务程序——运行在图形终端嵌入式操作系统中,负责监听扫描请求。
●扫描仪底层控制逻辑模块——运行在图形终端嵌入式操作系统中,负责控制扫描仪硬件。
下面将详细描述图形终端控制扫描仪的具体过程。如附图2所示,首先实现扫描仪底层控制逻辑模块,即在终端上直接完成扫描仪控制。这可以通过在图形终端嵌入式系统中编写特定控制程序来实现。该控制程序直接访问终端上的USB端口(图中未示出),通过USB2.0接口协议控制连接在该端口上的扫描仪硬件。该模块具有以下主要控制接口——即模块接口函数,供外部模块或程序调用1.设置扫描参数接口用于完成扫描仪控制参数的设置,保存在扫描控仪底层控制逻辑模块的内存变量中。
输入参数扫描仪控制参数,包括扫描区域坐标、扫描精度、颜色数等返回结果成功标志或失败错误代码逻辑过程将输入参数保存在内存变量中2.扫描接口根据已设置的扫描参数,控制扫描仪完成扫描。
扫描仪具体驱动过程,一般会因扫描仪品牌的普通而有所差异。扫描仪硬件驱动程序由扫描仪硬件制造商提供。因此,这里根据硬件类别直接调用扫描仪硬件驱动API(ApplicationProgramming Interface——应用程序编成接口)。参见附图4.输入参数无输出参数扫描得到的图像数据返回参数成功标志或失败错误代码逻辑过程主要过程包括如下内容检查扫描仪连接状态→初始化扫描仪硬件→读取扫描参数信息→向扫描仪硬件发送控制参数→启动扫描仪开始扫描→循环接收图像数据直至扫描完毕→发送扫描停止信号,结束扫描→将图像数据拷贝到输出缓冲区→函数结束。
在终端上运行一Socket套接字服务程序即扫描仪控制服务程序。首先,服务启动,初始化网络。其次,该扫描仪控制服务程序用于监听网络请求。当扫描仪控制服务程序监听到请求时,先接收请求的报文数据,然后解析请求的报文数据,从中提取控制信息,并将控制信息传递给扫描仪底层控制逻辑模块,进行扫描。扫描完成后,先将图形数据存储在终端的内存中,再由扫描服务程序将该图像数据通过先前已建立的socket连接发送到客户端。参见附图5。
扫描仪控制服务程序主要逻辑服务程序启动→读取配置信息(例如Socket端口,缓冲区大小等)→创建socket套接字句柄→初始化socket套接字句柄→绑定监听端口,进入监听状态。
当服务程序接收到连接请求时,进入下面处理模块中。
扫描请求处理模块输入参数已连接的socket套接字句柄输出参数无返回参数成功标志或失败错误代码逻辑过程接收请求数据→解析请求数据,得到扫描仪控制参数→调用扫描仪底层控制逻辑模块的设置扫描参数接口,传送扫描仪控制参数,完成设置→调用扫描仪底层控制逻辑模块的扫描接口,进行扫描→读取图像数据缓冲区,获得图像数据→发送图像数据到客户端(即请求端)→函数返回在完成以上步骤之后,已经可以在终端服务器端的应用程序中,在给定终端IP地址的情况下,访问终端上的扫描服务完成扫描。当应用程序以终端模式运行时,可以通过操作系统底层API函数直接获得当前终端的IP地址,这样,就可以直接访问当前终端上的扫描服务,进而完成扫描。
应用程序控制扫描过程主要模块描述如下(参见附图6)输入参数扫描仪控制参数,包括扫描区域坐标、扫描精度、颜色数等输出参数扫描得到的图像数据返回参数成功标志或失败错误代码逻辑过程调用操作系统API函数,获取终端IP地址→创建客户端Socket套接字句柄→根据终端IP地址,建立socket连接→将扫描设置参数整理成数据报文→发送数据报文→等待扫描服务端返回图像数据→循环接收图像服务端的数据,直到接收完毕→断开Socket连接→输出图像数据,函数返回采用本发明,一台服务器可以连接上多台图形终端,每台图形终端上都可以连接一台(或不连接)扫描仪,在终端上独立进行控制,如附图7所示。
随着图形应用界面的普及,越来越多的领域采用图形终端作为办公设备。在图形终端上控制扫描仪,可以扩大图形终端的使用范围,大大节省硬件投入和维护成本。
这里已经对本发明进行了详细的描述。尽管如此,本领域的技术人员可以理解的是,在不脱离本发明的精神和范围的情况下可以对本发明做出很多的修改。因此,通过附加的权利要求来覆盖所有这些在本发明的精神和范围内的变化和修改。
权利要求
1.一种图形终端控制扫描仪的方法,所述图形终端包括扫描仪控制服务程序模块以及扫描仪底层控制逻辑模块,图形终端通过以太网和远程服务器连接,扫描仪连接在图形终端上,所述方法包括在图形终端上运行扫描仪控制服务程序,监听网络请求;当扫描服务程序监听到请求时,先接收请求数据,然后解析请求的报文,从中提取控制信息,并将控制信息传递给扫描仪控制逻辑模块,进行扫描。
2.如权利要求1所述的方法,还包括步骤扫描完成后,先将图形数据存储在终端的内存中,再由扫描仪服务程序将该图像数据通过已建立的套接字连接发送到客户端。
3.如权利要求1所述的方法,其中扫描步骤包括首先初始化扫描设备,其次设置扫描参数,然后扫描仪进行扫描,最后保存图形数据返回。
4.如权利要求1所述的方法,其中扫描仪连接在图形终端的USB接口上。
全文摘要
本发明涉及一种在终端上直接完成对扫描仪的控制。这可以通过在图形终端嵌入式系统中编写特定控制程序来实现。该控制程序直接访问终端上的USB端口,通过USB 2.0接口协议控制连接在该端口上的扫描仪硬件。即在终端上运行一Socket服务程序(扫描仪控制服务),该服务程序用于监听网络请求。当扫描服务程序监听到请求时,先接收请求数据,然后解析请求的报文,从中提取控制信息,并将控制信息传递给扫描仪控制逻辑模块,进行扫描。
文档编号H04N1/00GK1710928SQ20051001211
公开日2005年12月21日 申请日期2005年7月7日 优先权日2005年7月7日
发明者邱锐 申请人:北京紫枫科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1