月球车与地球系统通信协议

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

月球车与地球基地服务器通信协议

一、概述

1.通信结构

月球车

地球

基地无线接入点

无线局

域网

月球车

IP= Getway ip= 地球基地IP= Getway ip=

无线网络

ESSID=ETCLINK password=

无线接入点

IP=

Getway ip= 图1 通信系统结构图

无线评分通信系统拓扑结构如图1所示,由月球车、评分系统和无线接入点组成。无线网络采用标准的802.11g标准,无线网络名称为:ETCLINK,无密码认证。无线接入点IP和网关由组委会现场指定。地球基地IP和网关组委会现场指定。月球车的IP由组委会现场指定,范围为:192.168.1.1~192.168.1.250,月球车需要按组委会要求配置网关。

2.底层协议

本系统采用标准的TCP/IP协议完成地球基地和月球车通信,其中地球基地作为TCP的服务器端,月球车作为TCP的客户端。每次通信由月球车发出连接请求,服务器响应后建立连接,月球车和地球基地之间进行数据传输,数据传输完成后断开该次连接。

在通信中,套接字(socket)网络地址类型选取在Internet上通信的网络地址类型(AF_INET),套接字类型采用流连接方式(SOCK_STREAM)和默认的网络协议。连接端口port由组委会现场指定。

3.应用层通信协议

在应用层增加ACK确认机制的通信模式来增加通信的可靠性。首先月球车向评分系统发送数据报文,地球基地收到数据报文后根据数据的内容向月球车发送一个确认数据报文供月球车处理。除传输图片数据外,应用层数据采用固定长度为40个字节的数据进行每次传输数据,数据不够的用0x00补满。图像采用两次通信过程来完成,第一次月球车发出上传图像请求报文,评分系统接受请求后返回接收请求数据报,月球车收到评分系统的接收请求数据报文后发送图像数据,图像大小为宽160像素、高128像素。

4.通信流程

月球车和评分系统的通信流程如图二所示。主要有启动请求

月球车

发送启动请求

确认启动请求

发送测量数据

确认发送数据

请求发送图像

确认发送图像

发送图像数据

确认图像数据地球基地

启动请求

测量数据

图像传输

图二月球车和评分系统通信流程

二、命令

1.命令格式

月球车请求格式:(同步头1)(月球车编号)(备用)(请求命令)(数据);

评分系统反馈格式:(同步头2)(月球车编号)(备用)(反馈命令)(状态);

1)同步头为一字节数据,同步头1=0x55,同步头2=0xAA;

2)月球车编号为一个字节,每个参赛队的编号由组委会现场指定,用十六进制数表示,如35号车,用0x23,默认值为0x00;

3)备用为一个字节,默认值为0x25;

4)请求命令为一个字节,详见表一所示,反馈命令为一个字节,详见表一所示;5)数据根据命令不同分为三类:测量数据、图像上传请求数据、图像数据。

测量数据格式:(数据长度)(数据物理类型)(任务号)(测量值)

数据长度指明后面的数据字节数,用16进制表示;

数据物理类型指明数据是采集何种物理量,具体如表二所示;

任务号是比赛中完成的测量数据任务顺序,第一个任务的测量数据为1,第二个任务的测量数据为2,以此类推,用一个字节的16进制数表示;

测量值统一采用ASCII码表示;

例如采集的温度为109.4度,完整的数据格式为:0x07 0x01 0x03 0x31 0x30 0x39 0x2E 0x34,其中0x07表示后面数据长度为7,0x01表示测量的是温度,0x03表示任务号,剩下的是温度值的ASCII码;命令中没有数据上传的数据长度为0x00。

●图像上传请求数据格式:(任务号)(图像特征)(图像点阵大小)(图

像列数)(图像行数)

任务号是比赛中完成的图像数据上传任务顺序,第一幅图像上传请求为1,第二幅图像上传请求为2,以此类推,用一个字节的16进制数表示;

图像特征是上传图像的颜色和形状,用一个字节的无符号16进制数表示,如表三所示;

图像点阵大小是上传图像的总的像素值,用无符号的整数表示;

图像列数是上传图像的列值,用无符号的短整数表示;

图像行数是上传图像的行值,用无符号的短整数表示;

●图像数据格式:(图像数据)

图像数据采用行列扫描方法,每一个像素用16bit表示,采用RGB565格式。

6)状态为一个字节,表明地球基地接收数据正确与否,正确时状态为1,错误时状态为0,供月球车应用程序处理。

例如:月球车19号,请求启动:0x55 0x13 0x25 0x01

地球基地反馈为:0xaa 0x13 9x25 0xfe 0x01

表一请求命令和反馈命令表

请求命令反馈命令描述

0x01 0xFE 月球车启动出发命令

0x02 0xFD 月球车请求发送图像命令

0x03 0xFC 月球车发送图像数据

0x04 0xFB 月球车发送测量数据

表二数据物理类型表

物理类型值物理意义单位

0x01 温度摄氏度

0x02 湿度百分比

0x03 矿物含量百分比

0x04 高度或者长度米

0x05 其他无

表三图像特征数据表

图像特征值图像形状图像颜色0x01 三角形红色

0x02 三角形绿色

0x03 三角形蓝色

0x04 矩形红色

0x05 矩形绿色

0x06 矩形蓝色

0x07 圆形红色

0x08 圆形绿色

0x09 圆形蓝色

2. 月球车启动出发命令

请求命令:0x55 DD MM 0x01

0x55是开始命令的同步头;

DD 是月球车的编号,由评委指定,默认值为0x00;

MM 是备用位,默认值是0x25;

0x01是月球车请求启动命令。

该命令没有数据内容上传。

反馈命令:0xaa DD MM 0xFE CC

0xaa是反馈开始命令的同步头;

DD 是月球车的编号,由评委指定,默认值为0x00;

MM 是备用位,默认值是0x25;

0xFE是反馈的启动命令,表明请求接收正确;

CC 是命令参数,0x00表示启动,其他值表示等待。

3. 月球车请求发送图像命令

请求发送图像命令:0x55 DD MM 0x02 SS TT ZZ CC RR

0x55是开始命令的同步头;

DD 是月球车的编号,由评委指定,默认值为0x00;

MM 是备用位,默认值是0x25;

0x02是月球车请求发送图像命令;

SS是图像顺序号;

TT表示图像特征;

ZZ是图像大小;

CC是图像列值;

RR是图像行值;

反馈命令:0xaa DD MM 0xFD

0xaa是反馈开始命令的同步头;

DD 是月球车的编号,由评委指定,默认值为0x00;

MM 是备用位,默认值是0x25;

0xFD是反馈的接收发送图像命令,表明请求接收正确。

相关文档
最新文档