Skip to content

University Gazette

The University of North Carolina at Chapel Hill

Robotics seminar teaches software design

Kelsey Leonard assembles a Lego robot in her First Year Seminar class. (Photo: Mary Lide Parker)

Students in the course learn the process of basic computer software design, as well some simple mechanical design. They use computers to read sensor values and control actuators — equipment that produces movement after receiving a signal. Students also hone their programming chops and improve their communication skills by writing and making presentations.

Throughout the course, they build their own LEGO robots and prepare them for competition.

This computer science course designed for new undergraduates includes both lectures and labs and begins with an introduction to programming in the Java language. Students design, build and program robots to solve problems, which become progressively more complex through the semester.

The course was created a decade ago by Anselmo Lastra, professor and chair of the computer science department, in collaboration with computer science professors Henry Fuchs, Gary Bishop and Fred Brooks.

Some students in the course already have some knowledge of elementary computer programming. The University uses the Lego Mindstorms Robotics Systems for the robot materials and a public domain Java programming language environment instead of the simpler software that comes with the LEGO kits.

Much of the course focuses on problem solving.

“Often students try to solve a problem all a once,” said Lastra, whose research is in 3D computer graphics.

When they learn to break a problem down bit by bit, they move closer toward a solution. Students program their robots with special software, smart sensors and other features.

“I think the course is an avenue in creativity for many students,” Lastra said. The completed robots are small, measuring from 6 to 8 inches tall, but can be quite complex.

Once students complete their robots and become adept at operating them, it’s time for the competitions. Though fun, these events also serve as an evaluation of how well the robots are constructed.

The competitions vary. Robots may race through a maze, or participate in robot soccer or another athletic event. Occasionally in the heat of competition, a robot may spin out of control.

Some robots fall behind. Other robots just fall. However, most of the robots perform perfectly — just as their creators programmed them.

To view a video of the students in action, created by Mary Lide Parker, see