--- title: Overview on Robotics tags: cs 593 robotics --- # Overview on Robotics -> cognition - > | | -< body <---- perception -> planning -> control -> environment loops back to perception **draw that out lol that sucked** ## perception - local perception - camera on the robot - e.g. depth sensor - global perception - assume we know the entire space - usually generated through SLAM - simultaneous localization and mapping - pre-built packages (omni mapper) - continuing research with SLAM - data association - model-based vs model-free - landmark detection - modality - touch - thermal - vision - combining modalities ## planning - high-level planning - task planning - discrete spaces - low-level planning - deals with the environment and actuators - for each task, how will the robot send commands to its actuators to interact with the environment - continuous spaces - tools - discretization-based approaches - A^*^ - disadvantages - curse of dimensionality - resolution is important - sampling based methods - RRT, RRT*, PRMs - advanced constraints - constraints ## control / action - send comands to actuators to follow waypoints to get to targets - Kalman filters to incorporate system noise (uncertainty) into planning algorithm ### definitions - localization - knowing where i am with reference to another object - configuration space (c-space) - robot joint space - work/task space - can be 2D or 3D - point mass - configuration space - (x,y) -> point -> R^2^ - workspace - 2D -> R^2^ - rigid-body - configuration space - (x,y, $\theta$ ) -> point with angle -> R^3^ - can get to state-space - workspace - 2D -> R^2^ - planning algorithms - plan in configuration space ### course specifics - assume global perception is provided or assume local perception - emphasis on low-level planning and assume high-level plan is given - combine machine learning with sampling based planning - focus on sampling based planning ### course logistics https://qureshiahmed.github.io/sp22.html - assignment 1 - sampling based methods - assignment 2 - PID for robot arm to follow circular trajectory - assignment 3 - combining learning with planning - assignment 4 - deep reinforcement learning - final project - use techniques not covered in assignments! - class participation - answering questions on piazza ### read up on before next class - Modern robotics book: http://hades.mech.northwestern.edu/images/7/7f/MR.pdf configuration space and workspace and state-space !!!! RRT (rapidly-exploring random tree) - RRT*, PRMs A* - graph traversal and path search algorithm - combines dijkstra's algorithm and greedy best-first-search - dijkstra's - favoring vertices that are close to the starting point - greedy best-first-search - favoring vertices that are close to the goal PID controller(proportional-integral-derivative controller) - single input, single ouput - control loop mechanism that modifies itself based off of derivatives and proportions to minimize error - e.g. cruise control on a car, power requirement changes if you go up a hill but speed doesn't change MPC (model predictive controller) - multiple inputs, multiple outputs - multivariable control algorithm that uses - an internal dynamic model of the process - a cost function over the receding horizon - an optimization algorithm minimizing the cost function using the control input think of example where workspace has higher dimension than c-space