Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Vermont Code Camp 2014 Simple Rover with RaspberryPi

758 views

Published on

A simple telepresence rover with RaspberryPi and a tablet, built with off the shelf parts. Fun, simple project.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Vermont Code Camp 2014 Simple Rover with RaspberryPi

  1. 1. Simple Telepresence Rover With the RaspberryPi
  2. 2. Objective Simple Uses RaspberryPi Fun
  3. 3. Hardware RaspberryPi Motor Controller Motor (Left) Motor (Right) PC (skype and browser) Tablet (skype)
  4. 4. RaspberryPi RaspberryPi
  5. 5. Motor Controller Motor Controller
  6. 6. Connectors and Power Connectors and Power
  7. 7. Output to Motors Output To Motors
  8. 8. Software High Level Website and Route Manager Static Page Dual Motor Controller Single Motor Control
  9. 9. Website Python Website using FLASK http://flask.pocoo.org/
  10. 10. Static Responsive Page ● Display motor controls ● Select routes Bootstrap JQuery <!DOCTYPE html> <html> <head> <title>Robot Control</title> <link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.min.css"> <script src="jquery-2.1.1.min.js"></script> <script> $("*").keyup(function() { $('#controlFrame')[0].src="/clear"; }); $( "*" ).keydown(function( event ) { if (event.which==65) $('#controlFrame')[0].src="/rotateleft"; if (event.which==83) $('#controlFrame')[0].src="/left"; ...
  11. 11. Dual Motor Controller Python import motor …. def movement(action): print "MotorAction ",motoractionname(action) if action == MotorsAction.Left: moveleft() if action == MotorsAction.Right: moveright() if action == MotorsAction.Reverse: movereverse() ….
  12. 12. Single Motor Control Python import RPi.GPIO as GPIO …. def motormovementname(movement): if movement == MotorMovement.Forward: return "Forward" if movement == MotorMovement.Reverse: return "Reverse" if movement == MotorMovement.Stop: return "Stop" if movement == MotorMovement.Clear: return "Clear" class MotorPins: EnL = 4 IAL = 17 IBL = 18 EnR = 21 IAR = 22 IBR = 23 def setup(): GPIO.setmode(GPIO.BCM) GPIO.setup(MotorPins.EnL, GPIO.OUT) GPIO.setup(MotorPins.IAL, GPIO.OUT) ….
  13. 13. Putting it Together ● Launch website on PI ● Start Skype on tablet ● Start Skype on PC ● Load website in Browser ● See where you’re going with Skype ● Control the rover with the website
  14. 14. Useful Links and Parts Flask http://flask.pocoo.org/ Banana Robotics - Motor Controller Banana Robots - Motor Controllerhttps://www.bananarobotics.com/shop/L298N-Dual-H-Bridge-Motor-Driver?search=L298%20Dual%20H-Bridge Actobotics / ServoCity - wheel parts http://www.servocity.com/html/actobotics.html Amazon - motors dc motor 12v and stuff from around the house, the hardware store, radio shack and sparkfun….
  15. 15. GitHub https://github.com/jcicilio/SimpleRover

×