Git Product home page Git Product logo

zippythebalancingrobot's Introduction

ZippyTheBalancingRobot

ZIPPY_VIDEO

(Click on image above for link to YouTube video)

Zippy 2.0 is a 3D printed Arduino Nano based balancing robot with a custom PCB. The original prototype version was put together on a breadboard with lots of jumper wires. This is certainly a great way to get started. The STMicroelectronics 8A motor drivers do not come in a convenient package for breadboarding, but ST does provide evaluation boards which work well with a prototype system.

The frame can be printed in multiple colors by pausing the print at the right height and switching filament. The SketchUp 2017 file is included for design customization. The frame is put together with a few dozen M3x10mm bolts and hex nuts, and four M3 standoffs for the PCB. I printed the frame in PLA with a 0.2mm layer height and 40% infill. See more information on the 3D printed frame on Thingiverse.

I've also included an optional set of bumpers, which can protect Zippy in the event of a fall. Wrap the bumpers with pipe insulation tubes for a little extra cushion. Yes, the bumpers detract from Zippy's graceful physique, but make Zippy a little more rugged for kids.

The PCB yields a more compact design than a hand-soldered protoboard, but does require some SMD work and an additional outlay for PCB manufacture. Even with the fine 0.5 mm pitch, the drivers can be hand soldered to the board (I did!) with a steady hand and patience. There are plenty of YouTube videos on how to do this.

Here are the important parts for Zippy:

  • 2 x VNH5180A motor drivers ($3.72 each as SMD parts, or $8.69 each as evaluation boards from Mouser)
  • (Optional) Zippy printed circuit board (see Eagle files) $17.60 from EasyEDA or other PCB maufacturers
  • 2 x 30:1 Metal Gearmotor 37Dx68L mm with 64 CPR Encoder ($39.95 each from Pololu)
  • GY-521 MPU-6050 gyro/accelerometer breakout board ($4.78 from Amazon)
  • Arduino Nano ($2.99 clone from Banggood)
  • ZIPPY Flightmax 3000mAh 3S 20C LiPo battery ($22.49 from Amazon)
  • 16x2 character LCD display ($5.99 from Amazon)
  • Remote control with PWM receiver
  • Two Schottky diodes (I used Fairchild SB1245 12A diodes, $1.57 each from Mouser)
  • Various resistors, capacitors, 10K trimpot, pushbutton, connectors (see schematic)

I've also included a schematic in the Eagle folder. Gerber files are provided in the Eagle folder if ordering from a PCB manufacturer. Otherwise, use a breadboard and wire according to the enclosed schematic.

Pay close attention to polarity on motor wheels (swapping motor leads as necessary) and MPU-6050 orientation. The software assumes the gyro/accelerometer is mounted with the +X axis facing the front of the robot.

Depending on your robot inertia, the PID gains may need to be retuned. Increase as needed to achieve crisp response without any oscillation.

Also, if you like the colored eyes in Zippy's video, I've included the source code for that too. You need another Arduino Nano or Pro Mini, two RGB LEDs (I used common anode), and six 300 ohm resistors. The code shows which pins I used. I just soldered the wires directly to the board, which is attached behind the face plate. I can control the color, or have a changing rainbow pattern, using my remote control. I used the left throttle stick on my RC remote.

Here are a few photos:

Zippy Front Zippy Back

PCB Bumpers

And a few photos of the prototype V1.0 version:

Zippy 1.0 Front Zippy 1.0 Back

zippythebalancingrobot's People

Contributors

elkayem avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.