快捷搜索:  汽车  科技

程序员开发项目流程图,程序员开发工作笔记

程序员开发项目流程图,程序员开发工作笔记服务原语通过PDUS数据单元进行表达,产生的数据单元叫做APDU,这个数据单元就成为了网络层的数据部分,接着网络层的原语进入链路层,最终进入设备,设备进行接收,然后请求就在远程设备协议栈中一层层上传,最后相应设备的响应也是这样一层层传给请求设备的,过程很清晰,在软件实现上,其实就是定义了两个UDP端口,一个发送请求,一个接收响应。非证实服务的通讯方式实现传输报文的封装与解封的开发。实现对报文数据的解析的开发。证实服务的通讯方式

关键字:通讯、服务、原语、UDP、PDUS、APDU、异常处理

OK,我们接着学习BacNet\IP协议,在实际工作中的 开发与实现,上次,我找到了一些工具,通过这些工具,我们可以搭建起一个简单但是完全能够反映实际的模拟环境。我们不需要考虑楼控设备是具体怎么工作的,是怎么通过各个网络层完成所有的数据交换工作的 ,在这里,我们的目的很明确,就是从一个已经搭建并部署完善的楼控系统中,获取我们需要的设备,所有很多基本的概念可以略过不学,如果朋友们有感兴趣的,我这里还有比较多的协议文档,中英文的都有,可以关注我并给我发私信,可以共享。

萝卜快了不洗泥,带着目标去学习,通过不停的使用模拟器模拟设备,并分析报文,我们可以知道,要达到我们的目标,要解决以下三个难题:

  1. 实现协议通讯过程的开发。

  2. 实现传输报文的封装与解封的开发。

  3. 实现对报文数据的解析的开发。

程序员开发项目流程图,程序员开发工作笔记(1)

证实服务的通讯方式

程序员开发项目流程图,程序员开发工作笔记(2)

非证实服务的通讯方式

服务原语通过PDUS数据单元进行表达,产生的数据单元叫做APDU,这个数据单元就成为了网络层的数据部分,接着网络层的原语进入链路层,最终进入设备,设备进行接收,然后请求就在远程设备协议栈中一层层上传,最后相应设备的响应也是这样一层层传给请求设备的,过程很清晰,在软件实现上,其实就是定义了两个UDP端口,一个发送请求,一个接收响应。

再具体实现传输的过程中还涉及到一些其他的问题,比如分段报文的处理;分段报文传输过程中丢失、补发等异常处理;各种事务状态的停止的异常处理;重复报文的处理;以及资源的管理与回收等等;我们在做实验过程中,可以只考虑完美状态下的数据传输,但是在实际开发应用的时候一定要把这些考虑进去,并投入更大的精力去实现。

下一次,我们就学习一下具体的数据单元的结构以及怎么实现封装与解封的。

猜您喜欢: