Sebastian Kuzminsky wrote: > Jon Elson wrote: > >>Sebastian Kuzminsky wrote: >> >>>Jon Elson wrote: >>> >>>>OK, same problem as my PPMC line, then. But, 1 KHz isn't fast >>>>enough? Or, does handling the Mesa's 72 I/O points take a lot >>>>longer than my 24? >>> >>>I haven't done speed tests of the 7i43 with hostmot2 for a while, but i >>>think low ones of KHz update rates are reasonable. Say 1-4 KHz or so. >>>That's for reading all the encoders, stepgens, and gpios, and writing >>>all the pwmgens, stepgens, and gpios. >> >>OK, that is reasonably close to what I'm getting, considering >>the greater I/O points. I can run up to 10 KHz with one of my >>UPC or USC boards with on-motherboard PP on a 600 MHz pentium >>II. I can go to 5 KHz with 2 UPC's, so that's 8 axes 16 digital >>outs and 31 digital ins, on the same machine. I can probably go >>to 10 KHz with 2 boards with a PCI parallel port and a little >>faster CPU. > > > That 1-4 KHz figure is an old measurement I remembered for 4-channel > servo control (on the 7i43 board): read 4 encoder counts (counted by the > FPGA), do 4-channel pid in emc2, then write 4 PWMs. > > I ran some tests tonight on my development machine, a single-processor > Celeron running at 2.6 GHz. Please remember that the driver is still > under development and basically not optimized at all: these figures may > change in the future. > > The values for "time" reported below is the average time taken by the > function (measurement is approximate average of 10 or so random > samples). The values for "tmax" is the longest time taken by the > function after a few minutes of runtime. All times in microseconds. > > > 7i43: > > pet_watchdog (or else it bites) time=47, tmax=57 > > read (4 encoders, 4 steppers, 48 gpio inputs) time=245, tmax=260 > write (4 pwmgens, 4 steppers, 48 gpio outputs) time=235, tmax=637 > > read_gpio (48 gpio inputs) time=37, tmax=49 > write_gpio (48 gpio outputs) time=35, tmax=46 > > > So if we're just talking about reading & writing gpios, you can do that > at about 7 KHz and still have 50% of your CPU time left over for other > things. Or 2 KHz if you want the watchdog enabled. > > > If I disable the steppers on the 7i43 (with config="num_steppers=0") and > run it with 4 servo channels (and 24 accessible GPIOs), I get these figures: > > read time=191, tmax=203 > write time=190, tmax=239 > > That's about 1 KHz. > Very interesting! I wonder if you can improve this by streamlining the driver. I can do 4 axes on my USC or UPC board at about 100 us, on a 600 MHz Pentium II through the motherboard parallel port. A safe 5 KHz. > > And just for fun, the numbers for the 5i20: > > pet_watchdog (or else it bites) time=6, tmax=13 > > read (8 encoders, 4 steppers, 72 gpio inputs) time=52, tmax=62 > write (8 pwmgens, 4 steppers, 72 gpio outputs) time=15, tmax=27 > > read_gpio (72 gpio inputs) time=13, tmax=42 > write_gpio (72 gpio outputs) time=5, tmax=12 > >
Well, it certainly shows the effect of the parallel port on the 7i43! Jon ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
