markhamilton / BikeHUD

Heads up display for a powered bike using Python and Qt.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is a PyQt project designed to display vital information on a heads-up display for a bike, as well as provide PWM output for a hand-wrapped high-current AC motor.

Currently this project is in development and is only working with test data. Soon the drivers will be written to pull real data from GPIO or USB.

This was meant to run on a Beaglebone using a touch-screen shield or python-capable smartphone and a high-amp motor driver to run the bike wheel coils. You can also write custom drivers to interface with any GPIO or PC board you wish.

SNAPSHOTS

2013/07/03 - Screenshot

COMPUTER HARDWARE

Alternatively, a phone capable of running python and Qt may be used instead. I am writing 2 drivers -- one to interface with an arduino using a phone's USB port, and another to directly connect using the beaglebone GPIO pins.

SOFTWARE REQUIREMENTS

  • Python 2.7 or higher
  • PyQt4
  • Liberation Narrow Font

OTHER HARDWARE

  • 3-Phase high-amp PWM Motor Driver.
  • Neodymium Magnets.
  • Magnet wire (measurements and gauge coming soon).
  • Functional bike frame with tires and handlebars .
    • Pedals are optional but you will want something to rest your feet on.

WIRING

The output of the motor driver is a 9 Amp, 300V 3-phase signal. This means you must have a multiple of 3 stator coils with an identical number of fixed magnets.

  • Wiring diagram demonstrated in snapshot above.
  • The system can diagram any reasonable number of coils, so long as the screen can fit them in the given resolution.
  • The terminations of each phase connect at a central point.
  • The timing of each phase is 120 degrees apart since one full rotation of the motor is 360 degrees, and 360/3 = 120.

About

Heads up display for a powered bike using Python and Qt.


Languages

Language:Python 100.0%