Mapping Objects
We will set up infinite scan so the robot automatically learns about objects. This process is a giant for loop over objects; in the inner loop you can do whatever experiments you like.
There are three poses defined in scan.back designated with functionality for the scan:
inputPileWorkspace
playWorkspace
outputPileWorkspace
Move the arm to these locations by issuing, for instance:
playWorkspace moveEeToPoseWord
You can change the values of these variables in the file, save, and reload with
"scan" import
Check the inputPile
and playWorkspace
and make sure there is about 20cm by 20cm of free real estate. The output
pile doesn’t really need space as long as objects deposited there can clear the other workspaces.
Once everything is clear, issue
catScan5CacheBackgrounds
This word invokes scan patterns which cover the default workspaces slightly better than a square scan. If you change the workspaces you might need to change the scan patterns.
Check the background maps by calling
catScan5LoadInputBg
catScan5LoadPlayBg
and checking the Background View window after each command.
Find three objects that fit in the 4cm gripper and contrast with the background. Place them in the inputPile
workspace and issue
tableInfiniteScan
The arm should scan the play workspace to make a new map, scan the input workspace to find an object, move the object to the the play workspace, play with it, move it to the output pile, and begin again by scanning the play workspace.