Position register and offset

  • Hello,

    I am new to robotics. I am working with an R-30iA controller and an AB controller.

    I am looking for a way to write offset and position values from a PLC.

    Should I write to the robot position registers from the GI/GO? Or do you have another solution?


    Have a nice day :)

  • AD
  • Yes, I have the Ethernet IP adapter on the robot.

    What do you mean by using an explicit message?

    Because when I go to the Ethernet Ip option I don't have the following information that I could find on the forum about the explicit message

    Input mode :

    IP addr :





    Value size:


    Maybe it's because the controller is too old (2010)

  • An Explicit message is just the MSG instruction on the AB PLC. The parameters needed (class, instance, attribute, etc) are all documented in the EthernetIP Setup and Operations manual from Fanuc. If you have trouble let us know.

  • Hello,

    first of all, thank you for your answers, I am doing some research on the explicit message

    Can you send me the fanuc documentation because when I search on the internet it is impossible to download it. I am looking for this reference on the internet: MAROC77EN01101E

    And concerning the ADS file I can't open it. I tried with STUDIO 5000 and RS5000 and I always get this error: Error: Line 1: Import Export version mismatch. Expected version is 0.3. Check Import Export version syntax.

  • With AB you have to have the version that the program was created under on your computer to open that program up. In other words it appears the program was created in version 0.3, the computer you are attempting to open it with must have version 0.3 RSLogix 5000 on it.

  • Here is an example of sending a real number from a PLC Tag to Robot Register R[3].

    Set single Attribute = Service code 10

    Class = 6c = real number

    Instance = 1

    Attribute = 3 = hex value of Register number

    PLC_Tag is the data you want to send

    Bytes = 4, for a 32 bit real number

    (in the communication tab select the Path to the robot)

    There is an option to message directly to a Position Register but it is quite a bit more complicated. You have to set the UF, UT, X,Y,Z,W,P,R and config string.

    If you just need to send a simple offset along one axis I would just message to a single Register and then set the value of the PR from that.

    For example, set the x value of PR[5] .

    Message from PLC to R[3] using the example above.

    Then in the robot: PR[5,1] = R[3];

  • Merci beaucoup pour votre exemple,

    J'aimerais envoyer des offsets sur X,Y,Z,W,P,R mais je garderai votre exemple pour une autre utilisation.

    Fabien m'a envoyé un programme où il doit avoir l'échange avec les différents offsets.

    Thank you very much for your example,
    I would like to send offsets on X, Y, Z, W, P, R but I will save your example for another use.
    Fabien sent me a program where he must have the exchange with the different offsets.
  • Et je viens de vérifier sur mon robot je n'ai pas accès au message explicite. Soit le contrôleur est trop vieux, soit je n'ai pas le choix.

    J'ai regardé sur un robot plus récent pour essayer

    And I just checked on my robot I do not have access to the explicit message. Either the controller is too old or I have no choice.
    I looked on a newer robot to try
  • Hello,

    On the method with registers, I can't send him decimal and negative numbers

    What solution do you have?

    Knowing that I use a move block to send the GI


  • Yes you can send decimals and negative numbers.

    Make sure class is set to 6c and that you have the source tag as a real and size as 4 bytes.

    Try triggering it twice in a row.

    If that doesn't work send a screenshot of your setup.

  • There is some confusion here

    You do not need an option to read the Fanuc controller memory.. The PLC just reads it

    The picture HawkME posted is the PLC side of the setup and that is the only thing you have to do

    You do not do anything on the robot side. Just look at the register value changing when the PLC sends the command


  • I'm sorry but I'm a beginner in this business so I don't know the software. Where are the parameters to be set in RS5000 to send positive and negative numbers to the robot?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now