Academic Catalogs

ELEC A122: Robotics 2- Sensors, Control Theory, and Programming

Course Outline of Record
Item Value
Curriculum Committee Approval Date 12/02/2020
Top Code 093400 - Electronics and Electric Technology
Units 3 Total Units 
Hours 90 Total Hours (Lecture Hours 36; Lab Hours 54)
Total Outside of Class Hours 0
Course Credit Status Credit: Degree Applicable (D)
Material Fee No
Basic Skills Not Basic Skills (N)
Repeatable No
Grading Policy Standard Letter (S)

Course Description

This course covers many sensors used by robots to sense the environment. Sensors include limit switches, photo eyes, ultrasonic time of flight distance sensors, shaft encoders, and potentiometers. Includes a study of electronic speed controllers, servos, and stepper motors. Students will study the basics of control theory and program a closed loop speed controller (cruise control) using PID control implemented in C. Finally, students will continue their mechanical prototype developed in Robotics 1 by adding a digital control system, sensors, and autonomous code to complete their prototype. ADVISORY: ELEC A121. Transfer Credit: CSU.

Course Level Student Learning Outcome(s)

  1. Students will be able to design and program a robot to carry out a specific function utilizing the engineering design process.
  2. Students will be able to use fundamental mathematical techniques to process and analyze sensor data.
  3. Students will be able to implement robot control loops and closed loop control in C.
  4. Students will be proficient at communicating the progress and overall project outcome using industry-standard project management and documentation techniques.

Course Objectives

  • 1. Executing the engineering design process in order to identify and solve specific problems.
  • 2. Document the design process in a professional manner.
  • 3. Use sketches to communicate design ideas.
  • 4. Program a robot with custom code written in C.
  • 5. Implement a robot control loop.
  • 6. Incorporate sensors into a program.
  • 7. Implement closed-loop motor control.
  • 8. Identify and articulate the function of common sensors used on robots.
  • 9. Produce well-documented and fully commented code in C.

Lecture Content

Introduction to Robotic Systems Motion Systems Control Systems Sensors Mechanics Engineering Design Process Overview of the Process Define the Problem Research Prior Solutions Establish Requirements and Specifications Brainstorm Solutions Develop Prototypes Test Documentation Sketching ideas Quality brainstorming techniques Project Management Project progress tracking Status reports Communicating with a team Sensors Analog vs. Digital Sensors Operation, Construction and Application of Sensors Limit Switches Distance Sensors Light Sensors pan> Encoders Force Sensors Current Sensors LiDAR Scanning Sensors Derivatives and Integrals of Sensor Data Sensor Noise Averaging Filtering Computer Vision Systems Object Tracking Object Recognition Control Theory Control Loop Poll Sensors Analyze Data Calculate Response Set Actuators Delay Real Time Operating Systems Closed Loop Control (PID) Motor Control Programming Implementing a control loop in C. Implementing PID in C Interfacing Sensors Polling vs. Interrupts Filtering and Averaging Readings Interpreting Data Programmatically Decision Making in C Robot States Planning for Upset Conditions Testing Code Debugging Logging Emergency Stop Function Documentation Code readability Naming variables, functions, and constants Comments Pseudocode Fully Documented Code

Lab Content

Safety and Lab Familiarization Lab Procedures Tools Equipment Supplies Vehicle Project Students assemble a simple robot from a kit. Instructions are provided and students assemble the robot to exact specifications. Students establish a wireless connection between the robot and a controller for verification of robot functions. Students demonstrate proper cable management for moving vehicles- Strain relief Proper use of zip ties vs. electrical tape Cable protection and avoidance of pinch points Assistive Braking Project Students implement sensors and code on the robot to prevent the robot from driving into an obstacle.  Cruise Control Project Students implement motor encoders on the robot to maintain constant speed up and down grades. Motor speed is controlled via PID closed-loop control. Adaptive Cruise Control Project Students implement multiple sensors to maintain a constant speed and avoid hitting obstacles by slowing or stopping. Group Capstone Project Students progress through the engineering design process in small groups to build a robot to solve a specific need. Students produce documentation throughout the process and implement project management strategies learned in lecture. Students culminate by demonstrating autonomous robot function according to design specifications. This project is intended to be primarily a robot sensor, control, and automation project, with minimal time spent on mechanical design. Report- Working in groups, students produce a final report documenting all steps of their design process.

Method(s) of Instruction

  • Lecture (02)
  • DE Live Online Lecture (02S)
  • DE Online Lecture (02X)
  • Lab (04)
  • DE Live Online Lab (04S)
  • DE Online Lab (04X)

Instructional Techniques

Lecture Detailed whiteboard lectures with opportunity for student engagement. Independent in-class problem solving assignments with immediate review. Group based in-class problem solving assignments with immediate review. In-class review of previously assigned homework. Discussion of media provided and assigned via LMS. Review of material prior to exams. Lab Students complete projects individually and as groups.  Lab projects reinforce lecture topics and are paced to coincide or lag the lecture content. Lab projects generate content that students use to generate reports and documentation, enhancing writing and critical thinking skills.

Reading Assignments

Students will spend approximately 2 hours per week on reading instructor created handouts provided via the LMS

Out-of-class Assignments

Students will spend approximately 3 hours per week on out-of-class assignments, including: Researching topics as assigned. Preparing technical documents prior to laboratory projects. Completing technical reports after each project. Maintaining a portfolio of projects throughout the semester.

Demonstration of Critical Thinking

Students execute the design of a robot using the engineering design process. Students work individually and in groups to solve challenges presented in a project based form. Quizzes administered at the end of each topic to demonstrate mastery of the specific objective. Midterm and final exam administered to test ability to retain problem solving skills.

Required Writing, Problem Solving, Skills Demonstration

Exercises Group and individual Projects Quizzes Midterm Exam Final Exam Keep a journal of chronological notes taken during: a) research b) lecture c) laboratory experience. Maintain a portfolio of technical reports, research and class notes. Submit technical reports for lab projects containing results and analysis.

Eligible Disciplines

Electromechanical technology (industrial mechanical technology): Any bachelors degree and two years of professional experience, or any associate degree and six years of professional experience.

Other Resources

1. Content provided via LMS.