MODBUS与NTP:开卷有益的基础知识

 2023-11-18    142  

一、MODBUS协议

早期自动控制系统的各种设备通信方式是使用串行式硬件架构,然后定义通信步骤及格式等基本通信规格,也就是通信协议(Communication Protocol)。各种品牌的PLC(Programmable Logical Controller)制定自有的通信协议接口标准,用于自控设备读取或写入。

Modbus 通信协议是Modicon PLC 所定义的通信协议,20世纪70年代初次发布,至今已经在工业自动化领域广泛应用。MODBUS协议获取简便,且便于实现。经过多年的发展,Modbus协议本身没有变化,但对报文的发送方式和速率作了改变,以满足工业应用的实时性需求。Modbus通信方式可由控制器内置的串口实现,也可以通过网络适配器以及Modicon 提供的模块软件和网关等设备实现。Modbus工作方式:查询/回应方式。

1、查询

查询消息中的功能代码就是从设备要执行的相应功能。数据段包含了从设备要执行功能的任何附加信息。例如功能代码03是要求从设备读保持寄存器并返回它们的内容。数据段必须包含以下信息:从寄存器开始读及要读的寄存器数量。错误检测域为从设备提供了一种验证消息内容是否正确的方法。

2、回应

如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收集的数据:如寄存器值或状态。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。

Modbus可以通过TCP和串口两种方式实现。Modbus/TCP就是简单地将Modbus帧嵌入到TCP帧中。TCP/IP的请求/应答机制能和Modbus本身的主/从机制很好地配合工作。Modbus串口传输又可以分成ASCII或RTU两种模式。在一个Modbus网络上,所有设备都必须选择相同的传输模式和串口参数(波特率、校验方式等)。

二、NTP协议

NTP协议全称网络时间协议(Network Time Procotol)。它的目的是在国际互联网上传递统一、标准的时间。具体的实现方案是在网络上指定若干时钟源网站,为用户提供授时服务,并且这些网站间应该能够相互比对,提高准确度。

NTP最早是由美国Delaware大学的Mills教授设计实现的,从1982年最初提出到现在已发展了将近20年,2001年最新的NTPv4精确度已经达到了200毫秒。对于实际应用,又有确保秒级精度的SNTP(简单的网络时间协议)。

NTP所建立起的网络基本结构是分层管理的类树形结构。网络中的节点有两种可能:时钟源或客户。每一层上的时钟源或客户可向上一层或本层的时钟源请求时间校正。第0层为官方时钟所保留。

第一层为一级时钟源层,其上没有任何客户,只有主钟源,这些钟源之间相互不允许校正。一级钟源的任务就是将时间信息向第二层的钟源或客户发布。第二层及以下层除层数不同、时间质量不一样外,没有本质上的区别。第N层上的时钟源的时间来自第N-1层或第N层,并向第N层上的时钟源和第N+1层上的客户提供校时服务。

下图示意的是第1、2、3层间的情况。其中的箭头表示校时服务。箭头的发出方为校时服务的请求方,箭头的指向方为校时服务的提供方。层1上的机器的时间来自外部时间源,因而没有箭头从它们中发出。由于时间是向下传递的,因而可以看到层间的箭头都是发自较高层,指向较低层。

NTP的工作模式有主/被动对称模式:一对一的连接,双方均可同步对方或被对方同步,先发出申请建立连接的一方工作在主动模式下,另一方工作在被动模式下。客户/服务器模式:与主/被动模式基本相同。唯一区别在于,客户方可被服务器同步,但服务器不能被客户同步。

  •  标签:  

原文链接:http://www.tpbz008.cn/post/45090.html

=========================================

http://www.tpbz008.cn/ 为 “电脑技术吧” 唯一官方服务平台,请勿相信其他任何渠道。

热门标签
最新留言
友情链接