[
    {
        "id": "c770f8bedf4278e4",
        "type": "tab",
        "label": "【導入レシピ】離れた貯水槽のポンプを無線を使って自動制御する – 連動制御編",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "72d96d812e539637",
        "type": "group",
        "z": "c770f8bedf4278e4",
        "name": "ポンプ制御",
        "style": {
            "stroke": "none",
            "stroke-opacity": "0.5",
            "fill": "#ffdf7f",
            "fill-opacity": "0.5",
            "label": true
        },
        "nodes": [
            "02faa442991047a4",
            "66f91155640a9658",
            "804868cb8b2e275e",
            "cf29154dde826b27"
        ],
        "x": 74,
        "y": 59,
        "w": 572,
        "h": 142
    },
    {
        "id": "02faa442991047a4",
        "type": "function",
        "z": "c770f8bedf4278e4",
        "g": "72d96d812e539637",
        "name": "水位の値で判定",
        "func": "// しきい値の設定（現場の貯水槽の深さ・運用に合わせて調整してください）\nconst ON_THRESHOLD = 300;    // この値(mm)以下でポンプをON\nconst OFF_THRESHOLD = 1500;  // この値(mm)以上でポンプをOFF\n\nconst level = msg.data.waterLevel;\n\n// 前回判定したポンプの状態を保持する（初回はOFFと仮定）\nlet pumpOn = flow.get('pumpOn');\nif (pumpOn === undefined) {\n    pumpOn = false;\n}\n\n// ヒステリシス判定：状態が変わるときだけON/OFFを切り替える\nif (!pumpOn && level <= ON_THRESHOLD) {\n    pumpOn = true;\n} else if (pumpOn && level >= OFF_THRESHOLD) {\n    pumpOn = false;\n} else {\n    // しきい値の間、または状態に変化がない場合は何もしない\n    return null;\n}\n\nflow.set('pumpOn', pumpOn);\nmsg.payload = pumpOn ? 'ON' : 'OFF';\nreturn msg;",
        "outputs": 1,
        "timeout": 0,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 180,
        "y": 140,
        "wires": [
            [
                "66f91155640a9658"
            ]
        ]
    },
    {
        "id": "66f91155640a9658",
        "type": "switch",
        "z": "c770f8bedf4278e4",
        "g": "72d96d812e539637",
        "name": "水位判定",
        "property": "payload",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "ON",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "OFF",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 360,
        "y": 140,
        "wires": [
            [
                "804868cb8b2e275e"
            ],
            [
                "cf29154dde826b27"
            ]
        ]
    },
    {
        "id": "804868cb8b2e275e",
        "type": "bbus-r2p2",
        "z": "c770f8bedf4278e4",
        "g": "72d96d812e539637",
        "name": "ポンプON",
        "machineCode": "",
        "queueWaitTimeoutSecs": "60",
        "retry": "1",
        "priority": "MEDIUM",
        "unitAddress": "1",
        "command": "CONTROL",
        "controlPorts": [
            {
                "port": "1",
                "controlKind": "ON",
                "delay": "0",
                "controlTimeMs": "1000"
            },
            {
                "port": "2",
                "controlKind": "NONE",
                "delay": "0",
                "controlTimeMs": "0"
            }
        ],
        "x": 540,
        "y": 100,
        "wires": [
            [],
            []
        ]
    },
    {
        "id": "cf29154dde826b27",
        "type": "bbus-r2p2",
        "z": "c770f8bedf4278e4",
        "g": "72d96d812e539637",
        "name": "ポンプOFF",
        "machineCode": "",
        "queueWaitTimeoutSecs": "60",
        "retry": "1",
        "priority": "MEDIUM",
        "unitAddress": "1",
        "command": "CONTROL",
        "controlPorts": [
            {
                "port": "1",
                "controlKind": "OFF",
                "delay": "0",
                "controlTimeMs": "1000"
            },
            {
                "port": "2",
                "controlKind": "NONE",
                "delay": "0",
                "controlTimeMs": "0"
            }
        ],
        "x": 550,
        "y": 160,
        "wires": [
            [],
            []
        ]
    },
    {
        "id": "318c9a5dc2d7d680",
        "type": "global-config",
        "env": [],
        "modules": {
            "flm-bbus": "2.0.0"
        }
    }
]