How to use the docking quick-change coupling of DOCK Profinet

Publisher:Tianyun2021Latest update time:2023-03-20 Source: 机器人及PLC自动化应用Author: Lemontree Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

How to use the quick-change Profinet connection

The same device can be operated alternately on different robots. To do this, other IOCTL functions must be used for decoupling and. These IOCTL functions can also be used if a device is only operated on one robot. Other IOCTL functions can only be used for compatibility reasons.

l In applications with tool change systems, bus users must never be permanently coupled.

l During a cold restart or during configuration of an input/output, in which case this would directly lead to a fault in Industrial Ethernet.

l The shutdown function is always available to prevent these devices from being logically coupled into Industrial Ethernet after a cold restart or after reconfiguration of the inputs/outputs.

l These deactivated devices can be recoupled without any problems later when the program is run.

l However, during project setup, consideration must be given to integrating all tools physically and logically into the Industrial Ethernet project.

Decoupled - Properties of decoupled devices:

l If a decoupled device is disconnected from Industrial Ethernet, this will not trigger a fault.

l All IO operations on the decoupled device are invalid.

l Decoupled devices cannot handle read/write failures.

l The input of the device has been reset to zero during decoupling.

coupling

The IOCTL function is executed synchronously. The function returns when the device is available again and can be written to. If the coupled device is unavailable, for example because it is disconnected from the bus or power supply, a message is displayed after a timeout (default 10 seconds).

 Menu path: Project structure > ProfiNet > Double-click with the mouse > Device settings

 Set the device to always be available by checking or unchecking this setting.

The option "Always available" influences the robot's reaction to decoupled devices during a cold start or when reconfiguring the I/O drivers. "Always available" can be set in the device data in WorkVisual.

If the device does not have the option Always Available checked, the device is automatically decoupled on reboot or when the I/O driver is reconfigured. In order to establish a connection to the device, the device must be recoupled using the IOCTL function.

Coupling and decoupling of fieldbus users via HMI

1. Select the menu sequence Display > Variable > Single.

2.2. In the Name field, enter:

 When decoupling:

 When using the device on a robot:

=IOCTL("PNIO-CTRL",60,[user ID])

 When using the device on one or more robots:

=IOCTL("PNIO-CTRL",1060,[user ID])

 When coupled:

 When using the device on a robot:

=IOCTL("PNIO-CTRL",50,[user ID])

 When using the device on one or more robots:

=IOCTL("PNIO-CTRL",1050,[user ID])

IOCTL: System variables for coupling and decoupling

PNIO-CTRL: Call via ProfiNet driver name

 50/1050 = call coupling

 60/1060 = call decoupling

User ID Device number of the module to be coupled or decoupled / User ID

In the single variable display, after executing each IOCTL instruction, a return value is displayed in the current value window in the form of a number. This number has the following different meanings:

l0 :IOCTL executed successfully.

l1: Timeout - The device failed to couple or decouple within the specified time.

l2 :IOCTL contained an incorrect parameter - please check your input!

l-1: Failure - Unable to execute the command.

 The IOCTL function is executed synchronously. When the device is available and writable again, the IOCTL function can be executed again.

 If a coupled device is not available, for example because it is disconnected from the bus or power supply, a message will be displayed after a timeout.

If the time specified for coupling or decoupling is designed to be too short, the timeout can be reset. The standard setting is 10 seconds, i.e. 10000 milliseconds.

RET = IOCTL("PNIO-CTRL",1001,10000)

Query device status:

Use IOCTL function 70 to query the status of a slave device.

RET = IOCTL("PNIO-CTRL",70,[User ID] )

RET's return value:

l4: The device has been decoupled.

l5: The device was coupled, but an error occurred.

l6: The device is coupled and there are no errors.

l7: The device has been decoupled but is still activated internally in the PROFINET Controller.

By activating or deactivating the bus fault

The bus fault is activated by default. If a bus fault occurs, this results in a stop and/or blocking of the active commands. The bus fault can be deactivated and activated again using the KRL function IOCTL.

Activation or deactivation can be performed in the program at runtime via the KRL. The bus fault can be deactivated for one or more bus instances. If the bus fault is deactivated, the following occurs:

• Bus fault: No stop and/or blocking of the active commands

• Bus fault: No fault message in the smartHMI information window

• The following message is displayed in the smartHMI information window: KRC IO bus error suppression is activated for the following bus instances: {bus instance}{bus instance}{bus instance}

• If a fault has already occurred in the bus instance, a bus fault cannot be activated again.

In this case, you can read out whether a bus fault has occurred via the system variable $IOBUS_INFO.

• To deactivate bus fault: RET = IOCTL("KRC->PNIO-CTRL", 1, 1) • To activate bus fault: RET = IOCTL("KRC->PNIO-CTRL", 1, 0)

RET A variable used to store the return value of the KRL function IOCTL. The data type of this variable is INT and must be declared in the program before use.
IOCTL KRL function used to send commands to the bus driver
PNIO-CTRL The name of the bus driver
1.1 IOCTL command to disable bus fault
1.0 IOCTL command to activate bus fault

$IOBUS_INFO[] structure containing information

$IOBUS_INFO[index] = information

index Type: INT Network number 1 … 32 A serial number is automatically assigned to the bus driver.
information Type: Iobus_Info_T A list containing network information

Iobus_Info_T STRUC Iobus_Info_T CHAR name[256], drv_name[256], BOOL bus_ok, bus_installed

name[] The name of the bus instance, for example SYS-X44
drv_name[] The name of the network driver control, such as ECat.DRV
bus_ok TRUE: The bus driver is normal.
FALSE: The bus driver is faulty or incompatible.
bus_installed TRUE: The bus driver is installed.
FALSE: The bus driver is not installed.

Restart the bus system via KRL

After a bus fault, the bus system can be restarted in the program during runtime. To do this, a command to restart the bus system must be generated in the program using the KRL function IOCTL.

RET = IOCTL("PNIO-CTRL",12,0)

12 IOCTL command to restart the bus system












Review editor: Liu Qing

Reference address:How to use the docking quick-change coupling of DOCK Profinet

Previous article:Introduction to KUKA-DECL variables and protocols
Next article:A brief analysis of KUKA's $PRO_IP variable

Latest robot Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号