论文部分内容阅读
随着计算机技术、控制技术和通信技术的快速发展,传统的控制领域现在正经历着一场前所未有的重大变革,逐步向网络化、高度集成化、系统复杂化方向发展,而现场总线技术成为了控制领域未来发展的趋势。作为世界公认的8大现场总线之一的Modbus协议,是当前工业控制领域应用最为广泛、也是最为流行的一种数据传输协议。在中国,Modbus协议于2008年被确定为一项国家标准,因此,Modbus协议在中国会越来越普及、应用也会越来越广泛,与之相关的产品也会逐渐的增多。由于Modbus协议的重要性与广泛性,世界各地的公司和个人都在研究Modbus协议,并实现Modbus协议栈。出于商业的目的,公司开发出来的Modbus协议栈是不对外公开的,并且这些公司开发的Modbus协议栈使用版权费用也是非常之高;而出于兴趣爱好的个人开发出来的Modbus协议栈总是有一些问题。特别地,在Linux系统下运行的Modbus协议栈又是少之又少,众所周知,现在Linux系统以其独特的优势在许多领域都得到了应用,并且还在快速的发展,有可能成为工业控制领域的主流操作系统。鉴于在Linux系统上实现Modbus协议栈存在的诸多问题,本论文从另外一个切入点对Modbus协议进行了研究、分析,找到了一个良好的解决方法,也使Modbus协议在Linux系统上的实现变得容易起来。与此同时,本论文为Modbus主协议栈设计了一个良好的软件架构,实现了绝大部分也是最为常用的公共功能码操作函数与用户自定义功能码的功能;为了使设计的Modbus主协议栈在各个操作系统平台之间具有良好的可移植性,本论文在实现Modbus主协议栈时采用了分层思想,抽象出了一套对操作系统层的移植接口,这样只要在另外一个操作系统上实现这些接口,Modbus主协议栈就可以在该系统上运行起来;为了尽量方便用户使用Modbus主协议栈,在设计Modbus主协议栈时遵循了“简单即是美”的原则,同样也实现了一套接口简单、操作方便、功能完备的对用户接口。