feat: initial scaffold and profiles for Schneider iEM2135, LUG heat meter v4
Seed the repo described in pda-fieldbus ADR-0009: a sibling repo that
ships device profiles independently of the fieldbus binary.
Layout:
- profiles/schneider-iem2135.json — distilled from the inline extract
rules in examples/poll-d27-g110.yaml
- profiles/lug-heat-meter-v4.json — heat-meter profile with derived
delta_temperature
Both validate against pda-fieldbus's profile.LoadDirs.
Packaging:
- nfpm.yaml builds pda-fieldbus-profiles.deb installing profiles/ to
/usr/share/pda-fieldbus/profiles/, where the loader's DirPackaged dir
picks them up. Recommends pda-fieldbus.
- .gitea/workflows/auto-tag.yml: same conventional-commit auto-tagging
as pda-fieldbus, on tag push installs nfpm, builds .deb, uploads to
repo.pda.cz/PDAT/main using the existing PDA_REPO_TOKEN secret.
- .gitea/workflows/ci.yml: JSON syntax check + schema validation by
importing pda-fieldbus's loader and calling LoadDirs against profiles/.
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
{
|
||||
"schema": "pda-fieldbus.profile/v1",
|
||||
"device": {
|
||||
"manufacturer": "LUG",
|
||||
"model": "heat-meter-v4",
|
||||
"protocol": "mbus"
|
||||
},
|
||||
"meta": {
|
||||
"version": "1"
|
||||
},
|
||||
"points": {
|
||||
"energy": {
|
||||
"addr": "mbus/dif:0C/vif:0F",
|
||||
"unit": "gigajoule",
|
||||
"scale": 1e-9,
|
||||
"dimensions": "energy",
|
||||
"description": "Total heat energy"
|
||||
},
|
||||
"power": {
|
||||
"addr": "mbus/dif:0B/vif:2D",
|
||||
"unit": "kilowatt",
|
||||
"scale": 0.001,
|
||||
"dimensions": "power",
|
||||
"description": "Instantaneous thermal power"
|
||||
},
|
||||
"flow_temperature": {
|
||||
"addr": "mbus/dif:0A/vif:5B",
|
||||
"unit": "celsius",
|
||||
"dimensions": "temperature",
|
||||
"description": "Supply (flow) temperature"
|
||||
},
|
||||
"return_temperature": {
|
||||
"addr": "mbus/dif:0A/vif:5F",
|
||||
"unit": "celsius",
|
||||
"dimensions": "temperature",
|
||||
"description": "Return temperature"
|
||||
},
|
||||
"volume_flow": {
|
||||
"addr": "mbus/dif:0B/vif:3B",
|
||||
"unit": "cubic_metre_per_hour",
|
||||
"dimensions": "flow",
|
||||
"description": "Volumetric flow rate"
|
||||
}
|
||||
},
|
||||
"derived": {
|
||||
"delta_temperature": {
|
||||
"function": "sub",
|
||||
"inputs": ["flow_temperature", "return_temperature"],
|
||||
"unit": "celsius",
|
||||
"dimensions": "temperature",
|
||||
"description": "Flow minus return temperature"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"schema": "pda-fieldbus.profile/v1",
|
||||
"device": {
|
||||
"manufacturer": "Schneider Electric",
|
||||
"model": "iEM2135",
|
||||
"protocol": "mbus"
|
||||
},
|
||||
"meta": {
|
||||
"version": "1",
|
||||
"references": [
|
||||
"Schneider iEM2000 series user manual"
|
||||
]
|
||||
},
|
||||
"points": {
|
||||
"current": {
|
||||
"addr": "mbus/dif:05/vif:FD/vife:DC,FF,00",
|
||||
"unit": "ampere",
|
||||
"dimensions": "current",
|
||||
"description": "Total current"
|
||||
},
|
||||
"power": {
|
||||
"addr": "mbus/dif:05/vif:2E",
|
||||
"unit": "watt",
|
||||
"dimensions": "power",
|
||||
"description": "Active power"
|
||||
},
|
||||
"energy": {
|
||||
"addr": "mbus/dif:07/vif:03",
|
||||
"unit": "kilowatt_hour",
|
||||
"scale": 0.001,
|
||||
"dimensions": "energy",
|
||||
"description": "Total active energy import"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user