Skip to main content

Aggiunta di componenti dinamici

CODESYS Control Win viene configurato tramite un file di configurazione (CODESYSControl.cfg).

Il file cfg nel percorso di installazione contiene un riferimento al file di configurazione effettivo CODESYSControl.cfg nella directory di lavoro:

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

Nel file cfg nella directory di lavoro è possibile inserire i componenti aggiuntivi desiderati (driver). Quindi questi vengono sempre caricati quando CODESYS Control Win viene riavviato.

Inserisci un nuovo componente nella sezione [ComponentManager]. È importante che non vi siano voci mancanti nel numero di tutte le voci componenti.

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

Vedi sotto quali componenti puoi aggiungere.

Supporto di adattatori bus di campo opzionali

CmpHilscherCIFX Autista

Questo componente supporta una scheda PC NetX di Hilscher. Per questo, devi semplicemente inserire il componente "CmpHilscherCIFX" nel file di configurazione di CODESYS Control Win come segue:

[ComponentManager]
Component.<n>=CmpHilscherCIFX

Quindi, dopo aver installato l'adattatore, devi solo installare il driver SysDrv3S.sys all'avvio del sistema operativo. Questo si trova nel CODESYS directory di installazione in $\GatewayPLC\Driver per un sistema operativo Windows a 32 bit o in $\GatewayPLC\Driver\x64 per un sistema operativo Windows a 64 bit.

Nota: il configuratore Hilscher SyCon o SYCON.net e il driver Hilscher non devono funzionare in parallelo CODESYS.

CmpSofting Profibus Autista

Questo componente è necessario se si desidera utilizzare un adattatore di interfaccia USB master PROFIBUS di Softing Industrial Automation GmbH con CODESYS in un'applicazione IEC. Rappresenta l'interfaccia tra il sistema di runtime e il driver proprietario di Softing, utilizzato dalla nostra libreria di driver IoDrvSoftingPROFIusb. In CODESYS, questa libreria viene integrata automaticamente in Library Manager quando aggiungi un dispositivo PROFIusb nell'albero dei dispositivi. Di conseguenza, è possibile utilizzare e configurare il CODESYS sistema runtime su un PC Windows come master PROFIBUS. Per ulteriori informazioni, vedere: Aggiunta di interfacce USB per PROFIBUS

CmpBACnet Autista

Il componente è necessario quando si desidera utilizzare il collegamento IP BACnet di CODESYS Control Win. Nel file di configurazione è necessaria la seguente voce:

[ComponentManager]
Component.<n>=CmpBACnet

CmpPCANBasicDrv Autista

Questo componente implementa il collegamento dell'hardware Peak CAN tramite l'API di base PCAN. Per le istruzioni di installazione, consultare la guida in linea. Non sono necessarie voci del file di configurazione.

CmpCAACanL2 Autista

Questo componente fornisce un'interfaccia indipendente dall'hardware per l'invio e la ricezione di messaggi CAN. Voci facoltative del file di configurazione:

[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

Nel file di configurazione è possibile salvare un baud rate standard per ciascuna rete CAN (connessione CAN fisica). Questa velocità di trasmissione standard viene sempre utilizzata quando la funzione CL2 DriverOpenH viene chiamato con baud rate 0 e il driver non è ancora aperto. Se questa voce del file di configurazione è mancante, nel caso citato viene emesso un errore poiché la velocità di trasmissione è sconosciuta.

La voce è particolarmente utile in connessione con la funzione PersistenBaudrate che è disattivato per impostazione predefinita. Se PersistentBaudrate=1, poi CODESYS usa la funzione CmpSettings per scrivere questo baud rate nel file di configurazione a un baud rate specifico per ogni chiamata di DriverOpenH. Questo ha l'effetto, ad esempio, che la voce Net.0.DefaultBaudrate è cambiato. Ciò è particolarmente utile quando un controller comunica tramite il driver del blocco CAN. Se il baud rate è 0 (0.Baud rate = 0) in CmpBlkDrvCanServer, l'utente può modificare il baud rate della comunicazione del driver di blocco modificando il baud rate nel progetto, scaricando l'applicazione e riavviando il controller.

CmpCAASdoClient Autista

Questo componente implementa il protocollo client SDO CANopen. Voci di configurazione opzionali:

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

Qui è possibile ridurre il numero di messaggi CAN inviati per ciclo in un trasferimento a blocchi. Ciò è necessario quando un controller ha problemi con una serie di molti frame CAN con lo stesso ID. Tuttavia, questo limita anche le prestazioni, facendo sì che un trasferimento a blocchi richieda più tempo.

Server CmpCAASDO Autista

Questo componente implementa il protocollo del server CANopen SDO. Voci facoltative del file di configurazione:

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

Qui è possibile ridurre il numero di messaggi CAN inviati per ciclo in un trasferimento a blocchi.

CmpEL6751CanDrv Autista

Questo componente implementa il collegamento del terminale gateway CAN/EtherCAT Beckhoff EL6751. Poiché il componente implementa un minidriver CAN, è possibile utilizzare il CANL2 componente e tutto CODESYS Stack basati su CAN. Non sono richieste voci del file di configurazione.

Canali di comunicazione opzionali

CmpBlkDrvCanClient Autista

Questo componente implementa a CODESYS block driver per la comunicazione di a CODESYS gateway con a CODESYS controllore tramite CAN (comunicazione di servizio). La comunicazione avviene tramite il protocollo CANopen SDO ("segmentato" o "trasferimento a blocchi"). Il componente CmpBlkDrvCanClient è necessario lato gateway e hardware CAN di Peak (ad esempio un dongle USB PCAN).

Una configurazione tipica nel file di configurazione del gateway è la seguente:

[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 Autista

Questo componente implementa a CODESYS block driver per la comunicazione di a CODESYS gateway con a CODESYS controllore tramite CAN (comunicazione di servizio). La comunicazione avviene tramite il protocollo CANopen SDO ("segmentato" o "trasferimento a blocchi"). Il componente CmpBlkDrvCanServer è necessario sul lato controller e un corrispondente minidriver CAN. Una configurazione tipica nel file di configurazione del controller è la seguente:

[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