Comparison of nominal and actual configuration
If a connection exists, the project planning can be checked on the “Diagnosis” tab. At this level “Real Identification Data” returns the actually existing modules in an AR, “Expected Identification Data” indicates the expected modules (i.e. those projected in the controller) and “Module Difference” shows the differences to the device found in the nominal-actual comparison.
If you are on the “Diagnosis” tab within the API, you can select the corresponding API about which information is to be obtained. If, for example, the PROFINET device is a drive, then this usually supports the Profidrive profile, which is identified in turn via API 0x3A00. If the Real Identification Data is to be read from this API, for example, then this access takes place via the Profidrive profile.
In addition, the “Get Real Configuration” button becomes active within an API (except for drives). It is possible via this to adopt the read-in data record into the current project. Note that modules that have already been created will be overwritten when doing this. This means that the links are lost, even in the case of previously correctly created modules.
When displaying the module differences, additional information is displayed by marking the message.
Diagnosis Data
The available diagnosis can be read out by pressing the “Diagnosis Data” button. At device level all available diagnosis data for the existing AR is read out here.
A maximum of two diagnosis parameters are displayed in the list; others are marked by “…”. If the individual message is clicked, all available diagnosis information is displayed in the window below.
Cyclic diagnosis via “PnIoBoxState” and “PnIoBoxDiag”
These variables are cyclically exchanged with the process image between the PROFINET driver and the System Manager.
Presently the following error messages are displayed under the PnIoBoxState.
Number | Text | Description | Remedial action / reason |
---|---|---|---|
0 | No error | No error | No error |
1 | PROFINET Device state machine is in boot mode | PROFINET Device State Machine is still in the start-up phase | Not an error, wait |
2 | Device not found | Device does not reply to the Identify Request | Check connection, device connected, was the device called by its correct name? |
3 | The stationname is not unique | The station name is not unique | There are two or more devices in the network with the same PROFINET name. A correct identification cannot take place. |
4 | IP could not set | IP address could not be set. | The PROFINET device has rejected the IP settings for some reason. Check whether the IP settings are correct. |
5 | IP conflict | An IP conflict has occurred in the network. | A possible cause is that several devices have the same IP address. |
6 | DCP set was not successful | There was no reply or an erroneous reply to a DCP Set. | Check connection, device connected, was the device called by its correct name? |
7 | Watchdog error | The connection was broken off with a Watchdog error. | Check the cycle time, check the connection, if necessary increase the Watchdog factor. |
8 | Datahold error | The connection was broken off with a Datahold error. | Frame Data status was invalid for the length of the DataHoldTimer. Restart the device if necessary. |
9 | RTC3: Sync signal could not started | For IRT only: the Sync signal could not be started. | Is EtherCAT Sync signal correct or has Sync0 started? |
10 | PROFINET Controller has a link error | The PROFINET controller has no link. | Check cable and connection. |
11 | The aliasname is not unique | The alias name is not unique | There are two or more devices in the network with the same alias name. This is made up of the neighbourhood information (PortId.ChassisId). A correct identification cannot take place. |
12 | The automatic name assignement isn't possible - wrong device type | The automatic name assignment is not possible. | The expected PROFINET device is not in the projected position (VendorId or DeviceId does not correspond). Hence, no automatic naming and thus no device start is possible. |
31 | only for EtherCAT gateways: WC-State of cyclic EtherCAT frame is 1 | For EL6631 only: EtherCAT WC State is 1 | Check the mode on the EtherCAT master & slave (OP?). |
As opposed to the state, more than one status can be displayed in the “PnIoBoxDiag”, i.e. the whole thing is bit-coded and up to 16 pieces of information can be displayed. The following statuses are currently displayed.
0x0000 = No diagnosis
Default. Device is not in communication or the TwinCAT project has not yet been activated (general TwinCAT user error)
0x0001 = IOC-AR is not established
The startup of the AR was started, but no PrmEnd was sent yet. The exact status can be seen in the DiagHistory.
0x0002 = IOC-AR is established
No error, the device has established the connection and is running error-free.
0x0004 = IOC-AR is established but no application ready
No error, but the controller has not yet received Application Ready. The duration depends on the device, according to Profinet specification this can take up to 300s.
0x0008 = IOC-AR is established but module difference
The connection was established but the target does not match the actual configuration. Check the configuration setting and use the "Diagnostic" dialogs to check which module or submodule does not fit.
0x0010 = At least one AlarmCR got a diagnosis alarm
An alarm was received, which can be read by the driver via ADS. After readout an acknowledgement via PnIoBoxCtrl 0x0001 should be made.
The following flags refer to the data status of the cyclic communication. Since theoretically several CRs could be set up for one device, these flags are set if at least 1 CR reports a problem.
InputCR is the input direction, these are the frames that the controller receives from the Devices.
OutputCR is the output direction, these are the frames that the controller sends to the Devices.
0x0100 = At least one InputCR is invalid
The data of InputCR are invalid.
0x0200 = At least one InputCR Provider is in stop
The Input CR is in stop mode. The device application is held in STOP, the cause should be clarified on the device side.
0x0400 = At least one InputCR Problemindicator is set
A problem was detected in the device. The diagnostic buffer in the Device contains at least one message. These can be read out via the corresponding records.
0x1000 = At least one OutputCR is invalid
The data of OutputCR are invalid.
0x2000 = At least one OutputCR Provider is in stop
The Output CR is in stop mode. This indicates that the triggering IO Task or PLC is stopped.
0x4000 = At least one OutputCR Problemindicator is set
A problem was detected in the controller. The diagnostic buffer in the controller contains at least one message. These are displayed e.g. via the DiagHistory.
On the one hand information about the status of the IO Controller Single AR is displayed here. In addition, collective statuses are formed from the Frame Data statuses of the individual CRs. The whole thing happens for the input and the output CRs (currently only one is possible; in future the controller will support several CRs). In addition a PROFINET alarm is also displayed in the “PnIoBoxDiag”