gprs_数据传输源程序
- 格式:docx
- 大小:18.11 KB
- 文档页数:4
摘要论文研究的GPS定位系统主要分为四大部分: GPS定位,STM32f103rbt6,GPRS 传输及PC机用户界面部分。
GPS定位使用的是NEO-6M模块,而GPRS数据传输部分的核心部件GPRS模块采用了Siimcom公司SIM900A模块,MCU则使用ST公司推出的基于ARM Cortex-M3内核的STM32f103rbt6。
在整个硬件系统中STM32f103rbt6作为系统的主控制芯片,接受由 GPS 模块采集到的位置信息并对 GPRS 模块进行控制,将坐标信息通过GPRS 模块发到 Internet 上的监控电脑主机。
利用UDP使用谷歌地图实时显示移动对象的位置信息,这样设计者可以在电脑上方便的监控移动对象的位置。
本文完成基于 GPS 和 GPRS轨迹记录系统的硬件电路和软件程序的设计。
硬件部分主要包括STM32f103rbt6外围电路设计,PCB 电路板设计制作。
软件部分则是包含了 STM32f103rbt6控制 GPS 和 GPRS 模块的程序,上位机部分主要对GPRS传送得到的数据的接收。
关键词:GPS;GPRS;STM32f103rbt6目录1 引言[3] (1)2 概述 (2)2.1GPS轨迹记录系统概述 (2)2.2系统设计方案思路 (2)2.3 研究方向及相关技术 (2)2.3.1研究方向 (2)2.3.2 GPS相关技术[29] (2)2.3.3 GPRS相关技术[19] (5)2.3.4上位机软件相关技术 (7)3 系统总体设计 (8)3.1 总体结构 (8)3.2 芯片的选择 (8)3.3.1 GPS模块:NEO-6M (8)3.3.2主控芯片:STM32f103rbt6 (8)3.3.3 数据传输模块:SIM900A[13] (8)3.3其他说明 (9)4 硬件电路设计 (10)4.1 STM32F103RBT6电路设计 (10)4.1.1 STM32F103RBT6介绍[6] (10)4.1.2 STM32F103RBT6外围电路 (10)4.2 GPS模块电路设计 (13)4.3 GPRS模块电路设计 (14)4.3.1 GPRS模块介绍[12] (14)4.3.2 GPRS模块外围电路 (15)5 软件设计 (18)5.1 软件总述 (18)5.2 单片机STM32F103RBT6软件设计 (19)5.2.1 单片机读取GPS数据 (19)5.2.2单片机发送GPS数据 (19)5.3 GPS软件设计 (20)5.4 GPRS软件设计 (20)5.5 PC机软件设计 (20)5.5.1数据的标注 (20)5.5.2数据的存储 (20)5.5.3数据的调用 (20)6 系统的总体组装与调试 (21)6.1系统组装 (21)6.2 实测 (22)7 结束语 (23)参考文献 (24)附录 (26)1原理图 (26)2源程序 (28)1 引言[3]GPS系统的前身是美军研制的一种子午仪卫星定位系统(Transit),最初的GPS计划在联合计划局的领导下诞生了,该方案将24颗卫星放置在互成120度的三个轨道上。
MD-6494G DTU使用手册目录第一章产品介绍 (3)1.1产品简介 (3)1.2产品外观 (5)1.3标准配件 (6)1.4安装尺寸 (8)1.5工作原理 (9)1.6规格参数 (10)1.6.1技术参数 (10)1.6.2指示灯说明 (12)1.6.3串口定义 (12)1.7技术优势 (12)1.8典型应用 (13)第二章设备配置 (14)2.1配置方法 (14)2.1.1准备工作 (14)2.1.2配置MD-649 (14)2.2配置参数介绍 (22)2.3关于MD-649多数据中心的配置说明 (25)2.4恢复出厂设置 (27)2.5固件更新 (27)2.6远程配置 (29)附录1:点到中心调试案例 (33)附录2:驿云串口通调试案例 (37)附录3:数据中心的搭建 (42)附录4:DTU串口AT命令 (45)附录5:DTU短信模式及短信数据格式 (48)附录6:驿唐DTU连接S7-200结合组态软件通信案例 (52)附录7:驿唐DTU连接松下PLC远程下载程序案例 (64)附录8:驿唐DTU连接三菱PLC远程下载程序案例 (72)附录9:MD-649连接PLC结合透传数据中心和驿云实现远程数据采集和程序下载案例 (82)本手册适用于如下型号:型号说明MD-649V支持LTE4G Cat4网络,同时向下兼容3G和2G网络MD-649V1支持LTE4G Cat1网络第一章产品介绍本章主要介绍MD-649的外观、配件、规格参数和使用原理。
1、产品简介2、外观3、配件4、安装尺寸5、使用原理6、规格参数7、技术优势8、典型应用1.1产品简介MD-649是驿唐推出的经典4G DTU产品。
与传统GPRS DTU相比,MD-649工作在4G网络下,具有高速数据传输能力。
LTE4G Cat4网络理论下行速率最高可达100Mbps,上行速率可达50Mbps;LTE-FDD Cat1网络最高下行速率为10Mbps,最高上行速率为5Mbps,LTE-TDD Cat1网络最高下行速率为7.5Mbps,最高上行速率为1Mbps。
//=====GPRS MODULE PROGRAM=============//==FROM 2003.9.=======================//=======by cfj========================#include<msp430x12x2.h>//#include<intrinsics.h>#include<stdio.h>#include<string.h>#include<stdlib.h>#include<ctype.h>#include<math.h>#define Uint unsigned int#define _3NOP() _NOP();_NOP();_NOP();#define _4NOP() _NOP();_NOP();_NOP();_NOP();#define _5NOP() _NOP();_NOP();_NOP();_NOP();_NOP();#define Estart_Addr 0 //0 EEprom起始地址#define Work_Mode_Addr Estart_Addr+6 //6 工作模式设置:1字节#define MAPN_Addr Work_Mode_Addr+1 //7 移动网关接入点名称:20字节ASCI#define DSC_Ip_Addr MAPN_Addr+20 //27 数据服务中心IP地址:12字节ASC#define DSC_Port_Addr DSC_Ip_Addr+12 //39 数据中心端口:5字节ASCII#define Net_Protocol_Addr DSC_Port_Addr+5 //44 网络数据传输协议#define Terminal_SIM_Addr Net_Protocol_Addr+1 //45 终端SIM #define Beat_Addr Terminal_SIM_Addr+11 //56 心跳周期地址#define PassWord_Addr Beat_Addr+1 //57 设置密码#define SCA_SIM_Addr PassWord_Addr+6 //63 短信服务中心号码#define DSC_SIM_Addr SCA_SIM_Addr+11 //74 数据中心号码#define BackUp_Addr DSC_SIM_Addr+11 //85 备用#define Set_Crc BackUp_Addr+4 //89 CRC校验码#define Estart2_Addr Estart_Addr+100//******************************************************** **********//函数:main()//功能:主函数//输入参数://输出参数://======================================================== ======================//常量定义//======================================================== ======================char *AT="AT\r";//AT命令用于检测GPRS是否存在或开机。
修改记录目录修改记录 (2)目录 (3)Gb接口学习文档 (5)1Gb接口总体概述 (5)参考文档 (5)Gb接口在GPRS网络中的位置 (5)Gb接口结构 (6)Gb接口功能.............................................................. 错误!未定义书签。
Gb接口各协议层及其功能描述.............................. 错误!未定义书签。
L1层 .......................................................................... 错误!未定义书签。
NS层 ......................................................................... 错误!未定义书签。
BSSGP协议层 .......................................................... 错误!未定义书签。
2Gb接口在GPRS分组域故障分析系统中解析需求错误!未定义书签。
L1层 .......................................................................... 错误!未定义书签。
NS层 ......................................................................... 错误!未定义书签。
NS业务层 ................................................................. 错误!未定义书签。
NS业务控制层 ......................................................... 错误!未定义书签。
gprs协议GPRS(General Packet Radio Service)是一种无线通信协议,它为移动设备提供了高速数据传输的能力。
GPRS协议的出现,标志着移动通信技术进入了全新的时代,使得移动设备可以像固定网络一样进行数据通信,为移动互联网的发展奠定了基础。
首先,GPRS协议采用了分组交换的方式来传输数据,与传统的电路交换方式相比,它可以更加高效地利用网络资源。
在传统的电路交换方式中,通话双方在通话期间会占用一条固定的通信线路,无论是否在传输数据,这种方式效率较低。
而GPRS协议则可以将数据分割成小的数据包,通过网络动态分配资源进行传输,大大提高了网络的利用率。
其次,GPRS协议还采用了多路复用的技术,可以同时传输多个数据包,提高了网络的传输效率。
在传统的通信网络中,每个用户都需要独占一条通信线路,当用户数量增多时,网络的负载会急剧增加,导致网络拥堵。
而GPRS协议通过多路复用技术,可以在同一时间段内传输多个数据包,有效地缓解了网络的压力。
此外,GPRS协议还引入了IP协议,使移动设备可以直接连接到互联网。
在传统的移动通信网络中,移动设备需要通过网关才能连接到互联网,网络结构较为复杂。
而GPRS协议直接采用IP协议,使移动设备可以像固定网络设备一样直接连接到互联网,极大地简化了网络结构,提高了网络的灵活性和扩展性。
总的来说,GPRS协议的出现为移动通信技术带来了革命性的变化,使移动设备可以像固定网络一样进行高速数据传输,为移动互联网的发展奠定了基础。
它采用了分组交换、多路复用和IP协议等先进技术,提高了网络的利用率和传输效率,极大地丰富了移动通信的应用场景,为人们的生活和工作带来了极大的便利。
随着移动通信技术的不断发展,相信GPRS协议会在未来发挥越来越重要的作用,成为移动通信领域的重要支撑。
基于GPRS的远程数据传输系统的设计摘要远程数据传输系统由数据中心和位于现场的仪表数据采集点组成,其中现场仪表数据采集点由51系列单片机作为控制器实时采集所需要的数据值,并对采集到的数据进一步的运算和处理,统计后,保存到EEPROM中,系统使用者可在工作现场通过人工操作查看所需要的数据值。
同时,现场仪表数据采集点还可通过中国移动现有的GPRS网络进行数据传输,现场仪表通过RS232口与GPRS 透昮数据传输终端连接现场仪表经过协议封装后定时发送到中国移动的GPRS 数据网络,通过GPRS数据网络将数据传送到数据管理中心(PC),实现现场仪表数据和数据中心系统的实时在线连接,从而实现实时数据监控,随时可以了解到各个现场的工作状况。
本论文分析了远程数据传输系统这一课题的设计意义以及其发展趋势,讲述了该系统的硬件设计和软件设计过程,各个模块在该系统中所起的作用。
关键字: 数据采集;51系列单片机;GPRS;硬件设计;软件设计Long Distance Data Transmission System Based onGPRSAbstractThe GPRS scene measuring appliance long-distance transmission system is composed of the data center and the instrumented data gathering spot. Instrumented data gathering spot is controlled by MCS-51 single chip microcomputer, which gets the real-time data. A fter dealing with those data, the single chip microcomputer saves it in the EEPROM. T he user could look for any data from the EEPROM through the correct operation following the men-to-machine operation interface. The transmission of scene instrumented data is carried through China mobile GPRS network. The scene measuring appliance is connected to the scene instrumented data through the RS232 interface with the GPRS transparent data transmission terminal to transmit the GPRS data to network after the protocol packing which moves to the data center(PC) through the GPRS data network every some time, realizes the instrumented data and the data center system real-time on-line connection, thus realize monitoring. T he user could get the information of work state of every work station.This dissertation analyzes the design sense and the develop trend of the Long Distance Data Transmission System, also, shows the hardware and software design, and the contribution of every module to the system.Key words: Data Gathering; MCS-51 single chip microcomputer; GPRS; Hardware design; software design目录摘要 (I)Abstract (II)1.1 概述 (2)1.2 设计意义 (2)1.3 目前现状与发展趋势 (2)第二章硬件电路设计 (3)2.1 硬件结构整体框图 (3)2.2 A/D转换电路部分 (3)2.3 实时时钟和数据存储模块 (4)2.4 显示译码电路和按键控制电路 (4)2.5 RS-232通信电路(GPRS通信模块接口) (4)2.6 电源供电电路 (4)2.7 核心控制部分 (4)2.8 无线通信模块(SIM300CZ) (4)2.9 系统总体原理图与PCB图 (5)第三章I2C总线的应用 (8)3.1 概述及基本概念 (8)3.2 总线数据传送速率和数据的有效性(Data Validity) (8)3.3 使用I/O口模拟I2C总线 (8)第四章软件设计及程序流程图 (9)4.1 数据采集和处理 (9)4.1.1 数据采集 (9)4.1.2 数据处理 (10)4.2 人机界面的程序设计 (13)4.2.3 按键加密 (14)4.2.3 显示部分 (14)4.3 Rom数据 (15)4.4 GPRS通信 (17)第五章设计总结与心得 (18)5.1 设计总结 (18)5.2 设计心得 (18)参考文献(References) (19)第一章前言1.1概述在工业生产中,能源,物资的计量设备分布在现场的各个区域,给设备的监控和数据的统计带来诸多不便,随着智能仪表技术的不断发展,同时通讯技术也在不断加强。
GPRS简介GSM 的演化GSM 移动数据业务主要分为电路型数据业务和分组型数据业务。
GSM 第一阶段提供的9600bps 以下数据业务及Phase 2+阶段提出的HSCSD 都属于电路型数据业务。
Phase 2+阶段提出的GPRS,则属于分组型数据业务,后者相对于前者具有很显著的优越性。
1.电路型数据业务GSM 系统一开始就是从数字化的角度进行设计的,若提供电路型数据业务,则只要进行版本升级,不用进行大的网络重新规划。
在GSM 第一阶段即提出了电路型数据业务的实现方式,为了适应种类繁多的数据业务,GSM 网络两端分别设置了2 个功能单元TAF 和IWF,使得无论开展何种数据业务,在GSM 网内传输数据的方式是一致的。
提供数据业务时,BTS/BSC 仅需提供编码支持,MSC 中需增加IWF功能单元,可提供PSTN/ISDN/PDN 互联,提供传真/数据业务功能,速率在9.6kbps以下,支持透明和非透明两种方式(由是否采用RLP 协议决定)。
电路型数据业务基本原理由于受到无线接口的单个业务信道数据传送速率最高不能超过12kb/s 的限制,与其它网络数据通信速最高为9600b/s。
为了提高数据速率,ETSI 于1997 年2月批准采用HSCSD 技术,采用一种新的信道编码方案,通过截短校验比特将时隙波特率从9.6kbps 增加到14.4kbps。
HSCSD 还能使多个时隙结合在一起,从而最高达到57.6kbps,等效于一条无线ISDN 线路。
提供HSCSD 仅需作少量额外投资,主要是进行软件升级,不需新的网络组成部分。
2.分组型数据业务-GPRSGPRS 是GSM 提供的分组交换和分组传输方式的新的承载业务,可以应用在PLMN 内部或应用在GPRS 网与外部互联分组数据网(IP、X.25)之间的分组数据传送,GPRS 能提供到现有数据业务的无缝连接。
使用GPRS 时,数据封装进每个分组并在网上发送。
2. (4896)《基于GPRS的SOCKET通信的应用研究》P(52)
SOKET通信程序如下:
.
#include <REG52.H> //特殊寄存器的头文件,专供8051扩展系列的单片机使用#include <stdio.h> //I/O库文件原型声明
void initial(void); //初始化子程序的声明
void send(char *,int); //发送子程序的声明
int rev(int); //接收子程序的声明
char xdata doc1[19]="AT+IISP1=*99***1#\r\n"; //以下为基本设置
char xdata doc2[25]="AT+IDNS1=211.136.18.171\r\n";
char xdata doc3[14]="AT+IUSRN=W AP\r\n";
char xdata doc4[13]="AT+IPWD=W AP\r\n";
char xdata doc5[33]="AT+IMIS=\"AT+CGDCONT=1,IP,CMNET\"\r\n";
char xdata doc6[11]="A T+IXRC=0\r\n";
char xdata doc7[12]="AT+IMTYP=2\r\n";
char xdata doc8[30]="AT+ISTCP:221.232.81.195,2024\r\n"; //以下为SOCKET设置char xdata doc9[22]="AT+ISSND%:xxx,6:socket ";
char xdata doc10[13]="A T+ISST:xxx\r\n";
char xdata doc11[14]="A T+ISRCV:xxx\r\n";
char xdata doc12[12]="A T+ISCLS:xxx ";
char mes[44]="AT+ISTCP:221.232.81.195,2024\r\nI/000\r\n",temp;
int i;
void delay(int s) //延时子程序
{int i;
for (i=s;i>0;i--)
{};
}
void sok() //接收返回的句柄子程序
{
int i;
for (i=0;i<3;i++)
{doc9[10+i]=mes[32+i];
doc10[8+i]=mes[32+i];
doc11[9+i]=mes[32+i];
doc12[9+i]=mes[32+i];
}
}
void main(void) //主程序
{
initial();
while (1)
{
send(doc1,19); //发送ISP码
}while(!rev(28));
P1=0x00;
do
{
send(doc2,25); //发送DNS服务器地址码}while(!rev(35));
do
{
send(doc3,14); //发送用户名
}while(!rev(24));
do
{
send(doc4,13); //发送用户密码帧
}while(!rev(20));
do
{
send(doc5,33); //发送初始化命令
}while(!rev(42));
do
{
send(doc6,11); //发送扩展码
}while(!rev(20));
do
{
send(doc7,12); //发送GPRS MODEM类型}while(!rev(20));
do
{
send(doc8,30); //建立SOCKET连接
delay(10000);
}while(rev(37));
for (i=0;i<1000;i++)
delay(1000);
sok();
send(doc9,22); //发送数据
while(1)
{
if(flag==1)
send(doc9,22);
}
send(doc10,13); //查询SOCKET状态
send(doc11,14); //接收数据
send(doc12,12); //关闭SOCKET通道
}
}
void initial() //初始化子程序
{
EA=0; //关中断
SCON=0X50; //串行口工作方式:模式1,8位UART,数据传输率可变TMOD|=0X20; //定时器1为模式2,8位自动装入方式
TH1=253; //数据传输率设置:9600bps(晶振为11.0592MHz)
TR1=1; //启动定时器1
TI=1; //设置为1,以发送第一个字节
EA=1;
}
void send(char *temp2,int j) //发送子程序
{
int i;
EA=0;
for (i=0;i<j;i++) //按发送数据的长度来发送数据
{
ACC=*(temp2+i);
SBUF=ACC; //发送数据
delay(100);
while (TI==0) //发送数据完毕,TI会自动置高
TI=0; //发送数据完毕,将TI清零,准备下一次发送
}
EA=1;
}
int rev(int n) //接收子程序{
int i=0;
char temp1;
do
{
temp1='a';
while(!RI);
RI=0;
temp1=SBUF;
mes[i++]=temp1;
} while (i<n&&((temp1!='K')||(temp1!='R'))); if (temp1=='K')
return 1;
else return 0;
}
.。