OmronFinsNet 类 |
命名空间: HslCommunication.Profinet.Omron
OmronFinsNet 类型公开以下成员。
名称 | 说明 | |
---|---|---|
![]() | OmronFinsNet |
实例化一个欧姆龙PLC Fins帧协议的通讯对象 Instantiate a communication object of Omron PLC Fins frame protocol |
![]() | OmronFinsNet(String, Int32) |
指定ip地址和端口号来实例化一个欧姆龙PLC Fins帧协议的通讯对象 Specify the IP address and port number to instantiate a communication object of the Omron PLC Fins frame protocol |
名称 | 说明 | |
---|---|---|
![]() | AlienSession |
当前的异形连接对象,如果设置了异形连接的话,仅用于异形模式的情况使用 (继承自 NetworkDoubleBase。)The current alien connection object, if alien connection is set, is only used in the case of alien mode |
![]() ![]() | ByteTransform |
当前的数据变换机制,当你需要从字节数据转换类型数据的时候需要。 (继承自 NetworkDoubleBase。)The current data transformation mechanism is required when you need to convert type data from byte data. |
![]() | ConnectionId |
当前连接的唯一ID号,默认为长度20的guid码加随机数组成,方便列表管理,也可以自己指定 (继承自 NetworkDoubleBase。)The unique ID number of the current connection. The default is a 20-digit guid code plus a random number. |
![]() ![]() | ConnectTimeOut |
获取或设置连接的超时时间,单位是毫秒 (继承自 NetworkDoubleBase。)Gets or sets the timeout for the connection, in milliseconds |
![]() | DA1 |
PLC的节点地址,默认为0,在和PLC连接的过程中,自动从PLC获取到DA1的值。 The node address of the PLC is 0 by default. During the process of connecting with the PLC, the value of DA1 is automatically obtained from the PLC. |
![]() | DA2 |
PLC的单元号地址,通常都为0 PLC unit number address, usually 0 |
![]() | DNA |
PLC的网络号地址,默认0x00 PLC network number address, default 0x00 |
![]() | GCT |
网络层信息,默认0x02,如果有八层消息,就设置为0x07 Network layer information, default is 0x02, if there are eight layers of messages, set to 0x07 |
![]() | ICF |
信息控制字段,默认0x80 Information control field, default 0x80 |
![]() ![]() | IpAddress |
获取或是设置远程服务器的IP地址,如果是本机测试,那么需要设置为127.0.0.1 (继承自 NetworkDoubleBase。)Get or set the IP address of the remote server. If it is a local test, then it needs to be set to 127.0.0.1 |
![]() | LocalBinding |
获取或设置绑定的本地的IP地址和端口号信息,如果端口设置为0,代表任何可用的端口 (继承自 NetworkDoubleBase。)Get or set the bound local IP address and port number information, if the port is set to 0, it means any available port |
![]() ![]() | LogNet |
组件的日志工具,支持日志记录,只要实例化后,当前网络的基本信息,就以DEBUG等级进行输出 (继承自 NetworkBase。)The component's logging tool supports logging. As long as the instantiation of the basic network information, the output will be output at DEBUG |
![]() ![]() | Port |
获取或设置服务器的端口号,具体的值需要取决于对方的配置 (继承自 NetworkDoubleBase。)Gets or sets the port number of the server. The specific value depends on the configuration of the other party. |
![]() | ReadSplits |
进行字读取的时候对于超长的情况按照本属性进行切割,默认500,如果不是CP1H及扩展模块的,可以设置为999,可以提高一倍的通信速度。 When reading words, it is cut according to this attribute for the case of overlength. The default is 500. If it is not for CP1H and expansion modules, it can be set to 999, which can double the communication speed. |
![]() ![]() | ReceiveTimeOut |
获取或设置接收服务器反馈的时间,如果为负数,则不接收反馈 (继承自 NetworkDoubleBase。)Gets or sets the time to receive server feedback, and if it is a negative number, does not receive feedback |
![]() | RSV |
系统使用的内部信息 Internal information used by the system |
![]() | SA1 |
上位机的节点地址,默认是0x01,当连接PLC之后,将由PLC来设定当前的值。 The node address of the host computer is 0x01 by default. After connecting to the PLC, the PLC will set the current value. |
![]() | SA2 |
上位机的单元号地址 Unit number and address of the computer |
![]() | SID |
设备的标识号 Service ID. Used to identify the process generating the transmission. Set the SID to any number between 00 and FF |
![]() | SleepTime |
获取或设置在正式接收对方返回数据前的时候,需要休息的时间,当设置为0的时候,不需要休息。 (继承自 NetworkDoubleBase。)Get or set the time required to rest before officially receiving the data from the other party. When it is set to 0, no rest is required. |
![]() | SNA |
上位机的网络号地址 Network number and address of the computer |
![]() | SocketKeepAliveTime |
获取或设置客户端的Socket的心跳时间信息,这个是Socket底层自动实现的心跳包,不基于协议层实现。默认小于0,不开启心跳检测,如果需要开启,设置 60_000 比较合适,单位毫秒 (继承自 NetworkDoubleBase。)Get or set the heartbeat time information of the Socket of the client. This is the heartbeat packet automatically implemented by the bottom layer of the Socket, not based on the protocol layer. The default value is less than 0, and heartbeat detection is not enabled. If you need to enable it, it is more appropriate to set 60_000, in milliseconds. |
![]() ![]() | Token |
网络类的身份令牌,在hsl协议的模式下会有效,在和设备进行通信的时候是无效的 (继承自 NetworkBase。)Network-type identity tokens will be valid in the hsl protocol mode and will not be valid when communicating with the device |
![]() | UseServerActivePush |
获取或设置当前的连接是否激活从服务器主动推送的功能
(继承自 NetworkDoubleBase。) |
![]() | WordLength |
一个字单位的数据表示的地址长度,西门子为2,三菱,欧姆龙,modbusTcp就为1,AB PLC无效 (继承自 NetworkDeviceBase。)The address length represented by one word of data, Siemens is 2, Mitsubishi, Omron, modbusTcp is 1, AB PLC is invalid |
名称 | 说明 | |
---|---|---|
![]() | AccountCertificate |
认证账号,根据已经设置的用户名和密码,进行发送服务器进行账号认证。 (继承自 NetworkDoubleBase。)Authentication account, according to the user name and password that have been set, sending server for account authentication. |
![]() | AccountCertificateAsync |
认证账号,根据已经设置的用户名和密码,进行发送服务器进行账号认证。 (继承自 NetworkDoubleBase。)Authentication account, according to the user name and password that have been set, sending server for account authentication. |
![]() | CheckRemoteToken |
检查当前的头子节信息的令牌是否是正确的,仅用于某些特殊的协议实现 (继承自 NetworkBase。)Check whether the token of the current header subsection information is correct, only for some special protocol implementations |
![]() ![]() | ConnectClose |
手动断开与远程服务器的连接,如果当前是长连接模式,那么就会切换到短连接模式 (继承自 NetworkDoubleBase。)Manually disconnect from the remote server, if it is currently in long connection mode, it will switch to short connection mode |
![]() ![]() | ConnectCloseAsync |
手动断开与远程服务器的连接,如果当前是长连接模式,那么就会切换到短连接模式 (继承自 NetworkDoubleBase。)Manually disconnect from the remote server, if it is currently in long connection mode, it will switch to short connection mode |
![]() ![]() | ConnectServer |
尝试连接远程的服务器,如果连接成功,就切换短连接模式到长连接模式,后面的每次请求都共享一个通道,使得通讯速度更快速 (继承自 NetworkDoubleBase。)Try to connect to a remote server. If the connection is successful, switch the short connection mode to the long connection mode. Each subsequent request will share a channel, making the communication speed faster. |
![]() ![]() | ConnectServer(AlienSession) |
使用指定的套接字创建异形客户端,在异形客户端的模式下,网络通道需要被动创建。 (继承自 NetworkDoubleBase。)Use the specified socket to create the alien client. In the alien client mode, the network channel needs to be created passively. |
![]() | ConnectServer(MqttClient, String, String) |
使用一个MQTT中转服务器来连接设备对象,并进行相关的读取操作
(继承自 NetworkDoubleBase。) |
![]() ![]() | ConnectServerAsync |
尝试连接远程的服务器,如果连接成功,就切换短连接模式到长连接模式,后面的每次请求都共享一个通道,使得通讯速度更快速 (继承自 NetworkDoubleBase。)Try to connect to a remote server. If the connection is successful, switch the short connection mode to the long connection mode. Each subsequent request will share a channel, making the communication speed faster. |
![]() ![]() | CreateSocketAndConnect(String, Int32) |
创建一个新的socket对象并连接到远程的地址,默认超时时间为10秒钟,需要指定ip地址以及端口号信息 (继承自 NetworkBase。)Create a new socket object and connect to the remote address. The default timeout is 10 seconds. You need to specify the IP address and port number. |
![]() ![]() | CreateSocketAndConnect(IPEndPoint, Int32, IPEndPoint) |
创建一个新的socket对象并连接到远程的地址,需要指定远程终结点,超时时间(单位是毫秒),如果需要绑定本地的IP或是端口,传入 local对象 (继承自 NetworkBase。)To create a new socket object and connect to the remote address, you need to specify the remote endpoint, the timeout period (in milliseconds), if you need to bind the local IP or port, pass in the local object |
![]() ![]() | CreateSocketAndConnect(String, Int32, Int32) |
创建一个新的socket对象并连接到远程的地址,需要指定ip地址以及端口号信息,还有超时时间,单位是毫秒 (继承自 NetworkBase。)To create a new socket object and connect to a remote address, you need to specify the IP address and port number information, and the timeout period in milliseconds |
![]() ![]() | CreateSocketAndConnectAsync(String, Int32) |
创建一个新的socket对象并连接到远程的地址,默认超时时间为10秒钟,需要指定ip地址以及端口号信息 (继承自 NetworkBase。)Create a new socket object and connect to the remote address. The default timeout is 10 seconds. You need to specify the IP address and port number. |
![]() ![]() | CreateSocketAndConnectAsync(IPEndPoint, Int32, IPEndPoint) |
创建一个新的socket对象并连接到远程的地址,需要指定远程终结点,超时时间(单位是毫秒),如果需要绑定本地的IP或是端口,传入 local对象 (继承自 NetworkBase。)To create a new socket object and connect to the remote address, you need to specify the remote endpoint, the timeout period (in milliseconds), if you need to bind the local IP or port, pass in the local object |
![]() ![]() | CreateSocketAndConnectAsync(String, Int32, Int32) |
创建一个新的socket对象并连接到远程的地址,需要指定ip地址以及端口号信息,还有超时时间,单位是毫秒 (继承自 NetworkBase。)To create a new socket object and connect to a remote address, you need to specify the IP address and port number information, and the timeout period in milliseconds |
![]() | DecideWhetherQAMessage |
决定当前的消息是否是应答机制的消息内容,需要在客户端进行重写实现,如果是应答机制,返回 True, 否则返回 False (继承自 NetworkDoubleBase。)To determine whether the current message is the message content of the response mechanism, it needs to be rewritten on the client side. If it is the response mechanism, return True, otherwise return False |
![]() | DeleteFileByName |
删除一个指定的文件,如果文件不存在,直接返回 True,如果文件存在则直接删除,删除成功返回 True,如果发生了异常,返回False (继承自 NetworkBase。)Delete a specified file, if the file does not exist, return True directly, if the file exists, delete it directly, if the deletion is successful, return True, if an exception occurs, return False |
![]() | Dispose |
释放当前的资源,如果调用了本方法,那么该对象再使用的时候,需要重新实例化。 (继承自 NetworkDoubleBase。)Release the current resource. If this method is called, the object needs to be instantiated again when it is used again. |
![]() | Dispose(Boolean) |
释放当前的资源,并自动关闭长连接,如果设置了的话
(继承自 NetworkDoubleBase。) |
![]() | Equals | (继承自 Object。) |
![]() | ExtraAfterReadFromCoreServer |
和服务器交互完成的时候调用的方法,可以根据读写结果进行一些额外的操作,具体的操作需要根据实际的需求来重写实现 (继承自 NetworkDoubleBase。)The method called when the interaction with the server is completed can perform some additional operations based on the read and write results. The specific operations need to be rewritten according to actual needs. |
![]() ![]() | ExtraOnDisconnect |
根据实际的协议选择是否重写本方法,有些协议在断开连接之前,需要发送一些报文来关闭当前的网络通道 (继承自 NetworkDoubleBase。)Select whether to rewrite this method according to the actual protocol. Some protocols need to send some packets to close the current network channel before disconnecting. |
![]() ![]() | ExtraOnDisconnectAsync |
根据实际的协议选择是否重写本方法,有些协议在断开连接之前,需要发送一些报文来关闭当前的网络通道 (继承自 NetworkDoubleBase。)Select whether to rewrite this method according to the actual protocol. Some protocols need to send some packets to close the current network channel before disconnecting. |
![]() | Finalize | (继承自 Object。) |
![]() | GetAvailableSocket |
获取本次操作的可用的网络通道,如果是短连接,就重新生成一个新的网络通道,如果是长连接,就复用当前的网络通道。 (继承自 NetworkDoubleBase。)Obtain the available network channels for this operation. If it is a short connection, a new network channel is regenerated. If it is a long connection, the current network channel is reused. |
![]() | GetAvailableSocketAsync |
获取本次操作的可用的网络通道,如果是短连接,就重新生成一个新的网络通道,如果是长连接,就复用当前的网络通道。 (继承自 NetworkDoubleBase。)Obtain the available network channels for this operation. If it is a short connection, a new network channel is regenerated. If it is a long connection, the current network channel is reused. |
![]() | GetHashCode | (继承自 Object。) |
![]() | GetNewNetMessage |
获取一个新的消息对象的方法,需要在继承类里面进行重写 (重写 NetworkDoubleBaseGetNewNetMessage.)The method to get a new message object needs to be overridden in the inheritance class |
![]() | GetPipeSocket |
获取当前用于通信的管道信息 (继承自 NetworkDoubleBase。)Get the current pipe information used for communication |
![]() | GetType | (继承自 Object。) |
![]() | GetWordLength |
一个字单位的数据表示的地址长度,西门子为2,三菱,欧姆龙,modbusTcp就为1,AB PLC无效 (继承自 NetworkDeviceBase。)The address length represented by one word of data, Siemens is 2, Mitsubishi, Omron, modbusTcp is 1, AB PLC is invalid |
![]() ![]() | InitializationOnConnect |
根据实际的协议选择是否重写本方法,有些协议在创建连接之后,需要进行一些初始化的信号握手,才能最终建立网络通道。 (重写 NetworkDoubleBaseInitializationOnConnect(Socket).)Whether to rewrite this method is based on the actual protocol. Some protocols require some initial signal handshake to establish a network channel after the connection is created. |
![]() ![]() | InitializationOnConnectAsync |
根据实际的协议选择是否重写本方法,有些协议在创建连接之后,需要进行一些初始化的信号握手,才能最终建立网络通道。 (重写 NetworkDoubleBaseInitializationOnConnectAsync(Socket).)Whether to rewrite this method is based on the actual protocol. Some protocols require some initial signal handshake to establish a network channel after the connection is created. |
![]() | IpAddressPing |
对当前设备的IP地址进行PING的操作,返回PING的结果,正常来说,返回Success (继承自 NetworkDoubleBase。)PING the IP address of the current device and return the PING result. Normally, it returns Success |
![]() | MemberwiseClone | (继承自 Object。) |
![]() | PackCommandWithHeader |
对当前的命令进行打包处理,通常是携带命令头内容,标记当前的命令的长度信息,需要进行重写,否则默认不打包 (重写 NetworkDoubleBasePackCommandWithHeader(Byte).)The current command is packaged, usually carrying the content of the command header, marking the length of the current command, and it needs to be rewritten, otherwise it is not packaged by default |
![]() | Read(String) |
从欧姆龙PLC中读取多个地址的数据,返回读取结果,每个地址按照字为单位读取,地址格式为"D100","C100","W100","H100","A100"
|
![]() ![]() | Read(String, UInt16) |
从欧姆龙PLC中读取想要的数据,返回读取结果,读取长度的单位为字,地址格式为"D100","C100","W100","H100","A100" (重写 NetworkDeviceBaseRead(String, UInt16).)Read the desired data from the Omron PLC and return the read result. The unit of the read length is word. The address format is "D100", "C100", "W100", "H100", "A100" |
![]() ![]() | ReadT |
读取支持Hsl特性的数据内容,该特性为HslDeviceAddressAttribute,详细参考api文档说明 (继承自 NetworkDeviceBase。)Read the data content of the Hsl attribute. The attribute is HslDeviceAddressAttribute, please refer to the api documentation for details. |
![]() | ReadAsync(String) |
从欧姆龙PLC中读取多个地址的数据,返回读取结果,每个地址按照字为单位读取,地址格式为"D100","C100","W100","H100","A100"
|
![]() ![]() | ReadAsync(String, UInt16) |
从欧姆龙PLC中读取想要的数据,返回读取结果,读取长度的单位为字,地址格式为"D100","C100","W100","H100","A100" (重写 NetworkDeviceBaseReadAsync(String, UInt16).)Read the desired data from the Omron PLC and return the read result. The unit of the read length is word. The address format is "D100", "C100", "W100", "H100", "A100" |
![]() ![]() | ReadAsyncT |
异步读取支持Hsl特性的数据内容,该特性为HslDeviceAddressAttribute,详细参考api文档说明 (继承自 NetworkDeviceBase。)Asynchronously read the data content of the Hsl attribute. The attribute is HslDeviceAddressAttribute, please refer to the api documentation for details. |
![]() | ReadBool(String) |
读取单个的Boolean数据信息 (继承自 NetworkDeviceBase。)Read a single Boolean data message |
![]() ![]() | ReadBool(String, UInt16) |
从欧姆龙PLC中批量读取位软元件,地址格式为"D100.0","C100.0","W100.0","H100.0","A100.0" (重写 NetworkDeviceBaseReadBool(String, UInt16).)Read bit devices in batches from Omron PLC with address format "D100.0", "C100.0", "W100.0", "H100.0", "A100.0" |
![]() | ReadBoolAsync(String) |
异步读取单个的Boolean数据信息 (继承自 NetworkDeviceBase。)Asynchronously read a single Boolean data message |
![]() ![]() | ReadBoolAsync(String, UInt16) |
从欧姆龙PLC中批量读取位软元件,地址格式为"D100.0","C100.0","W100.0","H100.0","A100.0" (重写 NetworkDeviceBaseReadBoolAsync(String, UInt16).)Read bit devices in batches from Omron PLC with address format "D100.0", "C100.0", "W100.0", "H100.0", "A100.0" |
![]() | ReadCpuUnitData | [商业授权] 读取CPU的一些数据信息,主要包含型号,版本,一些数据块的大小 [Authorization] Read some data information of the CPU, mainly including the model, version, and the size of some data blocks |
![]() | ReadCpuUnitDataAsync | [商业授权] 读取CPU的一些数据信息,主要包含型号,版本,一些数据块的大小 [Authorization] Read some data information of the CPU, mainly including the model, version, and the size of some data blocks |
![]() | ReadCpuUnitStatus | [商业授权] 读取CPU单元的一些操作状态数据,主要包含运行状态,工作模式,错误信息等。 [Authorization] Read some operating status data of the CPU unit, mainly including operating status, working mode, error information, etc. |
![]() | ReadCpuUnitStatusAsync | [商业授权] 读取CPU单元的一些操作状态数据,主要包含运行状态,工作模式,错误信息等。 [Authorization] Read some operating status data of the CPU unit, mainly including operating status, working mode, error information, etc. |
![]() ![]() | ReadCustomerT(String) |
读取自定义的数据类型,需要继承自IDataTransfer接口,返回一个新的类型的实例对象。 (继承自 NetworkDeviceBase。)To read a custom data type, you need to inherit from the IDataTransfer interface and return an instance object of a new type. |
![]() ![]() | ReadCustomerT(String, T) |
读取自定义的数据类型,需要继承自IDataTransfer接口,传入一个实例,对这个实例进行赋值,并返回该实例的对象。 (继承自 NetworkDeviceBase。)To read a custom data type, you need to inherit from the IDataTransfer interface, pass in an instance, assign a value to this instance, and return the object of the instance. |
![]() ![]() | ReadCustomerAsyncT(String) |
读取自定义的数据类型,需要继承自IDataTransfer接口,返回一个新的类型的实例对象。 (继承自 NetworkDeviceBase。)To read a custom data type, you need to inherit from the IDataTransfer interface and return an instance object of a new type. |
![]() ![]() | ReadCustomerAsyncT(String, T) |
读取自定义的数据类型,需要继承自IDataTransfer接口,传入一个实例,对这个实例进行赋值,并返回该实例的对象。 (继承自 NetworkDeviceBase。)To read a custom data type, you need to inherit from the IDataTransfer interface, pass in an instance, assign a value to this instance, and return the object of the instance. |
![]() ![]() | ReadDouble(String) |
读取双浮点的数据 (继承自 NetworkDeviceBase。)Read double floating point data |
![]() ![]() | ReadDouble(String, UInt16) |
读取双浮点数据的数组 (继承自 NetworkDeviceBase。)Read double floating point data array |
![]() ![]() | ReadDoubleAsync(String) |
异步读取双浮点的数据 (继承自 NetworkDeviceBase。)Asynchronously read double floating point data |
![]() ![]() | ReadDoubleAsync(String, UInt16) |
异步读取双浮点数据的数组 (继承自 NetworkDeviceBase。)Asynchronously read double floating point data array |
![]() ![]() | ReadFloat(String) |
读取单浮点数据 (继承自 NetworkDeviceBase。)Read single floating point data |
![]() ![]() | ReadFloat(String, UInt16) |
读取单浮点精度的数组 (继承自 NetworkDeviceBase。)Read single floating point array |
![]() ![]() | ReadFloatAsync(String) |
异步读取单浮点数据 (继承自 NetworkDeviceBase。)Asynchronously read single floating point data |
![]() ![]() | ReadFloatAsync(String, UInt16) |
异步读取单浮点精度的数组 (继承自 NetworkDeviceBase。)Asynchronously read single floating point array |
![]() ![]() | ReadFromCoreServer(Byte) |
将数据发送到当前的网络通道中,并从网络通道中接收一个INetMessage指定的完整的报文,网络通道将根据GetAvailableSocket方法自动获取,本方法是线程安全的。 (继承自 NetworkDoubleBase。)Send data to the current network channel and receive a complete message specified by INetMessage from the network channel. The network channel will be automatically obtained according to the GetAvailableSocket method This method is thread-safe. |
![]() | ReadFromCoreServer(IEnumerableByte) |
将多个数据报文按顺序发到设备,并从设备接收返回的数据内容,然后拼接成一个Byte[]信息,需要重写UnpackResponseContent(Byte, Byte)方法才能返回正确的结果。 (继承自 NetworkDoubleBase。)Send multiple data packets to the device in sequence, and receive the returned data content from the device, and then splicing them into a Byte[] message, you need to rewrite UnpackResponseContent(Byte, Byte) method to return the correct result. |
![]() ![]() | ReadFromCoreServer(Byte, Boolean, Boolean) |
将数据发送到当前的网络通道中,并从网络通道中接收一个INetMessage指定的完整的报文,网络通道将根据GetAvailableSocket方法自动获取,本方法是线程安全的。 (继承自 NetworkDoubleBase。)Send data to the current network channel and receive a complete message specified by INetMessage from the network channel. The network channel will be automatically obtained according to the GetAvailableSocket method This method is thread-safe. |
![]() ![]() | ReadFromCoreServer(Socket, Byte, Boolean, Boolean) |
将数据报文发送指定的网络通道上,根据当前指定的INetMessage类型,返回一条完整的数据指令 (继承自 NetworkDoubleBase。)Sends a data message to the specified network channel, and returns a complete data command according to the currently specified INetMessage type |
![]() ![]() | ReadFromCoreServerAsync(Byte) |
将数据发送到当前的网络通道中,并从网络通道中接收一个INetMessage指定的完整的报文,网络通道将根据GetAvailableSocket方法自动获取,本方法是线程安全的。 (继承自 NetworkDoubleBase。)Send data to the current network channel and receive a complete message specified by INetMessage from the network channel. The network channel will be automatically obtained according to the GetAvailableSocket method This method is thread-safe. |
![]() | ReadFromCoreServerAsync(IEnumerableByte) |
将多个数据报文按顺序发到设备,并从设备接收返回的数据内容,然后拼接成一个Byte[]信息,需要重写UnpackResponseContent(Byte, Byte)方法才能返回正确的结果。 (继承自 NetworkDoubleBase。)Send multiple data packets to the device in sequence, and receive the returned data content from the device, and then splicing them into a Byte[] message, you need to rewrite UnpackResponseContent(Byte, Byte) method to return the correct result. |
![]() ![]() | ReadFromCoreServerAsync(Byte, Boolean, Boolean) |
将数据发送到当前的网络通道中,并从网络通道中接收一个INetMessage指定的完整的报文,网络通道将根据GetAvailableSocket方法自动获取,本方法是线程安全的。 (继承自 NetworkDoubleBase。)Send data to the current network channel and receive a complete message specified by INetMessage from the network channel. The network channel will be automatically obtained according to the GetAvailableSocket method This method is thread-safe. |
![]() ![]() | ReadFromCoreServerAsync(Socket, Byte, Boolean, Boolean) |
将数据报文发送指定的网络通道上,根据当前指定的INetMessage类型,返回一条完整的数据指令 (继承自 NetworkDoubleBase。)Sends a data message to the specified network channel, and returns a complete data command according to the currently specified INetMessage type |
![]() ![]() | ReadInt16(String) |
读取16位的有符号的整型数据 (继承自 NetworkDeviceBase。)Read 16-bit signed integer data |
![]() ![]() | ReadInt16(String, UInt16) |
读取16位的有符号整型数组 (继承自 NetworkDeviceBase。)Read 16-bit signed integer array |
![]() ![]() | ReadInt16Async(String) |
异步读取16位的有符号的整型数据 (继承自 NetworkDeviceBase。)Asynchronously read 16-bit signed integer data |
![]() ![]() | ReadInt16Async(String, UInt16) |
异步读取16位的有符号整型数组 (继承自 NetworkDeviceBase。)Asynchronously read 16-bit signed integer array |
![]() ![]() | ReadInt32(String) |
读取32位的有符号整型 (继承自 NetworkDeviceBase。)Read 32-bit signed integer |
![]() ![]() | ReadInt32(String, UInt16) |
读取32位有符号整型数组 (继承自 NetworkDeviceBase。)Read 32-bit signed integer array |
![]() ![]() | ReadInt32Async(String) |
异步读取32位的有符号整型 (继承自 NetworkDeviceBase。)Asynchronously read 32-bit signed integer |
![]() ![]() | ReadInt32Async(String, UInt16) |
异步读取32位有符号整型数组 (继承自 NetworkDeviceBase。)Asynchronously read 32-bit signed integer array |
![]() ![]() | ReadInt64(String) |
读取64位的有符号整型 (继承自 NetworkDeviceBase。)Read 64-bit signed integer |
![]() ![]() | ReadInt64(String, UInt16) |
读取64位的有符号整型数组 (继承自 NetworkDeviceBase。)Read 64-bit signed integer array |
![]() ![]() | ReadInt64Async(String) |
异步读取64位的有符号整型 (继承自 NetworkDeviceBase。)Asynchronously read 64-bit signed integer |
![]() ![]() | ReadInt64Async(String, UInt16) |
异步读取64位的有符号整型数组 (继承自 NetworkDeviceBase。)Asynchronously read 64-bit signed integer array |
![]() | ReadStream |
读取流中的数据到缓存区,读取的长度需要按照实际的情况来判断 (继承自 NetworkBase。)Read the data in the stream to the buffer area. The length of the read needs to be determined according to the actual situation. |
![]() | ReadStreamAsync |
读取流中的数据到缓存区,读取的长度需要按照实际的情况来判断 (继承自 NetworkBase。)Read the data in the stream to the buffer area. The length of the read needs to be determined according to the actual situation. |
![]() ![]() | ReadString(String, UInt16) |
读取字符串数据,默认为最常见的ASCII编码 (重写 NetworkDeviceBaseReadString(String, UInt16).)Read string data, default is the most common ASCII encoding |
![]() ![]() | ReadString(String, UInt16, Encoding) |
使用指定的编码,读取字符串数据 (继承自 NetworkDeviceBase。)Reads string data using the specified encoding |
![]() ![]() | ReadStringAsync(String, UInt16) |
异步读取字符串数据,默认为最常见的ASCII编码 (重写 NetworkDeviceBaseReadStringAsync(String, UInt16).)Asynchronously read string data, default is the most common ASCII encoding |
![]() ![]() | ReadStringAsync(String, UInt16, Encoding) |
异步使用指定的编码,读取字符串数据 (继承自 NetworkDeviceBase。)Asynchronously reads string data using the specified encoding |
![]() ![]() | ReadStructT |
读取结构体类型的数据,根据结构体自身的定义,读取原始字节数组,然后解析出实际的结构体数据,结构体需要实现HslStructAttribute特性
(继承自 NetworkDeviceBase。) |
![]() ![]() | ReadStructAsyncT |
读取结构体类型的数据,根据结构体自身的定义,读取原始字节数组,然后解析出实际的结构体数据,结构体需要实现HslStructAttribute特性
(继承自 NetworkDeviceBase。) |
![]() ![]() | ReadUInt16(String) |
读取16位的无符号整型 (继承自 NetworkDeviceBase。)Read 16-bit unsigned integer |
![]() ![]() | ReadUInt16(String, UInt16) |
读取16位的无符号整型数组 (继承自 NetworkDeviceBase。)Read 16-bit unsigned integer array |
![]() ![]() | ReadUInt16Async(String) |
异步读取16位的无符号整型 (继承自 NetworkDeviceBase。)Asynchronously read 16-bit unsigned integer |
![]() ![]() | ReadUInt16Async(String, UInt16) |
异步读取16位的无符号整型数组 (继承自 NetworkDeviceBase。)Asynchronously read 16-bit unsigned integer array |
![]() ![]() | ReadUInt32(String) |
读取32位的无符号整型 (继承自 NetworkDeviceBase。)Read 32-bit unsigned integer |
![]() ![]() | ReadUInt32(String, UInt16) |
读取32位的无符号整型数组 (继承自 NetworkDeviceBase。)Read 32-bit unsigned integer array |
![]() ![]() | ReadUInt32Async(String) |
异步读取32位的无符号整型 (继承自 NetworkDeviceBase。)Asynchronously read 32-bit unsigned integer |
![]() ![]() | ReadUInt32Async(String, UInt16) |
异步读取32位的无符号整型数组 (继承自 NetworkDeviceBase。)Asynchronously read 32-bit unsigned integer array |
![]() ![]() | ReadUInt64(String) |
读取64位的无符号整型 (继承自 NetworkDeviceBase。)Read 64-bit unsigned integer |
![]() ![]() | ReadUInt64(String, UInt16) |
读取64位的无符号整型的数组 (继承自 NetworkDeviceBase。)Read 64-bit unsigned integer array |
![]() ![]() | ReadUInt64Async(String) |
异步读取64位的无符号整型 (继承自 NetworkDeviceBase。)Asynchronously read 64-bit unsigned integer |
![]() ![]() | ReadUInt64Async(String, UInt16) |
异步读取64位的无符号整型的数组 (继承自 NetworkDeviceBase。)Asynchronously read 64-bit unsigned integer array |
![]() | Receive(SslStream, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | Receive(Socket, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | Receive(SslStream, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | Receive(Socket, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | ReceiveAndCheckBytes |
[自校验] 接收一条完整的同步数据,包含头子节和内容字节,基础的数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a complete synchronization data, including header subsection and content bytes, basic data, if the result is abnormal, the communication ends |
![]() | ReceiveAndCheckBytesAsync |
[自校验] 接收一条完整的同步数据,包含头子节和内容字节,基础的数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a complete synchronization data, including header subsection and content bytes, basic data, if the result is abnormal, the communication ends |
![]() | ReceiveAsync(SslStream, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | ReceiveAsync(Socket, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,接收不大于2048长度的随机数据信息 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | ReceiveAsync(SslStream, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | ReceiveAsync(Socket, Byte, Int32, Int32, Int32, ActionInt64, Int64) |
接收固定长度的字节数组,允许指定超时时间,默认为60秒,当length大于0时,接收固定长度的数据内容,当length小于0时,buffer长度的缓存数据 (继承自 NetworkBase。)Receiving a fixed-length byte array, allowing a specified timeout time. The default is 60 seconds. When length is greater than 0, fixed-length data content is received. When length is less than 0, random data information of a length not greater than 2048 is received. |
![]() | ReceiveByMessage |
接收一条完整的 数据内容,需要指定超时时间,单位为毫秒。 (继承自 NetworkBase。)Receive a complete data content, Need to specify a timeout period in milliseconds |
![]() | ReceiveByMessageAsync |
接收一条完整的 数据内容,需要指定超时时间,单位为毫秒。 (继承自 NetworkBase。)Receive a complete data content, Need to specify a timeout period in milliseconds |
![]() | ReceiveBytesContentFromSocket |
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of byte data from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveBytesContentFromSocketAsync |
[自校验] 从网络中接收一串字节数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of byte data from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveCommandLineFromSocket(Socket, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. |
![]() | ReceiveCommandLineFromSocket(Socket, Byte, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. |
![]() | ReceiveCommandLineFromSocketAsync(Socket, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. |
![]() | ReceiveCommandLineFromSocketAsync(Socket, Byte, Byte, Int32) |
接收一行命令数据,需要自己指定这个结束符,默认超时时间为60秒,也即是60000,单位是毫秒 (继承自 NetworkBase。)To receive a line of command data, you need to specify the terminator yourself. The default timeout is 60 seconds, which is 60,000, in milliseconds. |
![]() | ReceiveHslMessage |
接收一条hsl协议的数据信息,自动解析,解压,解码操作,获取最后的实际的数据,接收结果依次为暗号,用户码,负载数据 (继承自 NetworkBase。)Receive a piece of hsl protocol data information, automatically parse, decompress, and decode operations to obtain the last actual data. The result is a opCode, user code, and payload data in order. |
![]() | ReceiveHslMessageAsync |
接收一条hsl协议的数据信息,自动解析,解压,解码操作,获取最后的实际的数据,接收结果依次为暗号,用户码,负载数据 (继承自 NetworkBase。)Receive a piece of hsl protocol data information, automatically parse, decompress, and decode operations to obtain the last actual data. The result is a opCode, user code, and payload data in order. |
![]() | ReceiveMqttFile |
使用MQTT协议从网络接收字节数组,然后写入文件或流中,支持进度报告 (继承自 NetworkBase。)Use MQTT protocol to receive byte array from the network, and then write it to file or stream, support progress report |
![]() | ReceiveMqttFileAsync |
使用MQTT协议从网络接收字节数组,然后写入文件或流中,支持进度报告 (继承自 NetworkBase。)Use MQTT protocol to receive byte array from the network, and then write it to file or stream, support progress report |
![]() | ReceiveMqttMessage(SslStream, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data |
![]() | ReceiveMqttMessage(Socket, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data |
![]() | ReceiveMqttMessageAsync(SslStream, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data |
![]() | ReceiveMqttMessageAsync(Socket, Int32, ActionInt64, Int64) |
接收一条完整的MQTT协议的报文信息,包含控制码和负载数据 (继承自 NetworkBase。)Receive a message of a completed MQTT protocol, including control code and payload data |
![]() | ReceiveMqttStream |
使用MQTT协议从socket接收指定长度的字节数组,然后全部写入到流中,可以指定进度报告 (继承自 NetworkBase。)Use the MQTT protocol to receive a byte array of specified length from the socket, and then write all of them to the stream, and you can specify a progress report |
![]() | ReceiveMqttStreamAsync |
使用MQTT协议从socket接收指定长度的字节数组,然后全部写入到流中,可以指定进度报告 (继承自 NetworkBase。)Use the MQTT protocol to receive a byte array of specified length from the socket, and then write all of them to the stream, and you can specify a progress report |
![]() | ReceiveRedisCommand |
从网络接收一条完整的redis报文的消息 (继承自 NetworkBase。)Receive a complete redis message from the network |
![]() | ReceiveRedisCommandAsync |
从网络接收一条完整的redis报文的消息 (继承自 NetworkBase。)Receive a complete redis message from the network |
![]() | ReceiveRedisCommandString |
接收一行基于redis协议的字符串的信息,需要指定固定的长度 (继承自 NetworkBase。)Receive a line of information based on the redis protocol string, you need to specify a fixed length |
![]() | ReceiveRedisCommandStringAsync |
接收一行基于redis协议的字符串的信息,需要指定固定的长度 (继承自 NetworkBase。)Receive a line of information based on the redis protocol string, you need to specify a fixed length |
![]() | ReceiveStringArrayContentFromSocket |
[自校验] 从网络中接收一个字符串数组,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Receive an array of strings from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveStringArrayContentFromSocketAsync |
[自校验] 从网络中接收一个字符串数组,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Receive an array of strings from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveStringContentFromSocket |
[自校验] 从网络中接收一个字符串数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of data from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveStringContentFromSocketAsync |
[自校验] 从网络中接收一个字符串数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Receive a string of data from the network. If the result is abnormal, the communication ends. |
![]() | ReceiveVigorMessage |
从Socket接收一条VigorPLC的消息数据信息,指定套接字对象及超时时间 (继承自 NetworkBase。)Receive a message data information of VigorPLC from Socket, specify socket object and timeout time |
![]() | ReceiveVigorMessageAsync |
从Socket接收一条VigorPLC的消息数据信息,指定套接字对象及超时时间 (继承自 NetworkBase。)Receive a message data information of VigorPLC from Socket, specify socket object and timeout time |
![]() | ReceiveWebSocketPayload(SslStream) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage |
![]() | ReceiveWebSocketPayload(Socket) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage |
![]() | ReceiveWebSocketPayloadAsync(SslStream) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage |
![]() | ReceiveWebSocketPayloadAsync(Socket) |
从socket接收一条完整的websocket数据,返回WebSocketMessage的数据信息 (继承自 NetworkBase。)Receive a complete websocket data from the socket, return the data information of the WebSocketMessage |
![]() | Run |
将CPU单元的操作模式更改为RUN,从而使PLC能够执行其程序。 Changes the CPU Unit’s operating mode to RUN, enabling the PLC to execute its program. |
![]() | RunAsync |
将CPU单元的操作模式更改为RUN,从而使PLC能够执行其程序。 Changes the CPU Unit’s operating mode to RUN, enabling the PLC to execute its program. |
![]() | Send(SslStream, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | Send(Socket, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | Send(SslStream, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | Send(Socket, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | SendAccountAndCheckReceive |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendAccountAndCheckReceiveAsync |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendAsync(SslStream, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | SendAsync(Socket, Byte) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | SendAsync(SslStream, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | SendAsync(Socket, Byte, Int32, Int32) |
发送消息给套接字,直到完成的时候返回,经过测试,本方法是线程安全的。 (继承自 NetworkBase。)Send a message to the socket until it returns when completed. After testing, this method is thread-safe. |
![]() | SendBaseAndCheckReceive |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendBaseAndCheckReceiveAsync |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendBytesAndCheckReceive |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendBytesAndCheckReceiveAsync |
[自校验] 发送字节数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send the byte data and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendMqttFile(Socket, Stream, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个数据流发送到网络上去,需要保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)Use the MQTT protocol to send a data stream to the network, the file name that needs to be saved, optional file description information, progress report |
![]() | SendMqttFile(Socket, String, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个文件发送到网络上去,需要指定文件名,保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)To send a file to the network using the MQTT protocol, you need to specify the file name, the saved file name, optionally specify the file description information, and the progress report |
![]() | SendMqttFileAsync(Socket, Stream, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个数据流发送到网络上去,需要保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)Use the MQTT protocol to send a data stream to the network, the file name that needs to be saved, optional file description information, progress report |
![]() | SendMqttFileAsync(Socket, String, String, String, ActionInt64, Int64, AesCryptography, HslCancelToken) |
使用MQTT协议将一个文件发送到网络上去,需要指定文件名,保存的文件名,可选指定文件描述信息,进度报告 (继承自 NetworkBase。)To send a file to the network using the MQTT protocol, you need to specify the file name, the saved file name, optionally specify the file description information, and the progress report |
![]() | SendMqttStream |
使用MQTT协议将流中的数据读取到字节数组,然后都写入到socket里面,可以指定进度报告,主要用于将文件发送到网络。 (继承自 NetworkBase。)Use the MQTT protocol to read the data in the stream into a byte array, and then write them all into the socket. You can specify a progress report, which is mainly used to send files to the network. |
![]() | SendMqttStreamAsync |
使用MQTT协议将流中的数据读取到字节数组,然后都写入到socket里面,可以指定进度报告,主要用于将文件发送到网络。 (继承自 NetworkBase。)Use the MQTT protocol to read the data in the stream into a byte array, and then write them all into the socket. You can specify a progress report, which is mainly used to send files to the network. |
![]() | SendStreamToSocket |
发送一个流的所有数据到指定的网络套接字,需要指定发送的数据长度,支持按照百分比的进度报告 (继承自 NetworkBase。)Send all the data of a stream to the specified network socket. You need to specify the length of the data to be sent. It supports the progress report in percentage. |
![]() | SendStreamToSocketAsync |
发送一个流的所有数据到指定的网络套接字,需要指定发送的数据长度,支持按照百分比的进度报告 (继承自 NetworkBase。)Send all the data of a stream to the specified network socket. You need to specify the length of the data to be sent. It supports the progress report in percentage. |
![]() | SendStringAndCheckReceive(Socket, Int32, String) |
[自校验] 直接发送字符串数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Send string data directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendStringAndCheckReceive(Socket, Int32, String) |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendStringAndCheckReceiveAsync(Socket, Int32, String) |
[自校验] 直接发送字符串数据并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-checking] Send string data directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SendStringAndCheckReceiveAsync(Socket, Int32, String) |
[自校验] 直接发送字符串数组并确认对方接收完成数据,如果结果异常,则结束通讯 (继承自 NetworkBase。)[Self-check] Send string array directly and confirm that the other party has received the completed data. If the result is abnormal, the communication ends. |
![]() | SetLoginAccount |
设置当前的登录的账户名和密码信息,并启用账户验证的功能,账户名为空时设置不生效 (继承自 NetworkDoubleBase。)Set the current login account name and password information, and enable the account verification function. The account name setting will not take effect when it is empty |
![]() ![]() | SetPersistentConnection |
在读取数据之前可以调用本方法将客户端设置为长连接模式,相当于跳过了ConnectServer的结果验证,对异形客户端无效,当第一次进行通信时再进行创建连接请求。 (继承自 NetworkDoubleBase。)Before reading the data, you can call this method to set the client to the long connection mode, which is equivalent to skipping the result verification of ConnectServer, and it is invalid for the alien client. When the first communication is performed, the connection creation request is performed. |
![]() | SetPipeSocket |
设置一个新的网络管道,一般来说不需要调用本方法,当多个网口设备共用一个网络连接时才需要使用本方法进行设置共享的管道。 (继承自 NetworkDoubleBase。)To set up a new network channel, generally speaking, you do not need to call this method. This method is only needed to set up a shared channel when multiple network port devices share a network connection. |
![]() | Stop |
将CPU单元的操作模式更改为PROGRAM,停止程序执行。 Changes the CPU Unit’s operating mode to PROGRAM, stopping program execution. |
![]() | StopAsync |
将CPU单元的操作模式更改为PROGRAM,停止程序执行。 Changes the CPU Unit’s operating mode to PROGRAM, stopping program execution. |
![]() | ToString | (重写 NetworkDeviceBaseToString.) |
![]() | UnpackResponseContent |
根据对方返回的报文命令,对命令进行基本的拆包,例如各种Modbus协议拆包为统一的核心报文,还支持对报文的验证 (重写 NetworkDoubleBaseUnpackResponseContent(Byte, Byte).)According to the message command returned by the other party, the command is basically unpacked, for example, various Modbus protocols are unpacked into a unified core message, and the verification of the message is also supported |
![]() | Wait(String, Boolean, Int32, Int32) |
等待指定地址的Boolean值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Boolean value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, Int16, Int32, Int32) |
等待指定地址的Int16值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int16 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, Int32, Int32, Int32) |
等待指定地址的Int32值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int32 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, Int64, Int32, Int32) |
等待指定地址的Int64值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int64 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, UInt16, Int32, Int32) |
等待指定地址的UInt16值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt16 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, UInt32, Int32, Int32) |
等待指定地址的UInt32值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt32 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Wait(String, UInt64, Int32, Int32) |
等待指定地址的UInt64值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt64 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, Boolean, Int32, Int32) |
等待指定地址的Boolean值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Boolean value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, Int16, Int32, Int32) |
等待指定地址的Int16值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int16 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, Int32, Int32, Int32) |
等待指定地址的Int32值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int32 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, Int64, Int32, Int32) |
等待指定地址的Int64值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the Int64 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, UInt16, Int32, Int32) |
等待指定地址的UInt16值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt16 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, UInt32, Int32, Int32) |
等待指定地址的UInt32值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt32 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | WaitAsync(String, UInt64, Int32, Int32) |
等待指定地址的UInt64值为指定的值,可以指定刷新数据的频率,等待的超时时间,如果超时时间为-1的话,则是无期限等待。 (继承自 NetworkDeviceBase。)Waiting for the UInt64 value of the specified address to be the specified value, you can specify the frequency of refreshing the data, and the timeout time to wait. If the timeout time is -1, it is an indefinite wait. |
![]() | Write(String, Boolean) |
写入单个的Boolean数据,返回是否成功 (继承自 NetworkDeviceBase。)Write a single Boolean data, and return whether the write was successful |
![]() ![]() | Write(String, Double) |
写入double数据,返回是否成功 (继承自 NetworkDeviceBase。)Write double data, return whether the write was successful |
![]() ![]() | Write(String, Double) |
写入double数组,返回是否成功 (继承自 NetworkDeviceBase。)Write double array, return whether the write was successful |
![]() ![]() | Write(String, Int16) |
写入short数据,返回是否成功 (继承自 NetworkDeviceBase。)Write short data, returns whether success |
![]() ![]() | Write(String, Int16) |
写入short数组,返回是否成功 (继承自 NetworkDeviceBase。)Write short array, return whether the write was successful |
![]() ![]() | Write(String, Int32) |
写入int数据,返回是否成功 (继承自 NetworkDeviceBase。)Write int data, return whether the write was successful |
![]() ![]() | Write(String, Int32) |
写入int[]数组,返回是否成功 (继承自 NetworkDeviceBase。)Write int array, return whether the write was successful |
![]() ![]() | Write(String, Int64) |
写入long数据,返回是否成功 (继承自 NetworkDeviceBase。)Write long data, return whether the write was successful |
![]() ![]() | Write(String, Int64) |
写入long数组,返回是否成功 (继承自 NetworkDeviceBase。)Write long array, return whether the write was successful |
![]() ![]() | Write(String, Single) |
写入float数据,返回是否成功 (继承自 NetworkDeviceBase。)Write float data, return whether the write was successful |
![]() ![]() | Write(String, Single) |
写入float数组,返回是否成功 (继承自 NetworkDeviceBase。)Write float array, return whether the write was successful |
![]() ![]() | Write(String, UInt16) |
写入ushort数据,返回是否成功 (继承自 NetworkDeviceBase。)Write ushort data, return whether the write was successful |
![]() ![]() | Write(String, UInt16) |
写入ushort数组,返回是否成功 (继承自 NetworkDeviceBase。)Write ushort array, return whether the write was successful |
![]() ![]() | Write(String, UInt32) |
写入uint数据,返回是否成功 (继承自 NetworkDeviceBase。)Write uint data, return whether the write was successful |
![]() ![]() | Write(String, UInt32) |
写入uint[]数组,返回是否成功 (继承自 NetworkDeviceBase。)Write uint array, return whether the write was successful |
![]() ![]() | Write(String, UInt64) |
写入ulong数据,返回是否成功 (继承自 NetworkDeviceBase。)Write ulong data, return whether the write was successful |
![]() ![]() | Write(String, UInt64) |
写入ulong数组,返回是否成功 (继承自 NetworkDeviceBase。)Write ulong array, return whether the write was successful |
![]() ![]() | Write(String, Boolean) |
向PLC中位软元件写入bool数组,返回是否写入成功,比如你写入D100,values[0]对应D100.0,地址格式为"D100.0","C100.0","W100.0","H100.0","A100.0" (重写 NetworkDeviceBaseWrite(String, Boolean).)Write the bool array to the PLC's median device and return whether the write was successful. For example, if you write D100, values [0] corresponds to D100.0 and the address format is "D100.0", "C100.0", "W100. 0 "," H100.0 "," A100.0 " |
![]() ![]() | Write(String, Byte) |
向PLC写入数据,数据格式为原始的字节类型,地址格式为"D100","C100","W100","H100","A100" (重写 NetworkDeviceBaseWrite(String, Byte).)Write data to PLC, the data format is the original byte type, and the address format is "D100", "C100", "W100", "H100", "A100" |
![]() ![]() | Write(String, String) |
写入字符串信息,编码为ASCII (重写 NetworkDeviceBaseWrite(String, String).)Write string information, encoded as ASCII |
![]() ![]() | Write(String, String, Int32) |
写入指定长度的字符串信息,如果超出,就截断字符串,如果长度不足,那就补0操作,编码为ASCII (继承自 NetworkDeviceBase。)Write string information of the specified length. If it exceeds the value, the string is truncated. If the length is not enough, it is filled with 0 and the encoding is ASCII. |
![]() ![]() | Write(String, String, Encoding) |
写入字符串信息,需要指定的编码信息 (继承自 NetworkDeviceBase。)Write string information, need to specify the encoding information |
![]() ![]() | Write(String, String, Int32, Encoding) |
写入指定长度的字符串信息,如果超出,就截断字符串,如果长度不足,那就补0操作,编码为指定的编码信息 (继承自 NetworkDeviceBase。)Write string information of the specified length. If it exceeds the value, the string is truncated. If the length is not enough, then the operation is complemented with 0 , you should specified the encoding information |
![]() ![]() | WriteT(T) |
写入支持Hsl特性的数据,返回是否写入成功,该特性为HslDeviceAddressAttribute,详细参考api文档说明 (继承自 NetworkDeviceBase。)Write data that supports the Hsl attribute, and return whether the write was successful. The attribute is HslDeviceAddressAttribute, please refer to the api documentation for details. |
![]() | WriteAsync(String, Boolean) |
异步批量写入Boolean数组数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously batch write Boolean array data, return success |
![]() ![]() | WriteAsync(String, Double) |
异步写入double数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write double data, return whether the write was successful |
![]() ![]() | WriteAsync(String, Double) |
异步写入double数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write double array, return whether the write was successful |
![]() ![]() | WriteAsync(String, Int16) |
异步写入short数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write short data, returns whether success |
![]() ![]() | WriteAsync(String, Int16) |
异步写入short数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write short array, return whether the write was successful |
![]() ![]() | WriteAsync(String, Int32) |
异步写入int数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write int data, return whether the write was successful |
![]() ![]() | WriteAsync(String, Int32) |
异步写入int[]数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write int array, return whether the write was successful |
![]() ![]() | WriteAsync(String, Int64) |
异步写入long数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write long data, return whether the write was successful |
![]() ![]() | WriteAsync(String, Int64) |
异步写入long数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write long array, return whether the write was successful |
![]() ![]() | WriteAsync(String, Single) |
异步写入float数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write float data, return whether the write was successful |
![]() ![]() | WriteAsync(String, Single) |
异步写入float数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write float array, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt16) |
异步写入ushort数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write ushort data, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt16) |
异步写入ushort数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write ushort array, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt32) |
异步写入uint数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write uint data, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt32) |
异步写入uint[]数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write uint array, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt64) |
异步写入ulong数据,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write ulong data, return whether the write was successful |
![]() ![]() | WriteAsync(String, UInt64) |
异步写入ulong数组,返回是否成功 (继承自 NetworkDeviceBase。)Asynchronously write ulong array, return whether the write was successful |
![]() ![]() | WriteAsync(String, Boolean) |
向PLC中位软元件写入bool数组,返回是否写入成功,比如你写入D100,values[0]对应D100.0,地址格式为"D100.0","C100.0","W100.0","H100.0","A100.0" (重写 NetworkDeviceBaseWriteAsync(String, Boolean).)Write the bool array to the PLC's median device and return whether the write was successful. For example, if you write D100, values [0] corresponds to D100.0 and the address format is "D100.0", "C100.0", "W100. 0 "," H100.0 "," A100.0 " |
![]() ![]() | WriteAsync(String, Byte) |
向PLC写入数据,数据格式为原始的字节类型,地址格式为"D100","C100","W100","H100","A100" (重写 NetworkDeviceBaseWriteAsync(String, Byte).)Write data to PLC, the data format is the original byte type, and the address format is "D100", "C100", "W100", "H100", "A100" |
![]() ![]() | WriteAsync(String, String) |
异步写入字符串信息,编码为ASCII (重写 NetworkDeviceBaseWriteAsync(String, String).)Asynchronously write string information, encoded as ASCII |
![]() | WriteAsync(String, String, Int32) |
异步写入指定长度的字符串信息,如果超出,就截断字符串,如果长度不足,那就补0操作,编码为ASCII (继承自 NetworkDeviceBase。)Asynchronously write string information of the specified length. If it exceeds the value, the string is truncated. If the length is not enough, it is filled with 0 and the encoding is ASCII. |
![]() ![]() | WriteAsync(String, String, Encoding) |
异步写入字符串信息,需要指定的编码信息 (继承自 NetworkDeviceBase。)Asynchronously write string information, need to specify the encoding information |
![]() | WriteAsync(String, String, Int32, Encoding) |
异步写入指定长度的字符串信息,如果超出,就截断字符串,如果长度不足,那就补0操作,编码为指定的编码信息 (继承自 NetworkDeviceBase。)Asynchronously write string information of the specified length. If it exceeds the value, the string is truncated. If the length is not enough, then the operation is complemented with 0 , you should specified the encoding information |
![]() ![]() | WriteAsyncT(T) |
异步写入支持Hsl特性的数据,返回是否写入成功,该特性为HslDeviceAddressAttribute,详细参考api文档说明 (继承自 NetworkDeviceBase。)Asynchronously write data that supports the Hsl attribute, and return whether the write was successful. The attribute is HslDeviceAddressAttribute, please refer to the api documentation for details. |
![]() ![]() | WriteCustomerT |
写入自定义类型的数据,该类型必须继承自IDataTransfer接口 (继承自 NetworkDeviceBase。)Write data of a custom type, which must inherit from the IDataTransfer interface |
![]() ![]() | WriteCustomerAsyncT |
写入自定义类型的数据,该类型必须继承自IDataTransfer接口 (继承自 NetworkDeviceBase。)Write data of a custom type, which must inherit from the IDataTransfer interface |
![]() | WriteStream |
将缓冲区的数据写入到流里面去 (继承自 NetworkBase。)Write the buffer data to the stream |
![]() | WriteStreamAsync |
将缓冲区的数据写入到流里面去 (继承自 NetworkBase。)Write the buffer data to the stream |
![]() | WriteStreamFromSocket |
从套接字中接收所有的数据然后写入到指定的流当中去,需要指定数据的长度,支持按照百分比进行进度报告 (继承自 NetworkBase。)Receives all data from the socket and writes it to the specified stream. The length of the data needs to be specified, and progress reporting is supported in percentage. |
![]() | WriteStreamFromSocketAsync |
从套接字中接收所有的数据然后写入到指定的流当中去,需要指定数据的长度,支持按照百分比进行进度报告 (继承自 NetworkBase。)Receives all data from the socket and writes it to the specified stream. The length of the data needs to be specified, and progress reporting is supported in percentage. |
名称 | 说明 | |
---|---|---|
![]() | fileCacheSize |
文件传输的时候的缓存大小,直接影响传输的速度,值越大,传输速度越快,越占内存,默认为100K大小 (继承自 NetworkBase。)The size of the cache during file transfer directly affects the speed of the transfer. The larger the value, the faster the transfer speed and the more memory it takes. The default size is 100K. |
![]() | isPersistentConn |
是否是长连接的状态 (继承自 NetworkDoubleBase。)Whether it is a long connection state |
![]() | isUseAccountCertificate |
是否使用账号登录,这个账户登录的功能是HSL组件创建的服务器特有的功能。 (继承自 NetworkDoubleBase。)Whether to log in using an account. The function of this account login is a server-specific function created by the HSL component. |
![]() | LogMsgFormatBinary |
设置日志记录报文是否二进制,如果为False,那就使用ASCII码 (继承自 NetworkDoubleBase。)Set whether the log message is binary, if it is False, then use ASCII code |
![]() | pipeSocket |
当前的网络的管道信息
(继承自 NetworkDoubleBase。) |
名称 | 说明 | |
---|---|---|
![]() | ToJsonString |
获取当前对象的JSON格式表示的字符串。 (由 HslExtension 定义。)Gets the string represented by the JSON format of the current object. |
![]() |
---|
PLC的IP地址的要求,最后一个整数的范围应该小于250,否则会发生连接不上的情况。 |
![]() |
---|
如果在测试的时候报错误码64,经网友 上海-Lex 指点,是因为PLC中产生了报警,如伺服报警,模块错误等产生的,但是数据还是能正常读到的,屏蔽64报警或清除plc错误可解决 |
![]() |
---|
如果碰到NX系列连接失败,或是无法读取的,需要使用网口2,配置ip地址,网线连接网口2,配置FINSTCP,把UDP的端口改成9601的,这样就可以读写了。 |
地址名称 | 地址代号 | 示例 | 地址进制 | 字操作 | 位操作 | 备注 |
---|---|---|---|---|---|---|
DM Area | D | D100,D200 | 10 | √ | √ | 也可以写DM100,DM200 |
CIO Area | C | C100,C200 | 10 | √ | √ | 也可以写CIO100,CIO200 |
Work Area | W | W100,W200 | 10 | √ | √ | 也可以写WR100,WR200 |
Holding Bit Area | H | H100,H200 | 10 | √ | √ | 也可以写HR100,HR200 |
Auxiliary Bit Area | A | A100,A200 | 10 | √ | √ | 也可以写成AR100,AR200 |
EM Area | E | E0.0,EF.200,E10.100 | 10 | √ | √ | 也可以写成EM0.0,EMF.200 |
Timer Area | TIM | TIM100,TIM200 | 10 | √ | √ | 读bool就是完成标记,读字就是当前值 |
Counter Area | CNT | CNT100,CNT200 | 10 | √ | √ | 读bool就是完成标记,读字就是当前值 |
Index Register | IR | IR0,IR15 | 10 | √ | × | 只能读写字 |
Data Register | DR | DR0,DR15 | 10 | √ | × | 只能读写字 |
Condition Flags | CF | CF1.2,CF1001.0 | 10 | × | √ | 只能读位 |
// 实例化对象,指定PLC的ip地址和端口号 OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 举例读取D100的值 short D100 = omronFinsNet.ReadInt16( "D100" ).Content;
// 实例化对象,指定PLC的ip地址和端口号 OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 连接对象,自动切换为长连接 OperateResult connect = omronFinsNet.ConnectServer( ); if (!connect.IsSuccess) { Console.WriteLine( "connect failed:" + connect.Message ); return; } // 举例读取D100的值 short D100 = omronFinsNet.ReadInt16( "D100" ).Content; // 可以继续读写操作,直到不需要了再进行关闭操作 omronFinsNet.ConnectClose( );
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 此处以D寄存器作为示例 bool D100_7 = omronFinsNet.ReadBool( "D100.7" ).Content; // 读取D100.7是否通断,注意D100.0等同于D100 short short_D100 = omronFinsNet.ReadInt16( "D100" ).Content; // 读取D100组成的字 ushort ushort_D100 = omronFinsNet.ReadUInt16( "D100" ).Content; // 读取D100组成的无符号的值 int int_D100 = omronFinsNet.ReadInt32( "D100" ).Content; // 读取D100-D101组成的有符号的数据 uint uint_D100 = omronFinsNet.ReadUInt32( "D100" ).Content; // 读取D100-D101组成的无符号的值 float float_D100 = omronFinsNet.ReadFloat( "D100" ).Content; // 读取D100-D101组成的单精度值 long long_D100 = omronFinsNet.ReadInt64( "D100" ).Content; // 读取D100-D103组成的大数据值 ulong ulong_D100 = omronFinsNet.ReadUInt64( "D100" ).Content; // 读取D100-D103组成的无符号大数据 double double_D100 = omronFinsNet.ReadDouble( "D100" ).Content; // 读取D100-D103组成的双精度值 string str_D100 = omronFinsNet.ReadString( "D100", 5 ).Content; // 读取D100-D104组成的ASCII字符串数据 // 读取数组 short[] short_D1000_array = omronFinsNet.ReadInt16( "D1000", 10 ).Content; // 读取D1000的short值 ushort[] ushort_D1000_array = omronFinsNet.ReadUInt16( "D1000", 10 ).Content; // 读取D1000的ushort值 int[] int_D1000_array = omronFinsNet.ReadInt32( "D1000", 10 ).Content; // 读取D1000-D1001组成的int数据 uint[] uint_D1000_array = omronFinsNet.ReadUInt32( "D1000", 10 ).Content; // 读取D1000-D1001组成的uint数据 float[] float_D1000_array = omronFinsNet.ReadFloat( "D1000", 10 ).Content; // 读取D1000-D1001组成的float数据 long[] long_D1000_array = omronFinsNet.ReadInt64( "D1000", 10 ).Content; // 读取D1000-D1003组成的long数据 ulong[] ulong_D1000_array = omronFinsNet.ReadUInt64( "D1000", 10 ).Content; // 读取D1000-D1003组成的long数据 double[] double_D1000_array = omronFinsNet.ReadDouble( "D1000", 10 ).Content; // 读取D1000-D1003组成的double数据
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 此处以D寄存器作为示例 omronFinsNet.Write( "D1000", (short)1234 ); // 写入D1000 short值 ,W3C0,R3C0 效果是一样的 omronFinsNet.Write( "D1000", (ushort)45678 ); // 写入D1000 ushort值 omronFinsNet.Write( "D1000", 1234566 ); // 写入D1000 int值 omronFinsNet.Write( "D1000", (uint)1234566 ); // 写入D1000 uint值 omronFinsNet.Write( "D1000", 123.456f ); // 写入D1000 float值 omronFinsNet.Write( "D1000", 123.456d ); // 写入D1000 double值 omronFinsNet.Write( "D1000", 123456661235123534L ); // 写入D1000 long值 omronFinsNet.Write( "D1000", 523456661235123534UL ); // 写入D1000 ulong值 omronFinsNet.Write( "D1000", "K123456789" ); // 写入D1000 string值 // 读取数组 omronFinsNet.Write( "D1000", new short[] { 123, 3566, -123 } ); // 写入D1000 short值 ,W3C0,R3C0 效果是一样的 omronFinsNet.Write( "D1000", new ushort[] { 12242, 42321, 12323 } ); // 写入D1000 ushort值 omronFinsNet.Write( "D1000", new int[] { 1234312312, 12312312, -1237213 } ); // 写入D1000 int值 omronFinsNet.Write( "D1000", new uint[] { 523123212, 213, 13123 } ); // 写入D1000 uint值 omronFinsNet.Write( "D1000", new float[] { 123.456f, 35.3f, -675.2f } ); // 写入D1000 float值 omronFinsNet.Write( "D1000", new double[] { 12343.542312d, 213123.123d, -231232.53432d } ); // 写入D1000 double值 omronFinsNet.Write( "D1000", new long[] { 1231231242312, 34312312323214, -1283862312631823 } ); // 写入D1000 long值 omronFinsNet.Write( "D1000", new ulong[] { 1231231242312, 34312312323214, 9731283862312631823 } ); // 写入D1000 ulong值
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 读取连续的byte[],然后自定义解析的示例 OperateResult<byte[]> read = omronFinsNet.Read( "D100", 4 ); if (read.IsSuccess) { float temp = omronFinsNet.ByteTransform.TransInt16( read.Content, 0 ) / 10f; float press = omronFinsNet.ByteTransform.TransInt16( read.Content, 2 ) / 100f; int count = omronFinsNet.ByteTransform.TransInt32( read.Content, 4 ); // do something } else { // failed }
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 拼凑数据,这样的话,一次通讯就完成数据的全部写入 byte[] buffer = new byte[8]; omronFinsNet.ByteTransform.TransByte( (short)1234 ).CopyTo( buffer, 0 ); omronFinsNet.ByteTransform.TransByte( (short)2100 ).CopyTo( buffer, 2 ); omronFinsNet.ByteTransform.TransByte( 12353423 ).CopyTo( buffer, 4 ); OperateResult write = omronFinsNet.Write( "D100", buffer ); if (write.IsSuccess) { // success } else { // failed } // 上面的功能等同于三个数据分别写入,下面的性能更差点,因为进行了三次通讯,而且每次还要判断是否写入成功 // omronFinsNet.Write( "D100", (short)1234 ); // omronFinsNet.Write( "D100", (short)2100 ); // omronFinsNet.Write( "D100", 12353423 );
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 以下是简单的读取,没有仔细校验的方式 bool X1 = omronFinsNet.ReadBool( "D100.1" ).Content; bool[] X1_10 = omronFinsNet.ReadBool( "D100.1", 10 ).Content; // 如果需要判断是否读取成功 OperateResult<bool> R_X1 = omronFinsNet.ReadBool( "D100.1" ); if (R_X1.IsSuccess) { // success bool value = R_X1.Content; } else { // failed } OperateResult<bool[]> R_X1_10 = omronFinsNet.ReadBool( "D100.1", 10 ); if (R_X1_10.IsSuccess) { // success bool x1 = R_X1_10.Content[0]; bool x2 = R_X1_10.Content[1]; bool x3 = R_X1_10.Content[2]; bool x4 = R_X1_10.Content[3]; bool x5 = R_X1_10.Content[4]; bool x6 = R_X1_10.Content[5]; bool x7 = R_X1_10.Content[6]; bool x8 = R_X1_10.Content[7]; bool x9 = R_X1_10.Content[8]; bool xa = R_X1_10.Content[9]; } else { // failed }
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 以下是简单的写入,没有仔细校验的方式 omronFinsNet.Write( "D100.1", true ); omronFinsNet.Write( "D100.1", new bool[] { true, false, true, false } ); // 如果需要判断是否读取成功 OperateResult write1 = omronFinsNet.Write( "D100.1", true ); if (write1.IsSuccess) { // success } else { // failed } OperateResult write2 = omronFinsNet.Write( "D100.1", new bool[] { true, false, true, false } ); if (write2.IsSuccess) { // success } else { // failed }
OmronFinsNet omronFinsNet = new OmronFinsNet( "192.168.1.110", 9600 ); // 下面两个类的逻辑代码都是类似的 // OmronFinsUdp omronFinsNet = new OmronFinsUdp( "192.168.1.110", 9600 ); // OmronHostLink omronHost = new OmronHostLink( ); // omronHost.SerialPortInni( "COM1", 9600, 7, System.IO.Ports.StopBits.One, System.IO.Ports.Parity.Even ); // 下面演示随机字读取的功能,什么时候用到呢? // 当你需要读取大量离散的字的时候,比如你原来的代码 OperateResult<short> read1 = omronFinsNet.ReadInt16( "D100" ); OperateResult<short> read2 = omronFinsNet.ReadInt16( "D500" ); OperateResult<short> read3 = omronFinsNet.ReadInt16( "A100" ); OperateResult<short> read4 = omronFinsNet.ReadInt16( "C100" ); // ... 等等,可能有几十个读取,全部读取下载可能要将近一秒左右 // 现在使用随机字读取,就可以读取到所有的数据,而且性能非常的高,只需要十几毫秒。 OperateResult<byte[]> read = omronFinsNet.Read( new string[] { "D100", "D500", "A100", "C100" } ); // 数组可以很大 if (read.IsSuccess) { // 而且只需要判断一次就可以了,下面的解析只是一个例子 short[] values = omronFinsNet.ByteTransform.TransInt16( read.Content, 0, 4 ); short d100 = values[0]; short d500 = values[1]; short a100 = values[2]; short c100 = values[3]; } else { }