02-28-2023 09:31 AM - edited 02-28-2023 09:36 AM
Hello,
I am facing problems with the following safety architecture:
Being the configuration:
There is no safety communication between them. The SAFEX stays in RunIntern and IndraDrive in SMES state.
I don't see where else to look.
If you need further information let me know.
Thank you!
Solved! Go to Solution.
03-01-2023 10:30 AM
Additionally to the SAFEX control you need an EtherCAT master like the ctrlX CORE. Is such an EtherCAT master present?
As well I see that you have to force the ModeSelectionSignal to "1" for the FB to the drive.
03-01-2023 11:44 AM
Yes, EtherCAT master is present:
I forced ModeSelectionSignal but same result:
03-02-2023 07:10 PM
Hello @dhg ,
FSoE-Connections are no direct cross communication connections as with Sercos or EtherNet/IP. The EtherCAT-Master manages these connections as part of the transport layer EtherCAT.
Currently we support/recommend to copy the data within a (recommended) fieldbus-synchronous or short-time cyclic task (possible in case of low timing requirements: 10-20ms). If you do not implement this copy action, the FSoE-Connections are not closed and the FSoE-Master remains in RUNintern, since there is no feedback from the FSoE-Slaves.
Annotation: We will provide a Cross Communication Configurator as part of ctrlX CORE's IO Engineering that closes some gaps and avoids the need to create application code for the FSoE-Connections.
@Dias : I did not find the sample program for the FSoE-Connection. Can you please add that sample code as an solution (HowTo, Example) to help users in general?
The core functionality is shown in this sample code snippet:
// Deklaration
FSoE_MasterSN15000204Input AT %IB0: ARRAY[0..27] OF BYTE;
FSoE_MasterSN15000204Output AT %QB0: ARRAY[0..27] OF BYTE;
FSoE_SlaveSN15000214Input AT %IB74: ARRAY[0..27] OF BYTE;
FSoE_SlaveSN15000214Output AT %QB94: ARRAY[0..27] OF BYTE;
bClearErrorSN15000204 AT %QX76.0: BOOL;
bClearErrorSN15000214 AT %QX170.0: BOOL;
bClearError: BOOL;
// Programm
// Mapping FSoE-Data from FSoE-Master to FSoE-Slave
FSoE_SlaveSN15000214Output:= FSoE_MasterSN15000204Input;
// Mapping FSoE-Data from FSoE-Slave to FSoE-Master
FSoE_MasterSN15000204Output:= FSoE_SlaveSN15000214Input;
// Example for functional exchange
bClearErrorSN15000204:= bClearError;
bClearErrorSN15000214:= bClearError;
The whole context is part of the attached extract of the 2022 WebSeminar for Application Engineers.
HTH
Your ctrlX SAFETY team
03-06-2023 12:35 PM
Hello,
After adding the following code in the PLC (ctrlX CORE), it is working.
Thank you for the support!