# 程序配置

```json5
{
  "sn": "ZD-1",
  // 站点编号
  "station_sn": "ZD-1",
  "name": "站点-1",
  // 站点名称
  "daemon": false,
  // 是否以守护进程运行
  "mqtt_config": {
    // MQTT 配置
    "svr": {
      // MQTT 服务器配置
      "sn": "MQTT_SVR",
      // MQTT 服务器编号
      "name": "MQTT 服务器",
      // MQTT 服务器名称
      "port": 1883
      // MQTT 服务器端口
    },
    "clis": [
      // MQTT 客户端配置列表
      {
        // MQTT 客户端配置
        "sn": "0",
        // MQTT 客户端编号
        "name": "公网 MQTT",
        // MQTT 客户端名称
        "ip": "localhost",
        // MQTT 客户端 IP 地址
        "port": 1883,
        // MQTT 客户端端口
        "client_id": "ZD-1",
        // MQTT 客户端 ID
        "username": "ZD-1",
        // MQTT 客户端用户名
        "passwd": "ZD-1"
        // MQTT 客户端密码
      },
      {
        "sn": "1",
        "name": "内网 MQTT",
        "ip": "localhost",
        "port": 1883,
        "client_id": "ZD-1",
        "username": "ZD-1",
        "passwd": "ZD-1"
      }
    ]
  },
  "http_config": {
    // HTTP 配置
    "svr": {
      // HTTP 服务器配置
      "sn": "HTTP_SVR",
      // HTTP 服务器编号
      "name": "HTTP 服务器",
      // HTTP 服务器名称
      "port": 8080
      // HTTP 服务器端口
    }
  },
  "wbs_config": {
    // 过磅模块配置
    "sn": "WBS",
    // 过磅模块编号，固定值
    "name": "过磅模块",
    // 过磅模块名称
    "device_groups": [
      // 设备组配置列表
      {
        // 设备组配置
        "sn": "CD-1",
        // 设备组编号
        "name": "车道-1",
        // 设备组名称
        "vidicon_config": [
          // 高位摄像头配置列表
          {
            // 高位摄像头配置
            "group_sn": "CD-1",
            // 设备组编号
            "group_name": "车道-1",
            // 设备组名称
            "sn": "GW-1",
            // 高位摄像头编号
            "name": "高位-1",
            // 高位摄像头名称
            "temp_dir": "temp",
            // 图片临时目录
            "retain_duration": 10,
            // 图片保留时间
            "vidicon_type": "HK",
            // 摄像头类型，HK：海康摄像头，YTJ：一体机摄像头
            "hksdk_config": {
              // 海康 SDK 配置
              "ip": "192.168.1.64",
              // 海康 SDK IP 地址
              "port": 8000,
              // 海康 SDK 端口
              "username": "admin",
              // 海康 SDK 用户名
              "passwd": "admin",
              // 海康 SDK 密码
              "log_path": "logs"
              // 海康 SDK 日志路径
            }
          },
          {
            "group_sn": "CD-1",
            "group_name": "车道-1",
            "sn": "GW-2",
            "name": "高位-2",
            "temp_dir": "temp",
            "retain_duration": 10,
            "vidicon_type": "YTJ",
            "ytj_config": {
              "mqtt": "1",
              // 使用的 MQTT 客户端编号
              "timeout": 10,
              // 超时时间
              "dev_sn": "GW-2"
              // 一体机摄像头编号，填设备序列号
            }
          }
        ],
        "spkbox_config": [
          // 语音模块配置列表
          {
            "group_sn": "CD-1",
            // 设备组编号
            "group_name": "车道-1",
            // 设备组名称
            "sn": "YZ-1",
            // 语音模块编号
            "name": "音柱-1",
            // 语音模块名称
            "server": "http://192.168.1.100:80"
            // 语音模块服务器地址
          }
        ],
        "loadometer_config": {
          // 地磅模块配置
          "group_sn": "CD-1",
          // 设备组编号
          "group_name": "车道-1",
          // 设备组名称
          "sn": "DB-1",
          // 地磅模块编号
          "name": "地磅-1",
          // 地磅模块名称
          "delay": 0,
          // 地磅模块延时
          "accuracy": 5,
          // 地磅模块精度
          "steady": 20,
          // 地磅模块稳态时间
          "retries": 30,
          // 地磅模块重试次数
          "retry_delay": 3,
          // 地磅模块重试延时
          "weight_line": 200,
          // 地磅模块重量线
          "data_protocol": "GENERAL",
          // 数据协议，GENERAL：一般协议，目前只有 GENERAL 协议
          "connect_type": "SP",
          // 连接类型，SP：串口连接，TCP：TCP 连接，目前只有 SP
          "serial_port": {
            // 串口配置
            "port_name": "COM1",
            // 串口端口名
            "baud_rate": 9600,
            // 波特率
            "data_bits": 8,
            // 数据位
            "stop_bits": 1,
            // 停止位
            "parity": 0,
            // 校验位
            "flow_control": 0
            // 流控制
          }
        },
        "ytj_config": [
          // 一体机配置列表
          {
            "group_sn": "CD-1",
            // 设备组编号
            "group_name": "车道-1",
            // 设备组名称
            "sn": "DZ-1",
            // 一体机摄像头编号
            "name": "进前置",
            // 一体机摄像头名称
            "dev_sn": "DZ-1",
            // 一体机摄像头编号
            "front": true,
            // 是否前置
            "mqtt_sn": "1",
            // 使用的 MQTT 客户端编号
            "barrier_config": {
              // 道闸配置
              "io": 0
              // 道闸 IO 编号，一般都是 0
            },
            "vidicon_config": {
              // 识别摄像头配置
              "timeout": 10,
              // 拍照超时时间（秒）
              "enable_recognize": true
              // 是否开启识别
            }
          },
          {
            "group_sn": "CD-1",
            "group_name": "车道-1",
            "sn": "DZ-2",
            "name": "进",
            "dev_sn": "DZ-2",
            "front": false,
            "mqtt_sn": "1",
            "barrier_config": {
              "io": 0
            },
            "vidicon_config": {
              "timeout": 10,
              "enable_recognize": true
            }
          },
          {
            "group_sn": "CD-1",
            "group_name": "车道-1",
            "sn": "DZ-3",
            "name": "出前置",
            "dev_sn": "DZ-3",
            "front": true,
            "mqtt_sn": "1",
            "barrier_config": {
              "io": 0
            },
            "vidicon_config": {
              "timeout": 10,
              "enable_recognize": true
            }
          },
          {
            "group_sn": "CD-1",
            "group_name": "车道-1",
            "sn": "DZ-4",
            "name": "出",
            "dev_sn": "DZ-4",
            "front": false,
            "mqtt_sn": "1",
            "barrier_config": {
              "io": 0
            },
            "vidicon_config": {
              "timeout": 10,
              "enable_recognize": true
            }
          }
        ],
        "device_associations": [
          // 设备关联列表
          {
            "barrier_sn": "DZ-1",
            // 道闸编号
            "loadometer_sn": "DB-1",
            // 地磅编号
            "vidicon_sn": "GW-1",
            // 识别摄像头编号
            "spkbox_sn": "YZ-1"
            // 语音模块编号
          },
          {
            "barrier_sn": "DZ-2",
            "loadometer_sn": "DB-1",
            "vidicon_sn": "GW-1",
            "spkbox_sn": "YZ-1"
          },
          {
            "barrier_sn": "DZ-3",
            "loadometer_sn": "DB-1",
            "vidicon_sn": "GW-2",
            "spkbox_sn": "YZ-1"
          },
          {
            "barrier_sn": "DZ-4",
            "loadometer_sn": "DB-1",
            "vidicon_sn": "GW-2",
            "spkbox_sn": "YZ-1"
          }
        ]
      }
    ]
  }
}
```

-DVCPKG_TARGET_TRIPLET=x64-windows -DCMAKE_TOOLCHAIN_FILE={vcpkg 安装目录}\scripts\buildsystems\vcpkg.cmake