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
