计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
co-tank-monitor【效率与协作】IoT monitoring simulation to predict CO2 tank depletion and prevent weekend gas outages in cell culture facilities. Monitors cylinder pressure, calculates consumption rates, provides early warnings, and supports automated scheduling via cron.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Monitor CO2 cylinder pressure and predict depletion times to prevent gas outages in cell culture incubators, particularly during weekends when laboratories are unmanned.
Key Capabilities:
This skill accepts: current cylinder pressure (MPa), daily consumption rate (MPa/day), cylinder capacity (10 or 40 L), and optional alert threshold (days).
If the request does not involve monitoring CO2 cylinder pressure or predicting depletion — for example, asking to monitor other gases, control incubator temperature, or manage lab inventory — do not proceed. Instead respond:
"CO2 Tank Monitor is designed to predict CO2 cylinder depletion and detect weekend risk for cell culture facilities. Please provide current pressure and daily consumption rate. For other lab monitoring tasks, use a more appropriate tool."
python -m py_compile scripts/main.py
python scripts/main.py --help
Fallback: If pressure is not provided, respond: "Required parameter --pressure not provided. Please supply current cylinder pressure in MPa. Use --simulate to generate a training scenario without real data."
from scripts.main import calculate_remaining_days, calculate_depletion_time
remaining_days = calculate_remaining_days(pressure=8.0, daily_consumption=1.5)
depletion_time = calculate_depletion_time(remaining_days)
# Formula: remaining_days = pressure / daily_consumption
from scripts.main import is_weekend, will_deplete_on_weekend
weekend_risk = will_deplete_on_weekend(depletion_time, alert_days=2)
Weekend Risk Scenarios:
| Scenario | Risk Level | Action Required |
|---|---|---|
| Depletion Saturday/Sunday | 🔴 High | Immediate replacement or weekend duty |
| Depletion Monday morning | 🟡 Medium | Replace Friday afternoon |
| Depletion mid-week | 🟢 Low | Schedule routine replacement |
| Code | Status | Condition | Action |
|---|---|---|---|
| 0 | 🟢 Normal | Days > alert_days + 2 | No action needed |
| 1 | 🟡 Caution | Days within alert_days + 2 | Monitor closely |
| 2 | 🔴 Danger | Days ≤ alert_days or weekend risk | Replace immediately |
| Capacity | Full Pressure | Duration (@1.5 MPa/day) |
|---|---|---|
| 10L | ~15 MPa | ~10 days |
| 40L | ~15 MPa | ~40 days |
# Daily check at 9:00 AM (cron)
0 9 * * * cd /lab/scripts && python scripts/main.py --pressure $(cat sensor.log | tail -1) --quiet
# Pre-weekend check (Friday 5 PM)
0 17 * * 5 cd /lab/scripts && python scripts/main.py --pressure $(cat sensor.log | tail -1)
# Manual morning check
python scripts/main.py --pressure 8.5 --daily-consumption 1.2
# Pre-weekend check with extended alert
python scripts/main.py --pressure 5.5 --alert-days 3
# Simulation for training
python scripts/main.py --simulate
| Parameter | Type | Required | Description |
|---|---|---|---|
--pressure | float | No | Current cylinder pressure in MPa |
--capacity | int | No | Cylinder capacity (10 or 40 L) |
--daily-consumption | float | No | Average daily consumption (MPa/day) |
--alert-days | int | No | Alert threshold in days (default 2) |
--simulate | flag | No | Generate random training scenario |
--quiet | flag | No | Suppress verbose output (for cron) |
Every final response must make these explicit:
scripts/main.py fails, report the failure point and provide manual calculation fallback using the formula above.| Unit | MPa | PSI | Bar |
|---|---|---|---|
| MPa | 1.0 | 145.0 | 10.0 |
| PSI | 0.0069 | 1.0 | 0.069 |
| Bar | 0.1 | 14.5 | 1.0 |
Typical Cylinder Pressures: Full ~15 MPa | Working 8–10 MPa | Replace threshold 3–5 MPa | Empty <1 MPa