// ------------------------------------ test rig -------------------------- // MODIFY main() to test out different arm movements public static void Main(string[] args) { RobotArm robotArm = new RobotArm(); // tests that cause errors: // boolean hasMoved = robotArm.moveTo(0, 300, 130); // reaching too far // boolean hasMoved = robotArm.moveTo(150, 250, 130); // too far // boolean hasMoved = robotArm.moveTo(0, 8, 65); // wrist and shoulder out of range // boolean hasMoved = robotArm.moveTo(0, 150, 65); // elbow out of range // tests in methods: // moveInLine(robotArm); // shiftItem(robotArm); // move to, grab, move to, release //robotArm.openGripper(true); // open gripper robotArm.moveTo(150, 250, 65); // coord given in mm robotArm.wait(1000); robotArm.openGripper(false); // close // robotArm.moveTo(-150, 200, 65); // in mm robotArm.moveToZero(); robotArm.openGripper(true); // open // report angles and coords robotArm.showAngles(); Console.WriteLine("Coord: " + robotArm.getCoord() ); robotArm.close(); }
public override void DeactivateActuator() { _robotArm.setLight(false); _robotArm.close(); _robotArm = null; armActive = false; }
public override void ActivateActuator() { _robotArm = new RobotArm(); _robotArm.setLight(true); armActive = true; }
public void SimpleMoveToCompositeTest() { RobotArm arm = new RobotArm(); arm.moveToComposite(new Coord3D(){X = 0, Y = 229, Z = 196}); Thread.Sleep(1000); arm.moveToZero(); }
// moves object from one coord to another private static void shiftItem(RobotArm robotArm) { Coord3D fromPt = new Coord3D(150, 150, 65); // in mm Coord3D toPt = new Coord3D(-150, 200, 65); robotArm.moveItem(fromPt, toPt); }
// moves arm in a straight line private static void moveInLine(RobotArm robotArm) { for(int x = -100; x <= 100; x += 20) { robotArm.moveTo(x, 200, 80); robotArm.wait(500); } }