# High-level - Chess engine - Board scanning -> FEN (Engine notation) - Outputs: coordinates of pick and place coordinates of robot ## Planning - Sampling-based planners - RRT* - Maybe next time - Collision detection - Next time ### Linear interpolation for the planner - Known values: z-offset=0.1m, pose of board - Calculate pick and place positions from board pose and coordinates from high-level and 1. Center above pick position 2. Pick position 3. Go up 4. Center above place position 5. Place position 6. Go up 7. Home position Outputs list of xyz positions Inverse kinematics: xyz to joint angles Feed joint angles to Control # Perception - Cameras capture board state for FEN notation - Done # Control Goal: Given joint values, execute control commands that reach those joint values Constraints: 1. Low-velocity movements 2. Stay within joint limits 3. Follow waypoints within tolerance Build controller that solves these constraints - PID controller - Hard to tune - less computatlion - MPC controller - Easier to tune - more computation - [AX-12A Servo Control Docs](https://emanual.robotis.com/docs/en/dxl/ax/ax-12a/) - [read/write to servo](https://github.com/ROBOTIS-GIT/DynamixelSDK/blob/master/python/tests/protocol1_0/read_write.py) - - Raghava