Design in broad brush strokes

NODA aims to control energy equipment situated in the field. These devices are often located in the basement of buildings or inside smaller sheds in the vicinity.

By gathering vital data from these devices and crunching the numbers with machine learning algorithms, NODA achieves energy savings on a building level and also solves far more complex city-wide problems.

NODA provides equipment at the customer's site to communicate with many existing energy controllers. Often without the need to replace any existing hardware.

graph LR
    subgraph CustomerSite["Customer Site"]
    	Energy_Controller["Energy Controller"]
        NODA_Equipment["NODA Equipment"]
    end

    subgraph AnotherCustomerSite["Customer Site"]
        SCADASystem["SCADA System"]
        APIIntegration["NODA API Integration"]
    end

    subgraph NODA["NODA"]
        subgraph Kubernetes["Kubernetes"]
    		APIServer["APIServer"]
        	Computations["Machine Learning"]
        	MQTTBackend["MQTT Backend"]
        	UI["User Interface"]
    	end

		MQTTBridge["MQTT Bridge"]
    	Database[("Database")]
    end

    Person["User 🧑"]

	APIIntegration --> SCADASystem
	APIIntegration -->|"Internet 🔒"| APIServer

    NODA_Equipment --> Energy_Controller
    NODA_Equipment -->|"Internet 🔒"| MQTTBridge
    APIServer --> Database
    MQTTBridge <-->|"🔒"| MQTTBackend
    MQTTBackend --> Database
    Computations --> Database
    UI --> Database
    Person --> UI

On the server-side, NODA manages all of the ingress data, performs computations and solves optimization problems using both multi agent systems and machine learning.

Finally, the resulting control action signal is sent back to the controller over the internet.

Most of the data from these computations are then organized and presented so that it's practical and helps the customer in their daily work.