Discipline: Computer Information Systems Degree Credit  [X]
Non Credit  [ ]
Nondegree Credit  [ ]
Comm Service  [ ]
 

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:

  1. Create computer programs in C++ using the principles of structured programming.

  2. Apply the principles of logical and programming concepts to develop specific solutions for gaming, business, scientific and mathematics problems.

  3. 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.

  4. Demonstrate the use of the C++ IDE and libraries.

  5. Demonstrate the fundamentals of computer programming, problem solving, and software design.

  6. Analyze and understand the Object-Oriented C++ environment.

  7. Demonstrate the use of specialized terminology, directives, and features of the C++ language.

  8. Apply theoretical gaming, business, scientific, and mathematical concepts in writing and executing programs in the C++ language using Object-Oriented programming methodology.

  9. Demonstrate specified problem-solving and software design skills using the C++ language.

  10. 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