Controlling an extended axis with a PLC (ROBOGUIDE)

  • Hello folks!


    I'm trying to control an extended axis with a PLC. I'm using the $SCR_GRP[1].$MCH_ANG[5] system variable, but it's not working. I use the variable to read the data on axis number 5, but i don't know if i could write to the variable, in terms of controlling it?


    I've tried and when i write to it, the axis doesn't move in ROBOGUIDE, but the variable is changed to the correct value, when i check under system variables.


    Any suggestions or alternatives to do the job?

    Can the problem cause that the robot isn't in run?


    I have created a BG Logix program to run the code continuously:



    4: !Mapping the skirt position to the PLC

    5:

    6: GO[30:RGSkirtPos ]=($SCR_GRP[1].$MCH_ANG[5])

    7:

    8: !Skirt Control

    9:

    10: R[132:RGSkirtAxis]=GI[30:RGSkirtAxis]

    11: $SCR_GRP[1].$MCH_ANG[5]=R[132:RGSkirtAxis]



    Kind regards,

    daffyhunden

  • That variable is meant to be read only, you can't execute motion by changing it. To control an extended axis you need to run a regular TP program with a normal motion command to move the axis. If you want pass through control from the plc then you could run that program in a loop using jump labels.

  • Taking a shot in the dark here, but if I were the robot programmer for this I'd be asking the PLC programmer to use Explicit Messaging to write the value they want to move the axis to into a Register...They could use Explicit Messaging as well to read a Register that the MCH_ANG can be written to as well, if the PLC programmer needs it in their code to do what they need to do.


    I'd then write a program that takes that Register value from the PLC, input it into a PR (using PR[i, j]) and then executes the motion.

Advertising from our partners