Skip to content

stela111/quickstep

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is an early prototype for driving multiple stepper motors with acceleration ramps from a BeagleBone using the PRU for real time control.
End goal is to control a delta 3d printer.
Development by Stefan Langemark and Håkan Langemark. (Mostly Stefan so far...)

This code generates step pulses near 50% duty cycle to avoid problems
with too short pulses on e.g the drv8825 chip.

Demonstration on youtube: http://youtu.be/YlDHBbKrRtU

Acceleration ramp maths based on Atmel's AVR446 application note.

Instructions:
The code depends on PyPRUSS by Elias Bakken (https://bitbucket.org/intelligentagent/pypruss).
Install and make sure you can run the examples.

You need to configure the pin as an output using a device tree overlay. I followed this example:
http://hipstercircuits.com/beaglebone-black-gpio-mux-for-pru-with-device-tree-overlay/

Connect two steppers according to this table:
Pin     Signal
P8_17   STEP_X
P8_16   DIR_X
P8_15   STEP_Y
P8_14   DIR_Y

Usage:
python stepper.py

Roadmap:
- Add support for both directions - Done
- Implement mult-axis functionality - Done
...
- Add support for delta printers (hopefully by replacing linear bresenham with delta dda)
- Parse g-code
- Add remaining functionality for 3d-printer (heat, fans, endstops, etc)
Or
- Integrate with Replicape

About

Driving stepper motors from the BeagleBone Black

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 44.2%
  • OpenEdge ABL 34.5%
  • Perl 21.3%