> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wayak.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Asset health monitoring

> Track equipment condition scores from sensor data and alert maintenance teams before failures occur

Unplanned equipment failures in energy infrastructure are costly — both financially and in terms of service reliability. Transformers, turbines, switchgear, and distribution lines degrade over time, but the warning signs are often buried in SCADA readings and IoT sensor streams that nobody monitors continuously. By the time a failure occurs, the damage is done: outages, safety incidents, and expensive emergency repairs.

Wayak connects your SCADA and IoT data, computes equipment health scores using Python-based degradation models in a playbook, and delivers real-time alerts when assets trend toward failure. An agent gives maintenance engineers instant access to any asset's condition history, trend analysis, and recommended maintenance actions.

***

## What you need

<CardGroup cols={2}>
  <Card title="Data sources" icon="database">
    * **SCADA system** — real-time and historical sensor readings (temperature, load, oil levels, vibration), alarm events, and equipment status
    * **IoT platform** — supplementary sensor data from field-deployed devices (ambient temperature, humidity, corrosion sensors)
    * **CMMS (maintenance system)** — maintenance work orders, service history, inspection records, and spare parts inventory
  </Card>

  <Card title="Knowledge spaces" icon="book-open">
    * **Equipment maintenance manuals** — upload manufacturer specifications, recommended maintenance intervals, and failure mode documentation for each asset class
    * **Operating procedures** — upload condition-based maintenance policies, criticality rankings, and escalation protocols
  </Card>
</CardGroup>

**Semantic layer:** Define these in your ontology before setting up the agent.

| Component | Name                              | Definition                                                                                                                 |
| --------- | --------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| Object    | Asset                             | Maps to the `assets` table in the CMMS. Represents a physical piece of equipment (transformer, breaker, turbine)           |
| Object    | Sensor Reading                    | Maps to `readings` in the SCADA system. Represents a timestamped measurement from a single sensor point                    |
| Metric    | Health Score                      | Composite score (0-100) calculated from normalized sensor readings weighted by criticality, where 100 is perfect condition |
| Metric    | Mean Time Between Failures (MTBF) | Average operating hours between failure events for an asset class, computed from maintenance history                       |
| Dimension | Asset Type                        | Categorizes assets by equipment class (transformer, circuit breaker, turbine, distribution line)                           |
| Dimension | Criticality                       | Ranks assets as critical, high, medium, or low based on service impact and replacement cost                                |

<Tip>
  See [building a semantic layer](/quickstart/build-semantic-layer) for a step-by-step guide.
</Tip>

***

## Agent setup

<Steps>
  <Step title="Create the agent">
    Go to **Agent Space** → **New agent**.

    | Field    | Value                                                                                                                                              |
    | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
    | **Name** | Asset Health Analyst                                                                                                                               |
    | **Role** | Equipment Condition Monitoring Specialist                                                                                                          |
    | **Goal** | Monitor equipment health scores, identify degradation trends, provide maintenance recommendations, and answer ad-hoc queries about asset condition |
  </Step>

  <Step title="Set the description">
    > You are an equipment condition monitoring specialist who interprets SCADA and IoT sensor data to assess asset health. You track degradation trends, compare current readings against manufacturer thresholds, and recommend maintenance actions based on condition-based policies. You prioritize assets by criticality and service impact. You present findings with supporting sensor data and reference maintenance manuals when recommending interventions. You never dispatch crews — you provide the evidence maintenance planners need.
  </Step>

  <Step title="Scope data access">
    Grant access to:

    * SCADA system (sensor readings, alarm events, equipment status)
    * IoT platform (supplementary sensor data)
    * CMMS (work orders, service history, inspection records)
    * Equipment maintenance manuals knowledge space
    * Operating procedures knowledge space
    * Asset and Sensor Reading objects, Health Score and MTBF metrics
  </Step>

  <Step title="Add skills">
    <AccordionGroup>
      <Accordion title="Asset condition report">
        **Trigger:** User asks the agent for the condition of a specific asset or asset group.

        1. Retrieve the asset record from the CMMS, including type, criticality, installation date, and last service date.
        2. Pull the latest sensor readings from the SCADA system (temperature, load, oil level, vibration as applicable).
        3. Compute the current health score using the weighted composite formula from the semantic layer.
        4. Compare current readings against manufacturer thresholds from the equipment maintenance manuals knowledge space.
        5. Pull the asset's maintenance history and calculate MTBF.
        6. Return a condition report with the health score, individual sensor readings vs. thresholds, trend direction, and recommended next action.
      </Accordion>

      <Accordion title="Degradation trend analysis">
        **Trigger:** User asks about the trend or trajectory of an asset's condition.

        1. Retrieve 90 days of sensor reading history for the specified asset from the SCADA system.
        2. Calculate the rate of change for each key sensor parameter (e.g., temperature rising at 0.5 degrees per week).
        3. Project the time to threshold breach at the current degradation rate.
        4. Compare the degradation pattern against known failure modes from the equipment maintenance manuals.
        5. Return a trend analysis with the projected failure window, confidence level, and recommended preventive action with timing.
      </Accordion>

      <Accordion title="Fleet health summary">
        **Trigger:** User asks for a summary of health across all assets or a specific asset class.

        1. Query the CMMS for all assets of the specified type or in the specified region.
        2. Pull the latest health scores from the most recent scan.
        3. Rank assets from worst to best health score.
        4. Identify assets with scores below the maintenance threshold or trending downward.
        5. Return a fleet summary table with asset name, location, health score, trend, and priority ranking.
      </Accordion>
    </AccordionGroup>
  </Step>
</Steps>

***

## Automation

### Playbook: Daily asset health scan

<Steps>
  <Step title="Set the trigger">
    Set the trigger to **Schedule — Daily** at 5:00 AM, before the day shift begins, to give maintenance planners an updated view of asset condition.
  </Step>

  <Step title="Build the workflow">
    The workflow computes health scores for all monitored assets and alerts on degradation:

    1. **Query** all active assets from the CMMS with their criticality level and sensor point mappings.
    2. **Query** the latest 24 hours of sensor readings from the SCADA system and IoT platform for each asset.
    3. **Python code block** — compute the health score for each asset. The code normalizes each sensor reading against its manufacturer-specified operating range, applies criticality-based weights, and produces a composite score on a 0-100 scale. Assets scoring below 60 are flagged as "degraded," and those below 40 as "critical." The code also calculates the 7-day trend (improving, stable, or declining).

    <Info>
      The **health score computation** step uses a Python code block to normalize sensor readings, apply weighted scoring, and detect degradation trends. You can customize the scoring thresholds, sensor weights, and trend detection window.
    </Info>

    4. **Condition** — if any asset is flagged as "critical," generate an immediate alert with the asset details and recommended maintenance action.
    5. **Loop** — for each "degraded" asset, check the CMMS for any open work orders. If no work order exists, create a new maintenance request.
    6. **Delivery** — distribute the daily health report.
  </Step>

  <Step title="Configure delivery">
    * **Email** — send the full daily health report to the maintenance planning team
    * **Slack** — post critical asset alerts to `#maintenance-urgent` immediately
    * **Email escalation** — if any critical-criticality asset scores below 40, notify the Operations Director
  </Step>

  <Step title="Test and activate">
    Click **Run now** to test with live data, then toggle to **Active**.
  </Step>
</Steps>

***

## What's next

<CardGroup cols={2}>
  <Card title="Demand forecasting" icon="arrow-right" href="/use-cases/energy/demand-forecasting">
    Forecast energy demand using historical meter data and weather patterns for better generation planning.
  </Card>

  <Card title="All Energy & Utilities use cases" icon="list" href="/use-cases/energy">
    See the full list.
  </Card>
</CardGroup>
