Architettura, componenti e loro compiti
CODESYS BACnet2 SL E CODESYS BACnet(1) SL ciascuno contiene tre librerie IEC:
CmpBACnet,CmpBACnet2BACnet,BACnet2BACnetDefaultImpl,BACnet2DefaultImpl2
(Nota: le seguenti descrizioni valgono per entrambe le "varianti" di una libreria.)
Il pacchetto include anche il BACnet plug-in per CODESYS ambiente di sviluppo, che esegue controlli di coerenza sulle versioni della libreria e BACnet ID oggetto, oltre a fornire esportazione/importazione EDE.
IL BACnet pila (BACstack) è un componente opzionale di CODESYS tempi di esecuzione (CmpBACnet componente).
IL CmpBACnet La libreria IEC rappresenta l'integrazione di BACnet impilare in a CODESYS ambiente IEC e fornisce il BACnet tipi di dati così come il BACstack metodi. L'uso esclusivo della libreria IEC CmpBACnet (senza il BACnet E BACnetDefaultImpl librerie) comporterebbe un codice applicativo IEC lungo e complesso.
Per ulteriori informazioni, vedere: Quando utilizzare la libreria BACnet o la libreria CmpBACnet
IL BACnet la biblioteca semplifica BACnet sviluppo di applicazioni notevolmente rispetto al solo utilizzo di CmpBACnet, in particolare nei seguenti settori:
Avvio e arresto del BACnet pila
Utilizzando BACnet oggetti server e relative proprietà
Attivazione di richieste asincrone (principalmente "richieste del servizio clienti") ed elaborazione della "transazione di richiesta"
Elaborazione di "callback" dal file BACnet pila (cfr
IBACnetEventConsumer) e distribuendo le "richiamate" a più destinatari nell'applicazione
Inoltre, il BACnet la libreria fornisce un meccanismo di plug-in (BACnetServerPlugin) per estendere alcuni aspetti del BACnet biblioteca. BACnetServerPlugin è la base per il BACnetDefaultImpl biblioteca.
IL BACnetDefaultImpl La libreria viene utilizzata per un'ulteriore semplificazione di BACnet sviluppo di applicazioni. IL BACnet lo standard ASHRAE 135 lascia alcuni aspetti dell'uso pratico di BACnet aprire. Gli esempi più notevoli includono quanto segue:
Persistenza degli oggetti server
Archiviazione e persistenza di
Trend Log,Trend Log Multiple, EEvent LoginserimentiAggiornamento delle informazioni su data/ora dell'oggetto dispositivo
CODESYS le implementazioni per questi aspetti si basano necessariamente su alcuni presupposti relativi al PLC e all'applicazione, ad esempio:
Il PLC ha un file system.
Il file system del PLC non ha limitazioni eccessivamente rigide per quanto riguarda il volume dei dati, la velocità o il numero di cicli di scrittura.
A causa di questi presupposti, tali implementazioni non possono essere incluse in modo permanente nel file BACnet libreria, perché ciò impedirebbe l'implementazione di altri casi d'uso e il rispetto di altri vincoli.
IL BACnetDefaultImpl la libreria è il luogo per questo tipo di "implementazioni predefinite". Nel migliore dei casi, se i presupposti sono corretti, queste implementazioni standard possono essere utilizzate facilmente. Se i presupposti non si applicano, allora un'implementazione standard di un particolare aspetto può essere utilizzata molto bene come esempio e base per un'implementazione PLC/specifica dell'applicazione.
Per questo motivo, il BACnetDefaultImpl La libreria viene fornita sia come libreria compilata che come libreria del codice sorgente.