How does the Pico Sys. Step/Dir generation work?
- Chaoskreator
- Topic Author
- Visitor
21 Jan 2015 15:29 #55232
by Chaoskreator
How does the Pico Sys. Step/Dir generation work? was created by Chaoskreator
Hello,
I am about to build a CNC mill out of a conventional mill from the 80s.
For the Trinamic stepper driver boards I want to use, I need the classic step and direction signals.
I have already set up a PC and did the latency test. The latency for the 25 µs is up to 40 µs. Not really good, because I want to use microstepping. OK, I could try to improve this value but then I noticed the Pico Systems Universal Stepper Controller.
Does anybody know how the fast output signals with up to 300000 Pulses per second are generated?
I suppose, there are sent datagrams with timestamps to the Pico board and the Pico board itself generates the fast outputs.
Is it really like this?
When not, how does it work? I'd like to understand a system before I buy it.
Thanks in advance!
Greets from Germany,
Chaoskreator
I am about to build a CNC mill out of a conventional mill from the 80s.
For the Trinamic stepper driver boards I want to use, I need the classic step and direction signals.
I have already set up a PC and did the latency test. The latency for the 25 µs is up to 40 µs. Not really good, because I want to use microstepping. OK, I could try to improve this value but then I noticed the Pico Systems Universal Stepper Controller.
Does anybody know how the fast output signals with up to 300000 Pulses per second are generated?
I suppose, there are sent datagrams with timestamps to the Pico board and the Pico board itself generates the fast outputs.
Is it really like this?
When not, how does it work? I'd like to understand a system before I buy it.
Thanks in advance!
Greets from Germany,
Chaoskreator
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5009
- Thank you received: 1443
21 Jan 2015 22:53 #55239
by Todd Zuercher
Replied by Todd Zuercher on topic How does the Pico Sys. Step/Dir generation work?
I can't say as I know for sure how Pico does it, but most hardware step generators for Linuxcnc work by being told how fast to make the pulses, then the hardware step generator sends the step count back to Linuxcnc much like a servo sends the encoder count. Then via a PID loop Linuxcnc decides how fast to go and when to stop.
In this way a poorly configured hardware step generator can actually behave like a poorly tuned servo system. In fact I even managed to make a software stepping, linuxcnc setup do this once by accident on the first machine I tried to set up (don't ask).
In this way a poorly configured hardware step generator can actually behave like a poorly tuned servo system. In fact I even managed to make a software stepping, linuxcnc setup do this once by accident on the first machine I tried to set up (don't ask).
Please Log in or Create an account to join the conversation.
- jmelson
- Offline
- Moderator
Less
More
- Posts: 817
- Thank you received: 151
22 Jan 2015 01:31 #55244
by jmelson
and read/write values. The board has a step pulse generator that can go from 0.6 steps/second to
5 MHz. The granularity of steps is such that even at 300K steps/second, it is only about 0.3%.
Since the USC board has a different clock than the computer, there would be a gradual disparity
between them, so the board counts the step pulses issued. This also allows you to use
encoders, if you wish, to verify actual position.
So, the PC doesn't actually know anything about individual steps. it works just like
a servo, read position, calculate velocity with PID and send new velocity to step
generator.
Jon
Replied by jmelson on topic How does the Pico Sys. Step/Dir generation work?
Yes, the computer uses the parallel port as a communications port, where it can address various registersHello,
I am about to build a CNC mill out of a conventional mill from the 80s.
For the Trinamic stepper driver boards I want to use, I need the classic step and direction signals.
I have already set up a PC and did the latency test. The latency for the 25 µs is up to 40 µs. Not really good, because I want to use microstepping. OK, I could try to improve this value but then I noticed the Pico Systems Universal Stepper Controller.
Does anybody know how the fast output signals with up to 300000 Pulses per second are generated?
I suppose, there are sent datagrams with timestamps to the Pico board and the Pico board itself generates the fast outputs.
Is it really like this?
Chaoskreator
and read/write values. The board has a step pulse generator that can go from 0.6 steps/second to
5 MHz. The granularity of steps is such that even at 300K steps/second, it is only about 0.3%.
Since the USC board has a different clock than the computer, there would be a gradual disparity
between them, so the board counts the step pulses issued. This also allows you to use
encoders, if you wish, to verify actual position.
So, the PC doesn't actually know anything about individual steps. it works just like
a servo, read position, calculate velocity with PID and send new velocity to step
generator.
Jon
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.052 seconds