I found an application for the Raspberry in my classroom!

With the endless possibilities of the Raspberry Pi in education, it is difficult to focus on one application. This is my attempt to document a focused application. I am sure this idea will branch out into other ideas or supplemental ideas will follow.

Goal:

The students are presented with an easy to develop hardware system on top of the robot chassis consisting of the Raspberry Pi, Pi Cobbler, Battery pack, H-bridge motor controller,  and a Breadboard. Sensors, like bump or ultrasonic, can be added to chassis and wired to breadboard.

IMG_20140303_215126880IMG_20140303_224940592

 

The students are presented with an easy to use graphical/block based software programming environment using a modified version of Scratch for the Raspberry Pi which allows for control of GPIO pins. Students can power motors and interface with various sensors.

IMG_20140303_224932125

 

Students will be provided with resources such as wiring pin-outs, diagrams, schematics, hardware tutorials, software tutorials so they may create working robots in class (hopefully in about 10 minutes).

Raspberry-Pi-GPIO-Layout-Revision-2

 

Autonomous vs. Remote Control

While autonomous robots would be the ultimate goal, students will benefit developing RC robots initially as their understanding of programming concepts grow. Students can program the arrow keys on the keyboard to control the movement of their robot, or a more advanced student might control robot movement based on sensor values. Either way, it is ideal to have the robots un-tethered  from display, wall power, USB hubs, etc. A USB Wifi adapter will connect the device to the network. The Raspberry will run a VNC server and will be accessed from another machine through a VNC viewer eliminating the need for a display cable. A wireless keyboard/mouse combo will allow for RC input. The raspberry will receive power from an on board battery pack.

IMG_20140303_224924727_HDR

 

Summary:

This project will take a work on the back end. An inexperienced user should be able to follow tutorials and set this up properly however some experience would be recommended. Once set up, the front end should be very easy to maintain both hardware and software.

There are better ways to un-tether the Raspberry and send commands to Scratch remotely but are not fully developed and would require much more back end work for a more advanced user.

 

75% of the way through figuring this all out, I realized that Lego did a great job of this already with the RCX, NXT, and now EV3. We have NXT here at school and I would like to interface with the sensors and motors. That will probably be my next project.

 

 

Resources:

ScratchGPIO – Introduction for Beginners

Adafruit Assembled Pi Cobbler Breakout + Cable

LinkerBot Platform