Hardware vs Software Stepping.
- FrantisekP
- Offline
- New Member
Less
More
- Posts: 3
- Thank you received: 1
05 Dec 2022 04:32 #258558
by FrantisekP
Hardware vs Software Stepping. was created by FrantisekP
Hi I'm new to LinuxCNC
I'm working on refitting and Old Laguna IQ router with a Mesa 7i96s card to replace the RichAuto A11 controller it originally came with. I would like to replace the single yaxis ball screw with a dual Y ball screw setup and add a rotary 4th axis. The 5 port 7i96s looks like it should do the trick.
Sorry if this has been covered before. There is so much great information in this forum it hard to sort through it.
I've searched and read through what I could find on the topic of hardware vs software stepping, I still have a few questions.
Am I right in assuming the following? :
1) Software stepping is used on systems where the PC uses a parallel port. The pulse and direction signals for each stepper are mapped to individual lines of the parallel port connector. That parallel port is then connected to a Break Out Board (BOB) which feeds the step and direction lines to the stepper drivers. The PC needs to be configured for low latency because it's processor has to accurately time and schedule all of the pulses (setp and dir) for all of the axes that are expected to move together.
2) Hardware stepping is used on systems where there is an external ( lan or USB) or internal (PCI) card with an FPGA or uProcessor that is in charge of generating the the step and dir pulses. The PC communicates something like how many pulses and the pulse rate required. In this system configuration the MAX Jitter in the base thread is not as critical since the pulse generation is off loaded to the external card.
3) The Mesa 7i96s card that I have ordered is a hardware stepping card. It can generate pulses up to a rate of 10MHz that are shared across the 5 ports as directed by LinuxCNC. In theory, if all ports are asked to run as fast as they can each port would see pulse trains at a rate of 2MHz.
I'd like to try and use an i7 based laptop to run linuxCNC. I have read that laptops are usually not the best choice because they tend to do poorly on the latency test. But I have it and it can run linux. For the 7i96 card what Max jitter can I get away with. Do I still need to try for the 15-20uS spec that is called for in the latency Test Document: linuxcnc.org/docs/2.5/html/install/Latency_Test.html?
Sorry for the long rambling post.
Thanks for your time.
I'm working on refitting and Old Laguna IQ router with a Mesa 7i96s card to replace the RichAuto A11 controller it originally came with. I would like to replace the single yaxis ball screw with a dual Y ball screw setup and add a rotary 4th axis. The 5 port 7i96s looks like it should do the trick.
Sorry if this has been covered before. There is so much great information in this forum it hard to sort through it.
I've searched and read through what I could find on the topic of hardware vs software stepping, I still have a few questions.
Am I right in assuming the following? :
1) Software stepping is used on systems where the PC uses a parallel port. The pulse and direction signals for each stepper are mapped to individual lines of the parallel port connector. That parallel port is then connected to a Break Out Board (BOB) which feeds the step and direction lines to the stepper drivers. The PC needs to be configured for low latency because it's processor has to accurately time and schedule all of the pulses (setp and dir) for all of the axes that are expected to move together.
2) Hardware stepping is used on systems where there is an external ( lan or USB) or internal (PCI) card with an FPGA or uProcessor that is in charge of generating the the step and dir pulses. The PC communicates something like how many pulses and the pulse rate required. In this system configuration the MAX Jitter in the base thread is not as critical since the pulse generation is off loaded to the external card.
3) The Mesa 7i96s card that I have ordered is a hardware stepping card. It can generate pulses up to a rate of 10MHz that are shared across the 5 ports as directed by LinuxCNC. In theory, if all ports are asked to run as fast as they can each port would see pulse trains at a rate of 2MHz.
I'd like to try and use an i7 based laptop to run linuxCNC. I have read that laptops are usually not the best choice because they tend to do poorly on the latency test. But I have it and it can run linux. For the 7i96 card what Max jitter can I get away with. Do I still need to try for the 15-20uS spec that is called for in the latency Test Document: linuxcnc.org/docs/2.5/html/install/Latency_Test.html?
Sorry for the long rambling post.
Thanks for your time.
Please Log in or Create an account to join the conversation.
05 Dec 2022 10:21 #258575
by rodw
Replied by rodw on topic Hardware vs Software Stepping.
First to test latency with a mesa card you don't want to be checking a base thread. The best way is to type
latency-histogram --nobase --sbins 1000
Maximum latency for a mesa card is about 200k, I used 120-140k for a long tome with no issue
I don't think the Mesa cards share the max frequency.
Instead linuxcnc commands them to oscillate at a set frequency which they will do forever until linuxcnc tells them to stop or varies the frequency
All commands are passed to the card every 1 ms so the stepgens all get updated at the same time.
Yes hardware stepgens offloads a processor intensive task so everything runs better.
latency-histogram --nobase --sbins 1000
Maximum latency for a mesa card is about 200k, I used 120-140k for a long tome with no issue
I don't think the Mesa cards share the max frequency.
Instead linuxcnc commands them to oscillate at a set frequency which they will do forever until linuxcnc tells them to stop or varies the frequency
All commands are passed to the card every 1 ms so the stepgens all get updated at the same time.
Yes hardware stepgens offloads a processor intensive task so everything runs better.
The following user(s) said Thank You: FrantisekP
Please Log in or Create an account to join the conversation.
- tommylight
- Away
- Moderator
Less
More
- Posts: 19194
- Thank you received: 6434
05 Dec 2022 12:13 #258581
by tommylight
Replied by tommylight on topic Hardware vs Software Stepping.
1. Yes
2. Yes
3. Yes and no, as Rod explained each output can do 10 million pulses per second, but it does depend on how long are the pulses, as some drives need long pulses to work reliably hence limiting the step rate and consequently the machine speed.
In practice, Mesa is never a limiting factor, everything else is.
Laptops are no good due to many power saving features, but ocasionaly it is possible to find some that do work, although i never use them on production machines.
2. Yes
3. Yes and no, as Rod explained each output can do 10 million pulses per second, but it does depend on how long are the pulses, as some drives need long pulses to work reliably hence limiting the step rate and consequently the machine speed.
In practice, Mesa is never a limiting factor, everything else is.
Laptops are no good due to many power saving features, but ocasionaly it is possible to find some that do work, although i never use them on production machines.
The following user(s) said Thank You: FrantisekP
Please Log in or Create an account to join the conversation.
08 Mar 2024 05:41 #295438
by hoser883
Replied by hoser883 on topic Hardware vs Software Stepping.
Just curious if you completed the upgrade with the 7i96s? Recently acquired a Laguna IQ 2x3 and would like to do the same.
Please Log in or Create an account to join the conversation.
Time to create page: 0.076 seconds