Wednesday, August 6, 2014
UPS delivered a new controller box for my Probotix Fireball Comet CNC router yesterday. Unlike the PC version that came with the Comet, this one has a BeagleBone inside and will run stand-alone!
The PC configuration for the Comet is a great example of things you can do with HAL. The Y axis gantry is is controlled by a single step/dir generator using some HAL logic to split the drive pulses into signals for two separate stepper motors with two independent home switches. But this approach only works with software stepgen, so something else is needed for "outboard" stepgen that is not directly part of HAL (ie: hm2 drivers and the BeagleBone PRU driver).
I have written a gantry HAL component that mimics the behavior of the Probotix HAL file but works with outboard step generation and up to a seven joint gantry axis. Testing this with a three-joint gantry axis (my linear-delta 3D printer, temporarily re-purposed as a test-bed) was a lot of fun, but I really look forward to getting this working with real hardware and making some chips. Look for some example configurations using the gantry HAL component in the near future!
NOTE: In addition to working with standard gantry routers (Fireball, Shapeoko, etc), the gantry component will also work well for other multi-motor axis (like the two-motor Z axis found on many Mendel-style 3D printers) as long as each joint (motor) has it's own home switch.