Format JSON

This commit is contained in:
atse 2024-07-03 13:40:50 +08:00
parent 0330b2ae7c
commit cff5bd9d61

View File

@ -1,417 +1,417 @@
{ {
"ctrl_panel":[ "ctrl_panel": [
{ {
"name":"temperature", "name": "temperature",
"title": "Temperature", "title": "Temperature",
"type":"float", "type": "float",
"format":"{value:.4f} °C", "format": "{value:.4f} °C",
"readonly":true, "readonly": true,
"tip": "The measured temperature, according to the B-Parameter equation" "tip": "The measured temperature, according to the B-Parameter equation"
}, },
{ {
"name":"tec_i", "name": "tec_i",
"title":"Current through TEC", "title": "Current through TEC",
"type":"float", "type": "float",
"siPrefix":true, "siPrefix": true,
"suffix":"A", "suffix": "A",
"decimals":6, "decimals": 6,
"readonly":true, "readonly": true,
"tip": "The measured current going through the TEC" "tip": "The measured current going through the TEC"
}, },
{ {
"name":"output", "name": "output",
"title":"Output Settings", "title": "Output Settings",
"expanded":true, "expanded": true,
"type":"group", "type": "group",
"tip": "Settings of the output through to the load", "tip": "Settings of the output through to the load",
"children":[ "children": [
{ {
"name":"i_set", "name": "i_set",
"title":"Set Current (mA)", "title": "Set Current (mA)",
"type":"float_auto", "type": "float_auto",
"value":0, "value": 0,
"step":100, "step": 100,
"limits":[ "limits": [
-2000, -2000,
2000 2000
], ],
"decimals":6, "decimals": 6,
"compactHeight":false, "compactHeight": false,
"param":[ "param": [
"pwm", "pwm",
"$ch", "$ch",
"i_set" "i_set"
], ],
"auto":false, "auto": false,
"auto_label":"PID", "auto_label": "PID",
"auto_tip":"Control by PID", "auto_tip": "Control by PID",
"auto_param":[ "auto_param": [
"pwm", "pwm",
"$ch", "$ch",
"pid" "pid"
], ],
"tip": "", "tip": "",
"lock":false "lock": false
}, },
{
"name":"limits",
"title":"Limits",
"expanded":true,
"type":"group",
"children":[
{
"name":"max_i_pos",
"title":"Max Cooling Current (mA)",
"type":"float",
"value":0,
"step":100,
"decimals":6,
"compactHeight":false,
"limits":[
0,
2000
],
"param":[
"pwm",
"$ch",
"max_i_pos"
],
"tip": "The maximum cooling (+ve) current through the output pins",
"lock":false
},
{
"name":"max_i_neg",
"title":"Max Heating Current (mA)",
"type":"float",
"value":0,
"step":100,
"decimals":6,
"compactHeight":false,
"limits":[
0,
2000
],
"param":[
"pwm",
"$ch",
"max_i_neg"
],
"tip": "The maximum heating (-ve) current through the output pins",
"lock":false
},
{
"name":"max_v",
"title":"Max Absolute Voltage (V)",
"type":"float",
"value":0,
"step":0.1,
"limits":[
0,
5
],
"siPrefix":true,
"compactHeight":false,
"param":[
"pwm",
"$ch",
"max_v"
],
"tip": "The maximum voltage across the output pins",
"lock":false
}
]
}
]
},
{
"name":"thermistor",
"title":"Thermistor Settings",
"expanded":true,
"type":"group",
"tip": "Settings of the connected Thermistor, including for the B-Parameter conversion.",
"children":[
{
"name":"t0",
"title":"T₀ (°C)",
"type":"float",
"value":25,
"step":0.1,
"limits":[
-100,
100
],
"format":"{value:.4f}",
"compactHeight":false,
"param":[
"s-h",
"$ch",
"t0"
],
"tip": "The origin temperature for the B-Parameter equation",
"lock":false
},
{
"name":"r0",
"title":"R₀ (Ω)",
"type":"float",
"value":10000,
"step":1,
"siPrefix":true,
"compactHeight":false,
"param":[
"s-h",
"$ch",
"r0"
],
"tip": "The origin resistance for the B-Parameter equation",
"lock":false
},
{
"name":"b",
"title":"B (K)",
"type":"float",
"value":3950,
"step":1,
"decimals":4,
"compactHeight":false,
"param":[
"s-h",
"$ch",
"b"
],
"tip": "The B-Parameter",
"lock":false
},
{
"name":"rate",
"title":"Postfilter Rate",
"type":"list",
"value":16.67,
"param":[
"postfilter",
"$ch",
"rate"
],
"limits":{
"Off":null,
"16.67 Hz":16.67,
"20 Hz":20.0,
"21.25 Hz":21.25,
"27 Hz":27.0
},
"tip": "Filter some frequencies on the SENS input",
"lock":false
}
]
},
{
"name":"pid",
"title":"PID Settings",
"expanded":false,
"type":"group",
"tip": "",
"children":[
{ {
"name":"target", "name": "limits",
"title":"Setpoint (°C)", "title": "Limits",
"type":"float", "expanded": true,
"value":25, "type": "group",
"step":0.1, "children": [
"limits":[ {
-273, "name": "max_i_pos",
300 "title": "Max Cooling Current (mA)",
], "type": "float",
"format":"{value:.4f}", "value": 0,
"compactHeight":false, "step": 100,
"param":[ "decimals": 6,
"pid", "compactHeight": false,
"ch", "limits": [
"target" 0,
], 2000
"tip": "", ],
"lock":false "param": [
}, "pwm",
{ "$ch",
"name":"kp", "max_i_pos"
"title":"Kp", ],
"type":"float", "tip": "The maximum cooling (+ve) current through the output pins",
"step":0.1, "lock": false
"suffix":"", },
"compactHeight":false, {
"param":[ "name": "max_i_neg",
"pid", "title": "Max Heating Current (mA)",
"$ch", "type": "float",
"kp" "value": 0,
], "step": 100,
"tip": "Proportional gain", "decimals": 6,
"lock":false "compactHeight": false,
}, "limits": [
{ 0,
"name":"ki", 2000
"title":"Ki", ],
"type":"float", "param": [
"step":0.1, "pwm",
"suffix":"Hz", "$ch",
"compactHeight":false, "max_i_neg"
"param":[ ],
"pid", "tip": "The maximum heating (-ve) current through the output pins",
"$ch", "lock": false
"ki" },
], {
"tip": "Integral gain", "name": "max_v",
"lock":false "title": "Max Absolute Voltage (V)",
}, "type": "float",
{ "value": 0,
"name":"kd", "step": 0.1,
"title":"Kd", "limits": [
"type":"float", 0,
"step":0.1, 5
"suffix":"s", ],
"compactHeight":false, "siPrefix": true,
"param":[ "compactHeight": false,
"pid", "param": [
"$ch", "pwm",
"kd" "$ch",
], "max_v"
"tip": "Differential gain", ],
"lock":false "tip": "The maximum voltage across the output pins",
}, "lock": false
{ }
"name":"pid_output_clamping", ]
"title":"PID Output Clamping", }
"expanded":true, ]
"type":"group", },
"tip": "Clamps PID outputs to specified range\nCould be different than output limits", {
"children":[ "name": "thermistor",
{ "title": "Thermistor Settings",
"name":"output_min", "expanded": true,
"title":"Minimum (mA)", "type": "group",
"type":"float", "tip": "Settings of the connected Thermistor, including for the B-Parameter conversion.",
"step":100, "children": [
"limits":[ {
-2000, "name": "t0",
2000 "title": "T₀ (°C)",
], "type": "float",
"decimals":6, "value": 25,
"compactHeight":false, "step": 0.1,
"param":[ "limits": [
"pid", -100,
"$ch", 100
"output_min" ],
], "format": "{value:.4f}",
"tip": "Minimum PID output", "compactHeight": false,
"lock":false "param": [
}, "s-h",
{ "$ch",
"name":"output_max", "t0"
"title":"Maximum (mA)", ],
"type":"float", "tip": "The origin temperature for the B-Parameter equation",
"step":100, "lock": false
"limits":[ },
-2000, {
2000 "name": "r0",
], "title": "R₀ (Ω)",
"decimals":6, "type": "float",
"compactHeight":false, "value": 10000,
"param":[ "step": 1,
"pid", "siPrefix": true,
"$ch", "compactHeight": false,
"output_max" "param": [
], "s-h",
"tip": "Maximum PID output", "$ch",
"lock":false "r0"
} ],
] "tip": "The origin resistance for the B-Parameter equation",
}, "lock": false
{ },
"name":"pid_autotune", {
"title":"PID Autotune", "name": "b",
"expanded":false, "title": "B (K)",
"type":"group", "type": "float",
"tip": "Automatically tune PID parameters", "value": 3950,
"children":[ "step": 1,
{ "decimals": 4,
"name":"target_temp", "compactHeight": false,
"title":"Target Temperature (°C)", "param": [
"type":"float", "s-h",
"value":20, "$ch",
"step":0.1, "b"
"format":"{value:.4f}", ],
"compactHeight":false, "tip": "The B-Parameter",
"pid_autotune":[ "lock": false
"target_temp", },
"$ch" {
], "name": "rate",
"tip": "The target temperature to autotune for" "title": "Postfilter Rate",
}, "type": "list",
{ "value": 16.67,
"name":"test_current", "param": [
"title":"Test Current (mA)", "postfilter",
"type":"float", "$ch",
"value":0, "rate"
"decimals":6, ],
"compactHeight":false, "limits": {
"step":100, "Off": null,
"limits":[ "16.67 Hz": 16.67,
-2000, "20 Hz": 20.0,
2000 "21.25 Hz": 21.25,
], "27 Hz": 27.0
"pid_autotune":[ },
"test_current", "tip": "Filter some frequencies on the SENS input",
"$ch" "lock": false
], }
"tip": "The testing current when autotuning" ]
}, },
{ {
"name":"temp_swing", "name": "pid",
"title":"Temperature Swing (°C)", "title": "PID Settings",
"type":"float", "expanded": false,
"value":1.5, "type": "group",
"step":0.1, "tip": "",
"prefix":"±", "children": [
"format":"{value:.4f}", {
"compactHeight":false, "name": "target",
"pid_autotune":[ "title": "Setpoint (°C)",
"temp_swing", "type": "float",
"$ch" "value": 25,
], "step": 0.1,
"tip": "The temperature swing around the target" "limits": [
}, -273,
{ 300
"name":"lookback", ],
"title":"Lookback (s)", "format": "{value:.4f}",
"type":"float", "compactHeight": false,
"value":3.0, "param": [
"step":0.1, "pid",
"format":"{value:.4f}", "ch",
"compactHeight":false, "target"
"pid_autotune":[ ],
"tip": "",
"lock": false
},
{
"name": "kp",
"title": "Kp",
"type": "float",
"step": 0.1,
"suffix": "",
"compactHeight": false,
"param": [
"pid",
"$ch",
"kp"
],
"tip": "Proportional gain",
"lock": false
},
{
"name": "ki",
"title": "Ki",
"type": "float",
"step": 0.1,
"suffix": "Hz",
"compactHeight": false,
"param": [
"pid",
"$ch",
"ki"
],
"tip": "Integral gain",
"lock": false
},
{
"name": "kd",
"title": "Kd",
"type": "float",
"step": 0.1,
"suffix": "s",
"compactHeight": false,
"param": [
"pid",
"$ch",
"kd"
],
"tip": "Differential gain",
"lock": false
},
{
"name": "pid_output_clamping",
"title": "PID Output Clamping",
"expanded": true,
"type": "group",
"tip": "Clamps PID outputs to specified range\nCould be different than output limits",
"children": [
{
"name": "output_min",
"title": "Minimum (mA)",
"type": "float",
"step": 100,
"limits": [
-2000,
2000
],
"decimals": 6,
"compactHeight": false,
"param": [
"pid",
"$ch",
"output_min"
],
"tip": "Minimum PID output",
"lock": false
},
{
"name": "output_max",
"title": "Maximum (mA)",
"type": "float",
"step": 100,
"limits": [
-2000,
2000
],
"decimals": 6,
"compactHeight": false,
"param": [
"pid",
"$ch",
"output_max"
],
"tip": "Maximum PID output",
"lock": false
}
]
},
{
"name": "pid_autotune",
"title": "PID Autotune",
"expanded": false,
"type": "group",
"tip": "Automatically tune PID parameters",
"children": [
{
"name": "target_temp",
"title": "Target Temperature (°C)",
"type": "float",
"value": 20,
"step": 0.1,
"format": "{value:.4f}",
"compactHeight": false,
"pid_autotune": [
"target_temp",
"$ch"
],
"tip": "The target temperature to autotune for"
},
{
"name": "test_current",
"title": "Test Current (mA)",
"type": "float",
"value": 0,
"decimals": 6,
"compactHeight": false,
"step": 100,
"limits": [
-2000,
2000
],
"pid_autotune": [
"test_current",
"$ch"
],
"tip": "The testing current when autotuning"
},
{
"name": "temp_swing",
"title": "Temperature Swing (°C)",
"type": "float",
"value": 1.5,
"step": 0.1,
"prefix": "±",
"format": "{value:.4f}",
"compactHeight": false,
"pid_autotune": [
"temp_swing",
"$ch"
],
"tip": "The temperature swing around the target"
},
{
"name": "lookback",
"title": "Lookback (s)",
"type": "float",
"value": 3.0,
"step": 0.1,
"format": "{value:.4f}",
"compactHeight": false,
"pid_autotune": [
"lookback", "lookback",
"$ch" "$ch"
], ],
"tip": "Amount of time to lookback" "tip": "Amount of time to lookback"
}, },
{ {
"name":"run_pid", "name": "run_pid",
"title":"Run", "title": "Run",
"type":"action", "type": "action",
"tip":"Run PID Autotune with above settings" "tip": "Run PID Autotune with above settings"
} }
] ]
} }
] ]
}, },
{ {
"name":"save", "name": "save",
"title":"Save to flash", "title": "Save to flash",
"type":"action", "type": "action",
"tip":"Save settings to thermostat, applies on reset" "tip": "Save settings to thermostat, applies on reset"
}, },
{ {
"name":"load", "name": "load",
"title":"Load from flash", "title": "Load from flash",
"type":"action", "type": "action",
"tip":"Load settings from flash" "tip": "Load settings from flash"
} }
] ]
} }