车载终端通信软件系统
摘要:随着人民生活水平的提高,使得车辆不断增多,同时也造成了目前城市中普遍存在的交通堵塞,交通安全等问题的出现。在现代信息技术的推动下,交通运输领域逐渐与通信、计算机技术进行整合,逐渐形成一种实时,高效,准确的综合交通运输体系。基于此背景,本文主要采用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地址获得通过byname ip:
inetaddress byname(””);
system.out.println(remotecontrol);socket通信为什么要指定端口
解析出域名所对应的ip:/117.136.21.150。
ip的问题解决后,socket通信可以做到,当驾驶员android软件,点击“开始”按钮,接受连接请求,在同一时间启动汽车车载终端对应的二进制数据包传送到车载终端。发送数据格式定义在表1。
表1远程控制数据传输格式定义
包头 包长度 指令编号 设备编号 数据长度 数据正文
ox55 6byte ox01-0x08 0x01-0x02 1 byte 1 byte
包头包长度指令数设备号数据长度
ox55 6byte ox01-0x08 0x01-0x02 1 byte 1 byte
包头:ox55,一个字节;
包长度:发送数据包的长度,以字节为单位,占一个字节;
指令号:用于识别不同的数据,一个字节;
设备号:用于识别的遥控装置,一个字节;
数据长度:数据长度的文字,一个字节;
数据内容:8的二进制数据,传输。
车载终端接收的数据发送到移动电话包,根据解析出来的数据在表2.1中的数据的格式,然后身体的数据值,以确定驱动程序的命令。
2.2车载终端socket通信的实现
在本文中,设置车载终端的定时发送连接请求到手机,使用手机驱动程序,请单击“开始”命令车辆终端能够接受一个连接请求、手机和汽车终端建立连接,启动命令对应的数据应该发送到手机到车载终端、车载终端价值判断,基于意图的驾驶者和相应的输入输出端口操作。
socket通信车载终端通过gprs模块,要用到at+i命令,at+i命令是由互联网解析和执行标准的at命令扩展控制器。
3远程控制功能的实现
利用手机和车载终端建立一个socket连接,然后就能够达到远程控制的目标。这篇文章是要实现远程控制手机,汽车点火系统和空调系统的开关控制,实现对汽车的控制,并关闭发动机,空调的开启和关闭。
车载终端接收控制信号,控制io口连接led模拟点火系统和空调系统开关。在实践中,远程控制是通过车载终端的io口控制继电器的开关来实现,从而控制led的原理是一样的,只是不同的io端口控制。
4总结
汽车车载电子在汽车电子研究的内容,是近年来研究的热点之一。本文介绍了汽车远程控制系统的设计思路和流程,使用socket通信方式,建立手机和车载终端。随着车联网技术的发展,下一步的研究方向可能就是针对车和监控中心以及车和车之间实现通信。随着汽车电子产业和无线网络技术的快速发展,不断提高,我们有理由相信,在不久的将来,完美的车载终端功能和技术将被用于每一辆汽车上,每个人都能感受到的车载终端给我们带来了极大的方便。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论