Robots have historically been taught manually, i.e. using the robot’s ‘teach pendant’ to manually drive the robot’s TCP to the desired point along the part to be operated on, while visually verifying – as much as feasible – the achieved accuracy. This is obviously a time-consuming process, to be painstakingly repeated for each (relevant) point along the robot’s path in space; furthermore, this process clearly doesn’t provide a high level of positional accuracy.
Robot Simulation software, commercialized nowadays by various companies, offers the ability to model an entire robot-cell on computer prior to dealing with it on the actual plant floor: a desired robot model is chosen, the end-effector and the fixture can be modeled, the part can be imported from some other CAD software – all that allowing the final robot program (with all required speeds and including any other desired commands) to be entirely created upfront through Simulation.
The created robot program is – theoretically – ready to be executed on the actual robot: this process is referred to as Off-Line Programming (OLP). More specifically, ‘Downloading’ is the process of transferring robot programs created through Simulation software in a ‘nominal’ environment, to the ‘actual’ robot-cell on the plant floor; ‘Uploading’ consists of transferring robot programs created on the ‘actual’ robot-cell on the plant floor, to the ‘nominal’ robot-cell in the Simulation software.