Can current position registers be updated from a program?

  • I'm very new to robots and especially fanuc robots. We have R-30iB controller.

    Our software communicates with the robot via a Kepware server. To get the robot's current position, we have 8 tag names mapped to robot registers that are updated as the robot moves.

    1. I want to write a program on the robot controller to be able to set these robot registers through the program. I need this to simulate my robot - the program will update these positions without actually moving the robot. Is it possible? What do I need to do?
    2. I tried updating these values manually from the Kepware client, but they didn't change. So I assumed it was impossible. Or maybe I need to enable something on the controller for this?

  • I want to write a program on the robot controller to be able to set these robot registers through the program. I need this to simulate my robot - the program will update these positions without actually moving the robot. Is it possible? What do I need to do?

    If this is something that doesn't need to happen all the time, you could turn off motion in the test menu. I believe the CURJPOS will updated with where the robot "believes" it is, not where it actually is.

    I tried updating these values manually from the Kepware client, but they didn't change. So I assumed it was impossible. Or maybe I need to enable something on the controller for this?

    They may have updated for a scan on the robot side, but then your background program probably immediately overwrote it.

    Check out the Fanuc position converter I wrote here! Now open source!

    Check out my example Fanuc Ethernet/IP Explicit Messaging program here!

  • I'm very new to robots and especially fanuc robots. We have R-30iB controller.

    Our software communicates with the robot via a Kepware server. To get the robot's current position, we have 8 tag names mapped to robot registers that are updated as the robot moves.

    1. I want to write a program on the robot controller to be able to set these robot registers through the program. I need this to simulate my robot - the program will update these positions without actually moving the robot. Is it possible? What do I need to do?
    2. I tried updating these values manually from the Kepware client, but they didn't change. So I assumed it was impossible. Or maybe I need to enable something on the controller for this?

    Hello ,


    To understand your requirements -


    1.Do you want those reg value to be updated with out executing any robot porgram ? - well you can do by creating background program which update robot current position from robot variable --- that has robot current position or you can use instruction JPOS to get currnet joint positon ... this program could update all register value in real time --- some miliseconds delay !!


    also , mask out any group in program details so your program can run in background wiht our affecting any other motion program


    Also , does your software has difficutiles to read register value or your robot program can not update register values


    If you can not update your tags with current updated register values , you can do some reasearch on explicit messaging ... we did get use those messaging to read and write direct postion register / register from Allen bradley PLC .. or you may need PCDK to get live robot data


    Hope this helps ..

Advertising from our partners