Il mio edificio - Porta del garage

Tutorial

Questo capitolo descrive come installare una porta da garage in Immersive, affidandosi direttamente alle informazioni provenienti dal campo. Mostra come dichiarare un difetto da Excel e adattare la rappresentazione del modello 3D in base alle condizioni dell'apparecchiatura.

A differenza del precedente caso del sensore di temperatura, dove il guasto veniva calcolato dall'applicazione, Qui abbiamo dati direttamente dal campo che rappresentano un difetto: Ostacolo.

In questo contesto, non è necessario creare uno script, poiché l'informazione predefinita è già fornito dal sensore, vedremo come configurarlo direttamente da Excel.

Inoltre, la porta del garage ha un sensore di apertura, quindi possiamo modificarlo la rappresentazione della porta del garage nel gemello digitale per rappresentare La sua condizione Open oppure Chiuso.

Obiettivi funzionali

  1. Configura la porta bloccata di default da Excel
  2. Cambia il modello della porta del garage in base alle sue condizioni.

Prerequisiti

  • Creare uno script comportamentale legato alla famiglia GarageDoor
  • Associa la Garage Door al suo modello 3D nel gemello digitale.
  • Presenza di almeno 1 modello

Configura la porta bloccata di default da Excel

Quando si configurano i canali di misura di un apparecchiature dal file Excel, È possibile specificare uno stato automatico associato a ciascun canale.

Di default, tutti i canali sono considerati informazioni e vengono visualizzati Nel blocco "Informazioni" Attrezzatura.

Tuttavia, ci sono altri tre possibili comportamenti:

  • Informazioni (predefinito)
    • Se non viene specificato uno stato automatico, il canale viene visualizzato

Nel blocco "Informazioni" Attrezzatura.

  • Errore
    • Il canale è visualizzato nel "Difetti" Attrezzatura.
    • Quando il suo valore è uguale a true, ko oppure 1,

Il difetto è considerato attivo e l'apparecchiatura si trova quindi in uno stato di guasto.

  • Avviso
    • Il canale è inoltre visualizzato nel "Difetti" Attrezzatura.
    • Quando il suo valore è uguale a true, ko oppure 1,

il guasto è attivo e l'attrezzatura è considerata in default, con un livello di criticità inferiore a Errore.

  • Scollegato
    • Il canale è visualizzato nel "Connettività"

e ti permette di controllare lo stato di connettività dell'apparecchiatura.

  • Se il valore del canale è impostato su true, ko oppure 1,

L'attrezzatura sarà considerata scollegata.

Nel nostro caso, impostiamo lo stato automatico Errore nella colonna "Stato Automatico" per il canale Ostacolo.

Il tipo di canale deve essere Boolean.

Impostare la porta ha bloccato il guasto tramite lo stato di errore automatico in Excel.

Modificare la rappresentazione della porta del garage in base alle sue condizioni

Quando un sensore rappresenta lo stato di un asset, è particolarmente interessante riflettere questo stato direttamente sul gemello digitale. Questo dà dinamismo alla mappa e rende la visualizzazione più vivace e intuitiva.

Le porte sono un caso d'uso particolarmente rilevante, poiché hanno due stati distinti: aperta o chiusa, ognuno dei quali può essere rappresentato visivamente.

Per modificare la rappresentazione di un dispositivo associato a un modello 3D, è necessario utilizzare uno script. Questo permette di inviare istruzioni per aggiornare la rappresentazione ogni volta che un dato relativo allo stato dell'apparecchiatura cambia.

Nel nostro caso, il DOOR della porta del garage ha due possibili valori: Open oppure Closed.

Sulla base di questo valore, determiniamo se la porta è aperta o chiusa, e poi recuperiamo l'identificatore del modello 3D associato a ciascuno di questi stati.

Per poter modificare il modello associato, è necessario eseguire una query (Query) per recuperare il riferimento dell'oggetto da aggiornare.

Nel nostro caso, un solo modello 3D è associato all'apparecchiatura; è quindi possibile utilizzare una Query basata sul tipo di oggetto.

function OnEquipmentChanged(equipment)
{
  // Récupération de la variable qui porte l'état de la porte.
  var doorVar = equipment.GetVariable("DOOR");

  // L'état de la porte étant une string pouvant avoir 2 valeurs Open/Close, on calcule si la porte est ouverte en vérifiant la valeur.
  var isOpened = doorVar.AsString == "Open";

  // En fonction de l'état d'ouverture ou de fermeture on récupère le nom du modèle associé.
  // Nous avons le modèle Copro_Descente_Open quand la porte est ouverte
  // Nous avons le modèle Copro_Descente quand la porte est fermée.
  var modelId = isOpened ? "Copro_Descente_Open"
                         : "Copro_Descente";

  // Par défaut les modèles 3D associés à un équipement sont colorés en vert ou rouge en fonction de leur état.
  // On désactive cette coloration automatique pour mieux voir le modèle.
  equipment.Coloration = EquipmentColoration.Disabled;

  // On execute une requète pour récupérer la référence de l'objet de type model associé à notre équipement.
  // On applique le model attendu au résultat de la requète.
  equipment.Query(".model").SetModel(modelId);
}

Il risultato sul gemello digitale è il seguente.

Modifica del modello 3D della porta del garage in base al suo stato aperto o chiuso.