What is it?
In the Autonomous Machines thread, students will design, build, and deploy electromechanical systems, electronics, software, and autonomy algorithms for real-world robots.
What will I learn?
Autonomous machines integrate mechanical and informational components by combining the physical constraints of a vehicle with the control, planning, navigation, and perception algorithms required to make them operate independently. The creation of an effective autonomous vehicle requires knowledge of kinematics, dynamics, modeling, control, simulation, design, electronics, sensors, algorithms, software, human-robot interaction, systems engineering, and experimentation.
Participants in Autonomous Machines will get hands-on experience in all of these disciplines through a series of projects with escalating complexity. Starting with individual projects in small-scale software design for embedded microcontrollers, they then move on to team-level design of perception and planning for automated quadrotors or cars. Finally, the entire class will build a scaled and automated mobility-on-demand system as a semester-long project in the senior year.
What is this thread’s “new machine and systems?”
An autonomous machine uses sensory information to determine the location/orientation of itself as well as the location/orientation of other objects within its vicinity. It then uses this acquired information for planning, navigation, and/or manipulation purposes independent of human intervention. These purposes include transportation and intricate manipulating tasks.
Who do I talk to?
For more information about the Autonomous Machines thread, please contact
- Jonathan How, founding faculty lead and professor of aeronautics and astronautics: firstname.lastname@example.org
- Sertac Karaman, interim faculty lead and associate professor of Aeronautics and Astronautics: email@example.com
- Greg Long, NEET lead technical instructor: firstname.lastname@example.org
The Autonomous Machines thread is offered to students majoring in Courses 16-ENG, 2-A, or 6-2. Core requirements and suggested electives are given below, but we encourage interested students to contact one of the thread’s faculty leads or the lead technical instructor for class selection and advising.
Core requirements for this thread include projects, seminars, and foundation subjects.
The project subjects in Autonomous Machines are:
- Sophomore Spring: 2.S007 Design and Manufacturing (of Robotic Systems): A special section of 2.007 Design and Manufacturing I, 2.S007 develops students’ competence and self-confidence as design engineers, with an emphasis on the creative design process bolstered by application of physical laws. Instruction is given on how to complete projects on schedule and within budget. Robustness and manufacturability are emphasized. Subject relies on active learning via a major design-and-build project. Lecture topics include idea generation, estimation, concept selection, visual thinking, computer-aided design (CAD), mechanism design, machine elements, basic electronics, technical communication, and ethics. Lab fee. Limited enrollment. Pre-registration required for lab assignment; special sections by lottery only (12 units).
- Junior Spring: 6.141J /16.405J Robotics: Science and Systems: Presents concepts, principles, and algorithmic foundations for robots and autonomous vehicles operating in the physical world. Topics include sensing, kinematics and dynamics, state estimation, computer vision, perception, learning, control, motion planning, and embedded system development. Students design and implement advanced algorithms on complex robotic platforms capable of agile autonomous navigation and real-time interaction with the physical word. Students engage in extensive written and oral communication exercises. Enrollment limited (12 units).
- Senior Spring: 16.84 Advanced Autonomous Robotic Systems: Design of an autonomous vehicle system to satisfy stated performance goals. Emphasis is on both hardware and software components of the design and implementation. Entails application of fundamental principles and design engineering in both individual and group efforts. Includes written and oral communication. The final design will be showcased to the public at the end of the semester. Prerequisite: 6.141J (16.405J) Robotics: Science and Systems (12 units).
- Sophomore Fall: (16.632, 3 units) Each student builds and programs an autonomous smart car that incorporates sensors for elementary feedback control algorithms. Each student programs their car to satisfy/overcome a challenge at the end of the semester.
- Junior Fall: (16.633, 3 units) Students work in small groups to program an autonomous quadcopter drone using an attached camera as the primary means to develop control algorithms. In addition, students learn how to program in Robot Operating System (ROS).
- Senior Fall: (16.301, 3 units) Students will work on a hands-on project, yet to be determined.
- Mechanics (any one): 2.001 Mechanics and Materials I or 16.001 Unified Engineering: Materials and Structures
- Note: Students majoring in electrical engineering and computer science (course 6) could take the Self-Study Statics Module, 2.001, or 16.001 as a regular class during the fall term or IAP (if offered); or, they could take the Statics Proficiency Exam at any time before the spring term.
- Introduction to programming (any one): 6.0001 Introduction to Computer Science Programming in Python + 6.0002 Introduction to Computational Thinking and Data Science; or 2.086 Numerical Computation for Mechanical Engineers
- Signals and systems (any one): 6.003 Signals and Systems or 16.002 Unified Engineering: Signals and Systems
- Controls (any one): 2.004 Dynamics and Control II or 6.302 Feedback System Design or 16.06 Principles of Automatic Control
- Math (any one): 18.03 Differential Equations, 2.087 Engineering Mathematics: Linear Algebra and ODEs, 6.041A Introduction to Probability I, 6.041B Introduction to Probability II or 6.042 Mathematics for Computer Science
Want to go further?
Some suggested electives (these are not required, and are not part of the core requirements for this thread):
- A second math subject from 2.087 Engineering Mathematics: Linear Algebra and ODEs, 6.041A Introduction to Probability I, 6.041B Introduction to Probability II, 6.042 Mathematics for Computer Science, or 18.03 Differential Equations.
- AI/Machine learning/Autonomy: 6.034 Artificial Intelligence or 16.410 Principles of Autonomy and Decision Making or 6.036 Introduction to Machine Learning
- Electronics/Microprocessors: 2.678 Electronics for Mechanical Systems or 6.115 Microcomputer Project Laboratory
- Robot mechanics: 2.12 Introduction to Robotics
- Real-time systems: 16.35 Real-Time Systems and Software
- Programming: 6.009 Fundamentals of Programming
- Feedback and control: 2.14 Analysis and Design of Feedback Control Systems or 16.30 Feedback Control Systems
- Human factors: 16.400 Human Systems Engineering
- Measurement/Instrumentation: 2.671 Measurement and Instrumentation or 6.801 Machine Vision
Please note that any subjects listed above may change depending on departmental requirements.