Protective Stop - Enable robot from PLC


Is there a way to :

  1. Inform the PLC when a protective stop appers ?
  2. Enable the robot directly from the PLC after a protective stop ?

I use a profinet communication with a robot.

Best regards,

1 Like

Good Morning @v.laurent

Which PLC are u using? (Siemens?)

  1. You can use the Input u will get from your UR:

  2. Yes you can enable the Robot from your PLC.
    For this you have to use “Dashboard Server” Commands.
    And it is not just 1 simple signal you have to send.
    Its a sequence of signals you have to send 1 by 1 to the UR.

I´m using several Dashboard commands to control the Robot from my PLC:

Check out the link on the UR website:

Greetings from Luxembourg!

1 Like

Hi Kadams,

Thanks for you reply.
Yes it’s a Siemens

  1. Get error status
    Is the “protective stop” an “E-Stop” signal ?

  2. Enable robot from PLC
    For now we used only the Profinet communication, we don’t use “Dashboard server”. Do you know a way to do it by Profinet ? Or the Dashboard server is the only way to do it ?

Have a good day,

Hi @v.laurent

  1. If i remember correctly, it´s 2 different signals.
    E-Stop is when you press the E-Stop. Protective Stop is when the robot detects a crash and stopps.
    You can read the state of ur UR at the IOs at ur PLC

  1. I didn´t find a way to do it from the PLC via the IOs send via Profinet.
    Cause there is much more in the backround that u have to “reset”.
    Once u press the E-Stop of ur UR u will see that a “PopUp” will appear on the Robot panel.
    This one you have to “Reset”. Also u have to activate the Robot in a sequence. All this can only b done via Dashboard commands (Send from the PLC). Therefore you have to send the Dashboard commands as a “String” to the UR.
    It took me ages to find out how to realise all this.

Greetings from Luxembourg!

1 Like


There is also a UR+ product that allows dashboard commands to be handled by IO on a PLC.

If you’re in a “time is more valuable than money” situation, this could be a good option.


Thanks for your solution.

  1. Inform the PLC when there is a protective stop :
    Ok, I haven’t seen that the PLC has already the information. I will take this solution.

  2. Enable robot by using Profinet :
    So, as I understand, there is no solution to enable the robot after a protective stop by using a Profinet connection.
    Can somebody from UR confirm this? Because my software department want to use Profinet and not TCP (Dashboard server)

Hi Miwa,

Thank for your reply.

I just want to “Enable the robot”, like the Dashboard Server command “unlock protective stop”. But I don’t want to use the Dashboard Server (TCP connection), I want to use Profinet. Is there a solution to do it by Profinet ?

Best regards,


There is no way to enable the robot after a protective stop using PROFINET.

The solution miwa mentions includes the wanted function through the URCap, however. But it is not possible without such a solution.

hi @efn

that´s not completely true.
Yes, u cannot enable the robot by profinet, BUT
if u got some time and you can realize all the requiered things (Enable the robot after E-Stop, load different programs e.g.) on ur own (without purchasing expensive (?) software from external companies.

it was a bit “tricky” but i´m now able to control the robot from my PLC (by using the dashboard signals).

1 Like

Yes, it is no problem to set up a dashboard client on a PLC. :slight_smile:
But it is not possible to control the dashboard commands through the PROFINET fieldbus connection without some extensive programming (set up a dashboard client in the UR Linux operating system for example or make your own URCap). Which is what was asked.

1 Like


once u decide to use the Dashboard Server, u will face some issues. Cause finding the right “syntax” was a bit tricky.
Also the sequence on which signal has to be send (and when) wasn´t that easy. (U have to keep an eye on the Safety Mode to decide which signal u want to send…Close safety PopUp-> Release Brake->…)

1 thing that is “bothering” me is the answer from the robot.
For example: If u send him “Play” you will get the correct answer. BUT if u send the same signal again u will receive an answer
like “Could not understand…”
So sending the same String twice isn´t working (Or maybe I did smth wrong).

1 Like


Ok thanks for all of your answer.
I will try to convince my software department to use Dashboard Server or trying to by an URCap.

I will make some test to see if the Dashboard Server works well…

Have a good day!

I have contacted Robot27. Thanks !

Sure thing,

give it a try.
I can give u a little hint. If u try to send the dashboard signals (Strings) to the UR, u have to use a special syntax:

Only if u send the signals in that syntax the robot will be able to understand the signals.

Greetings from Luxembourg!

1 Like

I just finished to try by using SocketTest software.

I don’t know if you get the same issues but sometimes the connection close when the robot mode changes (Remote Control → Automatic for example)
Also, I have found the same error as you. Sometimes, it’s impossible to resend the same command… it is strange…

Thanks a lot for the syntax :smiley: !!

hi @v.laurent

SocketTest is OK for testing the “physical” connection.

Yes once the UR is on “REMOTE” you have to activate the connection (between PLC and UR via TCON). If you then put the Robot
on “LOCAL” and back to “REMOTE” the connection will not work. you have to use TDISCON to disconnect and then again use TCON to connect. It´s a bit tricky.

Most irritating part is that you cannot see if someone has changed the operation mode on the Robot.

Greetings from Luxembourg!

To see if an operation mode has been changed on the robot without being physicaly present is to just use a VNC protocol with a viewer and you can check the TP display remotely. Not the most elegant solution but is the quickest. There is a Magic file circling around the forum.

But you probably already knew:)) Best regards!

Thanks @nax004 !

Yes I have seen this solution.
Unfortunately, we want an “industrial” solution, without any human operation.

Best regards!

Good morning @v.laurent,

did u already find a solution? I mean how do u figure out that someone has changed the UR OP-Mode to local?

I was testing it like that:

I guess you have to check if you always get an expected answer from the UR.
If the UR answers in a “weird” way, u might know that the Connection is NOT established.

I couldn´t finish my testing, so i cannot tell you how exactly to do.

At moment i only activate/ deactivate the PLC<-> UR communication depending on the Status (Robot mode) of the UR.

I´d really appreciate if u found a nicer way and u could share your knowledge.

Greetings from Luxembourg!

Hi @kadams

Finally we only use the Profinet value “protective stopped” to print a pop-up message on our PLC HMI.
We assume that if there is a “protective stop” a maintenance guy should check the robot.

My software department doesn’t want to implement a TCP connection (the Dashboard server)…

Best regards,