MAE 145: Robotic Planning and Estimation

A Quick Guide to Python, and IDEs: In this course, we will be using Python to write programs. If you are not familiar with Python but you have programming experience (e.g. MATLAB), it will be easy to get up to speed with it. Here is some information on how to work with it and install an IDE:

• A brief tutorial on Python, by David J. Pine, and its use in Science is available in https://physics.nyu.edu/pine/pymanual/html/pymanMaster.html • As is mentioned in this tutorial, an easy way to work with Python is to install “Canopy Express” or “Spyder”, which are Integrated Development Environments (IDEs). You can either install Canopy Express for this course, available at https://www.enthought.com/product/canopy/, or I recom- mend Spyder. To work with Spyder, go to Anaconda (https://www.anaconda.com/download/), download Anaconda for Python 3.8 (for either PCs, Macs or ). The Anaconda Navigator is a GUI that allows you to launch several applications like Spyder and Jypyther. Click on the Anaconda icon to open it, then click on the home tab to see several python applications. Click on the Spyder “launch” box to open Spyder. For each of the IDE above, there are quick tutorials that you can follow (please take a moment to do so). TAs will do a quick revision of Python in the first discussion sections. Finally, another free option is to use the or classic text editors to work with Python. • Learning about Python: – Apart from the tutorial above, you can check out the Python tutorial from Python.org https://docs.python.org/3.3/tutorial/. – A source to learn about Python for someone without programming experience is http://interactivepython.org/runestone/static/thinkcspy/index.html, based on the book “How to think like a computer scientist” by Allen B. Downey. – Links to all documentation are available in the Anaconda Navigator (learning tab), as well as access to forums (click on the community tab) such as Stack Overflow: Python. When in doubt about Python, you can look for similar questions others had in this forum. – In particular, documentation on python and scientific computing is available here http://scipy-cookbook.readthedocs.io/ and, on , matplotlib.org • Although not required for this course, you can also take some time in the future to learn about the following: – Command lines for terminals, as Linux environments are the common OS to program robots. A game you can play to do this is “Terminus” developed by MIT students. For more information about Terminus, check out the file http://www.mprat.org/projects/terminus/ – Learn about ROS, the robotics . Some introduction is available in the online course “Programming for Robotics - ROS” available here www.rsl.ethz.ch/education-students/lectures/ros.html

1