The robot program is actually generated by external software, where it also defines shift of a position variable. In the Program postion variable value is initialised as all zeros.
For the same position variable using teachpendent I wrote z value as something, as soon as I load the program to robot, it overwrites to zero, Its Clear for me as in the program the values are initialised to zero.
Is there a way to stop overwriting position vars by loading a progam ?
Overwriting Position Variable While Load
-
ravitejagali -
April 15, 2019 at 4:14 PM -
Thread is marked as Resolved.
-
-
Are you modifying the job on the robot teach pendant or are you modifying the job using external software. It seems that one of the robot jobs is initializing the z value to zero. Some where in one of the robot jobs the value is being set back to zero. You need to step thru the various jobs follow.the code and see where the instruction is that's setting the value back to zero.
Sent from my SM-N920I using Tapatalk
-
I don't know of a parameter to prevent this. What I do to prevent this is indirect address the position variable. The position variable will not show up in the job header.
In this example assuming the SFTON instruction:
SFTON P005 This information will be in the header in the correct format, tool, and element values. This will overwrite P005 when the job is loaded from an external device.
SFTON P[005] This information will not be in the header since it is indirectly addressed. This will not overwrite P005 when loaded into the controller.
To use this the controller has to be in expanded language level.
-
95devils, Thanks a lot man. The job header section is defined and generated by external cad/cam software__ where it is initialsing the position variable to zero, where even if i use indirect addressing which doesnt help me. I tought by setting some parameter I can avoid it.
-
There is no parameter for that. At least on a DX200 there isn't.
I was in contact with Yaskawa Finland about this issue last year. I'm loading JOB files from external memory device (YasXfer) and I also needed it not to overwrite the existing position variables. -
When the external source creates the job, does the job automatically get loaded into the controller or can it be intercepted?
A fairly easy program could be written in some computer software to strip the position variables from the header and rewrite the position variable(s) to indirect addressing. Or could be manually done.
-
I sent it by batch program using ftp, in my batch programm I can manipulate or remove initialisation of position variable.