{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { // Run the Modbus TCP server against the example pump-station // node. Listens on 127.0.0.1:5020 (use 502 for a real FAT // bench; 502 requires admin privileges on Windows/Linux). "name": "wago-sim: serve (pump node)", "type": "debugpy", "request": "launch", "module": "wago_sim.cli", "args": [ "--verbose", "serve", "--node", "config/pump_node.yaml", "--host", "127.0.0.1", "--web", "--port", "5020" ], "console": "integratedTerminal" }, { // Serve the pump node WITH the example plant environment // attached (FR-8.2.17): closed-loop tank physics ticked // wall-clock-paced (10 ms) alongside the Modbus server. // A PLC (or pymodbus script) drives DO0.0/AO0.0 and reads // back the simulated field (AI0.0 level, DI0.1 low-level // switch); runs until stopped (Shift+F5 / Ctrl+C). "name": "wago-sim: serve (pump node + plant env)", "type": "debugpy", "request": "launch", "module": "wago_sim.cli", "args": [ "--verbose", "serve", "--node", "config/pump_node.yaml", "--host", "127.0.0.1", "--web", "--port", "5020", "--env", "envs.pump_station_env:PumpStationEnv" ], "console": "integratedTerminal" }, { // Run the example FAT scenario headless and write reports. "name": "wago-sim: run (pump_station_fat)", "type": "debugpy", "request": "launch", "module": "wago_sim.cli", "args": [ "run", "--node", "config/pump_node.yaml", "--scenario", "scenarios/pump_station_fat.yaml", "--report-jsonl", "out/pump_station_fat.jsonl", "--report-csv", "out/pump_station_fat.csv" ], "console": "integratedTerminal" }, { // Validate a scenario file without running it. "name": "wago-sim: validate (pump_station_fat)", "type": "debugpy", "request": "launch", "module": "wago_sim.cli", "args": [ "validate", "--scenario", "scenarios/pump_station_fat.yaml" ], "console": "integratedTerminal" }, { // Debug a single scenario step or engine logic against any // scenario; pick the arguments at launch time. "name": "wago-sim: run (pick scenario + args)", "type": "debugpy", "request": "launch", "module": "wago_sim.cli", "args": "${command:pickArgs}", "console": "integratedTerminal" }, { "name": "Python Debugger: Current File with Arguments", "type": "debugpy", "request": "launch", "program": "${file}", "console": "integratedTerminal", "args": "${command:pickArgs}" } ] }