I have connected the robot to a PC (IP address - network). I can transfer files over FTP to the robot (ABB IRB 4400).
My question is: is there a way so that I can read the robot coordinates (position and orientation) on my PC (because at the moment I can only read it on the Teach Pendant)?
You need a PC application designed to communicate with the robot controller in order to access this type of data. For S4C+ and earlier, you would use WebWare SDK to develop this application, or Robot Application Builder for IRC5 (see these topics elsewhere in this forum for more info). Additionally, the robot controller must have RAP/FactoryWare option for S4 or PC Interface for IRC5.
But what about writting a program in RAPID. I think about you jog to a point read that point with CRobT. Now I want that this point is saved in my program so that I can send the program over FTP to my PC and open that file for example in Notepad. Than I could read the coordinates on my PC. Is there a command to save that point in my program??
Which model of robot controller do you have S4C+, IRC5, other?
If you have the option NFS or FTP Client, plus the File/Serial Handling option, then you could write text to a file that could be saved on your PC. Then you could open it in Notepad or similar.
A more powerful application could be implemented using the tools I described earlier. It would not be too difficult to create a tool that could run on your PC that would monitor the current position and update itself automatically.
Also I forgot to mention earlier that on IRC5, the Socket Messaging Option allows you to write messages using TCP sockets to a PC application that is capable of receiving these messages.
PROC MyProc
MyPosition := CROBT(Tool:=MyToolWobj:=MyWobj);
Save “MyModule”;
! Now the value is ready to be transfered via FTP (MyModule.MOD),
! beacuse the initialization of MyPosition has been updated.
ENDPROC
I imagine it depends on the frequency you need to save. I use this method to allow the user to change position interactively, saving each time the user modify a position. I never had problems.
Usually I have an independent module with all the PERS robtarget in the program. At the beginning of the program I usually put a Save statement to be sure to update the module on the disk if a position has been changed.
If you have any information about the fact that the flash disk can be damaged if frequent writing operations are performed, please write me!
Extremely intersting. I never read this.
So, writing programs that continously use the disk to interchange data is not a very good idea. I will remember that.