Start Background Task after it stopped

I have a Background Task, which is responsible for some Signals between PLC and glue dispensing. The Task is declared as semistatic, the trustlever is "SysFail". Sometimes it stops working and the only way to get it back running is to Restart the whole Controller, which is not so nice as the whole production line has an E-Stop. 

Does anyone know a solution to Restart the Background Task to get the Signals back running?

Controller is IRC5 with RW 6.08

Thank you in Advance, 
best, Matthias


  • lemster68
    lemster68 United States ✭✭✭
    Since the task is semistatic, not normal, then that would be your only option.  Try to fix the error (debug) your background task so that it does not stop.  Do you use error handling in that task?
    Lee Justice
  • NO Error handling. The task just reads digital inputs and then triggers digital outputs, as the robot is used to transfer signals from one plc to the dispensing unit...
    this is basically the only function of the task...
    What kind of error handling do you have in mind??
  • lemster68
    lemster68 United States ✭✭✭
    Any kind of error handler to begin with.  You could at least pinpoint the actual error code by reading the system variable ERRNO.
    Lee Justice
  • graemepaulin
    graemepaulin New Zealand mod
    edited August 2020
    Could you use cross connections instead of the task?
    They would update automatically without any need for RAPID programing.
  • lemster68
    lemster68 United States ✭✭✭
    Very good point.  And I have to ask if the robot is dispensing on a part or holding the part on to which you are dispensing.  If so, you would probably be much better off buying the Dispenseware option.  You have much better integration and coordination with the dispense equipment than by having the robot or PLC as the go between.  You get more control over dispense lags and have faster response times.  Not only that, but also, you can have TCP driven flows which give you better bead controls.
    Lee Justice
  • I found the problem!!! The task was fine, but inside, when you used the function keys....the way that was programmed, the program pointer got caught inside of a While -Loop. But that is necessary...
    So I will just set up another task, which runs and is only responsible for the signals to route through the controller.

    THANK YOU ALL FOR YOUR HELP!!! This was my first time in this forum. 
    Great community

    Best, Matthias