Archive for the ‘Teaching’ Category

In the final project for my CSCE 236 Embedded Systems course the students added markers to their Arduino robots that they have been building over the course of the semester and taught them how to draw.  There were two drawing events.  The first day I gave students a set of serial commands describing the motions to draw some simple pictures (a spiral and the letters “CS”).  The second day each group designed their own picture to draw.  Each robot had a compass and wheel encoders to get heading and distance information, although many groups decided to simply time turns instead of relying on the compass since it was noisy and difficult to calibrate.  The students worked very hard over the course of the semester learning how to interface, configure, and program embedded system.  And, of course, they also had significant experience debugging code, electrical, and mechanical problems, all of which make robotics so much fun!

Below are some videos of the robots in action, you can also see pictures of the final results.

Perhaps this one should be the new department logo:

Can’t say I ever played Portal (after my console gaming time), but for all those fans, this was a very nice result with Arduino-driven music as well:

The speed that they drew this one was impressive:

This is one of a few flowers that this robot ended up drawing:

Turtle and sun:

The spiral from the first day of the competition:

And, of course, you need to make sure to start in the right location:

 

A few weeks back we had a competition for my Embedded Systems Course (CSCE236).  The students had to interface their robots with line detecting sensors and implement algorithms to follow the lines on a variety of courses.  There were four different courses, three of which they were given before the start of the competition.  One had thin smoothly curving lines, one had thin lines with angles, one had very wide lines, and one was a mystery course.  They were graded not only on the completion speed, but also on how smooth they operated.  Below are some pictures and videos from the competition.

 

 

 

If you turn too fast you don’t get very far at all…

 

This semester in CSCE236 Embedded Systems we are building robots based on Arduinos.  Here are some pictures and basic instructions for building the robot for this course.  Below is an image of the final robot.  You are free to design your robot differently, however, please avoid doing anything that will damage or permanently modify the components (e.g. do not use glue).

Use the two plastic screws to secure the Arduino to the base.  You will have to find holes that align properly, although the Arduino will likely end up at a slight angle.  Then secure the servos by using a ziptie on each servo (you should check alignment and placement of all parts before putting the zipties through, since once you attach them you cannot undo them).

Here is a view of the robot from the bottom.  One key to securing the servos is making sure that the backs of the servos are touching and that the zipties are on the wheel sides of the servo flanges.  You should attach the caster at the back of the robot.  Insert the spacers to lift the back of the robot up slightly higher.

Use another ziptie to secure the breadboard to the base.  Once you have completed assembly, you can route some wires under the base to better organize them.

 

The final hovercraft competition ended up going well, even though most teams were unable to collect very many balls in the end.  Most teams were there the whole night before leading up to the competition debugging code and tweaking hardware.  Although more than one team completely revamped their systems that night (despite my strong recommendations not to).  Congratulations to all of the teams for their hard work throughout the semester and to Group2 for collecting nearly a dozen balls!  Here are a few pictures and videos.