Looks interesting
Please keep us posted with your progress.
Bill
Sat, 15 Sep 2012 04:18:29 -0700
Hello All,
I have been working on PIC32 based ethernet interface board for LinuxCNC.
This board uses a simple UDP protocol for communication. The HAL driver is
based on RTnet.
Currently, the software step generator for 4 axis and the code for
16 bidirectional I/O is implemented. The spindle pwm code is not yet tested.
Tests are done using halrun, no connections to a real machine yet.
Everything is still in alpha stage but results shows that realtime control over
ethernet is feasible.
More details can be found at rt-8p8c - An ethernet based interface for LinuxCNC - Google Project Hosting.
Regards,
GPO
Similar Threads:
Looks interesting
Please keep us posted with your progress.
Bill
Bill
Initial tests on my unfinished MF70 CNC using linestepper driver:
http://www.youtube.com/watch?v=RoQGttf-v5o]RT-8p8c test
I apologize for my crappy camera
42
Congratulations on your work!
This very much looks like the way to go for motor drivers for cnc applications.
Regards!
Fernando
Very neat
What sort of step rate can the interface deliver?
Bill
Bill
The step rates are currently set to 50k for 4 channels. I haven't tested the maximum limit yet, but at 100k the network throughput is halved. At 50k the minimum round trip time for rx and tx (command and reply packet) is around 150-200 usec.
If higher rates is required, it's better to delegate the step generator to another uC/fpga. The overhead for the ethernet interface is a bit high.
Regards,
GPO
42
BTW, what is the magic number for the step rates?
42
50k for a single axis would be very good but if that rate is shared between 4 axis then it is low.
A lot of people would find 25 khz enough for their machines, but again a lot would be limited by a 12.5 khz step-rate.
Regards!
Fernando
Each channel is 50K.
I'll try to design an LPT adapter so that it will be plug-n-play for existing setups.
42
Kinsa, I wonder how do you make use of the board reply packet after receiving the command. Is it just an acknowledge or it carries some more info?
Also, the command from Linuxcnc HAL component carries a step-rate number or a number-of-steps number?
Regards,
Fernando
The normal HAL processing sequence for LPT or PCI boards is READ, CALCULATE, WRITE. For 1 processing cycle there will be a minimum of 2 commands, to read and write status, and 2 replies.
For rt-8p8c HAL driver, the sequence is WRITE, READ, CALCULATE. The reply packet contains the necessary info required by the READ process, i.e. I/O bit states and position info. This way, there will only be 1 command and 1 reply per HAL processing cycle. Do note that the reply packet is delayed a bit so that the READ process will always have the latest info.
The HAL component sends step-rate, I/O bit commands and the "reply delay" to the board and the board replies with the axes position/accumulator values and the status of the I/O pins.
42
Hello All,
this board looks very interesting, is there a possibility to purchase the hardware or do I have to build the board on my own?
Best regards!
Klaus
Hi,
Sorry this is DIY at the moment.
If you're interested to experiment, you can use the chipkit max32 board with the ethernet shield or the PIC32 Ethernet Starter Kit.
Regards.
42
Kinsa. You are a busy man if you are also the fellow working the raspberry pi implementation. Anyway, I came across this thread and it is interesting to me. I have a couple of netbooks that run linux and linuxcnc very well, but of course no printer port. It sounds to me like this might provide a solution for controlling a machine from one of those netbooks. A couple questions.
1. The real time is still handled by linuxcnc on the pc?
2. The adapter and firmware are only providing a connection for the machine. Kind of like a ethrrnet breakout board, right?
3. So the adapter firmware is not interpreting g-code, just step and direction commands from linuxcnc (and also I/O for switches and such)?
Thanks,
John B
Hi,
Linuxcnc still runs the servo thread in realtime. Only the base thread for step generation is moved to the rt-8p8c board.1. The real time is still handled by linuxcnc on the pc?
This card is similar to the Pluto board connected thru an LPT port except that an ethernet interface is used.2. The adapter and firmware are only providing a connection for the machine. Kind of like a ethrrnet breakout board, right?
Yup.3. So the adapter firmware is not interpreting g-code, just step and direction commands from linuxcnc (and also I/O for switches and such)?
The original motivation for this board was similar to yours; I wanted to use my netbook to control my MF70 mill. The only issue I have with this approach is that there is only a limited number of supported Ethernet cards; it all depends if there is an available RTnet drivers.
The ethernet card of my netbook and used mac mini is not supported - this is the reason why I developed the PICnc boards. Now I have a truly compact MF70 CNC mill .
Cheers!
42
Hi,
There's a similar LinuxCNC control card, I don't know is how to realize,It is said that performance is good。
Please look here,
Regards,
youngfine
Mesa now has a full line of Ethernet connected interface cards for linuxcnc. (and is supported in linuxcnc V2.7+) I have used a couple versions of them and they work awesomely.
like
7I92 Anything I/O Ethernet card
7I76E STEP/IO Step & dir plus I/O daughtercard