源:http://blog.csdn.net/bichenggui/article/details/7889638

  最近需要开发一个基于GRPS DTU数据传输的数据中心方案,于是找了一些资料。个人觉得很有用。

GPRS DTU全称GPRS数据传输单元,在国内目前实际上对GPRS DTU具有更加明确的约定:GPRS DTU是专门用于将串口数据通过GPRS 网络进行传送的GPRS无线设备。

GPRS DTU的四个核心功能:

1)内部集成TCP/IP协议栈:GPRS DTU内部封装了PPP拨号协议以及TCP/IP协议栈并且具有嵌入式操作系统,从硬件上,它可看作是嵌入式PC与无线GPRS MODEM的结合;它具备GPRS拨号上网以及TCP/IP数据通信的功能。

2)提供串口数据双向转换功能:GPRS DTU无线传输模块提供了串行通信接口,包括RS232,RS485,RS422等都属于常用的串行通信方式,而且GPRS DTU在设计上大都将串口数据设计成“透明转换”的方式,也就是说GPRS DTU可以将串口上的原始数据转换成TCP/IP数据包进行传送,而不需要改变原有的数据通信内容。因此,GPRS DTU可以和各种使用串口通信的用户设备进行连接,而且不需要对用户设备作改动。

3)支持自动心跳,保持永久在线:GPRS通信网络的优点之一就是支持GPRS无线传输模块设备永久在线,因此典型的GPRS DTU在设计上都支持永久在线功能,这就要求GPRS DTU包含了上电自动拨号、采用心跳包保持永久在线(当长时间没有数据通信时,移动网关将断开GPRS DTU与中心的连接,心跳包就是GPRS DTU与数据中心在连接被断开之前发送一个小数据包,以保持连接不被断开)、支持断线自动重连、自动重拨号等特点。

4)支持参数配置,永久保存:GPRS DTU作为一种通信设备,其应用场合十分广泛。在不同的应用中,数据中心的IP地址及端口号,串口的波特率等都是不同的。因此,GPRS DTU都应支持参数配置,并且将配置好的参数保存内部的永久存储器件内(一般为FLASH或EEPROM等)。一旦上电,就自动按照设置好的参数进行工作。

二、GPRS DTU的扩展功能:

较为专业的GPRS DTU还提供一些扩展功能,主要包括:支持数据中心域名解析、支持远程参数配置/远程固件升级、支持远程短信/电话唤醒、支持本地串口固件升级、提供短信通道、提供DTU在线/离线电平指示等。

这些扩展功能可以增强无线传输模块系统的可靠性,以及方便用户的使用及维护。

三、GPRS DTU的工作原理:

1)在线监测系统结构:

现场采集点:

现场采集点的用户串口设备(可以是各种仪表/PLC/单片机/PC等),通过RS232或RS485/RS422接口与GPRS DTU终端相连,用户串口设备发送的数据通过GPRS DTU终端的内部嵌入式处理器对数据进行网络协议封装后通过GPRS无线网络发送到数据中心。

监控中心:

a)公网接入方案

GPRS DTU的服务器采用公网方式接入Internet,如ADSL拨号/电信专线宽带上网等,申请动态域名或者公网固定IP地址;可以实现中小容量的数据采集应用。

b)专网接入方案

GPRS DTU的服务器采用省移动通信公司提供的DDN专线, 申请配置固定IP地址,与GPRS网络相连。由于DDN专线可提供较高的带宽,当现场采集点数量增加,中心不用扩容即可满足带宽需求,可实现大容量数据采集应用。监控中心RADIUS服务器接受到GPRS网络传来的数据后先进行AAA认证,后传送到监控中心计算机主机,通过系统软件对数据进行还原显示,并进行数据处理,这样进一步增强了系统数据通信安全性能。

四、GPRS DTU工作过程:

GPRS DTU上电后,首先读出内部FLASH中保存的工作参数(包括GPRS拨号参数,串口波特率,数据中心IP地址等等,事先已经配置好)。

GPRS DTU登陆GSM网络,然后进行GPRS PPP拨号。拨号成功后,GPRS DTU将获得一个由移动随机分配的内部IP地址(一般是10.X.X.X)。也就是说,GPRS DTU处于移动内网中,而且其内网IP地址通常是不固定的,随着每次拨号而变化。我们可以理解为GPRS DTU这时是一个移动内部局域网内的设备,通过移动网关来实现与外部Internet公网的通信。这与局域网内的电脑通过网关访问外部网络的方式相似。

DTU主动发起与数据中心的通信连接,并保持通信连接一直存在。由于GPRS DTU处于移动内网,而且IP地址不固定。因此,只能由GPRS DTU主动连接数据中心,而不能由数据中心主动连接GPRS DTU。这就要求数据中心具备固定的公网IP地址或固定的域名。数据中心的公网IP地址或固定的域名作为参数存储在GPRS DTU内,以便GPRS DTU一旦上电拨号成功,就可以主动连接到数据中心。

具体地讲,GPRS DTU通过数据中心的IP地址(如果是采用中心域名的话,先通过中心域名解析出中心IP地址)以及端口号等参数,向数据中心发起TCP或UDP通信请求。在得到中心的响应后,GPRS DTU即认为与中心握手成功,然后就保持这个通信连接一直存在,如果通信连接中断,GPRS DTU将立即重新与中心握手。由于TCP/UDP通信连接已经建立,就可以进行数据双向通信了。

对于GPRS DTU来说,只要建立了与数据中心的双向通信,完成用户串口数据与GPRS网络数据包的转换就相对简单了。一旦接收到用户的串口数据,GPRS DTU就立即把串口数据封装在一个TCP/UDP包里,发送给数据中心。反之,当GPRS DTU收到数据中心发来的TCP/UDP包时,从中取出数据内容,立即通过串口发送给用户设备。

通过有线的数据采集中心,同时与很多个GPRS DTU进行双向通信。这是目前GPRS DTU应用系统中最为常用的方式。

我采用的是公网通讯方案,由一个带有公网IP的服务器作为数据中心,上面运行的是自己开发的DTU数据通讯程序。

GPRS DTU概念及DTU的工作原理(转)的更多相关文章

  1. LVM逻辑卷基本概念及LVM的工作原理

    这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是 ...

  2. Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理

    一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该 ...

  3. 管程(Monitor)概念及Java的实现原理

    互斥 互斥访问是并发编程要解决的核心问题之一. 有许多种方法可以满足临界区的互斥访问.大体上可以分为三种, 一种是软件方法,即由用户程序承担互斥访问的责任,而不需要依赖编程语言或操作系统,譬如Dekk ...

  4. Git的四个基本概念及 git的工作流程

  5. GPRS DTU的工作原理和应用场景有哪些

    GPRS DTU是属于物联网无线数据终端设备的中一种,它主要是利用公用运营商的GPRS网络(又称G网)来为用户提供无线长距离数据传输的功能.一般都是采用的高性能工业级8/16/32位通信处理器和工业级 ...

  6. DTU的工作原理和流程

    DTU是无线数据传输模块,采用2G,3G,4G网络,将本地串口数据经DTU打包成TCP或者UDP数据进行远程传输的设备.使用方便.已经在各行业远程数据传输,设备监控等领域大量应用.如智能仪器仪表.智能 ...

  7. GPRS的工作原理、主要特点

    源:http://blog.csdn.net/sdudubing/article/details/7682467 GPRS的工作原理.主要特点: 引 言 近年来,通信技术和网络技术的迅速发展,特别是无 ...

  8. CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 转载

    CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 2016年09月01日 13:56:30 疯子19911109 阅读数:4823 标签:  ...

  9. 什么是4G模块 4G模块的工作原理及特点

    什么是4G模块 4G模块,也被叫做4G通信模块或4G DTU模块,他是物联网行业具有4G通信功能的一种产品,通过4G模块,我们可以实现工业设备数据通过无线4G网络传输到远端控制中心,并从控制中心通过4 ...

随机推荐

  1. CentOS挂载硬盘

    1.查看当前硬盘使用状况: [root@gluster_node1 ~]# df -h 文件系统     容量 已用 可用 已用%% 挂载点 /dev/sda3 14G 2.4G 11G 19% / ...

  2. 裸二分图匹配poj1469

    poj1496 题意: 给你p门课程和n个学生,一个学生可以选0门,1门,或者多门课程, 现在要求一个由p个学生组成的集合,满足下列2个条件: 1.每个学生选择一个不同的课程 2.每个课程都有不同的代 ...

  3. KMP算法类习题——字符串匹配

    Description For each prefix with length P of a given string S,if S[i]=S[i+P] for i in [0..SIZE(S)-p- ...

  4. 【Machine Learning in Action --2】K-近邻算法构造手写识别系统

    为了简单起见,这里构造的系统只能识别数字0到9,需要识别的数字已经使用图形处理软件,处理成具有相同的色彩和大小:宽高是32像素的黑白图像.尽管采用文本格式存储图像不能有效地利用内存空间,但是为了方便理 ...

  5. PHP:class const

    const变量经常被当做常量用在php的类中,隐含的意思是这个变量是常量,不能被修改.编译器会自动检测,如果被赋值会被提示错误警告. 正确实例1: <?php class test { cons ...

  6. postgres 数据库备份恢复

    postgre 数据库备份恢复命令 备份:pg_dump -U postgres -v -F c -Z 4 -f ***.backup dbname  9压缩率最狠恢复:pg_restore -U p ...

  7. android view构造函数研究

           上周遇到了SurfaceView的constructor的问题,周末决定略微细致地研究一下这个令人发指的玩意.   SurfaceView是View的子类,与View一样有三个const ...

  8. mvc动态生成a标签,多个属性,多个querystring

    1*服务端 客户端 跳转的url 2*服务端 客户端 跳转的url 3*服务端 客户端  跳转的url  4*服务端 客户端 跳转的url

  9. struts2的工作原理

    在学习struts2就必须的了解一下它的工作原理: 首先来看一下这张图 这张工作原理图是官方提供的: 一个请求在Struts2框架中的处理大概分为以下几个步骤 1.客户端初始化一个指向Servlet容 ...

  10. OpenGL ES着色器语言之着色概览(官方文档)

    OpenGL ES着色器语言之着色概览(官方文档第二章) 事实上,OpenGL ES着色语言是两种紧密关联的语言.这些语言用来在OpenGL ES处理管线的可编程处理器创建着色器. 在本文档中,除非另 ...