88 lines
3.6 KiB
C#
88 lines
3.6 KiB
C#
namespace Modbus.Net.HJ212
|
|
{
|
|
/// <summary>
|
|
/// HJ212 控制器类 / HJ212 Controller Class
|
|
/// <remarks>
|
|
/// 实现 HJ212 环保协议的控制器,管理消息发送和响应匹配
|
|
/// Implements controller for HJ212 environmental protection protocol, managing message sending and response matching
|
|
/// <para>
|
|
/// 控制器特点 / Controller Characteristics:
|
|
/// <list type="bullet">
|
|
/// <item>继承自 BaseController / Inherits from BaseController</item>
|
|
/// <item>FIFO 顺序发送 / FIFO sequential sending</item>
|
|
/// <item>支持请求 - 响应模式 / Supports request-response mode</item>
|
|
/// <item>可配置获取间隔时间 / Configurable fetch interval time</item>
|
|
/// </list>
|
|
/// </para>
|
|
/// <para>
|
|
/// 使用场景 / Use Cases:
|
|
/// <list type="bullet">
|
|
/// <item>环保监测设备通信 / Environmental monitoring device communication</item>
|
|
/// <item>污染源在线监测系统 / Pollution source online monitoring system</item>
|
|
/// <item>数据上报和查询 / Data reporting and query</item>
|
|
/// </list>
|
|
/// </para>
|
|
/// <para>
|
|
/// 配置要求 / Configuration Requirements:
|
|
/// <code>
|
|
/// {
|
|
/// "TCP": {
|
|
/// "192.168.1.100:9002": {
|
|
/// "FetchSleepTime": "1000", // 获取间隔 1 秒
|
|
/// "WaitingListCount": "100" // 等待队列长度
|
|
/// }
|
|
/// }
|
|
/// }
|
|
/// </code>
|
|
/// </para>
|
|
/// <para>
|
|
/// 使用示例 / Usage Example:
|
|
/// <code>
|
|
/// // 创建 HJ212 控制器 / Create HJ212 controller
|
|
/// var controller = new HJ212Controller(
|
|
/// ip: "192.168.1.100",
|
|
/// port: 9002
|
|
/// );
|
|
///
|
|
/// // 添加到连接器 / Add to connector
|
|
/// connector.AddController(controller);
|
|
/// </code>
|
|
/// </para>
|
|
/// </remarks>
|
|
/// </summary>
|
|
public class HJ212Controller : BaseController
|
|
{
|
|
/// <summary>
|
|
/// 构造函数 / Constructor
|
|
/// <remarks>
|
|
/// 初始化 HJ212 控制器,从配置读取参数
|
|
/// Initialize HJ212 controller, read parameters from configuration
|
|
/// <para>
|
|
/// 配置参数 / Configuration Parameters:
|
|
/// <list type="bullet">
|
|
/// <item>FetchSleepTime: 获取间隔时间 (默认 1000ms) / Fetch interval time (default 1000ms)</item>
|
|
/// </list>
|
|
/// </para>
|
|
/// </remarks>
|
|
/// </summary>
|
|
/// <param name="ip">
|
|
/// IP 地址 / IP Address
|
|
/// <remarks>
|
|
/// HJ212 监控平台的 IP 地址
|
|
/// IP address of HJ212 monitoring platform
|
|
/// </remarks>
|
|
/// </param>
|
|
/// <param name="port">
|
|
/// 端口号 / Port Number
|
|
/// <remarks>
|
|
/// HJ212 监控平台的端口,默认 9002
|
|
/// Port of HJ212 monitoring platform, default 9002
|
|
/// </remarks>
|
|
/// </param>
|
|
public HJ212Controller(string ip, int port)
|
|
: base(int.Parse(ConfigurationReader.GetValue("TCP:" + ip + ":" + port, "FetchSleepTime") ?? "1000"))
|
|
{
|
|
}
|
|
}
|
|
}
|