Hi,
As Dave says, Ethernet is not necessarily realtime, but it's my understanding that the Beckhoff "stuff" brings it pretty close. Their EtherCAT/TwinCAT technology can be used run multi-axis servo systems (yes, they have CNC controls based on their system) where a standard PC with their software is the control and talks to the servo-controllers and I/O units via Ethernet.
Apparently someone has integrated an open souce version of the EtherCAT library into EMC2 which is pretty cool though I have no idea of what it can and can't do and/or how deterministic it is. But since EMC2 runs on the RTAI kernel of Linux I'd guess it's pretty good. (Or is EtherLAB replacing RTAI?)
Now, I'm not sure what exactly you intend to so Bert. Are you planning on having EMC2 doing the motion control and sending velocity commands out over thru the Ethernet interface to the drives or whatever (ie one PIC per device) say 1000 times/second. Or are you envisioning a single PIC receiving multiaxis motion data?
Even if Ethernet in itself is 10Mb, 100Mb or even 1Gb there's no way you're going to be able to handle the data at any rate near that in any PIC that PBP supports.
Would you care to explain a bit on what you want to do on the PIC side? As you may know I've done a bit of work with the W5100 chip and I'm now in a state where I have my own development board:
![Name: CIMG2271.JPG
Views: 2410
Size: 194.2 KB](https://www.picbasic.co.uk/forum/attachment.php?s=70a089ac58b2dcf493ed62ca498678fb&attachmentid=5861&d=1313132477)
It contains a PIC18LF46K22, the W5100 ethernet chip, place for SST25VF SPI flash memory and FTDI USART. I'll send you a blank board if you want.
The W5100 handles all the heavy lifting and supports TCP/IP, UDP and RAW so I guess it should be handle whatever protocol EtherLAB/EtherCAT is actually using. Obviosuly the W5100 adds a bit ($5) to the cost and ups the hardware complexity of the project a bit compared to a single chip solution like the 87J60.
The drawback with my board (for the application I envision you do doing) is that the W5100 talks to the PIC over SPI, this brings down the potential thru put of data but the W5100 supports bus interface as well but then it requires a boatload (25+) of I/O's from the PIC.
The W5100 contains 8k of memory so if you're trying to do the realtime stuff on the PIC you can use that memory as a buffer - but that kind of defeats the purpose of the realtime EtherLAB engine....
Anyway, I'll stop rambling now. But if you would care to elaborate a bit on what exactly is supposed to happen at the "PIC end" of the line perhaps we can come to a better conclusion on what might work and what won't.
/Henrik.
Bookmarks