# Concepts and Architecture

Busroot is able to measure the performance of both discrete and continuous manufacturing process by monitoring activity at a workstation level. Within Busroot, all workstations and machines are referred to as 'Stations'.&#x20;

At its core, Busroot has a data processing loop that continually combines real-time data from stations with contextual information regarding the manufacturing operation and processes being executed.

This loop runs every minute, on the minute, for each station in the account. The result is a materialized object encapsulating all activities and metrics for that station, for that specific 1 minute window of time. These objects serve as the single-source of truth for manufacturing performance, and are known as a 'station windows'.

These station windows, aggregated in various ways, are what primarily drive the interfaces and visualisations provided by Busroot.&#x20;

{% @mermaid/diagram content="graph LR
RealTime(Real-time Station Data) --> Busroot
Context(Manufacturing Context) --> Busroot
Busroot(Busroot Data Processor) --> StationWindows
StationWindows(Station Windows) --> API
API --> UI" %}

### Real-time Data (Station Signals)

The event data captured from each station is standardised, regardless of machine or process type. We call these events 'Station Signals':

| Signal                    | Definition                                                                                                                                             |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Production Cycle Complete | Production has completed for single unit, or batch of units.                                                                                           |
| Productive Status         | A binary value indicating that the station is actively engaged in the manufacturing process, or not (i.e. it's idle).                                  |
| Line Speed                | A arbitrary process speed, normally used on stations where the flow speed is more applicable than unit count (i.e. continuous manufacturing processes) |
| Energy Consumed           | The electrical energy, in kWh, consumed. Can be an absolute, or total value (i.e a meter reading).                                                     |
| Error/Status Code         | Any error or status code emitted by the machine for the purpose of automatically tagging downtime.                                                     |

These signals can be captured from existing PLCs, IoT sensors, industrial data acquisition units (i.e. the Arduino Opta, our recommended hardware), or manually from shop floor operators via our tablet interface.

The universal, yet well defined, nature of these signals allows Busroot to be quickly applied to almost any manufacturing process, across entire organisations, using machines of any age or level of automation. This is the power of Busroot.

### Contextual Information

In order for Busroot to 'make sense' of the real-time data being received, it must have the contextual information behind each plant, shift, station, SKU and production & non-production schedule.

Busroot stores this context internally, but it can be managed either manually via the user interface, or automatically via 3rd party systems (i.e. ERP, MRP, MES, etc) using the API.

For detailed information regarding the contextual information, see the Configuration section.

{% content-ref url="/spaces/i2TlO4PocWIzMF8TVNsQ/pages/twfY2GCUxz6rGhrkM4db" %}
[OEE & TEEP](/busroot/concepts-and-architecture/oee-and-teep.md)
{% endcontent-ref %}

{% content-ref url="/spaces/i2TlO4PocWIzMF8TVNsQ/pages/yQfqdVMgb79dC2Wh3qJI" %}
[Station Windows](/busroot/concepts-and-architecture/station-windows.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.output.industries/busroot/concepts-and-architecture.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
