position register changing representation

  • Good day,

    I've got a weird one that I'm hoping someone can help me with. I have user frame values stored in PRs. I get a call saying they are getting a 'position not reachable' alarm. I looked at PR[1] and while it has the same numerical values, it has somehow gone from Cartesian coordinates to joint angles. As far as I know, the only two ways to change the representation of a PR is either manually on the TP or by doing PR[X]=JPOS. Nobody touched the TP and we do not use JPOS instructions at all. Are there any other ways for a PR to programmatically change representation from Cartesian to joint?


  • AD
  • "Nobody touched the TP ..."

    How can you know that? Users always say this.

    Is it a single-time incident or repeated issue?

    Do you have anything like PalletTool or PickupTool in the robot? These may use PR[1} for own purposes.

    I would avoid such address anyways, as it is the first one you see in the Data screen, hence the most subject to erroneous overwriting.

  • Yes, fair point but I looked at recorded camera footage and there was indeed nobody around the TP at the time it happened.

    It did happen once last year, at which time I thought it must have been someone's fat fingers. However, the number of key presses made the chances of it being accidental very unlikely.

    We do not have PalletTool or PickupTool.

    • Helpful

    Hello leidai5,


    As far as I know, the only two ways to change the representation of a PR is either manually on the TP or by doing PR[X]=JPOS

    The representation of a Posreg can be changed with a Karel-Prog too.


    using a command like

    PR[1]= UTOOL[1]

    will change the Reprentation to the type "POSITION"

    you see something like NX, NY...


  • Thanks for the ideas.

    We don't use any KAREL programs on this robot.

    The only instructions that involved PR[1] are:

    33: UFRAME[1:User Frame]=PR[1:L1 User Frame] ;

    34: UFRAME_NUM=1 ;

    So we copy the contents of PR[1] into UFRAME[1] but nothing writes into PR[1].

  • We used to run into that on occasion. If I'm remembering right, I think it was happening only with PR[1] for us and may have had something to do with PR[1] specifically. It was something that only happened a couple times a year.

  • Yea, this only happened a couple of times in the past year and only with PR[1]. Sounds like we should just avoid using PR[1]. Should be an easy enough change. Thanks!

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