Skip to main content

Adición de componentes dinámicos

CODESYS Control Win se configura mediante un archivo de configuración (CODESYSControl.cfg).

El archivo cfg en la ruta de instalación contiene una referencia al archivo de configuración real CODESYSControl.cfg en el directorio de trabajo:

[SysFile]
Windows.WorkingDirectory=C:\ProgramData\CODESYS\CODESYSControlWinV3x64\801BFF8C

En el archivo cfg en el directorio de trabajo, puede ingresar los componentes adicionales deseados (controladores). Entonces estos siempre se cargan cuando CODESYS Control Win se reinicia.

Introduce un nuevo componente en la sección [ComponentManager]. Es importante que no falten entradas en el número de entradas de todos los componentes.

[ComponentManager]
...
Component.6=SysCpuBreakpoints
Component.7=<Neue Komponente>
...

Vea a continuación qué componentes puede agregar.

Compatibilidad con adaptadores de bus de campo opcionales

CmpHilscherCIFX Conductor

Este componente es compatible con una tarjeta de PC NetX de Hilscher. Para esto, simplemente debe ingresar el componente "CmpHilscherCIFX" en el archivo de configuración de CODESYS Control Win como sigue:

[ComponentManager]
Component.<n>=CmpHilscherCIFX

Luego, después de instalar el adaptador, solo tiene que instalar el controlador SysDrv3S.sys al iniciar el sistema operativo. Este se encuentra en el CODESYS directorio de instalación en $\GatewayPLC\Driver para un sistema operativo Windows de 32 bits, o en $\GatewayPLC\Driver\x64 para un sistema operativo Windows de 64 bits.

Nota: El configurador de Hilscher SyCon o SYCON.net y el controlador de Hilscher no deben ejecutarse en paralelo con CODESYS.

CmpSoftingProfibus Conductor

Este componente es necesario si desea utilizar un adaptador de interfaz USB maestro PROFIBUS de Softing Industrial Automation GmbH con CODESYS en una aplicación IEC. Representa la interfaz entre el sistema de tiempo de ejecución y el controlador patentado de Softing, que es utilizado por nuestra biblioteca de controladores. IoDrvSoftingPROFIusb. En CODESYS, esta biblioteca se integra automáticamente en el Administrador de bibliotecas cuando agrega un dispositivo PROFIusb en el árbol de dispositivos. Como resultado, puede usar y configurar el CODESYS sistema runtime en un PC con Windows como maestro PROFIBUS. Para más información, ver: Adición de interfaces USB para PROFIBUS

CmpBACnet Conductor

El componente es necesario cuando desea utilizar el enlace IP BACnet de CODESYS Control Win. La siguiente entrada es necesaria en el archivo de configuración:

[ComponentManager]
Component.<n>=CmpBACnet

CmpPCANBasicDrv Conductor

Este componente implementa el enlace del hardware Peak CAN por medio de la API básica de PCAN. Para obtener instrucciones de instalación, consulte la ayuda en línea. No se necesitan entradas en el archivo de configuración.

CmpCAACanL2 Conductor

Este componente proporciona una interfaz independiente del hardware para enviar y recibir mensajes CAN. Entradas opcionales del archivo de configuración:

[CmpCAACanL2]
;If setting PersistentBaudrate is enabled (0: disabled; 1: enabled)
;the baudrate will be stored into Net.X.DefaultBaudrate (where X equals NetId) when opening the driver.
PersistentBaudrate=1
;Default baudrate for CAN network 0. This baudrate will be used when the network is opened (e.g from CmpBlkDrvCan or CANopen) with the baudrate set to 0.
Net.0.DefaultBaudrate=1000

En el archivo de configuración, se puede guardar una velocidad de transmisión estándar para cada red CAN (conexión CAN física). Esta tasa de baudios estándar siempre se usa cuando la función CL2 DriverOpenH se llama con tasa de baudios 0 y el controlador aún no está abierto. Si falta esta entrada del archivo de configuración, se emite un error en el caso citado porque se desconoce la velocidad en baudios.

La entrada es particularmente útil en relación con la función PersistenBaudrate que está desactivado por defecto. Si PersistentBaudrate=1, entonces CODESYS utiliza la función CmpSettings para escribir esta tasa de baudios en el archivo de configuración a una tasa de baudios específica para cada llamada de DriverOpenH. Esto tiene el efecto, por ejemplo, de que la entrada Net.0.DefaultBaudrate está cambiado. Esto es especialmente útil cuando un controlador se comunica a través del controlador de bloque CAN. Si la tasa de baudios es 0 (0.Baud rate = 0) en CmpBlkDrvCanServer, luego el usuario puede cambiar la velocidad en baudios de la comunicación del controlador de bloque cambiando la velocidad en baudios en el proyecto, descargando la aplicación y reiniciando el controlador.

CmpCAASdoClient Conductor

Este componente implementa el protocolo de cliente CANopen SDO. Entradas de configuración opcionales:

[CmpCAASdoClient]
MaxSegmentsPerCycle=0 ; for block download: maximum of sent segments per cycle; 0 means infinity

Puede reducir la cantidad de mensajes CAN que se envían por ciclo en una transferencia en bloque aquí. Esto es necesario cuando un controlador tiene problemas con una serie de muchos marcos CAN en el mismo ID. Sin embargo, esto también limita el rendimiento, lo que hace que una transferencia en bloque tome más tiempo.

CmpCAASDOServer Conductor

Este componente implementa el protocolo del servidor CANopen SDO. Entradas opcionales del archivo de configuración:

[CmpCAASdoClient]
MaxSegmentsPerCycle=0 ; for block download: maximum of sent segments per cycle; 0 means infinity

Aquí se puede reducir el número de mensajes CAN que se envían por ciclo en una transferencia en bloque.

CmpEL6751CanDrv Conductor

Este componente implementa el enlace del terminal de pasarela Beckhoff EL6751 CAN/EtherCAT. Como el componente implementa un minicontrolador CAN, puede usar el CANL2 componente y todo CODESYS Pilas basadas en CAN. No se requieren entradas del archivo de configuración.

Canales de comunicación opcionales

CmpBlkDrvCanClient Conductor

Este componente implementa un CODESYS controlador de bloque para la comunicación de un CODESYS puerta de enlace con un CODESYS controlador a través de CAN (comunicación de servicio). La comunicación se establece mediante el protocolo CANopen SDO ("segmentado" o "transferencia en bloque"). El componente CmpBlkDrvCanClient se necesita en el lado de la puerta de enlace, así como hardware CAN de Peak (por ejemplo, un dongle USB PCAN).

Una configuración típica en el archivo de configuración de la puerta de enlace es la siguiente:

[ComponentManager]
Component.1=CmpBlkDrvCANClient
Component.2=CmpCAASdoClient
Component.3=CmpCAACanL2
Component.4=CmpPCANBasicDrv

[CmpBlkDrvCanClient]
CycleTimeMs=1
NumChannels=1               ; Number of block driver instances
0.Name=BlkDrvCanClient
0.NetId=0                   ; CANbus Network Id (0..n)
0.Baudrate=1000             ; CANbus Baudrate in kbit/s
0.NodeId=1                  ; unique NodeId of Gateway
0.BlockTransfer=1           ; Use block transfer for more performance

[CmpCAASdoClient]
MaxSegmentsPerCycle=0       ; for block download: maximum of sent segments per cycle; 0 means infinity
[CmpBlkDrvCanClient]
CycleTimeMs=1
NumChannels=1               ; Number of block driver instances
0.Name=BlkDrvCanClient
0.NetId=0                   ; CANbus Network Id (0..n)
0.Baudrate=1000             ; CANbus Baudrate in kbit/s
0.NodeId=1                  ; unique NodeId of Gateway
0.BlockTransfer=1           ; Use block transfer for more performance

[CmpCAASdoClient]
MaxSegmentsPerCycle=0       ; for block download: maximum of sent segments per cycle; 0 means infinity

CmpBlkDrvCanServer Conductor

Este componente implementa un CODESYS controlador de bloque para la comunicación de un CODESYS puerta de enlace con un CODESYS controlador a través de CAN (comunicación de servicio). La comunicación se establece mediante el protocolo CANopen SDO ("segmentado" o "transferencia en bloque"). El componente CmpBlkDrvCanServer se necesita en el lado del controlador, así como un minicontrolador CAN correspondiente. Una configuración típica en el archivo de configuración del controlador es la siguiente:

[Components]
Component.1=CmpAnyCANMiniDriverComponent ; TODO: Replace component name by your CAN Mini driver component
Component.2=CmpBlkDrvCanServer
[Components]
Component.1=CmpAnyCANMiniDriverComponent ; TODO: Replace component name by your CAN Mini driver component
Component.2=CmpBlkDrvCanServer

[CmpCAACanL2]
;If setting PersistentBaudrate is enabled (0: disabled; 1: enabled)
;the baudrate will be stored into Net.X.DefaultBaudrate (where X equals NetId)
;when opening the driver.
PersistentBaudrate=1
;Default baudrate for CAN network 0. This baudrate will be used when the network 
;is opened (e.g from CmpBlkDrvCan or CANopen) with the baudrate set to 0.
Net.0.DefaultBaudrate=1000

[CmpBlkDrvCanServer]
CycleTimeMs=1
0.NetId=0
0.Baudrate=0 ; 0 means: use setting from CmpCAACanL2 section
0.NodeId=10

[CmpCAASdoServer]
MaxSegmentsPerCycle=0 ;for block upload: maximum of sent segments per cycle
;0 means infinity