-
Notifications
You must be signed in to change notification settings - Fork 136
2.3 传输连接层 Connector
luosheng edited this page Jun 7, 2023
·
3 revisions
传输连接层表示协议通过怎样的传输方式进行传输,对应Modbus.Net中的IConnector。
IConnector有一个标识了连接关键字的字段ConnectionToken,这个关键字用来区分不同的连接。
public abstract string ConnectionToken { get; }
BaseConnector为完全抽象类,继承IConnector,具体如何操作完全由继承类完成。
目前框架中已经实现了TcpConnector和ComConnector。
Connect和ConnectAsync用于建立连接,Disconnect用于断开连接。IProtocalLinker会向IConnector发送连接请求。
只有一个具体的通讯协议才可以指定调用哪种Connector的Connect进行连接。
SendMsg和SendMsgAsync用于向目标设备发送数据,并接收目标设备的响应。
SendMsgWithoutReturn和SendMsgWithoutReturnAsync用于向目标设备发送数据,并且这次发送目标设备不会有任何响应。
IConnector有两个参数类型,分别代表输入类型和输出类型,默认都是byte[]。
对于非线性传输的通讯,需要使用到结构化的数据,此时可以改变输入和输出数据的类型。
Modbus.Net.Opc是已经开放的代码中修改了这两个类型的样例,使用包含的标签数组的结构化数据作为输入类型,以及具有多个返回参数的输出类型。
Modbus.Net Hangzhou Delian Science Technology Co.,Ltd. © 2023
-
2 Specification of Modbus.Net main framework
- 2.1 Modbus.Net Architecture
- 2.2 Transmission Control Layer Controller
- 2.3 Transmission Link Layer Connector
- 2.4 Concrete Protocol Layer ProtocolLinker
- 2.5 Abstract Protocol Layer Protocol
- 2.6 Protocol Presentation Layer Utility
- 2.7 Device Application Layer Machine
- 2.8 Task Application Layer MachineJob
-
3 Using Modbus.Net to implement a protocol
- 3.1 Global Tools
- 3.2 Extends Protocol and ProtocolUnit according to protocol specification
- 3.3 Extends Connector to create a link method
- 3.4 Extends Machine and Utility, creating two apis
- 3.5 Extends API methods to Machine and Utility
- 3.6 Extends Formater, Translator and Combiner, Creating Encoding,Decoding,Combining methods for address
- 3.7 Extends Controller, to control message