移动同步

2024-07-25

移动同步(共8篇)

移动同步 篇1

1 概述

随着无线通讯技术、网络技术的快速发展, 移动通讯设备 (诸如PDA、掌上电脑等) 日益普及, 移动计算作为一种新的计算模式应运而生, 进而使得人们对随时随地访问所需数据的愿望得以实现。同时, 由于移动计算模式的出现, 改变了传统计算模式的假设条件, 使得许多传统环境的处理策略不适合移动计算环境, 必须对其进行改造或从新设计[1]。移动数据库作为移动计算的软件支持, 已成为数据库技术发展的崭新领域, 愈来愈得到人们的重视, 成为人们普遍研究的焦点。正是由于移动环境具有低带宽、弱连接、频繁断接等特点, 移动数据库的研究有别于传统的集中式、分布式数据库, 可看作是分布式数据库在移动环境下的扩展。数据一致性问题是数据库技术中的一个经典问题, 也是移动数据库研究中必须要解决的问题, 已有的一些策略还不能很好地解决这一问题。为了支持用户在移动环境下能够对数据库进行正常的操作, 现在的技术主要是将移动用户所需要的数据先复制到移动设备的存储介质上, 形成移动端的本地数据库部分, 即移动数据库, 在移动端与网络断开连接时允许移动用户对本地缓存上的数据副本进行操作, 待移动端和网络重新恢复连接后再与数据库服务器交换数据修改信息, 并通过冲突检测和协调来恢复数据的一致性[2]。因此, 移动数据库与中心数据库的数据同步技术成为移动数据库走向应用的关键技术。

2 数据同步技术

数据同步包括服务器之间的同步以及服务器与移动终端的同步。本文中移动数据库的同步主要是指服务器与移动终端之间数据的同步。一般而言, 服务器与移动终端之间的同步主要的方式是采用SQLServer数据复制技术。在SQLServer同步复制技术之后, 提出了一种基于传输XML文件的数据库同步的方案。在这种同步方案中, 采用的是同步代理控制方式, 而同步的过程也主要是通过服务器的同步代理和移动端的同步代理来完成的。移动端创建XML文件, 并向服务器端发出请求, 传输XML文件, 同步代理之间相互交互, 服务器端接收完成后解析XML数据, 更新数据库数据, 从而完成数据的同步。基于传输XML文件的数据同步方式在某种程度上适用于各种数据库平台, 同步对象具有更强的独立性和多样性, 但由于其数据同步的单向性, 在移动征稽系统中[2], 暂时只能与SQLServer的同步复制技术结合起来应用的效果比较明显。在此基础上, 本文对基于XML的数据同步方式加以改进, 提出了一种基于Socket通信的传输XML文件的同步方案。

3 Socket通信的传输XML文件的数据同步

网络上的两个程序通过一个双向的通信连接来实现数据的交换, 这个双向链路的一端就称为一个Socket, 它通常用来实现客户端和服务器端的连接。Socket通信, 实际上就是通过TCP/IP协议与桌面上的PC进行通信, 通常采用的是C/S结构, 客户端在移动端 (例如PDA) , 服务器在远程PC端, 客户端通过某种方式将数据传输到远程服务器。这种方式的主要特点就是可以对所传输的数据进行筛选控制。一方面不仅可以减少对冗余数据操作所造成的时间浪费, 另一方面可以缩短数据的同步时间, 因为这种方式所花费的仅仅是生成XML文件和传输XML文件的时间。设计方案是C/S结构, 有上传和下载两大功能, 采用的是多线程服务。首先是移动客户端发送服务请求上传或下载到服务器端, 服务器端接收到请求后判断是哪种请求, 然后再启动相应的线程来处理不同事务。

同步过程中这几个模块之间是相互联系, 相互依靠的。上传数据时, 移动客户端首先生成XML文件, 然后再传送XML文件, 传送完毕后服务器端进行XML文件解析, 下载时过程类似, 服务器端生成XML文件, 然后传送给客户端, 传送完成后客户端进行解析文件。

(1) 生成XML文件

以移动客户端上传为例, 该功能模块是将移动设备上SQLServer CE数据库中需要上传的数据取出, 并且写入到XML文件。

(2) 传输XML文件

传输XML文件过程中所涉及到的Socket通信需要用到自定义协议, 因为只有这样才能够保证通信的安全和可靠。通信传输过程如下:

如果移动客户端请求是上传, 那么服务器端开启一线程负责上传工作。线程开启成功后服务器端会发送已经准备完毕的信号“Sready”给客户端, 客户端收到这个信号后向服务器端发送出包括文件名, 文件大小灯信息的信号, 然后开始正式传输XML文件。文件传输完毕后, 服务器端进行解析, 解析完成后, 发送“Success”给移动客户端通知已经成功。此时客户端提示用户上传数据成功, 双方停止通信。如果移动客户端请求是下载, 那么服务器端开启一线程负责下载工作。线程开启成功后服务器端会发送已经准备完毕的信号“Sready”给客户端, 客户端收到这个信号后发出“begin”给服务器端, 服务器端收到“begin”这个信号后开始传送SQL语句给客户端, 客户端每次收到SQL语句并成功执行后回复一“ack”信号, 当服务器端收到“ack”后才开始发送后面一条SQL语句。直到服务器端端发送一“end”信号通知客户端已经传输完毕, 此时双方停止通信, 下载完毕。

(3) 解析XML文件

以数据上传为例, 此功能模块是服务器端对已经接收完成的XML文件进行解析。将解析后得到的元素名和元素内容都存储到字符串中, 最后将字符串组合起来成为一个完整的SQL语句, 最终将解析后的结果通过执行SQL语句的形式存入本地数据库中。

结束语

本文通过简单分析移动数据库的数据同步技术, 在原有基础上提出一种基于Socket通信的传输XML文件的数据同步方案, 在一定程度上提高了系统的性能, 而实现数据库同步复制、保持多个数据副本的一致性的同步复制技术是移动数据库的核心技术, 在移动数据库系统中发挥着越来越大的作用[3]。

参考文献

[1]Duan Xiping, A New Transaction Processing Model Based onOptimistic Concurrency Control[C], ICITA国际会议, 2007, 1.[1]Duan Xiping, A New Transaction Processing Model Based onOptimistic Concurrency Control[C], ICITA国际会议, 2007, 1.

[2]杜娟, 熊一龙.移动数据库同步技术在征稽系统中的应用[J].电脑知识与技术, 2008, 4 (4) :778-780.[2]杜娟, 熊一龙.移动数据库同步技术在征稽系统中的应用[J].电脑知识与技术, 2008, 4 (4) :778-780.

[3]龚春红.基于复制的移动数据库同步研究[J].计算机与数字工程, 2006, 35:66-68.[3]龚春红.基于复制的移动数据库同步研究[J].计算机与数字工程, 2006, 35:66-68.

移动同步 篇2

关键词:地铁车辆段;移动式架车机;同步控制

1.概述

架车机是地铁车辆检修维护的重要设备之一,在铁路、城市轨道交通行业均有使用,其主要用途是架升车辆,便于检修人员进行转向架和车底某些部件的维护检查。目前,地铁行业使用的架车机大致有2.种类型,分别是地坑式和移动式,两种类型的架车机设计理念基本一致。架车机作为轨道车辆定临修、大修的一种辅助设备,在其使用时若发生安全事故,特别是轨道车辆在架车机上的翻倒,必定造成车辆的损坏或人员的伤亡。因此,架车机的设计,不但需满足轨道车辆在维修时的升降要求,同时应具备升降同步度控制、超限自动停机报警、紧急停机等安全防护功能。其中,实现同步度控制,应作为重中之重来考虑。

2.同步度控制的硬件设计

移动式架车机可实现单组同步精度±4mm精度,两组同步精度±6mm,三组以上同步精度±8mm以内,架车机架升高度在这范围内科通过架车机控制系统自动调节驾车机高度控制在一定范围内。同步精度硬件实现实现主要是通过主电路和PLC硬件2大部分实现的。

2.1.主电路设计

每台架车机升降驱动装置是一台4KW的三相异步电动机,电机动力通过三合一减速箱、星型联轴器驱动丝杆转动,传动丝杆的回转运动则通过丝母转换成上下直线运动,从而实现托架部分车车的起落功能。以单组架车机为例,单组4.台架车机上的三相电机M1~M4,均与控制正反转的主继电器触点KM15和KM16串联,实现同组内4台架车机同步上升和下降,KM11~KM14主触点仅控制各架车机上三相电机的启动和停止,这样设计优点在于:一是与每个电机配置独立正反转触点的设计相比,可大大减少主继电器的使用;二是在架车机架升高度出现偏差时,控制相应架车机停止和启动,实现架车机架升高度调整,在上升过程中相应架升高度最高架车机相应继电器受控制断开,相应架车机停止等待其他三个架车机,等待架车高度在一定范围内时再从新启动,4台架车机再次同步上升;如果在下降操作过程中,下降高度最低的架车机继电器断电,主触点断开,相应架车机停止,等待其他三个架车机下降高度,四台架车机高度在±4mm范围内,架车机继电器再次得电,同组4台架车机再次同步下降。

2.2.PLC的设计

YDJ16T型移动式架车机PLC选用西门在S300系列可编程控制器,硬件部分包括主CPU315-2DP主模块、IM365机架扩展接收模块(用于连接扩展机架中的3个高速计数器模块)、DI32×24V数字输入模块1-4、DO、32×24V/0.5A数字输出模块1-2,它们之间通过背板总线实现与CPU主模块通讯实现数据交换。扩展机架主要包括IM365扩展机架接收模块、高速计数器模块1-3,其中最左侧的IM365扩展机架发送模块通过西门子相应通讯协议实现与主站CPU模块右侧IM365扩展机架接收模块通讯和数据交换,将各架车机旋转编码器检测到架车机高度脉冲值传送到CPU模块。每个计数器模块包含8个计数检测通道,分别是计时器模块1的.A0-A7,检测1、2组8个驾车机旋转编码器正转(上升)脉冲信号,计数器模块2的A0-A7检测3-4组个架车机旋转编码器正传(上升)脉冲信号,计数器模块3的A0-A7检测5-6组8个架车机旋转编码器正传(上升)脉冲信号。

3.程序设计及分析

在生产轨道车辆时,由于装配的误差和车梁存在挠度等原因,车辆的各个架车点绝对高度必定有所差别。因此,同步度程序的设计,应考虑架车机上升或下降的相对高度,.而非距地面的绝对高。YDJD16T.型国产移动式架车机的同步度控制正是按上述理念进行设计的,其同步度控制程序大体可分为3.部分,分别为脉冲信号接收处理、数据分析判断与控制结果输出。

3.1.脉冲信号接收处理

各架车机脉冲信号是通过旋转编码器来计数和读取的,每个旋转编码器都包含一个正转脉冲信号A和一个反转脉冲信号B以及一个硬件门信号I(用于对计数值计入或不计入等控制,通过专用屏蔽电缆接入8通道高速计数器中,正转脉冲每检测一个脉冲值加1,反转脉冲值每检测一个脉冲值减1.计数器模块对编码器输入信号读取和写入是通过西门子高速计数器模块专用的驱动程序FC7来控制的,1-3号计数器模块对架车机脉冲值分别存储在DB1-3数据块中。由于BD1-3数据块中脉冲值时受硬件门信号(对应架车机托头传感器信号)控制,在架车过程中如果由于架车机不同步造成,架车机托头脱离车体,硬件门信号断开,相应架车机DB块中的架车机脉冲值就会清零。这样主CPU程序通过调用DB4共享数据块各架车机高度冒出值实现对各驾车机高度进行分析和判断。

3.2.整列6组架车机升降分析判断

整列架车机同步调整是调整各组架车机之间的高度差,保证高度最低和高度最高架车机之间高度差在规定范围内。程序首先在整列架车模式下调用FC66六组同时运行功能,FC66再调用FB11、FB12、FB13、FB14、FB15、FB16,实现1-6各组架车机同步运行,在同步运行过程中各组之间高度分析判断是通过调用FB6来实现分析和判断的,首先各架车机高度定义是以各组内4台架车机脉冲高度平均值作为架车机脉冲高度值,通过调用FC101功能来计算平均值,同单组分析和判断原理一样,调用FC95判断6组架车机脉冲高度最大值,调用FC96判断6组架车机脉冲高度最小值,调用FC90计算架车机组间高度最大差值,然后程序通过逻辑比较判断出是否需要调整。

3.3.控制结果输出

在6组群组架车程序功能FC66中程序经过对各组架车机高度分析、比较计算,判断出那组架车机需要停止等待调整,输出逻辑停止判断位M10.3-M11.0为1-6组联动时停止判断位。以联动第一组上升超调停止为例,当一组联动停止判断位M10.3为1时,在FB11一组运行程序块中,M10.3常闭触点为0,程序输出M128.0一组上升中继及M128.1一组下降中继输出均为0,M128.0常开触点为0,输出一组上升Q28.0为0,M128.1常开触点为0,输出一组下降Q28.1为0,.KA1上升中间继电器及KA2下降中间继电器均不得电,常开触点断开一组上升继电器KM15、下降继电器KM16不动作常开主触头断开,一组四台架车机通知停止,实现了在联动超调时对架车机组控制,将1-6组架车机高度差控制在8-10mm范围内;如果架车机组在群架或单组架车过程中出现单组超调、单台超调、联动或单动调整次数超过5次上升和下降中间寄存器M128.0和M128.1也输出为0,如果在上升过程汇总出现丝母磨损,输入点I19.2常闭触点丝母故障为0,输出一组上升M128.0为0,丝母故障架车机组停止,这些安全保护措施对架车机组起到了有效保护作用。

4.结束语

移动式架车机组通过旋转编码器进行上升、下降高度监控及计算,将其结果传送到PLC,通过PLC程序控制整组架车机上升、下降的同步度,实现了架车机组的同步运行,确保了移动式架车机组在使用过程中对的安全。(作者单位:西安市地下铁道有限责任公司)

參考文献

[1]西门子S7-300/400PLC控制系统设计与应用.

同步移动式定长切割装置的研制 篇3

从玻璃板输送线上进行定长切割玻璃,目前很多厂家仍沿用人工切割的方法,不仅劳动强度大,生产率低,且切割质量不易保证。某些厂家采用的玻璃定长切割装置,长度控制采用方式是用一滚轮压在运动的玻璃板上,滚轮后面的编码器根据其每转发出的脉冲数,转换成玻璃板走过的距离,当达到设定的脉冲数前,即发电信号给切割装置启动。这种装置的缺陷是:

1)由于是在运动中切割,切割方向和输送方向是不垂直的,要有附加的机械结构,且输送速度的波动直接影响到切割长度和垂直度;

2)提前设定的脉冲数难以确定。玻璃板表面的高低不平会影响到滚轮的转数,影响了编码器得到的脉冲数,从而直接影响到定长控制。

由于以上技术应用中存在的问题和不足之处,影响了切割装置的推广使用。在深入了解生产现场流水线布置形式及工艺流程的基础上,本人为生产厂家研制了一种能精确定长控制输送线上玻璃板长度的切割装置,长度误差可控制在1mm以内,且能达到切割自动控制,无人值守。

2 专机设计思路

1)模拟人工划玻璃的方式,应用切割装置和输送线同步移动的新颖形式,在同步移动过程中切割刀和玻璃板在输送方向无相对运动,以精确保证切割长度。

2)切割、抬刀、挡料、框架复位等全部动作均采用气动位置控制形式,安全可靠,易于实现动作自动化。

3)因玻璃板较宽,切割头的移动距离长,采用无杆气缸代替复杂的机械传动结构,也可使移动框架重量更轻,从而使玻璃板推动框架纵向移动时更灵活。

4)定长装置中的挡料板可调节,可预先调整好定长尺寸,以适应不同的玻璃切割长度。

3 专机设计结构

3.1 总体设计

专机为达到上述目的采用的技术方案是:

由二立柱和一横梁组成的龙门框架横跨玻璃输送线,其二立柱由滚动导轨及滚轮在固定座上导向,整个龙门框架可轻松纵向移动。

龙门框架上横梁正面安装一无杆气缸,在无杆气缸的滑块上联结切割头;在横梁中部上侧面安装玻璃板定长装置,其上的叉形挡料座可纵向挡住前进中的玻璃板。

同步移动切割完成后,龙门框架的复位由安装在固定座上的气缸控制,等待下一次切割。

该装置如图1和图2中A-A、B-B剖视图所示。由二立柱3和一横梁5组成的龙门框架横跨玻璃板输送线,其立柱一端底部固定在滚动导轨2的滑块上(采用双滑块),导轨则安装于输送线侧面的固定底座1上;立柱另一端底部则安装在滚轮架10上,滚轮架上安装有滚轮11及用于微调的偏心轴12,滚轮11沿淬硬的支承板13滚动。由于是滚动磨擦,整个龙门框架可轻松纵向移动。其中横梁5的高度可根据输送线的高低由调节装置4通过丝杆螺纹调节。

1—固定底座,2—直线滚动导轨,3—立柱,4—调节装置,5—横梁,6—无杆气,7—切割头,8—定长装置,9—定位气缸,10—滚轮架,11—滚轮,12—偏心轴,13—支承板,14—复位气缸,15—限位挡铁

横梁正面安装一无杆气缸6,在B-B剖视图中,在无杆气缸的滑块上联结玻璃切割头7(参看图1中件7)的基板7-1,其上安装有回转气缸7-4的支架、弹簧拉栓7-2、滚动导轨7-8,回转气缸上联接了偏心轮7-3,可通过轴承7-5推动安装于直线滚动导轨上的纵滑板7-7,在纵滑板上联接有刀体7-10(上面固连有玻璃切割刀片),切割力的调整由弹簧7-6通过弹簧拉栓7-2调节(转动时,里面螺杆可上、下移动控制弹簧伸长),同时刀体摆角的限位由刀体限位螺母7-9调节。

在横梁中部上侧面安装有玻璃板定长装置8,在A-A剖视图中,其上的叉形挡料座8-1和箱体8-3中的摆动轴8-2螺纹联接,可使刀片至挡料座的定长尺寸L可调。摆动轴由二向心轴承8-4支承,所受轴向力由推力轴承8-5承受。定长装置旁的定位气缸9可推动安装于直线滚动导轨8-8上的齿条8-7,通过摆动轴8-2上的齿轮8-6使叉形挡料座摆动一定角度,以完成挡料和放料动作。定长装置8和定位气缸9通过连接底板8-9和横梁联接。

7-1—基板,7-2—弹簧拉栓,7-3—偏心轮,7-4—回转气缸,7-5—轴承,7-6—弹簧,7-7—纵滑板,7-8—滚动导轨副,7-9—刀体限位螺母,7-10—刀体,8-1—叉形挡料座,8-2—摆动轴,8-3—箱体,8-4—向心轴承,8-5—推力轴承,8-6—齿轮,8-7—齿条,8-8—滚动导轨,8-9—连接底板

整机切割运动过程如下:当玻璃板输送至碰到叉形挡料座8-1时,龙门框架就在玻璃板推动下开始脱离限位挡铁15,沿直线滚动导轨2,和输送线同步向前纵向移动,这时限位挡铁上的接近开关发出电信号,使无杆气缸6动作,带动切割头7向右运动进行切割,至气缸行程终点时停止,切割头中的回转气缸7-4带动偏心轮7-3转90°,使切割刀架7-7在弹簧7-6的拉动下向上抬刀,此时切割头在无杆气缸带动下再快速向左返回至原位停止,回转气缸再反转90°使刀架向下复位待切割。在切割头返回移动的同时,定位气缸9推动齿条8-7通过齿轮8-6使叉形挡料座向上摆动45°,以让开已切下的玻璃板,并由下面的双速辊道快速带走(由双速电机控制);在叉形挡料座向上摆动到位的同时,联结在固定底座1上的二只复位气缸14伸出,推动立柱使框架退回到限位挡铁15位置,接着复位气缸返回;同时叉形挡料座在定位气缸9带动下复位至挡料位置,等待下一次切割。

以上无杆气缸、回转气缸、定位气缸及复位气缸均带磁性开关,运动到位时发出信号,由PLC进行程序控制,全自动运行。

3.2 关键部件设计

1)该装置设计的关键问题是同步移动机构,它要求在玻璃板的推动下和输送线同步运动。装置设计时,输送线上玻璃板运动产生的推力可用测力仪确定,要求产生的推力能推动龙门框架,这就要求控制龙门框架的总重量。实际中立柱和横梁采用了铝合金框架,安装在横梁上的档料座采用了铝合金焊接结构。固定在横梁上的铝合金缸体的无杆气缸,和以往采用的电机减速机传动结构相比,重量大为降低,而且集气缸、导轨、缓冲及发信装置于一体,机械结构更简洁,且在调试时可方便调整切割速度,使横梁移动更平稳,切割质量得到有效保证。

2)由于装置的二端固定底座须布置在输送线二侧而不能联成一体,为避免运动的干涉而产生大的阻滞力,立柱的一端采用二导轨块和滚动导轨相配,另一端应采用滚轮结构(内带滚动球轴承),且用偏心轴调节滚轮位置,或采用弹簧拉紧滚轮支架的形式,强制滚轮接触支承板,这样的形式运动持续性好,且可为装配调试带来很大方便。

3)框架移动用的滚动导轨,因一天二班运行,每分钟往复二次,应考虑导轨寿命。根据设计手册的计算公式,导轨采用滚珠循环形式时,应选择较大的基本额定动载荷Ca,使设计额定寿命达到3年以上。

4 结束语

1)该装置能在输送线上完成精确的定长切割,完全不受输送线的速度波动的影响,且长度精确可调;

2)采用全气动位置顺序控制形式,易于实现生产自动化;

3)由于切割后的板件需快速移走,所以要对原输送线作改造,即在输送线末端增加双速辊道,在切割后启动辊道快速回转使切下的玻璃板迅速移走,以利挡料装置的复位;

4)装置采用了滚动导轨及无杆气缸、回转气缸,使机械传动结构简化,位置控制更方便、精确,其设计原理对自动线上定长控制提供了新思路。

参考文献

[1]吴筠.气动工程手册[K].国防工业出版社,1995.

[2]卜炎.机械传动装置设计手册[K].北京:机械工业出版社,1998.

[3]吴宗泽.机械设计师手册[K].北京:机械工业出版社,2002.

移动同步 篇4

2008年9月22日, 美国运营商T-Mobile USA在纽约正式发布第一款Google手机T-Mobile G1, 是世界上第一部基于真正开发的和完整的移动软件Android操作系统的手机。Android是Google开发的基于Linux平台的开源手机操作系统, 它包括一个操作系统, 中间件以及大量的关键应用。Android平台有一个运行于Linux内核之上的Dalvik虚拟机。Dalvik虚拟机在保证API兼容的同时, 针对移动手机进行了大幅的优化, 占有资源少, 运行效率更高。应用开发者能够使用Java编程语言, 基于Android SDK平台开发大量的增值业务。

2 Android平台架构

Android平台自底向上可以分为4个层次:Linux内核层、Android运行环境和库、应用程序框架、应用程序[5]。如图1所示。

(1) Linux内核层:Android的核心系统服务依赖于Linux 2.6内核, 如安全性, 内存管理, 进程管理, 网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层。

(2) Android运行环境和库:Android包括了一个核心库, 该核心库提供了Java编程语言核心库的大多数功能。每一个Android应用程序都有它自己的进程中运行, 都拥有一个独立的Dalvik虚拟机实例。Dalvik虚拟机被设计成一个设备可以同时高效地运行多个虚拟系统。

Dalvik虚拟机执行 (.dex) 的Dalvik可执行文件, 该格式文件针对小内存使用做了优化。Dalvik虚拟机依赖于Linux内核的一些功能, 比如线程机制和底层内存管理机制。

(3) 应用程序框架:开发人员可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都看发布它的功能块并且任何其他的应用程序都可以使用其所发布的功能块 (遵循框架的安全性限制) 。同样, 该应用程序重用之间也使用户可以方便的替换程序组件。

(4) 应用程序:Android本身会附带一些核心应用程序包, 包括email客户端、SMS短消息、联系人管理程序等。所有的应用程序都使用Java语言编写。

3 Sync ML数据同步协议

3.1 Sync ML同步系统架构

Sync ML同步是基于客户端/服务器模式的, 包含有两个设备角色——客户端和同步服务器。Sync ML数据同步协议包括3个部分:Sync ML表示协议[1], Sync ML同步协议[2], Sync ML传输绑定方式[3]。其中Sync ML同步协议[2]主要描述了数据同步的会话过程, 会话过程中的数据流程, 同步双方的握手过程等;Sync ML表示协议主要定义了所有同步所支持的数据类型、命令格式, 使之能够在各种网络传输Sync ML消息格式;Sync ML传输绑定方式中定义了3种传输协议HTTP (超文本传输协议) , WSP (无线会话协议) , OBEX (对象交换协议) , 规定了如何传输和交换请求消息和响应消息。

由图2所示, Sync ML同步系统可以分为3层:最底层为传输协议层, 可以在跨网络、跨平台的网络环境中实现数据同步;中间层为Sync ML适配器及接口层, 是整个架构的核心层, 实现了Sync ML数据同步并向应用层提供统一开发的接口, 屏蔽了底层物理媒介和网络通讯协议的差异;最上层为同步应用层, 可以利用中间层提供的接口实现具体的同步功能 (如应用A和应用B) 。

3.2 Sync ML数据流程

一个完整的Sync ML数据同步的过程主要包括三个阶段:同步初始化阶段, 数据交换的阶段和数据映射的阶段[1]。如图3所示, Sync ML数据同步有六个数据包, 第一个和第二个数据包是同步客户端和服务器端之间交换各自初始化数据包, 数据包中包括各自的设备能力, 需要同步数据类型以及同步锚等, 用于协商本次同步的类型;第三个和第四个数据包是需要同步的数据项的相互交换;第五数据包是同步服务器通过客户端发回的数据更新状态包, 对本次同步了的数据项更新映射表信息, 第六包数据是客户端发回的映射确认数据包[2]。

4 Android移动终端实现联系人数据同步

4.1 SQLite数据库

Android平台使用SQLite数据库来存储数据。SQLite是一款用C语言编写的嵌入式数据库引擎, 并且是开源和免费的轻型数据库。Android系统的很多用户数据, 如联系人, 通话记录, 短信息等, 都存储在SQLite数据库中。联系人数据库在Android平台中存储的绝对路径为/data/data/com.android.providers.contact/databases中。

4.2 v Card电子商务卡片

v Card也称为电子商务卡片 (Electronic Business Card) , 主要用于记录通讯录中联系人信息等, 它实现不同厂商提供的PDA, 手机, PC等设备之间的名片互通。v Card标准定义了名片在传递时通信的双方都必须遵循的格式标准, 这种格式适合作为各种应用之间交换的格式, 并且与传送的方法和方式无关。每个v Card对象由行BEGIN:VCARD开始, 最后以END:VCARD结束, 中间可以有任意多个v Card字段行。每一字段行包括三个部分:字段名 (Property Name) , 字段参数 (Property Param) , 字段值 (Property Value) , 并且后面都有“rn”回车换行。格式如下[4]:

Property Name[':'Property Param]':'Property Value

4.3 联系人数据同步

本同步系统采用Funambol开源项目提供的同步服务器, 客户端软件开发的时候也使用了其提供的底层开发包。

4.3.1 同步分层模型

系统采用分层设计, 层与层直接没有关联, 通过每个层提供的接口传输数据信息, 以保持模块直接的高内聚和低耦合。如图4所示, 分为以下几个模块:

(1) 同步引擎层:实现数据同步过程中数据同步策略的具体实现, 用户可以根据实际的情况对同步引擎进行调整和扩展;本层包括了两个部分:客户端发送Sync ML消息构建和接收到应答消息处理。

(2) 同步数据源:实现对同步数据源的实际操作, 以及提供同步客户端和同步服务器之间的交互接口。

(3) 传输层:传输层主要责任是传输Sync ML数据包。由于本模块可以由一系列模块组成, 所以采用了工厂模式的设计方式, 用以解决采用不同的传输协议时数据处理。本同步系统中采用的是HTTP1.1协议。[3]

(4) Sync ML模块:客户端鉴权加密算法, 如MD5, Base64等, 以及鉴权算法的编解码和解码[1]。

(5) 协议层模块:Sync ML协议栈, 包含了Sync ML同步协议的具体实现。

(6) 联系人同步层:从移动设备中的联系人数据库中读写包括增加, 删除, 更新的联系人信息, 使之与服务器端的数据库保持同步。此外, 还需要维护本地数据信息的变改数据库, 以及按照v Card2.0协议对联系人数据信息进行封装和解析。

(7) 用户界面:主要负责和用户之间的交互, 例如获得配置信息, 以及提示给用户同步的进度[6]。

4.3.2 核心代码设计

(1) 联系人数据项 (Contact类) 的设计

Contact类设计有两个个构造函数, 主要作用是为了在不同的情况下时用于构造Contact对象。以下是Contact类的两个构造函数:如果是处理从服务器发回客户端的同步数据项中v Card的解析, 调用构造函数1;如果是处理从客户端发给服务器端的数据同步项中v Card的封装, 调用构造函数2。

以上每行的字段分别表示的是:v Card版本, 姓名, Email地址, 工作Email地址, 住宅电话, 工作电话, 移动电话, 公司, 联系人标题, 备注, 分别对应了Contact类中定义的成员变量。

本同步系统中联系人数据项的v Card格式如下:

(2) 同步联系人数据项

在双向快同步中, 需要查找自上次同步后修改的联系人数据项, 因此, 我们首先要判断那些数据项自上次同步以后作了修改操作, 这就要求我们的移动终端要能够检测出这些变更数据项。实现的方式是首先将联系人的数据写入一个临时数据库, 同步时, 通过比较联系人数据库中的ID项与临时数据库中的ID值就可以查询出联系人数据项是否进行了修改, 以及进行了何种类型的修改。特别指出的是为了方便管理联系人同步项, 在设计这个临时数据库时, 采用了哈希表的映射机制, 利用Hash Table的键值对应的方式来标识每一个同步数据项, 且在这个哈希表中存储的是客户端联系人数据项的变更信息, 实现这一功能的伪代码[6]如下:

5 结语

本论文中只是涉及到了基于H T T P传输协议的Android平台的联系人数据同步, 由于传输层代码采用了工厂模式的设计方法, 所以可以扩展到其他的传输协议, 同步数据源亦利用分层设计的优势, 扩展到日程同步, 邮箱同步等等。Android平台具有完整的架构体系, 并且使用大量开源类库, 加上Google同样提供了与App Store[5]类似的模式服务于开发人员, 那就是Android Market, 因此, 基于Android平台的应用程序将会越来越丰富, 亦可以给开发商代来更多的商业价值。

参考文献

[1] SyncML Initiative.SyncML Representation protocol version1.1.1, 2002-10-29

[2] SyncML Initiative.SyncML synchronization protocol version1.1.1, 2002-10-29

[3] SyncML Initiative.SyncML HTTP Binding version 1.1.1, 2002-10-29

[4] vCard–The electronic business card–version 2.1.

[5] E2ECloud工作室.深入浅出Google Android.北京:人民邮电出版社, 2009

移动同步 篇5

1 MoniLink同步技术和同步系统

1.1 MobiLink技术

MobiLink是一种基于会话的技术,用来在中心统一数据库和大量远程数据库间进行双向数据复制。它支持多种统一数据库服务器,其中包括非Sybase数据库。远程站点的管理和资源要求已降到了最低限度,因此,它非常适于各种移动数据库。每个同步会话结束后,这些数据库就会保持一致[1]。

MobiLink用于在中心数据库和大量远程数据库之间进行复制。MobiLink可以在一个统一数据库和一组远程数据库之间提供数据复制。统一数据库包含要复制的所有数据,远程数据库是统一数据库的副本,它可以与统一数据库位于相同的站点,也可以位于物理上的远程站点。

1.2 同步技术

同步是指在多个结点上完成数据的备份,包括服务器的中心数据库的复制以及在移动计算机中保存数据库的复制,利用同步过程来消除移动设备上的数据与企业中心数据库中的数据会有暂时的数据不一致的技术。其目的是保持数据库系统各结点中数据状态的一致性。

目前移动数据库同步复制技术主要包括数据级同步和事务级同步两种类型:数据级同步技术[2]以元组作为同步处理的基本单位,其实现简单、同步效率较高,但由于在同步处理过程中没有考虑事务的概念,因此不能保证事务的原子性和数据库的一致性;事务级同步技术[3]以事务作为同步处理的基本单位,其同步机制保证了事务的原子性,数据库一致性则依赖于同步过程中所采用的冲突检测和消解算法,因此事务级同步是一种理想的同步处理方式,已成为移动数据库研究领域的一个重要研究方向[4]。

1.3 同步系统的组成部分

图1显示了同步系统的主要组成部分。

统一数据库:此数据库包括同步系统中所有信息的主副本。

统一数据库服务器:管理统一数据库的服务器或DBMS。此服务器可以是Sybase产品,如Adaptive Server Anywhere或Adaptive Server Enterprise,也可以是其他公司生产的受支持系统。

ODBC连接:MobiLink同步服务器和统一数据库之间的所有通信都通过一个ODBC连接进行。ODBC使同步服务器可以使用多种统一数据库系统。

MobiLink同步服务器:此服务器管理同步过程并提供所有它MobiLink客户端之间的接口,以及它与统一数据库服务器之间的接口。

网络:MobiLink同步服务器dbmlsrv8与MobiLink客户端实用程序dbmlsync之间的连接,可以使用多种协议。

MobiLink客户端:支持两种类型的客户端:UltraLite数据库与Adaptive Server Anywhere数据库。在一个MobiLink安装中可以同时使用上述两种或其中一种客户端。

2 基于MobiLink移动数据库的同步过程

同步是MobiLink移动数据库的客户端和同步服务器之间的双向数据交换过程。一般由移动数据库的客户端开始进行同步过程,它开始与MobiLink同步服务器建立连接。MobiLink的同步主要分为三个阶段,如图2。

上载流:MobiLink客户端自动跟踪记录在上一次成功同步之后远程移动数据数据库中插入、更新和删除了哪些行。连接一旦建立,MobiLink客户端将一个列出所有这些更改的列表上载到同步服务器。

上载流由远程移动数据库中被修改的各行的新行值和旧行值组成。如果某行被更新或删除,旧行值是指上次成功同步后时的那些值。如果某一行被插入或更新,新行值是指当前的行值。即使在到达当前状态之前,行已经更改过数次,也不会发送任何中间值。

MobiLink同步服务器接收上载流并将更改应用于统一数据库中。所有的更改一般都在一次事务中完成应用。此后,MobiLink同步服务器将提交该事务。

下载流:MobiLink同步服务器将使用您创建的同步逻辑编译在MobiLink客户端插入、更新或删除的一组行。它将这些行下载到MobiLink客户端。为了对该列表进行编译,MobiLink同步服务器将在统一数据库中打开一个新事务。

MobiLink客户端接收下载流。当下载流到达时,MobiLink客户端认为统一数据库已成功应用所有上载的更改,并将确保这些更改不会再发送到统一数据库中。

接下来,MobiLink客户端将自动对下载流进行处理,删除旧行、插入新行以及更新已更改的行。所有的更改将在远程数据库中的一个事务中完成应用。此后,MobiLink同步服务器将提交该事务。

可选的下载确认:MobiLink客户端可以将一个简短确认消息发送给MobiLink同步服务器。

MobiLink同步服务器接收到确认消息。该消息让同步服务器知道客户端已经接收并处理了所有下载的更改。作为响应,同步服务器将提交上一步的下载事务。

但是在同步过程中,由于种种原因,同步也会失败,那么对于同步过程中的失败又如何处理?

(1)上载中的故障:如果在创建或应用上载流时出现故障,远程数据库将保持与同步开始时完全相同的状态。在服务器端,任何已应用的上载流部分将被回退。

(2)上载和下载之间的故障:如果故障在上载流完成之后、在MobiLink客户端接收到下载流之前发生,客户端将无法确定上载更改是否成功地应用到统一数据库中。上载流可能已经全部应用并提交,故障也可能出现在服务器应用整个上载流之前。此时MobiLink同步服务器将自动回退统一数据库中的未完成事务。

MobiLink客户端维护所有上载更改的记录,以备这些更改必须再次发送。在下一次客户端同步时,它在创建新的上载流之前请求上一个上载流的状态。如果没有提交上一个上载流,新的上载流将包含自上一个上载流之后发生的所有更改。

(3)下载中的故障:如果故障发生于正在应用下载流的远程设备,所有已应用的下载部分都将回退,而远程数据库将与下载前保持相同的状态。MobiLink同步服务器自动回退统一数据库中的下载事务。

3 MobiLink同步技术及冲突处理问题

3.1 基于时间戳的同步

时间戳方法是可以进行高效的同步的最实用的通用技术。此项技术涉及跟踪每个用户上次进行同步的时间,并使用此信息控制下载到每个远程数据库的行。

MobiLink保留了一个用以说明每个MobiLink用户上一次下载数据的时间的时间戳值。该值被称为上次下载的时间戳。上次下载的时间戳将作为一个参数被提供给许多事件,该时间戳还可以在同步脚本中使用。

3.2 快照同步

对于上面的基于时间戳的同步适合于大多数同步。但是,有些时候可能需要更新数据快照。表的快照同步是指完全下载表中的所有相关行,而不考虑这些行以前是否已经下载。这是最简单的同步方法,但会引起大量的不必要的数据集交换,从而导致性能下降。

快照同步最适合用于同时具有以下两种特征的表。

1)行数相对较少:当表中的行数比较少时,下载所有行所产生的开销也会相对较小。

2)行信息经常更改:当表中的大多数行频繁进行更改时,采用显式排除上次同步后未发生更改的行的方法就没有太大的必要了。

3.3 冲突处理问题

结合移动计算的特点,一个理想的移动数据库系统要做到有效地支持移动计算环境中的各种数据应用,满足人们能在任意时刻、任意地点访问任意数据的需求,应当实现以下4个目标SMSC:1)可用性与可伸缩性(scalability)、2)移动性(mobility)、3)可串行性(serialbility)、4)收敛性(convergence)。这四个目标决定了理想的移动数据库复制应该是一种异步的多主副本复制,即系统允许移动主机在断连的情况下存取本地副本并提交事务操作,从而造成系统短暂的不一致;重新连接时进行数据同步处理,使系统重新收敛于一致性的状态.在此过程中,必须正确地检测并有效地消除冲突.冲突处理是移动复制机制需要解决的关键问题。

对于在MobiLink同步中,冲突的检测有两种方法,一是使用基于语句的上载进行冲突检测;二是使用基于游标的上载进行冲突检测。

每当在远程数据库中更新行时,系统将保留最近一次同步时该行包含的值的副本。在进行下一次同步时,远程数据库中将不仅包含现在的值,而且还包含上次同步时相应值的记录。

在客户端向MobiLink同步服务器发送一个更新后的行时,发送的数据中不仅包含该行的新值,而且还将包含原值的副本。

MobiLink同步服务器检测冲突的过程取决于您使用的是基于语句的上载还是基于游标的上载。在大多数情况下,建议使用基于语句的上载。

在MobiLink同步中,对冲突处理,常使用强制冲突解决,强制冲突解决是一种特殊的技术,它强制将每个上载的行都作为冲突对待。强制冲突解决的实施方式取决于您使用的是基于语句的上载还是基于游标的上载[6]。

4 结束语

MobiLink同步技术在移动数据库技术实现架构中扮演着非常重要的角色,尤其是在使用运行在移动设备上的移动数据库与统一数据库进行数据同步时,MobiLink在两者之间起到了不可替代的桥梁作用,在同步处理过程中,能够针对不同的故障做出相应的处理方法,可以说是MobiLink使统一数据库与远程数据库能够进行通信并实现数据同步成为现实。

参考文献

[1]林胜利,路宗强,吴晓华.C#与sybase数据库移动应用开发指南[M].中国铁道出版社,2007.

[2]靖树峰,钟锡昌,张倪.一种移动数据库系统的同步方案设计[J].计算机应用研究,2006(6):50253.

[3]丁治明,王珊,孟小峰.移动复制数据库系统冲突检测及消解策略[J].计算机学报,2002,25(3):2972305.

[4]金敏,龚春红,周翔,戴瑜兴移动同步复制的冲突预处理与检测消解策略[J].湖南师范大学:自然科学学报,2007,30(4).

移动同步 篇6

智能客户端技术同时具有C/S与B/S架构的优点, 并具有传统客户端技术所不具备的一些特点, 如:传统的客户端技术过度依赖网络连接, 一旦网络中断就不能保证程序的正常运行, 而智能客户端系统可以通过在客户端的缓存数据有效地解决这一问题, 同时改善了应用程序的性能和可用性, 保证应用程序的离线操作。然而, 当客户端由离线状态切换至在线状态时, 客户端与服务器之间的数据一致性成了亟待解决的问题。

许多理论研究者和系统开发人员均在探索数据同步策略。本文针对食品生产安全动态监管系统中移动智能客户端的特点, 根据智能客户端系统偶尔连接的工作场景和巡检人员在时间、空间上的分散性, 提出一种基于合并复制的数据同步策略, 并应用到基于移动PDA的食品生产安全动态监管系统中, 解决了数据同步时导致数据冲突, 产生数据不一致的问题。

2 相关技术

2.1 SQL Server CE数据库

SQL Server CE是为嵌入式系统和智能设备提供本地数据存储的引擎。与SQL Server其它版本相比, 它不是一个服务, 而是一种轻量级的, 依附在应用程序进程内的数据库引擎。因此, 它的运行不需要创建一个单独的服务进程。SQL Server CE的具体特点包括:①结构简单:安装完毕之后, 除了一些资源和文档之外, 仅包括一个OLEDB的Provider以及一套.NET的访问类库。②空间占用小:大概10个支持文件, 总容量不到2M, 占空间非常小, 可以集成到应用程序的安装包中。③部署简单:可以将SQL Server CE数据库文件直接复制到目标计算机上或移动设备上, 即可使用。

2.2 SQL Server CE提供的数据同步方法

2.2.1 RDA (Remote Data Access, 远程数据访问)

RDA是由客户端发起, 服务器端只是响应客户端的请求。RDA中使用Pull方法, 将整个结果集从服务器端拉到SQL Server CE 数据库中, 以便用服务器的当前数据对表进行初始化;使用Push方法将更改 (插入、更新和删除) 推回服务器。RDA 没有任何并发冲突检测或解决机制。因此, 如果多个客户端可以同时修改同一记录, 则最后一个客户端写入记录的更改可以覆盖另一个客户端的最近更改。

2.2.2 Replication (合并复制)

合并复制允许同时在客户端和服务器数据库上自主而独立地更新记录。SQL Server CE 作为客户端订阅者不但参与合并复制, 而且订阅由 SQL Server 2000 或 SQL Server 2005 公开的合并复制发布。由于合并复制支持服务器端的冲突检测和解决机制, 因此它可以轻松地响应很多客户端。合并复制的设置稍显复杂, 它要求服务器端具有特定的数据库设计功能和配置。

3 合并复制策略在食品生产安全动态监管系统客户端中的应用研究

由于食品生产安全动态监管系统巡检终端部署在移动设备上, 通过GPRS进行数据传输, 网络资源比较珍贵, 且多个巡检员同时更新同一用户数据可能会发生冲突, 因此, 本文选择合并复制的数据同步方法。移动设备客户端程序可以把检查项目、任务信息等数据下载到本地SQL Server CE数据库中, 并且把对企业的生产状况及对食品的检查信息上传到服务器上, 若同步过程中发生冲突都可通过合并复制加以有效解决。

3.1 基于合并复制策略的数据同步解决方案

食品生产安全动态监管系统的合并复制解决方案如图1所示, 需要客户端与服务器端共同协作以解决数据冲突。

3.1.1 客户端

SQL Server CE数据库: SQL Server CE数据库主要提供离线数据支持, 考虑到PDA的内存容量及数据处理能力还有部分信息的敏感性, 不能把服务器上的数据完全复制下来, 经过详细分析, 存放的数据表包括企业基本信息、巡查项目信息、巡查计划、专家支持库。

SQL Server CE 数据库引擎:SQL Server CE数据库引擎用来管理移动设备上的本地数据库即SQL Server CE数据库。SQL Server CE数据库引擎通过维护对数据库操作的每条记录的更改跟踪信息, 跟踪所有插入、删除或更新的SQL Server CE数据库记录。

SQL Server CE 客户端代理:SQL Server CE 客户端代理是移动设备上主要的SQL Server CE 复制组件。应用程序可调用SQL Server CE 客户端代理实现的 SQL Server CE 复制对象接口, 通过编程方式控制数据复制。

应用程序:调用客户端代理提供的数据操作接口, 实现对SQL Server CE数据库的操作及数据同步。应用程序首先获得源自用户输入的表单、GPS定位信息、摄像头拍摄的图片等数据, 然后将获得的数据保存在SQL Server CE数据库中, 并推送到服务器端的SQL Server数据库中, 同时将SQL Server更新的数据保存到客户端SQL Server CE数据库中。

3.1.2 服务器端

SQL Server CE 服务器代理:SQL Server CE 服务器代理是一个组件, 负责管理服务器端 SQL Server 和客户端 SQL Server CE 之间的通信。SQL Server CE 服务器代理处理从 SQL Server CE 客户端代理发出的所有 HTTP 请求, 它位于运行 Microsoft Internet 信息服务 (IIS) 的服务器上。

SQL Server 协调器和 SQL Server CE 复制提供程序: SQL Server 协调器和 SQL Server CE 复制提供程序与SQL Server CE 服务器代理一样, 都位于运行 IIS 的服务器上。SQL Server 协调器在执行同步时调用 SQL Server CE 复制提供程序并检测、解决冲突。

3.2 工作原理及步骤

3.2.1 发布数据

首先在服务器上发布需要发布的数据。发布针对不同用户和用户组进行自定义, 对于不同的巡检员, 由于他们的巡检对象和巡检任务是不同的, 所以需要为他们专门筛选数据。

3.2.2 订阅发布

在服务器端发布完成后, 在PDA设备上借助编程方式调用 SQL Server CE Replication 对象或 SqlCeReplication 类公开的方法, 应用程序即可订阅此发布。订阅完成后, 客户端数据库会保存来自服务器端的数据副本。

3.2.3 更新数据

在用户更改客户端数据后或订阅完成后, 应用程序会自动更新本地数据库。

3.2.4 同步数据

当网络可用时, 客户端应用程序启动同步, 调用由 Replication 对象或 SqlCeReplication 类公开的同步方法, 同步在本地数据库上所做的更改与在服务器上所做的更改。同步过程分为如下4个步骤。

(1) 创建输入消息文件。

SQL Server CE客户端代理从 SQL Server CE数据库中提取所有插入、删除和更新的记录, 然后通过 HTTP 将它们传送到 SQL Server CE 服务器代理。SQL Server CE服务器代理创建输入消息文件, 并将接收到的修改记录写入到该文件中。

(2) 服务器端应用更改。

SQL Server CE服务器代理在所有修改记录都被写入到输入消息文件后启动 SQL Server 协调器, 协调器加载 SQL Server CE复制提供程序, 该提供程序读取输入消息文件并通知协调器SQL Server CE数据库所做的更改, 这些更改必须应用到服务器上的数据库中。在处理过程中, SQL Server 协调器会检测并解决冲突。

(3) 创建输出消息文件。

SQL Server 协调器通知 SQL Server CE 复制提供程序在服务器数据库上所做的更改, 这些更改必须应用到客户端的数据库中。SQL Server CE 复制提供程序负责将这些更改写入到运行 IIS 的服务器上的输出消息文件中。

(4) 客户端应用更改。

首先SQL Server CE 服务器代理在SQL Server 协调器进程完成后, 找到由 SQL Server CE 复制提供程序创建的输出消息文件, 然后读取此文件并将其传输到客户端设备上的 SQL Server CE客户端代理。最后SQL Server CE 客户端代理将输出消息文件中的更改应用到 SQL Server CE数据库。

3.3 冲突的处理策略

根据实际应用, 本文采取的冲突处理方法是:对于提交到服务器上的数据, 当用户进行更新操作时采用时间戳方法, 最新的数据覆盖原来的数据。当发生多个用户同时对同一数据进行修改时, 采用数据库锁的机制, 同一时间只允许一个用户对某个数据进行修改, 避免了数据的不一致性。对于从服务器下载的数据始终覆盖本地数据。

当多个巡检员同时对同一数据进行操作时, 在同步的过程中可能会导致冲突的发生。而SQL Server CE可检测到客户端冲突, 但不能解决冲突, 所以由服务器数据处理中心统一进行数据冲突的检测与解决。

4 结束语

本文采用基于SQL Server的合并复制数据同步方法解决了食品生产安全动态监管系统中的数据同步问题, SQL Server提供了许多数据操作的接口, 降低了编码解决数据冲突的难度。SQL Server CE功能齐全, 易于部署, 充分体现了移动智能客户端的优点。

总之, 基于SQL Server合并复制的数据同步策略在移动智能客户端系统中具有实际的应用意义。

摘要:针对智能客户端系统偶尔连接的工作模式, 以及移动智能客户端内存小、处理能力有限等特点, 介绍了一种离线与在线切换过程中, 基于SQL Server的合并复制的数据同步策略及其在食品安全动态监管中的应用。

关键词:智能客户端,合并复制,数据同步

参考文献

[1]索红光, 王雷全.智能客户端系统中数据同步策略的研究与实现[J].计算机工程与设计, 2007 (10) .

[2]谢煜锋.电力现场检测数据采集和移动数据同步技术[D].杭州:浙江大学, 2010.

[3]闵媛.移动环境下数据同步机制的研究与应用[D].武汉:武汉理工大学, 2008.

[4]黄蓝会, 周斌.个人信息空间管理系统中关于数据同步的研究[J].计算机工程与设计, 2010 (31) .

[5]姚岚.基于Web服务的智能客户端数据同步[D].上海:复旦大学, 2008.

[6]陈玉林.移动设备数据同步的研究与实现[D].北京:国防科学技术大学研究生院, 2005.

[7]刘彬.Smart Client技术的研究及其在手持移动设备中的应用[D].上海:华东师范大学, 2005.

[8]王兴兆.基于SyncML的移动设备数据同步技术的研究[D].大庆:大庆石油学院, 2007.

移动同步 篇7

移动通信技术的发展离不开同步技术的支持,移动通信系统正常工作的前提是同步系统正常,同步质量的好坏对移动通信系统的性能指标起作至关重要的作用。3GPP25.402定义了同步要求,其中对采用时分双工(TDD)的系统特别要求严格基站间时间同步,采用频分双工(FDD)的系统需要频率同步。【2】TD-SCDMA,Wi MAX,TDD LTE三种制式都采用TDD方式,为了避免收发干扰,基站必须严格时间同步;CDMA制式虽然采用FDD方式,但CDMA的长码短码都是m序列,不同的m序列通过不同的相位来区别,所以各基站必须严格实现时间同步。【5】

目前,有高精度时间同步需求的移动通信系统主要利用卫星导航与定位系统的授时功能实现同步。目前全球主要有6大卫星导航定位系统,分别为北斗卫星导航系统、GPS系统、GLONASS系统、Galileo卫星导航系统、日本准天顶卫星导航系统、印度区域卫星导航系统等。在移动通信相关工作开展过程中,有可能只需要GPS系统提供的授时信号,也有可能同时需要GPS系统、北斗卫星导航系统、GLONASS等系统提供的信号。【4】

移动通信基站局点需要引入卫星同步信号,只有在基站局点能够接收到良好的卫星信号时,相关工作才能正常开展。但是,传统卫星天线对安装环境要求严格,需要安装在较开阔的位置,需要保证周围无较大的遮挡物,对天线的遮挡不应超过30度,为避免反射波的影响,天线需尽可能远离周围尺寸大于20 cm的金属物2 m以上,这些原因导致处于室内的基站局点难以接收卫星信号;同时,传统卫星同步系统采用射频电缆线进行信号传输,射频电缆线径较粗且韧性很差、不易弯曲,如果为每个基站布设线缆,将导致施工成本高、资源耗费大,同时导致工作开展不灵活、工作环境不美观。【3】

为了解决上述问题,实现处于室内的移动通信基站局点能够接收到良好的卫星同步信号,需要寻求可行的方法,为移动通信基站局点科学、合理地引入卫星信号,以满足工作开展过程中能够随时、随地、随意使用卫星信号的需求。

2 移动通信基站局点引入卫星同步信号的方案分析

2.1 可行性分析及方法描述

为了实现处于室内的移动通信基站局点能够接收到良好的卫星信号,需要寻求可行的方法,为局点科学、合理地引入卫星信号,以满足工作开展过程中能够随时、随地、随意使用卫星信号的需求。

为了实现该目标,需要从以下3个方面进行思考和准备:首先,需要构建一个统一的卫星信号覆盖系统,使移动通信局点能够通过该系统被卫星信号全面覆盖;其次,需要合理选取卫星信号引入点、合理规划机房内卫星信号接入点布局、合理规划施工线路;第三、需要考虑如何解决安全和信号衰减等问题。

在明确了实验室卫星信号覆盖系统的构建思路之后,接下来,需要明确构建该系统需要使用的器件,因为需要接收、转发、放大、发射卫星信号,需要考虑安全措施,所以,搭建卫星信号覆盖系统需要使用的主要器件有:接收天线、发射天线、信号转发器、信号放大器、功分器、避雷器等,它们的功能分别如表1所示。

在需求、思路、方案明确之后,就可以以此为依据进行系统设计、施工了。

2.2 实例分析说明

以某集团移动通信基站局点的GPS系统建设为例,说明如何为一个室内大型基站局点构建卫星信号覆盖系统,引入卫星同步信号。【1】

首先,由于该局点分布在A层、B层两个不同楼层,且楼层位置较低,受到高楼遮挡影响,把基站天线置于窗边、或引到阳台都难以接收到良好的卫星信号,所以,需要合理选取卫星信号引入点,通过卫星信号覆盖系统将卫星信号引入室内区域。经勘测环境,依据前面所述卫星天线安装环境要求,最终将卫星信号引入点选址在大楼楼顶,将GPS接收天线选址、安装在高楼楼顶,从楼顶将卫星信号引入A层机房的信号转发器,再从信号转发器将卫星信号引入A层、B层各机房。系统连接示意图如下图1所示。

其次,根据项目开展、设备配置需求,合理规划机房内信号传送方式和连接点布局。在该基站局点,从信号转发器输出端将信号连接、传送到每一个机房之后,采用了如下方式进行信号分配:

接入一分四功分器、然后从一分四功分器接入一分八功分器,再从一分八功分器将信号接入发射天线或室内基站,基站既可以通过有线线缆连接方式获取卫星信号,也可以利用安装在室内的发射天线通过无线方式获取卫星信号,信号连接及分配方式如图2所示。

也可以采用先接入一分二功分器、然后从一分二功分器接入一分四功分器、再从一分四功分器接入一分八功分器,再从一分八功分器将信号接入室内发射天线或基站等连接、分配方式。

第三、处理信号衰减问题、安全问题,解决系统功能升级等需求。从大楼楼顶到A层机房经过了10余层楼,加上横向的线缆铺设,信号损耗较大,所以,需要在信号转发器的输入端、输出端设置信号放大器,以确保机房引入的信号强度能够满足项目需求;同时,必须合理考虑系统的安全问题,该局点的GPS系统专门安装了避雷器以确保系统安全(参见图1);该局点第一阶段的卫星信号引入系统只考虑了对GPS信号的引入,后续工作提出了北斗信号需求,所以,在该局点卫星信号覆盖系统二期扩容项目中,从设备和组网等方面进行了改造,使该系统能够同时为局点引入GPS信号和北斗信号。如果工作开展还同时需要GLONASS、Galileo卫星导航系统等信号,也可以在系统建设或扩容时统一考虑。

表2为该局点卫星信号引入系统建设的基本设备明细表(设备参数根据系统设计需求不同存在差异):

因为经过了充分的需求分析、细致的环境勘测、详细的方案探讨、认真且高水平的设计和施工,该移动通信基站局点的卫星信号覆盖系统建设非常成功,在该局点工作最繁忙的阶段以及后期工作中,卫星信号覆盖系统都顺利支撑了相关工作开展。

2.3 拓展思路分析

在前面,我们探讨了如何为移动通信基站局点建设独立的卫星信号引入系统,通过建设独立的卫星信号覆盖系统,可成功解决处于室内的移动通信基站局点难以接收卫星信号的问题。但是,单独建设卫星信号室内覆盖系统需要一定的成本、资源、时间。所以,可以寻求更省时、省力、省钱的方法,更有创造性地为移动通信基站局点引入卫星信号。

现有的移动通信室内分布系统是可以利用的良好资源:采用TDD LTE、TD-SCDMA、CDMA等移动通信技术标准的室内分布系统需要使用卫星同步信号,已有布设好的、性能优良的卫星信号接收天线,已有成熟的室内分布网络,但是,移动通信室内分布系统引入的卫星信号目前只用于辅助移动信号同步,可以利用现有条件,采用创新方案,将卫星信号和移动信号同时覆盖到处于室内的移动通信基站局点。

可以采用如下创新方案,使卫星信号与移动信号同时覆盖室内:首先,将原有移动通信室内分布系统的卫星接收天线接收的卫星信号分为两路,一路卫星信号仍然用作原有室分系统信源的同步信号,另一路卫星信号用于传送到合路器进行卫星信号合路;第二,将用于传统室内分布系统的合路器改造为有卫星信号合路输入端口、可合路卫星频段的合路器;第三,在室分系统的发射天线端,采用支持所需卫星频段的室内多频发射天线,使卫星信号和移动信号可以同时覆盖室内。

为实现该创新方案,需对传统移动通信室内分布系统的合路器进行改造,采用新型合路器,新型合路器在支持原有移动信号合路的基础上,增设卫星信号合路输入端口,支持所需卫星频段合路,使卫星信号能够合路到室分系统中;同时,需采用多频发射天线,多频发射天线在支持移动信号覆盖的同时,可支持所需卫星频段,支持在室内同时覆盖卫星信号、移动信号。

改造方案可利用原有移动通信室内分布系统的网络和资源,为移动通信基站局点引入移动信号的同时也引入卫星信号,采用该方案,不但省时、省力、省成本,而且可借助室分系统的广泛部署得到广泛应用。

3 结语

通过建设移动通信基站局点卫星信号覆盖系统,可成功解决位于室内的移动通信局点难以接收卫星信号的问题,使工作人员在室内即可完成以前需在室外完成的工作,为项目开展提供良好的工作环境。该系统建设方法可以被推广到科研教育、业务演示、生产制造、交通运输等室内场所,为我们的工作、生活提供更多的便捷和更高的效率。同时,可以对移动通信基站局点卫星信号覆盖系统的建设思路、建设方法进行拓展提升,为我们的工作、生活带来更多、更好的创新和改变。

参考文献

[1]中国电信移动通信实验室GPS分配系统实验方案

[2]张阳.TD-SCDMA网络同步问题浅析.信息通信技术,2011,4:67-72

[3]移动通信一体化卫星授时系统解决方案.http://www.afzhan.com/tech_news/detail/34113.html

[4]全球六大GNSS介绍.http://www.wendangdaquan.com/Wdshow.asp?id=72d498fbf90f76c661371a0c

移动同步 篇8

本机床采用西门子840D系统。系统提供了一个龙门架轴的选项功能。通常是用在大型龙门铣床的龙门移动上的。两个轴有各自独立的位置测量系统。运动时是以位置跟随的形式控制的。为了消除由于机械传动部分造成的位置偏差, 系统提供了位置补偿功能, 用于运动开始时的间隙补偿。

由于两个立柱的传动链的间隙不一致, 在移动之前需要先回参考点。龙门回参考点的原理与普通数控轴有较大的区别, 当第一个轴回参考点时, 第二个轴跟随第一个轴运动;在第一个轴回参考点完成后, 第二个轴开始回参考点, 此时第一个轴处于跟随方式, 以保证龙门架始终处于相对平行运动的状态, 当第二个轴回参考点完成时, 两个轴都处于静止状态, 此时第一轴与第二轴之间有一个坐标偏差, 这个偏差就是两个立柱之间的偏差, 系统会自动的将第一个轴移动到零点位置, 以消除偏差。测量两个立柱之间的实际偏差大小, 通过参数来修正他, 直到误差在允许的范围内。

在实际的调试过程中, 我们发现由于机械传动链太长, 造成传动间隙过大, 并且传动刚性也不太好, 传动灵敏度偏低, 使得立柱移动时的同步误差过大, 直接导致横梁升降失败。

经过反复实验, 搞清了影响同步一致的原因后, 我们针对上述问题采取多点定位方式, 消除偏差。实际上是在每间隔250MM的距离, 设置一个机床参考点, 进行一次误差修正。

相关的机床参数如下:

37100[Y1]=1;37100[Y2]=11龙门架轴的定义

37120龙门架轴的行程极限

37130回参考点时的龙门架行程极限

37140龙门架轴分组有效

34090回参考点时的位置偏差补偿

在系统PLC程序中还需要处理以下信号:

DB31-61.DBX2.1轴控制器使能

DB31-61.DBX21.7轴控制器脉冲使能

DB31-61.DBX1.5轴测量系统生效

DB31-61.DBX1.7轴进给倍率生效

DB31-61.DBX29.4轴同步生效

DB31-61.DBX29.5启动自动同步功能

DB31-61.DBX101.4同步运行准备好

DB31-61.DBX101.5龙门架轴同步已经生效

在实际的调整中, 我们根据机床的具体情况对相关的参数和信号做了细致的调整, 确定参考点位置的准确同步定位。我们把同步轴的第一参考点定义在与工作台回转中心重合的位置, 然后再向远离工作台回转中心的方向每间隔250MM的距离定义一对新的参考点位置, 保证龙门架在移动到任意位置时都可以在不超过25MM的行程内找到一对参考点, 达到同步修正的目的。也就是说, 在每间隔250MM的行程, 就可以对龙门架进行一次修正, 因为在任意一个参考点位置, 龙门架的位置同步都是准确的, 对于加工和横梁升降都没有任何问题, 满足了机床使用的基本要求。

2 调试过程中如何解决定位误差报警和静止误差报警

在调试过程中常会出现定位误差和静止误差报警, 经诊断和实验认证为轴过冲所产生的报警。设置相应参数后得已解决。

具体参数如下:

在轴冲击生效后, 在将前馈功能激活.

MD32620=2或3, 设成扭矩前馈控制或速度前馈控制。

MD32630=0用参数控制;当MD32630=1时, 是从程序激活前馈控制。

3 与当前国内外同类技术的综合比较

龙门移动的大型数控立式车床在国内还是技术比较领先的。他克服了双柱立式车床横梁跨度过大造成的变形过大带来的不利影响, 而且在工件装卸的可操作性方面远优于一般的双柱立式车床。同时同步移功能的应用也解决了电机扭矩功率不足的影响, 从而使得龙门移动的大扭矩使用成为了显示, 解决了技术上的使用难题。

应用前景:该机床的研制成功说明我国在数控立式机床制造中又取得了一个成功的进步, 为我们的机床制造业的整体实力的提高起到了积极的作用。

摘要:由于机床加工的工件比较大, 在龙门的跨度上做到16米的加工范围还有一定的困难, 而且在工件装卡和拆卸时与横梁有一定的干涉现象, 给生产带来很多困难。采用龙门移动功能时, 可以将整个立柱向后移动, 让开工作台回转中心位置, 这样大型工件的吊装将变得非常方便安全, 在进行特别大的工件加工时, 可以将立柱适当的向后调整, 以便达到增加加工范围的目的。如何保证两个立柱之间的同步定位就显得非常重要。本机床采用西门子840D系统, 选用了两个伺服进给电机通过电子同步功能来实现控制。由于电机与丝杠之间还有一个1:80的减速箱, 减速箱的齿轮比较多, 间隙比较大, 在电机同步运动时, 实际上立柱的同步误差比较大。无法满足使用要求。我们采用多点定位形式减小两立柱之间的同步误差, 使问题得到很好的解决。

【移动同步】推荐阅读:

同步振荡07-20

同步特性05-09

同步试验05-14

永磁同步05-21

同步设计05-30

同步机构05-31

同步快速06-26

同步课堂07-03

同步频率07-05

同步推进07-07

上一篇:电力公司企业文化下一篇:广州大学华软软件学院