BACnet Configuración en tiempo de ejecución
CODESYS BACnet2 SL usa el CmpBACnet
componente para la comunicación. Este componente debe ingresarse y configurarse en el archivo de configuración del tiempo de ejecución de la siguiente manera.
[ComponentManager] Component.1=CmpBACnet2 [CmpBACnet2] ; configuration file of the BACnet stack IniFile=$PlcLogic$/bacstac2.ini ; task priority of the BACstack process task, default: TASKPRIO_NORMAL_END (159) TaskPrio=128 ; name of the named pipe for the communication with the BACstack AppName=/tmp/BACnetServer
En general, CODESYS separa el acceso al sistema de archivos dentro de la aplicación IEC y el acceso desde el código de programa de los componentes de tiempo de ejecución. Se pueden especificar diferentes directorios raíz en el archivo de configuración del tiempo de ejecución.
[SysFile] ; root file path for runtime components FilePath=D:/Temp/Default ; root file path for IEC applications IecFilePath=D:/Temp/IEC
Una aplicación IEC con CODESYS BACnet2 SL escribe el archivo de configuración del BACnet pila (usando información de BACnet.BACnetIPdatalink
) al iniciar el BACnet servidor y luego lee el archivo dentro del CmpBACnet
componente de tiempo de ejecución. Por lo tanto, el acceso compartido de lectura y escritura de la aplicación IEC y el componente de tiempo de ejecución deben estar habilitados para este archivo de configuración. Esto se hace usando una ruta absoluta o usando marcadores de posición (por ejemplo). CODESYS Control V3.5.16.0 y superior).
Ruta absoluta:
... [CmpBACnet2] IniFile=D:/Temp/bacstac.ini ; Windows ; Linux -> IniFile=/tmp/bacstac.ini ...
Marcador de posición (ejemplo: $BACnet$
):
... [SysFile] PlcLogicPrefix=1 PlaceholderFilePath=, $Firmware$ PlaceholderFilePath.1=$PlcLogic$/bacnet, $BACnet$ [CmpBACnet] IniFile=$BACnet$/bacstac.ini ...
Además, CODESYS permite el "sandboxing" de varios aspectos del tiempo de ejecución, incluido el acceso al sistema de archivos. En este caso, el acceso al sistema de archivos dentro de la aplicación IEC y el acceso desde el código de programa de los componentes de tiempo de ejecución están restringidos a las rutas configuradas. Para obtener más información, consulte la configuración de SysFile
:
... [SysFile] ; ForceFilePath=1 ; ForceIecFilePath=1 ...
Para obtener más información al respecto, consulte la ayuda para CODESYS Sistema de tiempo de ejecución Control V3, "CODESYS Controlar FilePath & Placeholders". Esta ayuda está disponible en la CODESYS GmbHPortal del Cliente.
Al configurar el "sandboxing" del sistema de archivos, debe tener en cuenta que es posible acceder al archivo de configuración del BACnet apilar como se describe arriba. Por lo tanto, en este caso se requiere la alternativa de usar marcadores de posición cuando la ruta a bacstac.ini
aún no está configurado en otro lugar.
Para más información, ver: Arquitectura, componentes y sus tareas