BE1200, Basic Engineering I: Design in Engineering


Winter 2013

Section #22216

Room: 2507 Engineering Bldg.

T & Thu: 1:25 – 3:45



Final Exam/Contest: Thursday, April 25, 1:25 – 3:45



Professor Mohamad Hassoun

Office: 3127 Engineering Building

Tel. 313-577-3966





Approach: ENGINEERING DESIGN with LEGO® MindstormsTM


The idea behind this freshman robotics design course is to expose students to real engineering as early as possible, to motivate their studies in necessary mathematics and science courses while they are taking them, and to teach explicitly some programming and manual skills they mostly lack. Students work in teams of 2-3 individuals to design, build and demonstrates autonomous machines that interact with their environment in real time.  The goal is to generate real enthusiasm ‑‑ the "Aha!" that accompanies insight as students grasp that they can, for example, model interesting physical phenomena with a little mathematics, science and judgment ‑‑ and let them get their hands dirty on real problems. This experience demonstrates to new students the practical need for more preparation in subsequent mathematics and science classes and also provides students with the elementary hands‑on laboratory and programming skills that they often lack. The course culminates in a final contest challenge where student teams have their robots compete against each other on a predefined set of tasks.

Prerequisites by Topic: (MAT 1800) Basic definition and concept of function. Definitions, properties and graphs of polynomial, rational, exponential, logarithmic, trigonometric, and inverse trigonometric functions.

Prerequisites and co-requisites are checked automatically at the time of registration.  However, it is ultimately a student's responsibility to make certain that they have the prerequisites and co-requisites for a course.  Students must remain registered for a co-requisite course throughout the semester. Advisors will check course prerequisites and co-requisites during the 5th and 6th week of the semester.  Any student found to be registered for a course without meeting these requirements, and without an official waiver on file, will be administratively withdrawn from the course.

Instructor Information:

Name: Mohamad H. Hassoun, Professor

Office: 3127 Engineering. Building

Office Phone: (313) 577-3966




Office Hours:          

Prof. Mohamad Hassoun: 11:30 – 1:15, Tuesdays and Thursdays and by appointment (Room 3127 Engineering).

TA: Jim Ou ( Office hours: 10:00 – 12:00, M & W. Room 3114 Engineering.



Definitive Guide to LEGO Mindstorms, 2nd Edition, Dave Baum (Apress, 2003).

Building Robots with Lego Mindstorms, Mario Ferrari, Giulio Ferrari, and Ralph Hempel (SYNGRESS, 2002).

Web-assisted course material including lecture notes, laboratory manual, reference material, relevant links and announcements and grades are located at:

Distribution of Points: The final grade for this course will be based on the following four components:

- Home work (individual effort, no late home work will be accepted):10%

- Two tests (individual effort) (20 % each): 40%

- Midterm project (team effort): 20%

- Final project (Team effort): 30%


- Attendance is mandatory.  Each class session missed leads to a loss of 1 point (1%) of the final score. Arriving to class more than 5 min late, or leaving class early will count as an absence! For example, if your final score is 90 (out of 100) and you miss (or you are tardy) 5 class sessions then your score drops to 85. In cases of documented emergencies, an absence/tardy penalty may be waived by your instructor.


Grading Scale:

Percentage/Grade/(Honor Point Value)

95-100         A         (4.00)

90-94           A-        (3.67)

85-89           B+       (3.33)

80-84           B         (3.00)

75-79           B-        (2.67)

70-74           C+       (2.33)

65-69           C         (2.00)

60-64           C-        (1.67)

55-59           D+       (1.33)

50-54           D         (1.00)

45-49           D-        (0.67)

0-44             F          (0.00)


Teams: Students work in teams of 2-3 individuals. Your instructor will assign your team based on a questionnaire that you will complete during the first week of class.


Withdrawal: The last day to drop class with a tuition refund is the end of the second week of classes.


Students who do not complete the coursework, but fail to officially withdraw from the course will receive an F or X depending on how much coursework has been completed.


A grade of I will be available only if the student needs to complete at most the final project.


Schedule: In accordance with the University policy on Early Progress Assessment, at least two assignments will be given before the end of the fourth week of classes and will be graded and returned before the end of the fifth week of classes. The grades for these assignments will be used to determine student performance during the Early Progress Assessment period.


The final exam (final project contest) is scheduled according to the published university final exam schedule.



1.       Introduction: Course description, course web page exploration; Introduction to the Lego Robotics Invention System; Introduction of programming software and other tools; The RCX: Output ports, input ports, Lego connectors, motors and sensors; Tankbot assembly (1 week)

2.       BricxCC & NQC programming; Experimenting with Tankbot; RCX display control (1 week)

3.       Introduction to web hosting; Construction skills Part I; NQC programming: Control structures; More experimentation with Tankbot  (1 week)

4.       Construction skills Part II; NQC programming: Tasks, functions and subroutines (1 week)

5.       Bugbot  programming and testing: tasks vs. functions;  More about motors; Construction skills Part III: The Differential ( 1 week)

6.       The RCX and advanced sensing: active vs. passive sensing; Rotation, bend, tilt, photocell, and other sensors(1 week)

7.       RCX Math and the Mapping of Passive Sensor Readings; Demonstration of Line Follower-Shooter robot; Work on Midterm project (1 week)

8.       Music and sound; NQC Tutorial; Brick's Music Studio; BricCC configuration; Midterm Projects due (demonstrations) (1 week)

9.       IR Communication (RCX IR–based proximity sensor); Datalogging (graphing data using a spreadsheet); Example uses of repeat, for, and switch instructions (1 week)

10.   Solving RCX I/O port limitations; Sensor tips and tricks; Scanbot programming & testing (1 week)

11.   RCX math: averaging; arrays; Steerbot programming and testing;  (1 week)

12.   More on Timers & Counters; Brick Sorter programming and testing; Final contest specifications (1 week)

13.   Final contest Challenge: Design, build, program, test and compete (2 weeks)


Learning Objectives: After completing this course, students should be able to do the following:

1.   Identify and use the various buttons and ports on the Lego RCX microcontroller.

2.   Identify and know how to use the major Lego components that are useful for building robots (e.g., sensors, motors, gears, beams, pins, bushings, axles, plates, blocks and wheels).

3.   Discuss the capabilities and limitations of the various available electronic sensors (e.g., touch, light, rotation, bend, temperature, etc.)

4.  Use the Lego Mindstorms Kit to build autonomous robots.

5. Use the BricxCC software on a PC to write, debug and download NQC programs to the RCX microcontroller via the IR tower.

6.  Program the Lego RCX microcontroller in NQC.

7.  Design and Build muti-level gear stages to meet a given torque and speed specifications.

8.  Design a basic web page and be able to upload documents containing images and video clips and hyperlinks.

9. Design the hardware and software for a robot that meets a set of specifications under the constraints of time and limited hardware resources and microcontroller capabilities.


Educational Outcome Coverage:

An ability to apply knowledge of mathematics, science, and engineering: The robot building and programming experiments, quizzes and projects require the application of basic arithmetic, geometry and trigonometry skills. Application of science skills are considered in the context of understanding sensor operation (sonar, IR, optoelectronic, magnetic, force, etc.)


An ability to design and conduct experiments, as well as to analyze and interpret data: A major focus of the course is to teach students engineering design via the building and programming of autonomous vehicles. In the laboratory sessions, students design and test robots to solve various problems relating to sensing certain external physical signals (e.g., light, obstacles, heat), analyzing and interpreting such signals and acting upon their values.


An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability: Throughout the term, students work in teams of three students to design, program and build robots. The programs are constrained by the hardware (RCX microcontroller input/output limitations, sensor noise restrictions, etc.) For example, only three motors and few sensors are supported. Innovative ways must be found to use three motors to drive, steer, grab and throw. Similarly, the number of sensory input is constrained to three. However, students in their projects have came up with engineering tricks (including multiplexing and software solutions) that allows the use of up to 6 or more sensors. Students go through several iterations of refining and debugging their initial designs before they are able to arrive at working robots.


An ability to function on multi-disciplinary teams: students work in teams of three students each in the laboratory. Organization and active contribution to team effort is stressed and affects the final grade.


An understanding of professional and ethical responsibility: professional and ethical responsibility are introduced via case studies with open ended solutions where the student analyze an ethical issue and comes up with the best solution to handle the situation.


An ability to communicate effectively: students develop their communication skills as they tackle their design projects as part of a team. Those skills evolve as the term progresses. Student learn how to become good listeners and more open to other team member input. Students also give presentations to the rest of the class where they discuss their contributions, their robot designs, and programs.


An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice: Students use modern robot kits, microcontrollers, sensors, and many other mechanical and electronic components to construct their robots. They learn to use several software packages and applications (e.g., NQC, Bricxcc, Excel, Word, FTP, Zip) to program, download, analyze, and report.

Course Structure: The course is taught in a hands-on setting where brief lectures are followed immediately by experimentations. The class meets twice a week.

Computer Resources: Students are encouraged to use their own laptops in the classroom.

Laboratory Resources: Robot kits and software  (BricxCC & NQC) will be provided by the college.

Laboratory Policy: There is absolutely no smoking, eating or drinking in any ECE instructional laboratory. Cell phones may not be used during class sessions. Cell phones as calculators are not allowed on tests. The Lab must be kept neat and each student is responsible for insuring that the equipment on his/her workbench is neatly arranged, that all components and equipment are put away at the end of the session, and that are no scraps of paper or other garbage left on or near his/her workstation. Coats, briefcases, knapsacks and other personal belongings are not permitted on or near the benches. The door to the lab must be kept locked at all times; unlocking or propping open the door at any time is expressly forbidden. Guests are not permitted in the lab at any time, and no one but the instructor may open the door to admit anyone after the class has begun.

Student teams may borrow the kits overnight or over the weekend, but only after getting permission from the professor-in-charge of the course. In this case, the students must sign the kits out and be responsible for all its contents. There will be a fee of $125 to the student if he/she damages the RCX microcontroller. A student who loses a borrowed kit will be charged $350.  The kits must be returned with all components in good working condition. The components must be sorted in the supplied plastic bins in the same way they were given at the beginning of the term. No final grades will be assigned to a given team members unless that team returns their kit (in the condition just described) the day after the final contest.


Students with Disability: If you have a documented disability that requires accommodations, you will need to register with Student Disability Services for coordination of your academic accommodations.  The Student Disability Services (SDS) office is located at 1600 David Adamany Undergraduate Library in the Student Academic Success Services department.  SDS telephone number is 313-577-1851 or 313-577-3365 (TDD only).  Once you have your accommodations in place, I will be glad to meet with you privately during my office hours to discuss your special needs.  Student Disability Services’ mission is to assist the university in creating an accessible community where students with disabilities have an equal opportunity to fully participate in their educational experience at Wayne State University.

Cheating and Penalty for Cheating: Cheating is defined by the University as “intentionally using or attempting to use, or intentionally providing or attempting to provide, unauthorized materials, information, or assistance in any academic exercise.” This includes any group efforts on assignments or exams unless specifically approved by the professor for that assignment or exam. Evidence of fabrication or plagiarism, as defined by the University in its brochure “Academic Integrity,” will also result in downgrading for the course.  Students who cheat on any assignment or during any examination will be assigned a failing grade for the course.