189
« on: April 03, 2021, 03:41:42 PM »
Roger,
There is nothing in the registry save for the installation directory. And I doubt you have a corrupted install. It is way more likely that your Ethernet card is not doing the job.
A lot of the onboard Ethernet devices are built asymmetrically. Meaning they are better at downloading than uploading and thus have large receive buffers and small transmit buffers. Look at the device properties for the Ethernet device and see if you can increase the transmit buffers. Also, turn off anything that is like "interrupt moderation" or "green Ethernet". If you can't increase the transmit buffers equal to the receive buffers, get an new Ethernet card.
The resolution of your encoders really doesn't affect the data stream. The Mach planner divides the trajectory plans into many time slices. Each time slice has a planned number of steps that have to be executed in that time. Most Controllers use a time slice (or cycle time) of 1 millisecond. So a 2 micron resolution might move 1 step in 1 millisecond but a 1 micron resolution may move 2 steps in 1 millisecond. So it is the resolution of time, not the resolution of position that affects the data stream. For example, a cycle time of half a millisecond will stream twice the data than that of a cycle tome of 1 millisecond.
Most motion controllers settle on 1 millisecond cycle times as it is a good all around number and is granular enough that the no faceting is detected at high speeds and is capable enough of running very smooth low speeds. The ESS uses a 1 millisecond cycle time. An interesting thing that we can derive from that and your machine's resolution is that your 1 micron resolution allows you to run as slow as 1 micron per millisecond without spreading a step across cycles.
I have an D2700MUD Atom board that is capable of feeding my Galil at half a millisecond cycle times. That is twice the data that you are moving with the ESS. The Galil can actually go as low as one quarter of a millisecond on the cycle time. But there is a point of diminishing returns. So how does this little Atom board do it? Well... it has a good Ethernet device in it. The Intel Pro series Ethernet chipsets are a favorite of mine. The Realteks and Bigfoots, not so much. My point is not all Ethernet chipsets are created equal.
All this is to say that any decent PC with a decent Ethernet chipset should be able to feed an ESS without stuttering, even with a very low motion buffer depth. I routinely run a buffer depth of 30 milliseconds on my Atom/Galil combination. My loop interval is 10 milliseconds (feedback loop) so that gives the system 3 chances at filling the buffer to its' full depth. No stutters ever. That is why I suspect that your Ethernet card is just not doing what you need it too. Because there are a lot of CRAP Ethernet chipsets in consumer PCs these days. It is a throughput issue, not a corruption issue.
Steve