Arquitectura, componentes y sus tareas
CODESYS BACnet2 SL incluye tres bibliotecas IEC:
CmpBACnet
BACnet
BACnetDefaultImpl
(Nota: las siguientes descripciones se aplican a ambas "variantes" de una biblioteca).
El paquete también incluye el BACnet complemento para el CODESYS entorno de desarrollo, que realiza comprobaciones de coherencia en las versiones de la biblioteca y BACnet ID de objetos, además de proporcionar exportación/importación EDE.
El BACnet pila (BACstack
) es un componente opcional del CODESYS tiempos de ejecución (CmpBACnet
componente).
La biblioteca IEC CmpBACnet
representa la integración de la BACnet-Se acumula en uno CODESYS-Entorno IEC y representa el BACnet-tipos de datos así como el BACstack
métodos disponibles. El uso exclusivo de la biblioteca IEC CmpBACnet
(excluyendo las bibliotecas BACnet
y BACnetDefaultImpl
) daría lugar a un código de aplicación IEC complicado y extenso.
Para más información, ver: Cuándo usar la biblioteca BACnet o la biblioteca CmpBACnet
El BACnet
la biblioteca simplifica BACnet desarrollo de aplicaciones considerablemente en comparación con el uso exclusivo de CmpBACnet
, especialmente en las siguientes áreas:
Iniciar y detener el BACnet pila
Usando BACnet objetos del servidor y sus propiedades
Activación de solicitudes asíncronas (principalmente "solicitudes de servicio al cliente") y procesamiento de la "transacción de solicitud"
Procesamiento de "devoluciones de llamada" del BACnet pila (ver
IBACnetEventConsumer
) y distribuir las "devoluciones de llamada" a múltiples receptores en la aplicación
Además, el BACnet
biblioteca proporciona un mecanismo de complemento (BACnetServerPlugin
) para ampliar ciertos aspectos de la BACnet
Biblioteca. BACnetServerPlugin
es la base para la BACnetDefaultImpl
Biblioteca.
El BACnetDefaultImpl
La biblioteca se utiliza para simplificar aún más BACnet desarrollo de aplicaciones. El BACnet La norma ASHRAE 135 deja algunos aspectos del uso práctico de BACnet abierto. Los ejemplos más notables incluyen los siguientes:
Persistencia de los objetos del servidor
Almacenamiento y persistencia de
Trend Log
,Trend Log Multiple
, yEvent Log
entradasActualización de la información de fecha/hora del objeto de dispositivo
CODESYS implementaciones para estos aspectos se basan necesariamente en algunos supuestos sobre el PLC y la aplicación, por ejemplo:
El PLC tiene un sistema de archivos.
El sistema de archivos del PLC no tiene limitaciones excesivamente estrictas en cuanto a volumen de datos, velocidad o número de ciclos de escritura.
Debido a estas suposiciones, tales implementaciones no pueden ser fijadas en el BACnet
biblioteca, porque esto impediría la actualización de otros casos de uso y el cumplimiento de otras restricciones.
El BACnetDefaultImpl
biblioteca es el lugar para este tipo de "implementaciones predeterminadas". En el mejor de los casos, cuando las suposiciones son correctas, estas implementaciones estándar se pueden usar fácilmente. De lo contrario, una implementación estándar de un aspecto en particular se puede usar muy bien como ejemplo y base para una implementación específica de PLC/aplicación.
Por esta razón, el BACnetDefaultImpl
La biblioteca se suministra como biblioteca compilada y como biblioteca de código fuente.