Riverside Community College District
Integrated Course Outline of Record
Computer Information Systems 22B
|
COURSE DESCRIPTION
|
|
22B Robotics: Intermediate Programming
|
Units: 3.00
|
|
|
Prerequisite(s): None.
Advisory: CIS 5 , CIS 17A concurrent enrollment or CIS 18A
|
|
This course presents the theory and practice behind robotic programming. It teaches the skills needed for programming a robot and implementing this program in a micro-controller and servo based robotic system. 54 hours lecture.
|
|
|
SHORT DESCRIPTION FOR CLASS SCHEDULE
|
|
Robotics programming for students experienced in Object Oriented Programming concepts.
|
|
|
ADVISORY ENTRY SKILLS
Before entering the course, students will be able to:
|
-
Create computer programs in C++ using the principles of structured programming.
-
Apply the principles of logical and programming concepts to develop specific solutions for gaming, business, scientific and mathematics problems.
-
Identify the information input requirements, synthesize the algorithmic steps needed to transform the data input into the required output information, and organize the output format to facilitate user communication.
-
Demonstrate the use of the C++ IDE and libraries.
-
Demonstrate the fundamentals of computer programming, problem solving, and software design.
-
Analyze and understand the Object-Oriented C++ environment.
-
Demonstrate the use of specialized terminology, directives, and features of the C++ language.
-
Apply theoretical gaming, business, scientific, and mathematical concepts in writing and executing programs in the C++ language using Object-Oriented programming methodology.
-
Demonstrate specified problem-solving and software design skills using the C++ language.
-
CIS-96/97 and CAT-96/97 are self-paced, competency-based, skill development computer labs. They provide the computer practice times to master the skills taught in the lecture classes. There is one-on-one instructor assistance available with additional help provided by student aides. Basically, the skills that are presented in the lecture classes have to be practiced to be mastered and that is the purpose of CIS-96/97 and CAT-96/97.
|
STUDENT LEARNING OUTCOMES
Upon successful completion of the course, students should be able to:
|
|
1. Design and build robots using preconfigured microcontrollers and servers.
2. Develop object oriented programs that sense the environment and navigate a robot in the real world.
|
|
|
COURSE CONTENT
|
|
|
TOPICS
|
|
|
1. Operating Systems Real time processing as related to operating system implementations. 2. Language Implementation Basics OOP, Interfaces, Flow Control, Threads, and Data Structures 3. I/O and Communications Serial, Parallel, USB, Sound, Displays, and Timers 4. Hardware a. The Parts Library -> Components associated with manipulation and locomotion. 5. Behavior Control Theory a. Programming behavior consistent with solid action and suppression methods. 6. Navigation Theory a. Understanding the problems associated with programming navigation. Systematic as well as non-systematic errors. 7. Navigation Sensors a. Rotation, proximity detection and directional sensors. 8. Advanced Topics a. Streams, Memory issues, Firmware, Code efficiencies, Native methods, Artificial Intelligence,
Text reading assignments will be supplemented with writing programs or parts of programs, which emphasize portions of the lecture. Students must document and debug programs and prepare and present term projects utilizing simulations and hardware with a real time operating system.
|
|
|
|
METHODS OF INSTRUCTION
Methods of instruction used to achieve student learning outcomes may include, but are not limited to:
|
- Lecture presentations that demonstrate problem solving approaches and strategies as well as concepts and their applications
- Multimedia Presentations to demonstrate Behavior Control Theory, Navigation Theory, Navigation Sensors and advanced topics
- Computer aided instruction in I/O communications via serial, parallel, USB ports plus how-to generate sounds, displays and timers
- Class discussion of behavior control theory, navigation theory, navigation sensors as well as advanced topics
- Small group activities of team programming the robot to navigate objects and achieve a desired destination
- Distance learning via online Internet instruction
|
|
|
METHODS OF EVALUATION
Students will be evaluated for progress in and/or mastery of learning outcomes by methods of evaluation which may include, but are not limited to:
|
- Oral presentations to demonstrate student understanding of how to solve robotic issues concerning navigation, sensory input and interaction with real world objects
- Programming assignments to tie-together the elements of behavior control, sensory input and robot navigation
- Quizzes and examinations to demonstrate successful student understanding and application of basic robotic concepts
- Class and individual projects to allow students to function in the team environment to program a robot to navigate from point A to point B
- Final examination designed to assess student mastery of essential concepts of robotics
|
|
ASSIGNMENTS
|
Required Reading Assignments
Required Writing Assignments
Other Outside-of-Class Assignments
|
|
|
COURSE MATERIALS
All materials used in this course will be periodically reviewed to ensure that they are appropriate for college level instruction. Possible texts include:
|
-
Jones, Joe and Daniel Roth. Robot Programming: A practical guide to behavior based Robotics.
McGraw Hill, 2003.
-
Brian Bagnall. Core Mindstorms Programming.
Prentice Hall, 2002.
-
Dario Laverde. Programming Mindstorms.
Syngress, 2002.
|
| 06/07 |
| 530 |