Condition monitoring question

  • Two questions:

    1) What does $TPP_MON.$LOCAL_MT = 3 mean? I know 1 and 2, the manual doesn't say anything about 3.

    2) After restarting a condition monitor (program, type 2), will it trigger immediately if the condition is still true or does it only trigger on a rising edge of the true condition?


    What I'm trying to do:

    Monitor a robot for collision. If collision occurs, grab the JPOS where it happened and send that to a PLC. From the PLC, add a timestamp and log it to a SQL database.


    I'm planning on running a condition monitor in my main motion program to watch for a collision fault. When the program execution pauses when the fault occurs, I still want the condition handling program to execute. Per the manual, I need to set $TPP_MON.$LOCAL_MT to 2. Right now, $TPP_MON.$LOCAL_MT is set to 3 and I don't like changing things if I don't understand why they are the way they are. I was expecting it to be set to 1. Once the handling program fires, I'm going to restart the condition monitor. Do I need to add logic to inhibit it from immediately triggering again?


    Or, it there a better way to accomplish what I want to do?

  • Just do it in BG Logic.


    You can set a DO to turn on whenever there is a collision in menu>setup>Coll Guard.


    Then in BG Logic if there is a collision, record the current joint angles (from system variables) into registers. Then trigger your PLC to read those registers.

  • You need to use a msg command, and then trigger it from your collision IO, or some other method.


    I use it to run a little graphic on the HMI, but you could capture the current Jpos when the collision event occurs.


    I've attached the rung of logic I use, and the Fanuc JPOS data type I'm writing the data into.


    Here is what is in the message command configuration tab:

    Path would be what your robot is called under the tree, and the tag is your typical message tag in the controller.

Advertising from our partners