新风模块独立控制线控器

liuxiaodi dcd102b126 删除滤网寿命设置功能 默认寿命为6个月 10 ay önce
1 3bbc65fae8 first commit 10 ay önce
main dcd102b126 删除滤网寿命设置功能 默认寿命为6个月 10 ay önce
server_cert 3bbc65fae8 first commit 10 ay önce
xfUI dcd102b126 删除滤网寿命设置功能 默认寿命为6个月 10 ay önce
.gitignore 3bbc65fae8 first commit 10 ay önce
CMakeLists.txt a4c74352f4 fix bug 10 ay önce
copyui.bat 3bbc65fae8 first commit 10 ay önce
copyui.sh 3bbc65fae8 first commit 10 ay önce
dependencies.lock 3bbc65fae8 first commit 10 ay önce
partitions.csv 3bbc65fae8 first commit 10 ay önce
readme.md 3bbc65fae8 first commit 10 ay önce
sdkconfig 3be9c4e512 log bug 10 ay önce
sdkconfig.old a4c74352f4 fix bug 10 ay önce
sdkconfigs 3bbc65fae8 first commit 10 ay önce
字表 3bbc65fae8 first commit 10 ay önce

readme.md

4寸线控器项目

目录

1.云端接入指令说明

1.1 运行状态上报

线控器向云端上报的自己的运行状态

  • 标识符: status
  • 参数:

    {
    "power": 1,
    "temperature": 25,
    "humidity": 59,
    "air_quality": 59,
    "co2": 999,
    "mode": 1,
    "fan_speed": 1,
    "set_temp": 24,
    "timer_status": 0,
    "duration":0.5,
    "sub_devices":[
        {
            "id": "分控ID",
            "humidity":"分控湿度",
            "temperature":"分控温度",
            "fan_value": 1,
            "power":0
        }
    ]
    }
    
    • 参数说明:
    字段 读写类型 类型 说明
    power W/R int 电源状态(0:关,1:开)
    temperature W/R int 室内温度
    humidity R int 室内湿度
    air_quality R int 空气质量PM2.5
    co2 R int 二氧化碳浓度
    mode W/R int 工作模式(1:制冷,2:制热,3:除湿4:送风5:自动)
    fan_speed W/R int 风速(0:自动; 1:1档; 2:2 档; 3: 3 档; 4:4 档; 5: 5 档; 6:超强档;)
    set_temp W/R int 当前设置的温度
    timer_status R int 定时状态(1:有定时;0:无定时)
    duration R float 定时时间
    sub_devices R Object Array 子设备(分控)状态数据
    • sub_devices字段说明
    字段 类型 说明
    id string 分控ID
    humidity int 分控湿度
    temperature int 分控温度
    fan_value int 风阀档位
    power int 电源状态(1:开0:关)

    1.2 故障上报

    • 标识符: fault
    • 参数:
    {
    "action": "devSend",
    "msgId": 0,
    "deviceCode": "M1",
    "subDeviceId": "",
    "timestamp": 1231242345,
    "data":{
        "cmd": "fault",
        "params": [
          {
            "code": "故障码1",
            "desc": "故障描述1"
          },
          {
            "code": "故障码2",
            "desc": "故障描述2"
          }
        ]
          
    }
    }
    

1.3 温度设定

  • 标识符:setTemp
  • 参数:
字段 类型 说明
value int 预设温度值
  • 示例:
{
    "cmd":"setTemp",
    "params": {
        "value": 24
    }
}

1.4 模式设定

  • 标识符:setMode
  • 参数:
字段 类型 说明
value int 预设模式,工作模式(0:制冷,1:制热,2:除湿3:送风4:加湿)
  • 示例:
{
    "cmd":"setMode",
    "params": {
        "value": 1
    }
}

1.5 风速设定

  • 标识符:setFanLevel
  • 参数:
字段 类型 说明
value int 预设风速(0:自动; 1:1档; 2:2 档; 3: 3 档; 4:4 档; 5: 5 档; 6:超强档;)
  • 示例:
{
    "cmd":"setFanLevel",
    "params": {
        "value": 1
    }
}

1.6 定时设定

  • 标识符:setTimer
  • 参数:
字段 类型 说明
value float 定时时间(小时)
status int 1:开启0:关闭
  • 示例:
{
    "cmd":"setTimer",
    "params": {
        "value": 0.5,
        "status": 1
    }
}

1.7 风阀档位控制(分控)

  • 标识符:setFanValve
  • 参数:
字段 类型 说明
value int 风阀档位(1, 2,3,4,5)
  • 示例:
{
    "cmd":"setFanValve",
    "params": {
        "value": 1
    }
}

1.8 总开关控制(主控)

  • 标识符:setPower
  • 参数:
字段 类型 说明
value int 电源开关量(1,0)
  • 示例:
{
    "cmd":"setPower",
    "params": {
        "value": 1
    }
}

1.9 运行参数设定

  • 标识符:setParam
  • 参数:
字段 类型 说明
report_duration int 数据上报频率(单位:秒)
  • 示例:
{
  "cmd":"setParam",
  "params": {
    "report_duration": 10
  }
}

1.10 通知显示功能

cmd:setNotice params:{text:"这是内容"}

  • 标识符: cmd:setNotice
  • 参数:
字段 类型 说明
text string 要显示的内容

1.11 新风开关控制

  • 标识符:setNewFan
  • 参数:
字段 类型 说明
value int 新风模式控制(1:通风模式 2:新风模式)
  • 示例:
{
    "cmd":"setNewFan",
    "params": {
        "value": 1
    }
}

1.12 风阀开关控制(分控)

  • 标识符:setFanPower
  • 参数:
字段 类型 说明
value int 风阀开关(1开 0关)
  • 示例:
{
  "cmd":"setFanPower",
  "params": {
    "value": 1
  }
}

1.13 风机电压设定

  • 标识符:setFanVoltage
  • 参数:
字段 类型 说明
gear int 档位 (1:一档 2:二挡 3:三档 4:四档 5:五档)
value int 风机电压 (0-100,1代表0.1V)
  • 示例:
{
  "cmd":"setFanVoltage",
  "params": {
    "gear": 1,
    "value": 40
  }
}

2.设计说明

2.1 风阀配置设计思路

高级配置界面提供风阀与控制器对应关系设置功能,配置后保存到 NVS 中,NVS存储结构为 key-value 形式,

  • key 对应控制器的编号 ,定义如下:
#define NVS_FAN_VALVE_MAIN_CONTROLLER "main_controller" // 主控风阀设置
#define NVS_FAN_VALVE_SUB_CONTROLLER_1 "sub_controller_1" // 分控风阀设计
#define NVS_FAN_VALVE_SUB_CONTROLLER_2 "sub_controller_2" // 分控二风阀设置
#define NVS_FAN_VALVE_SUB_CONTROLLER_3 "sub_controller_3" // 分控三风阀设置
#define NVS_FAN_VALVE_SUB_CONTROLLER_4 "sub_controller_4" // 分控四风阀设置
  • value 保存为风阀的配置值,类型为uint8_t,5个风阀的设置分别对应其实5个BIT, 如配置了1号风阀和2号风阀则,二进制为0000 0011, 实际保存值是3

系统上电加载时,先从 nvs 中读取本地保存的风阀配置,如果没有配置过,则默认为主控控制1-5个风阀,并写入到配置中。 读取到配置后将setting_t数据结构转化为 ac_controller中的结构,并可以同步到主逻辑中.