+ All Categories
Home > Documents > Integration of Micromouse project with undergraduate curriculum: a large-scale student participation...

Integration of Micromouse project with undergraduate curriculum: a large-scale student participation...

Date post: 22-Sep-2016
Category:
Upload: yk
View: 216 times
Download: 2 times
Share this document with a friend
9
136 IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2. MAY 1995 Integration of Micromouse Project with Undergraduate Curriculum: A Large-scale Student Participation Approach Ning Chen, Hwang Chung, Member, IEEE, and Young K. Kwon, Member, IEEE Abstruct- This paper describes a successful integration of the Micromouse project with regular undergraduate courses at California State University, Fullerton. A micromouse is a computer controlled autonomous mobile robot which can find a predetermined destination when placed in an unknown maze. The goals of this paper are to report a complete design example suitable for large-scale student participation and to discuss the benefits of the program from an educator’s view point. The Intel 8088 microprocessor was chosen to make the mouse compatible with the PC systems which are universal available. Two stepping motors and eight optical sensors are used to complete the system. Software is written in C and Assembly language with over 2000 lines. Seven micromice have been built since 1990 and several of these mice have won several awards in the IEEE Region Six Southern California competition. Integration of the project with the conventional curriculum has been very successful in moti- vating students and keeping their interest high. Students show greater enthusiasm for classroom activities and many continue to participate in the project after the semester is over. I. INTRODUCTION LECTRICAL engineering education is at crossroads now E for various reasons. In the past two decades, the amount of new knowledge has grown exponentially due to the tech- nology explosion in various specialty areas. Life of educators was much simpler when electrical engineers were tinkering only with analog circuits and systems. Electrical engineering education today faces several dilemmas. We still have a four- year program despite the fact that material to be taught has outgrown the four- year limit. The Accreditation Board for Engineering and Technology (ABET) requirement [ 11 imposes appreciable constraints as to what must be taught. A certain amount of basic science, mathematics, humanities, engineering science and engineering design have to be included. At the beginning of the program are many traditional courses in mathematics and science. As a result, students spend the first two years of their schooling mostly for general education. The next level is composed of conventional electrical engineering courses such as, circuits, devices, electronics, network theory and so on. By the time they finished all the required courses the students are left with a few optional courses to choose Manuscript received October 7, 1992; revised January 13, 1993. The authors are with the Department of Electrical Engineering, California IEEE Log Number 941 1712. State University, Fullerton, CA 92634 USA. from. In general the electrical engineering program today has become less exciting to the students. For many, this structured curriculum is simply boring and difficult especially when the courses taught are as stale as the textbooks read. The nationwide dropout rate after the first two-year period is about 30%. Although there are many reasons behind such a dropout rate, one important reason is the lack of interest and motivation. Many students feel that they are sailing in the dark even after two years of education. On top of this, the deteriorating job market has all but removed the excitement and the glow of the profession we enjoyed for the past two decades. Enrollment in the electrical engineering program has steadily declined in the past five years due mainly to the poor employment outlook. It has become very clear now that we must pay serious attention to how we retain those students who are already in the electrical engineering program. One obvious approach to the problem is making existing program more exciting to the students. We at the Califomia State University, Fullerton tried to expand the micromouse project into conventional curricula so that students become better motivated through exposure to real world problems. A micromouse is a computer controlled autonomous robot that is designed to navigate through an unknown maze to the predefined final goal. The IEEE originated micromouse competition, which became so popular that now we have regional, national and international competition held annually (see Photo. 1). At present the curricular integration of the project is done to accommodatejunior and senior students with a long term goal of expanding the project into the freshman level. Presently four courses deal with the micromouse project. They are EE 313 Introduction to Electromechanics, EE 385 Senior Design Project, EE 404 Introduction to Microprocessor and EE404L Microprocessor Laboratory. According to our experience, properly guided, the design and construction of the micromouse gives great excitement and challenge to our students. It tumed out that the micromouse project became one of the best ways to motivate students and enrich their engineering training by its interdisciplinary nature. Winning one or two awards at the competition not only gives students a sense of accomplishment but also gives pride and visibil- ity to their school. The unique approach we adopted is to encourage large number of students to build many different micromice. We found out that most important ingredient for the success was proper guidance and ground work provided 0018-9359/95$04.00 0 1995 IEEE
Transcript
Page 1: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

136 IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2. MAY 1995

Integration of Micromouse Project with Undergraduate Curriculum: A

Large-scale Student Participation Approach Ning Chen, Hwang Chung, Member, IEEE, and Young K. Kwon, Member, IEEE

Abstruct- This paper describes a successful integration of the Micromouse project with regular undergraduate courses at California State University, Fullerton. A micromouse is a computer controlled autonomous mobile robot which can find a predetermined destination when placed in an unknown maze. The goals of this paper are to report a complete design example suitable for large-scale student participation and to discuss the benefits of the program from an educator’s view point. The Intel 8088 microprocessor was chosen to make the mouse compatible with the PC systems which are universal available. Two stepping motors and eight optical sensors are used to complete the system. Software is written in C and Assembly language with over 2000 lines. Seven micromice have been built since 1990 and several of these mice have won several awards in the IEEE Region Six Southern California competition. Integration of the project with the conventional curriculum has been very successful in moti- vating students and keeping their interest high. Students show greater enthusiasm for classroom activities and many continue to participate in the project after the semester is over.

I. INTRODUCTION LECTRICAL engineering education is at crossroads now E for various reasons. In the past two decades, the amount

of new knowledge has grown exponentially due to the tech- nology explosion in various specialty areas. Life of educators was much simpler when electrical engineers were tinkering only with analog circuits and systems. Electrical engineering education today faces several dilemmas. We still have a four- year program despite the fact that material to be taught has outgrown the four- year limit. The Accreditation Board for Engineering and Technology (ABET) requirement [ 11 imposes appreciable constraints as to what must be taught. A certain amount of basic science, mathematics, humanities, engineering science and engineering design have to be included. At the beginning of the program are many traditional courses in mathematics and science. As a result, students spend the first two years of their schooling mostly for general education. The next level is composed of conventional electrical engineering courses such as, circuits, devices, electronics, network theory and so on. By the time they finished all the required courses the students are left with a few optional courses to choose

Manuscript received October 7, 1992; revised January 13, 1993. The authors are with the Department of Electrical Engineering, California

IEEE Log Number 941 1712. State University, Fullerton, CA 92634 USA.

from. In general the electrical engineering program today has become less exciting to the students. For many, this structured curriculum is simply boring and difficult especially when the courses taught are as stale as the textbooks read. The nationwide dropout rate after the first two-year period is about 30%. Although there are many reasons behind such a dropout rate, one important reason is the lack of interest and motivation. Many students feel that they are sailing in the dark even after two years of education. On top of this, the deteriorating job market has all but removed the excitement and the glow of the profession we enjoyed for the past two decades. Enrollment in the electrical engineering program has steadily declined in the past five years due mainly to the poor employment outlook. It has become very clear now that we must pay serious attention to how we retain those students who are already in the electrical engineering program. One obvious approach to the problem is making existing program more exciting to the students. We at the Califomia State University, Fullerton tried to expand the micromouse project into conventional curricula so that students become better motivated through exposure to real world problems.

A micromouse is a computer controlled autonomous robot that is designed to navigate through an unknown maze to the predefined final goal. The IEEE originated micromouse competition, which became so popular that now we have regional, national and international competition held annually (see Photo. 1). At present the curricular integration of the project is done to accommodate junior and senior students with a long term goal of expanding the project into the freshman level. Presently four courses deal with the micromouse project. They are EE 313 Introduction to Electromechanics, EE 385 Senior Design Project, EE 404 Introduction to Microprocessor and EE404L Microprocessor Laboratory. According to our experience, properly guided, the design and construction of the micromouse gives great excitement and challenge to our students. It tumed out that the micromouse project became one of the best ways to motivate students and enrich their engineering training by its interdisciplinary nature. Winning one or two awards at the competition not only gives students a sense of accomplishment but also gives pride and visibil- ity to their school. The unique approach we adopted is to encourage large number of students to build many different micromice. We found out that most important ingredient for the success was proper guidance and ground work provided

0018-9359/95$04.00 0 1995 IEEE

Page 2: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

CHEN et al.: INTEGRATION OF MICROMOUSE PROJECT WITH UNDERGRADUATE CURRICULUM 137

Fig. 1. IEEE Region Six Southern California Micromouse competition

by the instructors involved. It takes great deal of instructor supervision beyond the classroom activities. In this paper, a complete design example including hardware and software that can easily be integrated with undergraduate curriculum and suitable for large-scale student participation is reported in Section 11. The project benefits are reported in Section 111. Section IV discusses the student response.

11. DESIGN

Design Goals There are two primary design goals. One is to achieve a

high performance and low cost (parts and tools) design which is suitable for large-scale student participation. The other is to integrate and enrich the existing undergraduate cumculum.

Maze and Micromouse Dimensions

Fig. 2 shows the maze dimensions used in the regional, national and international competitions [2]. The maze is made of 16 x 16 squares. Each of the four corners of a square is called a lattice point and there is a post attached to each lattice point. A rectangular board supported by two adjacent posts forms a wall. Each wall is removable and therefore re- configuration of the maze is possible. The floor of the maze can be constructed from four equal size plywood boards. The floor boards, posts and wall pieces form the whole maze. The micromouse needs to maneuver within the maze and therefore its dimensions are limited by the size of the square. A micromouse should not be larger than 25 centimeters in both length and width. There is no height limitation.

CPU Selection

The 280, 8085, 6809, 8088, 80C188, 80C188EB and V25 (an 8088 compatible microcontroller made by NEC) micropro- cessors were considered as the processor of the micromouse. All processors are capable of handling the computational need of the micromouse. The 8088 emerged as the best choice for its low cost and software compatibility with the IBM PC’s. The 280, 8085 and 6809 were rejected due to the relatively high

‘ Lattice Scartirg-

\

Fig. 2. Maze dimensions.

cost of their software development tools and the unavailability of those software tools to the student population. The 80C188 family and V25, which combine several peripheral chips with the CPU core, are microcontroller versions of the 8088. At first glance, those two processors are the best choices for an embedded application such as micromouse. However, after considering the linkage of our department’s cumculum, which uses the 8088 as the processor for the entry level microprocessor course, we chose the 8088 microprocessor for its educational benefit. At CSUF, students build the 8088- based computers in their microprocessor laboratory course (EE404L). With a direct tie to the course work, the micro- mouse activities bring real world challenges and excitements to the microprocessor classes. Also the computers built in the microprocessor laboratory class can be continuously developed by students into their own micromice.

Computer Design

The two-board computer design shown in Figs. 3 and 4 consists of an 8088 CPU, a 32 k-byte EPROM, a 32 k-byte SRAM, an 8259A interrupt controller, an 8255 programmable I/O, an 8254 programmable timer and an 8251A Universal Synchronous Asynchronous Receiver and Transmitter [2 ] . A RS232C driver (ICL 232 or MAX 232) is used to provide the RS-232 level conversion from a 5-V-only source. The ICL 232 requires four external capacitors as charge pump carriers. The CPU core and memory chips are in one prototyping board. Peripheral chips are mounted on another prototyping board. Two boards are connected by a 34-pin headedflat ribbon cable. The two-board system, the CPU core and the peripherals, is adopted to increase testability. Students may test their peripheral board using other’s proven CPU board and vice versa. Wire-wrap is used for interconnection. Memory decoding and U 0 decoding are achieved by a programmable array logic device, PAL16L8.

Motor Selection

Two unipolar stepping motors made by Oriental Motors, were selected as the main engine of the micromouse. A single chip stepping motor driver, UCN 5804B from Sprague [3], is used to drive each motor as shown in Fig. 5. The dc brush and dc brushless motors were rejected due to cost consideration although they may have better performance. Nevertheless, some students are encouraged to pursue an

Page 3: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2, MAY 1995 138

Fig. 3. CPU board.

upgraded micromouse project which uses dc brush/brushless motors if cost is not a major concern.

Proximity Sensors

Eight infrared proximity sensors (EE-SB5V-E) made by OMRON, with a built-in amplifier were used. This selection, shown in Fig. 6 with interfacing circuit, significantly reduces the complexity of the sensor design.

Mechanical Hardware The top and front views of the micromouse are shown in

Fig. 7. The drive mechanism consists of two stepping motors and two caster wheels. Use of the stepping motors requires no gear train and therefor results in minimum mechanical components. A battery deck holds two 7.2 V Ni-Cd six-cell rechargeable batteries. The computer boards are mounted on top of the battery deck. The sensor board is mounted at the front end of the drive mechanism above the maze wall.

Sojiware

The current version of software consists of about 2000 lines of C and Assembly code. It is quite complicated and

typically presents a great challenge especially to the electrical engineering students, who usually take only one programming course in Fortran. Instead of sending students to take a C language course for one semester, we tried a “trial and error” approach. Students are provided with a working source- coded program and the complete development environment. By running the bug-free program on their newly built computer and making a small modification at a time, students in general can learn the C programming technique without too many problems. It is similar to on-the-job training.

Programming Environment

The complete programming environment is shown in Fig. 8. One starts with Turbo C’s TCC command line with -S option [4]. This allows the mixed use of the C codes and the assembly codes, which greatly reduces the complexity of the program. The Turbo C compiler produces an ASM file, which is an assembly code version of the original program. An assembler (Turbo Assembler) [5 ] is used to generate an OBJ file, which is an objective code version of the program. The next step is to convert the OBJ file to an EXE file. The EXE file is an executable file, which can be loaded to the available memory location and run by the PC operating

Page 4: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

CHEN et al.: INTEGRATION OF MICROMOUSE PROJECT WITH UNDERGRADUATE CURRICULUM I39

TO LEOS

TO SENSORS

TO CONTROLLERS MOTOR

Fig. 4. Peripheral board.

system. Since the code is designed to run on a self-built 8088 computer rather than on a regular PC, two more steps are required. First we need to fix those re-locatable addresses in the EXE file by the use of a DOS (Disk Operation System) utility called EXE2BIN which converts an EXE file to a COM file. Second the COM file then can be bumed (i.e., programed) into a 32 k byte EPROM. The turn-around time of programming and erasing EPROM is quite long (about 15-20 min) and the process requires an EPROM programmer and a UV eraser. This prevents large scale participation from the students. Either every student needs to buy an EPROM programmer and a UV eraser or the department needs to provide a room full of EPROM programmers. An easy way to solve this problem is to provide students with a firmware program stored in the EPROM and a communication software on the PC. These two programs allow the down loading of student program from the PC to the SRAM of the self-built 8088 computer through the RS232C link. After down-loading the control then is transferred to the down-loaded program by pressing the one-button keypad on the self-built 8088 computer. A complete programming cycle including compiling and downloading can be achieved within one to two minutes. This approach not only reduces the equipment cost but also achieves faster tum-around time. Students can program and test their own micromice with a PC at home. When the programming and testing are finalized, the final version of the program is bumed into the EPROM. All the software tools are PC based and are easily available to the student population. This again makes large scale student participation highly feasible.

+14.4V

-

Fig. 5. Stepping motor and its driver.

-uQ

- OutPut

Q9

v

Fig. 6. IR sensor.

Software Core Module: Rest-to-Rest Maneuver

The rest-to-rest maneuver is the basic movement of the micromouse. A left, right or U turn falls into this category. A move-forward movement starting from one square to an- other square also belongs to this maneuver. Traveling in the maze can be decomposed into following several rest-to-rest maneuvers. For example: a) move forward three squares and stop; b) make a right-turn and stop; c) move forward one

Page 5: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

I40 IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2. MAY 1995

Top View

\ Casters

Fig. 7. Major components of a micromouse.

Fig. 8. Software design flow.

square and stop; d) make a right-turn and stop. Understanding of this movement is the key to the writing the software. We begin with the discussion on how to rotate the stepping motor at a constant speed. A typical stepping motor driver has two major inputs. One is the direction which determines the clockwise or counter-clockwise rotation of the motor. The other is the pulse input which determines the speed of the motor in the unit of pulse-per-second (PPS). In another words, the goal of the software is to produce a constant pulse train. One approach would be creating an infinite program loop. Within the loop, one toggles an output bit of the 8255 and then calls a time-delay subroutine. This approach, although straightforward, is difficult to work with when the control task becomes complicated. The other approach is the use of interrupt service routine. For example, if a 3 kHz pulse train generated by the 8254 programmable timer is connected to IRO of the 8259A interrupt controller, an interrupt service routine then can be executed 3000 times per second. If an output bit of the 8255 is toggled in the interrupt service routine, a 3000 PPS pulse train is produced. Obviously, the interrupt approach is much better than the infinite loop approach. Can we vary the pulse-rate easily? The answer is yes. We can create a counter

in the interrupt service routine. And every time the interrupt service routine is activated, the counter increments by one. No toggling of the output bit is performed until the counter reaches a preset value called speed-index. If the counter reaches the preset value, the toggling action is performed and the counter is reset back to zero. For example, if the speed-index is set to three, then the pulse-train rate becomes 1000 PPS. It is a well-known fact that a mechanical system can not achieve an instantaneous speed change. Acceleration and de- celeration periods must be provided for a large speed change. Can we create this acceleratioddeceleration? The solution is surprisingly easy. One can set the speed control variable (speed-index) at a large number initially. This results in a slow pulse rate. By gradually decreasing the speed-index, the pulse- rate then gradually increases. This achieves the acceleration. Deceleration can be done by gradually increasing the speed- index. The last question is how to generate movement for a predefined length as required in the rest to rest maneuver. One approach is to set up another variable called odometer. Whenever the pulse to the motor is toggled, the odometer increments by one. By examining the odometer, one can define an acceleration region, a constant speed region and a deceleration region. Once the odometer reaches the end of the travel, the toggling of the pulse is prohibited. This stops the stepping motor. To illustrate the above discussion, a simplified flowchart is presented in Fig. 9. How do we create different rest-to-rest maneuvers? This can be done by setting up a movement flag in the interrupt service routine. For example, if the main program sets the movement flag to move-forward, then the interrupt service routine rotates both stepping motors toward the same direction. If the main program sets the movement-flag to the leftlright tum, then the interrupt-service routine rotates two stepping motors with opposite directions. If the main program sets the movement- flag to stop, the interrupt-service routine does not activate the motors.

Maze Exploring After achieving the rest-to-rest maneuver, the next question

would be how to explore the maze. Exploring is the action taken by the micromouse to map the unknown maze. Basi- cally it is an action which makes the robot move from one square to the next. Since the interrupt service routine takes care of the basic maneuver functions of the robot, the high level exploring routine is not simplified. For example, if a move-forward action is required, the exploring routine only needs to set the movement flag to move-forward. Whenever the interrupt service routine is activated, it will check this flag and act accordingly. Stop-and-tums can be done sim- ilarly. The flowchart of the exploring routine is shown in Fig. 10.

First, the explore-routine sets the move-forward and accel- erate flags true and checks whether the 70% of the next square is reached. While explore-routine is looping and checking this condition, the interrupt-service routine will move the robot forward and update the odometer. After the 70% of the next square is reached, the program considers that the

Page 6: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

CHEN et al.: INTEGRATION OF MICROMOUSE PROJECT WITH UNDERGRADUATE CURRICULUM 141

Fig. 9. Interrupt service routine flowchart.

next square is reached and declares the next square as the current square. When the front sensor which extends out from the micromouse passes the front wall of the old next square (now current square), thus the wall configuration of the square detected by the side and the front sensors becomes known. This information is stored in the maze database. If this is the goal-square, the micromouse needs to decelerate, and to travel the remaining 30% of the square and stops. If this is not the goal-square, a decision needs to be made to determine whether to move forward or to stop and make a tum (left, right or U) based on the wall information. We need to employ an algorithm such that a trap in an infinite loop can be avoided. The basic principle of this algorithm is illustrated in Fig. 11. Let's say that the micromouse starts from Square (0, 0) and needs to reach Square (2, 5). At Square (1, 2), the vehicle needs to decide where to go next. Usually, distances from the possible choices to the goal are calculated. Then the square with the shortest distance is selected as the next square. In our example this is Square (1, 3). At Square (1, 4), a selection is made based on the same principle and the result is Square (2, 4). The next square traveled is (3, 4). Eventually the vehicle reaches Square (1, 1). At this moment, since the Square (1, 2) has been visited before, and there is no other new territory, a back-trace is necessary. To achieve this, we need to push the coordinates of the visited squares into the back-trace stack while traveling the maze. When there is no new territory to

explore, a back-trace action is performed by popping out the coordinates of the visited squares from the stack. By doing so, in our example, the micromouse comes back to Square (2, 1). At Square (2, l), again there is no unexplored squares available. Another back-trace is necessary. This brings the micromouse to Square (2, 2) and eventually to Square (1, 4). At Square (1, 4), it is possible to explore Square (0, 4) since it is accessible and has not been visited before. In our example, this effectively leads to the reach of the goal at Square (2, 5). This algorithm can avoid the trap of an infinite loop such as a loop formed by Squares (1, 2), (1, 3), (1, 4), (2 , 4), (3, 4), (3, 31, (3, 2), (2 , 2), (2, I), (1, 1) and (1, 2) . In Fig. 11, a dashed line illustrates the exploring route. The maze database stores the status of each square using one byte memory for each square. Total of 256 bytes in a form of 16 by 16 array are required. The first four bits of each byte which are used to record the wall information of the square indicate the closure/opening on the North, South, East and West directions. The fifth bit is used to mark whether the square has been visited before.

Shortest Path

After one of the goal-squares has been reached and an additional maze exploring is done, the micromouse needs to go back to the beginning square. Certainly one does not just want to reverse the search path. This leads to many

Page 7: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

142 IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2, MAY 1995

"

Fig. 10. Maze exploring flowchart

Fig. 11. Search algorithm. Fig. 12. Shortest path.

unnecessary travel. The shortest path generator uses maze database to determine the shortest path which connects the beginning square to the target square. A brief description of the shortest path algorithm is illustrated in Fig. 12. After the wall information of the maze is obtained by the exploring action, a distance map can be established. Starting from Square (0, 0), Square (0, 1) can be reached by one step and Square (0, 2) can be reached by two steps. Note that Square (1, 1) can not

be reached by two steps since there is a wall between Squares (0, 1) and (1, 1). Using this principle, one finds that Squares (1, 3) and (1, 1) can be reached by four steps; Squares (1, 4) and (2, 1) can be reached by five steps and so on. The number of steps associated to each square is shown in Fig. 12. The goal square requires 11 steps to reach. The shortest path can be found by back-tracing the step numbers from step 11 back to the starting Square (0, 0) with step zero. This results the

Page 8: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

CHEN et al.: INTEGRATION OF MICROMOUSE PROJECT WITH UNDERGRADUATE CURRICULUM 143

Entry Point EE313EE313L

EE404EE404L

EE385

IEEE Student Chapter

Course Title Linkage to Project Introduction to Stepping motor interface

Introduction to The 8088 microprocessor Microprocessor design, programming and

Electromechanics and control.

interface. Senior Design Project Implementation

Laboratory NIA Organizing and promoting

the micromouse project.

following sequences: (2, 5) , (2, 6), (1, 6), (0, 6), (0, 5) , (0, 4), (1, 4), (1, 3), (1, 2), (0, 2), (0, 1) and (0, 0). Thus, the shortest path from the starting square to the goal is (0, 0), (0, l), (0, 2), (1,2), (1,3), (1,4), (0,4), (0,5), (0,6), (1,6), (2,6) and (2,5).

Fast-Run

Once the micromouse is back to the starting square, it is the time to revisit the goal square using the shortest path found with the fastest speed possible. This can be done simply by increasing the top speed set in the interrupt service routine. Most competitions use the time elapsed in the fast run as the sole criterion for judging the winner. Typically a total time of ten minutes is given to the competition teams for the exploring and fast runs. There is no limit on runs, so long as they are all within the ten-minute time limit. The shortest elapsed time from one or more runs is the score of the team. The fast-run puts the micromouse design to a rigorous test. A high performance micromouse requires the optimization of all systems and presents an interesting and demanding challenge to engineering students.

Teaching of Design

To ensure large-scale student participation, multiple entry points of the project have been established as shown in Table I. Various parts of the design are taught and discussed at each entry point.

111. PROJECT BENEFITS

Enhancement of Classroom Instruction The immediate reward of having a large-scale micromouse

project is the enhancement of classroom instruction. Student responses were very positive when the micromouse material was integrated to the microprocessor class at CSUF. Teaching microprocessors by presenting a real-world challenge and a complete design solution to meet that challenge creates a very clear “big picture” and therefore enhances the effectiveness of classroom instruction. We have observed, in one instance, that in one case there were about 10% of students who were committed to micromouse building. Their learning attitude had noticeable effects on the rest of the class. At the end of the semester, more students got better grades and the instructor also received a very favorable student evaluation. As those micromouse builders migrate to other classes such as Auto- matic Control, Power Electronics, Digital Signal Processing, similar effects are anticipated.

Engineering Program Awareness

Engineering career in the 90’s is not as good as that of the 70’s and 80’s. This is a perception shared by some of the high school students. As the engineering student enrollment continues to drop in some parts of the country, engineering program awareness becomes an important task. This task, unfortunately, falls onto the engineering faculty’s shoulder. A large-scale micromouse project can easily draw public at- tention, as we have experienced, and may become an effective tool for the outreach program. This activity combines high- tech fancy and fun, and gets the message across. Having fun, as we observed, is a very important ingredient. Quite often, a micromouse gotten lost and confused in the maze created more laughs from the audience than the applause generated by a super-micromouse which reached the target in minimal time.

Engineering Student Retention

As high as 20% of the engineering freshmen decide to switch their major before they reach the sophomore level at CSUF. This may be just the fallout from the down- sizing of the defense and aerospace industries in Southern California. Nevertheless, we also believe that the calculus and physics courses may not present a favorable impression of the engineering career to the freshmen. The micromouse project can expose those students to a realistic engineering environment.

IV. STUDENT RESPONSE

Most students valued the experience they acquired from the project. The most cited beneficial experience is the soft- warehardware interface. This is not a surprise. Although most of the electricallcomputer engineering students learn the hardware and software from formal courses, they never have to complete a project combining both software and hardware. Learning by practice through a complete design example is most welcomed by students. Some students encounter difficulties in prototyping the microprocessor board due to the lack of trouble-shooting experience. This was solved by adequate assistance and consultation in the laboratory. Most students like the idea of using the 8088 based computer which is developed in the microprocessor class for the micromouse project. This approach provides continuity and less develop- ment effort and cost.

V. CONCLUSION

This paper presents a micromouse project which was suc- cessfully integrated with the undergraduate curriculum at Cali- fornia State University, Fullerton and is suitable for large-scale student participation. The project goal has been achieved by the use of the following strategies: a) development of a low- cost hardware design which uses the inexpensive and well- supported 8088 microprocessor; b) development of software consisting of about 2000 lines of C and Assembly codes; c) development of a PC based programming environment; and d) development of a communication utility which down-

Page 9: Integration of Micromouse project with undergraduate curriculum: a large-scale student participation approach

144 IEEE TRANSACTIONS ON EDUCATION, VOL. 38, NO. 2, MAY 1995

loads the user program from the PC to the micromouse via a RS-232 link. The complete package: hardware, software and development environment and communication utility was offered to interested students. The package provided a ground- work for students to experience and learn a fairly complicated system. Building a better micromouse can be achieved by an incremental engineering approach. Small modification and improvement can be added one at a time. Large-scale student participation is further ensured by linking the micromouse project to microprocessor, electromechanics and senior project laboratory and other classes. The project not only provided hands-on experience to the students but also benefited the department in enhancing classroom instruction as well as student retention and recruitment.

REFERENCES

[ 11 1992 ABET Accreditation Year Book. Accreditation Board for Engineer- ing and Technology Inc., 1992.

[2] J. Uffenbeck, The 808618088 Family Design, Programming and Inter- facing.

[3] Integrated Circuits, Data Book WR-504, Sprague Electric Co., 1987. [4] Turbo C Compiler, Version 2.0, Borland International Inc., 1988. [5] Turbo Assembler, Version 2.0, Borland Intemational Inc., 1988.

Englewood Cliffs, NJ: Prentice-Hall, 1987.

Ning Chen received the B.S. in hydraulic engineering from National Cheng Kung University, Taiwan in 1978 and the M.S. and Ph.D. degrees in Electrical Engineering from Colorado State University at Fort Collins, CO in 1984 and 1986, respectively.

He was with the Department of Aeronautics and Astronautics, University of Illinois at Urbana-Champaign from 1986-1987. He joined the Department of Electrical Engineering at California State University, Fullerton in 1987. His current research interests include fuzzy logic, robotics and microcontroller applications.

Hwang Chung (M’77-S’82-M’84) received the Ph.D. degree from University of California at Irvine, Irvine, California.

He is an Associate Professor of Department of Electrical Engineering, California State University, Fullerton, CA. He also works for Rockwell International, Anaheim, CA. His research interests are in areas of signal and image processing, neural networks, and computer architecture.

Young Kwon (M’66) received the B.S. and M.S. degrees in electrical engi- neering in 1958 and 1961, respectively, from the Seoul National University, Korea. He received Ph.D. degree in 1966 from the University of New Mexico.

From 1958 to 1963 he was with the Korea Electric Power Company Ltd. From 1966 to 1967 he was with the Motorola Semiconductor Division, Phoenix, Arizona, working on various bipolar integrated circuit technologies. From 1967 to 1969 he was with the Bell Telephone Laboratories, Allentown, Pennsylvania working on MOS VLSI technologies. In 1969 he was invited to Korea Institute of Science and Technology for four months to found the new Semiconductor Laboratory. Since 1969 he has been a professor in the Electrical Engineering Department of California State University, Fullerton. From 1978-1980 he served as a Director of the Korea Institute of Electronics Technology, Gumi, Korea while on leave from the university. He was the Chairperson of the Electrical Engineering Department from 1988-1992. His research interest includes semiconductor device physics, surface and interface phenomena, digital circuitkystems and power electronics. He is a holder of numerous U.S. and international patents.


Recommended