Popularity of Do-It-Yourself robotics caused that many people have distorted view on industrial robot programming. If you ask someone about programming languages used in robotics you probably have heard of: assembler/C/Java/I don’t know.
Unlike computer programming in robotics there is no one common language which could be used on any robot. Programmer who knows Java or C could write programs for Windows, Mac OSX, Linux, and mobile devices. In robotics each robot manufacturer developed his own language which is incompatible with other controllers.
There is a short list of industrial robot programming languages:
The good news is that those languages are quite similar to each other. All have syntax based on BASIC, Pascal or C. If you know on of these language you could learn quickly another on elementary level. Teaching new positions on robot don’t require weeks of manual studying. But if you need to use some more advanced commands, then is required much more time to learn.
Below you can see two programs performing the same robot movements in Abb and KUKA syntax.
! Drop position
! Some logic instructions
PTP HOME Vel= 100 % DEFAULT
PTP LHP005 CONT Vel= 100 % PDAT2 Tool:GR01_W1_Tool Base:B01_02FX02
PTP LHP010 CONT Vel= 100 % PDAT3 Tool:GR01_W1_Tool Base:B01_02FX02
; Drop position
LIN LBH_02fx02 Vel= 0.5 m/s CPDAT8 Tool:GR01_W1_Tool Base:B01_02FX02
; Some logic instructions
Besides non standarization it is important to know that executing commands in robot is depend from position where robot is. For example robot doesn’t execute line „some logic instructions” until reach LBH_02fx02 position.
History of robot programming
History of modern programming languages in robotics began in middle of seventies. One of first was VAL (Victor’s Assembly Language) which was developed in company belongs to Victora Scheiman. His company (Vicarm) together with developed PUMA robot and new invented programming language was bought in 1977 by Unimate. Actually VAL is used by Stäubli which bought in eighties a bankrupt Unimate.
Before robots receive their own programming language they were controlled by system who replay movements which were teached earlier. All informations was saved using magnetics tapes. If was very inconvenient, for example there was no possibility to reuse part of existing robot program.
Operator can’t simply checks what is recorded on tape. He have to play it once to see what stored program really do. Magnetics tapes were unreliable, and required to rewind after reaching end of tape. To reduce wasted time controllers had two identical tapes. When robot executed program from first one one the second was rewinded.
Today robot producers are trying to reinvent teaching by demonstration. Using modern controllers operators could teach robot faster than with traditional method.