Hi Andy,

I created a DDS algorithm for our stepper-based robots that would use digital 
step rates of 1pps up to 300pps.  This was the max speed using the battery, 
Freescale driver and steppers we had.

The DDS interrupt algorithm ran on an Atmel 20MHz mega part with 1Hz 
resolution.  It allowed us to set one stepper motor to 129Hz and the other to 
130Hz step rates for example and they would stay in lock at these ratios.  The 
interrupt was driven from a crystal controlled timer so the timing was pretty 
stable.  I could have expanded the resolution of the DDS to 0.1Hz or 0.01Hz but 
we did not need any better resolution for our application than 1Hz.  A stepgen 
routine running from a 1GHz processor should be capable of decent stepper 
timing resolution.

I would set up a hardware timer interrupt and place about 30 instructions of 
fluff in the interrupt.  Set an I/O pin low at the start of the interrupt and 
high at the end of the timer interrupt.  This way you can scope the amount of 
time spent in the interrupt versus the rest of the code/OS.  Increase the 
frequency of the timer interrupt until you are spending 20-30% of CPU time in 
the interrupt versus other code.  This will tell you how many timer 
interrupts/second the CPU can run without corrupting the stack and messing with 
operation of the OS.

A 1GHz part should run timer interrupts at 5-20MHz or so depending on the 
efficiency of stack entry & exit.  At 10MHz you could control a number of 
steppers up to speeds of 1000.000Hz with a granularity of 0.001Hz.  That has a 
nice CNC capability to it.

One stepper could be running as fast as 1000.000Hz on one axis and another 
could run at as low 0.001Hz, tracking the first motor.  For every 1M steps of 
the first stepper the second would step once.  

So I think the BBB is very capable.  What kind of power drivers are you 
planning to use: step/dir or something else?  We drove the bipolar steppers 
directly with Freescale MC33926 drivers using the micro's I/O pins.


Dennis

>  -------Original Message-------
>  From: andy pugh <[email protected]>
>  To: Enhanced Machine Controller (EMC) <[email protected]>
>  Subject: [Emc-users] Capeless BBB
>  Sent: Aug 16 '13 04:39
>  
>  Is it possible to use a BBB as a step generator or encoder reader
>  without any sort of cape at all?
>  
>  The application is synching a stepper motor to an encoder with a
>  variable ratio.
>  
>  --
>  atp
>  If you can't fix it, you don't own it.
>  http://www.ifixit.com/Manifesto

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to