> I wish real-time ethernet solutions weren't still "on the way."

Several already exist.  SERCOS III is one.  Designed for stuff like
motor control.
http://en.wikipedia.org/wiki/SERCOS_III
We found the needing two ports + proprietary hardware chip to support
it fairly limiting so we crafted our own...

If you throw out legacy 10bT & half duplex links (I mean, who DOESNT
have 100 or 1000Mbit ethernet now a days?)  there are no collisions
and their exponential backoff problems to deal with.  So now its just
point to point latency issues.  Very low w/ a typ star network hub.
Regular store and forward hubs @ 100Mbit are pretty good.  An example
is a sixnet unmanaged switch = 5us typ delay.  Thats negligible
compared to the 2x1.5kB(max packet)/100Mb = ~240us latency.  If you
have 6-axis of velocity commands to servos * 32bit ea = 24bytes to
broadcast.  Even the min enet packet of 64bytes gives you 46bytes of
payload.  64B/100Mbit=5.12uS.  2x that (for orig control + switch
retransmission) + 5us store&forward latency = 15uS.  Thats 60kHz
outbound command broadcast throughput.  Now, not all 6 controls can
talk back at the same rate (due to min enet pack size, there would be
6x as much data coming back as out!)  But in reality you need less
information & less often from ea drive than to it.

We haven't done final testing yet but 10kHz+ control loops seem easily
doable w/ small packets while still supporting full common web stuff
on an ARM cortex part.  One can even use VLAN tagging to prioritize
local traffic so web traffic running off the same controller/LAN
doesn't drown out the control stuff during an internet attack (we
haven't had to resort to that yet.)  We're running under the TCP/etc
layers in the stack, sending straight-old plain vanilla ethernet
packets.  Simple.  Fast.  Cheap.  *STANDARD*.  IEEE1588 time sync
easily comes along for the ride too!  Note, this is not for linux (or
CNC) but RT control of some power electronics.

Ethernet, to us, seemed like the no brainer solution.  Its cheap,
robust, and ubiquitous.  All it takes is a little tinkering w/ the
protocol stack.

Note: this approach DOESN'T work over large WANs necessarily.  But
thats really not a limitation in our systems where there is currently
always a local pc generating the stepper or servo signals.  You can
still remote into that.  'Local' RT ethernet is pretty easy to
implement if you forgo the 'solution for everyone' problem the others
are trying to solve.

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to