- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
车载终端通信软件系统.doc
车载终端通信软件系统
摘要:随着人民生活水平的提高,使得车辆不断增多,同时也造成了目前城市中普遍存在的交通堵塞,交通安全等问题的出现。在现代信息技术的推动下,交通运输领域逐渐与通信、计算机技术进行整合,逐渐形成一种实时,高效,准确的综合交通运输体系。基于此背景,本文主要采用socket通讯方式,固定IP电话的使用动态域名解析服务,将车载终端当作客户端,并且使用socket通信来实现远程控制功能。
关键词:车载终端;通信软件系统;Socket
中图分类号:TP311
中国经济的快速发展使得城市机动化的加速,城市出现了交通拥堵,流量增加,环境污染,能源短缺等问题,适当的运输调度和安全管理成为运输业务和其他部门的首要问题。许多城市政府每年都会投入大量的人力,物力,用以改善和解决城市交通问题。作为电子设备的车载终端具有完善的功能,并且能够用在最短的时间内获得及时准确的导航信息和交通信息。车载终端,能够给家人和朋友们提供一个有线的游戏娱乐的交流平台。移动通信技术的发展和全球定位系统(GPS)技术和持续改进到车载终端提供了一个完美的和稳定的技术支持。
1socket相关概念
Socket又叫“套接字”,是应用程序发出网络请求的一个借助点。socket,支持TCP / IP协议栈的基本操作单元,网络通信,这是一组复杂的隐藏在TCP/IP协议的背后的socket接口,一组简单的界面,对于用户来讲就是所有,只要跟指定的协议吻合,不用去计较UDP或TCP是通过何种方式让socket去组织数据的。
传输层协议栈有两个主要的协议,分别是TCP、UDP,两个应用程序里面,TCP负责传输功能,但是它在实现数据交换之前需要先建立TCP连接。UDP传递给应用程序数据发送IP层,但数据传输并不可靠,也不能保证他们能到达目的地。
2socket通信实现
一个IP地址和端口号确定了一个socket。因此IP地址和端口号在客户连接到服务器的过程中非常重要。连接过程中初始化服务器socket,绑定(bind)和端口监视器(listen),调用接受阻塞,在这个时候要等待客户端连接。在一个点客户端启动一个socket,然后将其连接到服务器(connect),一旦连接取得了成功,客户端和服务器之间就取得了连接。客户端发送数据,服务器收到一个请求(write)和处理请求(read),然后将数据发送到响应客户机的请求,客户端将数据进行读取,然后将连接关闭(close),交互就完成了。通信客户端和服务器之间的过程如图1。
图1建立socket通信的过程
2.1手机socket通信的实现
可以利用JAVA标准的API来实现Android手机中的socket通信,过程中需要注意一下几个问题:(1)中间的管道连接的InputStream/ OutputStream的流实现;(2)管道可以设置进行通信;(3)管道关闭就是socket关闭;(4)如果一个socket管道在创建过程中出现重复现象异常现象就会产生;(5)传播的整个过程中的秩序也是一个重要因素:最开始是由服务器得到输入流,接着服务器在将得到的这些信息传送到下面的客户端。
完成客户端和服务器的连接问题,先要设置连接端口,和访问服务器的IP,端口设置为1029,手机作为服务器的IP地址是不固定的,需要解析域名,使用安卓系统的手机客户端软件dyndns DDNS动态IP电话。需要DynDNS的官方网站注册用户名,申请一个免费的域名,在设置,输入用户名、密码和域的名称,然后单击开始解析,当ReportedIP返回一个IP,并返回到好的同时,表明,该领域已经成功解决了。动态IP电话将被发送到注册的域名,所以手机可以确定访问的域服务器。客户端和服务器通过IP地址,需要建立socket连接,所以需要域名转换成IP地址获得通过InetAddress.getByName IP:
InetAddress remotecontrol=InetAddress.getByName(bluemotion.dyndns.org);
System.out.println(remotecontrol);
解析出域名所对应的IP:bluemotion.dyndns.org/117.136.21.150。
IP的问题解决后,socket通信可以做到,当驾驶员android软件,点击“开始”按钮,接受连接请求,在同一时间启动汽车车载终端对应的二进制数据包传送到车载终端。发送数据格式定义在表1。
表1远程控制数据传输格式定义
包头 包长度 指令编号 设备编号 数据长度 数据正文
OX55 6Byte Ox01-0x08 0x01-0x0
原创力文档


文档评论(0)