Oggetti

Cos’è un oggetto

Un oggetto è un elemento che identifica nel progetto un oggetto fisico (un motore) o non fisico (un allarme digitale).

Un oggetto ha le seguenti caratteristiche:

  • può contenere delle variabili (vedere Variabili)

  • può contenere altri oggetti annidati (per esempio un motore può contenere oggetti che rappresentano i suoi componenti)

  • ha degli attributi che lo descrivono

Esempio

Un motore nel mondo fisico è un oggetto meccanico con caratteristiche funzionali specifiche quali ad esempio velocità, coppia, accelerazione e potenza.

In UNIQO, il motore appena descritto si rappresenta con un oggetto (Motor) che contiene le variabili corrispondenti alle sue caratteristiche funzionali (Speed, Torque, Acceleration, Power).

../_images/bc2da51e6fbfbdb91aa618ecb9acfd0b2e428896.svg

Di seguito un esempio di come lo stesso oggetto è strutturato e visualizzato in Q Studio:

../_images/0ff02f3dbb6d8a634a530688ed41def70f10e60f.png

Attributi

Un oggetto ha sempre i seguenti attributi:

Attributo

Descrizione

BrowseName

Nome dell’oggetto nel progetto

Description

Descrizione dell’oggetto

Display name

Nome dell’oggetto, traducibile e usato solitamente per essere visualizzato in interfaccia a runtime

NodeId

Identificativo unico, assegnato automaticamente da UNIQO

Tipi di oggetti e istanze

Un tipo di oggetto (ObjectType) è un oggetto «modello» da cui derivare oggetti simili, detti istanze. Le istanze possono comunque includere altri oggetti e/o variabili specifici.

Creare istanze è vantaggioso in termini di rapidità e coerenza, ogni modifica apportata al tipo viene infatti automaticamente apportata alle istanze.

Importante

se si elimina un tipo di oggetto, anche le istanze vengono eliminate.

Esempio

Consideriamo di avere una macchina composta da più motori uguali.

Invece di configurare singoli oggetti per i diversi motori, in UNIQO è possibile configurare il tipo di oggetto Motor con tutte le sue caratteristiche funzionali (le variabili Speed, Torque, Acceleration e Power) e usarlo per derivarne più istanze, nell’esempio Motor1 e Motor2.

../_images/0696b4dc2153270385efe6b245b18f5e7d717ee2.svg

Per il dettaglio sulla creazione di tipi di oggetti e istanze, vedere Gestire oggetti e tipi di oggetti.

Tipi di oggetti nativi e custom

Sono definiti tipi nativi quelli predefiniti di UNIQO. Questi sono sempre disponibili indipendentemente dal progetto.

Sono definiti tipi custom quelli creati all’interno di un progetto, dagli utenti o dalle logiche applicative realizzate. Questi tipi sono disponibili solo nel progetto in cui sono stati creati.