Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Rafael Skodlar
Very interesting topic!

Kenneth Lerman wrote:
> Is 100BaseT ethernet full duplex? (I think it is.)
>
>   
That's easy to find:

sudo mii-tool
Password:
eth0: negotiated 100baseTx-FD flow-control, link ok

FD = Full Duplex

> In principle, one could make a "hub" (not technically a hub) that daisy
> chained cables. So, the master would output to slave 1 abd input from slave
> N. Slave 1 would input from the master and output to slave 2. Slave 2 would
> input from slave 1 and output to slave 2... Slave N would input from slave
> N-1 and output to the master.
>
>   
That's daisy chain isn't it? The trouble is that low cost encoder won't 
handle traffic for advanced motor or whatever controllers.

> Each slave would read its input, process it if appropriate and pass it on to
> the next in the link. It would also inject its output into the ring.
>
> Think of it as a token ring using ethernet hardware that is cheap and
> readily available.
>
> The master would continuosly send poll packets around the ring.
>
>   
Mix of high and slow devices is asking for trouble IMO. My preference 
would be to have individual connections to machine components based on 
speed. Perhaps using two buses, one for slow devices and one for faster 
ones.

Industry offers a number of hardware solutions for digital IO mentioned 
on this mailing list. Some could be adapted for handling bus type 
communications between PC and peripherals. However, they are not 
standardized with number of IO lines, buffers, number of registers, 
protocols, open source/architecture, etc.

This brings up another option, build an open source EMC controller 
PCI[e] card with slow, medium and high speed ports that could be used to 
control buses. Speeds would need to be determined based on what is 
required for machine world. If build with an FPGA, it would be very 
flexible and handle a lot of logic and speed and could be programmed for 
different needs: use with lathe, 3D routers and torch machines, or even 
run real time functions.

It would be easier to have one "programmable" card that would connect to 
most  sensors, encoders, etc. than to find encoders and other such stuff 
with ethernet built in.

I know, I'm asking too much, who has time and resources to build all 
this :-)

> An alternative is to use a standard hub and have the master poll each of the
> slaves, in turn.
>
> I don't see this as something to use with encoders, but I could imagine its
> being used with smart motor controllers or multi-axis controllers (like
> Jon's).
>
>   

In either case we are looking at significant change from current more or 
less standard parallel port. For now it's easy to find PCI cards with 
parallel ports which is good for the time being. PCI bus will soon be 
replaced with PCIe. Will that bring cards with parallel ports is yet to 
be seen. Even then, parallel port is just not the right thing. It was 
never meant to be used for anything fast not to mention electric and 
mechanical characteristics of the port.

I don't think ethernet components will be low cost enough to attract 
home builders to it for a while so we'll keep looking for low cost IO ports.

> Ken
>   
Good job all of you guys out there. I learn a lot from you every day.


-- 
Rafael


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] Off Topic, Broaching

2007-10-29 Thread Kirk Wallace
Has CNC changed the way keyways are made? I need to make some keyways
for my mill conversion, and I have no tooling so far for doing it. Since
I will may be buying tooling, I want to explore the options in order to
make the best investment. I actually prefer not having keyways and going
with set screws on countersinks. Anyone have thoughts on this? Thanks.

-- 
Kirk Wallace (California, USA
http://www.wallacecompany.com/machine_shop/ 
Hardinge HNC lathe
Bridgeport mill conversion pending
Zubal lathe conversion pending)


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] HNC Pictures

2007-10-29 Thread Kirk Wallace
In case anyone is interested, I have posted new pictures, including the
new spindle line filter and ferrite bead, to my HNC lathe site:

http://www.wallacecompany.com/cnc_lathe/HNC/


-- 
Kirk Wallace (California, USA
http://www.wallacecompany.com/machine_shop/ 
Hardinge HNC lathe
Bridgeport mill conversion pending
Zubal lathe conversion pending)


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Jon Elson
Peter C. Wallace wrote:
> On Mon, 29 Oct 2007, Jon Elson wrote:
> 
>>The idea is that 100 mbit/sec ethernet is fast.  What other
>>RS485 device do you have that runs that fast?
> 
> 
> Of course a RS-485 link can have smaller packets, and may actually have much 
> better real time performance. (a single 10 MBps RS-485 link will have much 
> better performance than 100 BT Ethernet connected to a single encoder)
> 
> Also 100BT with its MLT3 encoding is not as electrically robust as isolated 
> RS-485 or 10BT.
> 
> Ethernet is great for broadcast but I don't think so good for collecting data 
> from a large number of separate real time devices (say encoders)
> 
Yes, I think this would be a bad way to do things.  Having a 
single motion control board that interfaces by Ethernet, as I 
have been envisioning, would have a lot of advantages.  It keeps 
the sampling of all the encoders synchronized, it compresses all 
the information interchange into a couple packets, it saves on 
hardware.  Putting a separate ethernet interface into each 
encoder is a great way to sell a lot of hardware.
> I think Ethernet would be a really good way to connect a multi channel motion 
> controller to a PC where the large packet size is not such nuisance. You 
> would 
> likely need a separate Ethernet card from the main network connection.
RTnet, for instance, gets around this to some extent.  But, that 
is one way to do it, have 2 ethernet ports on the computer, one 
for RT, one for the local net.  Otherwise some kind of router 
needs to be used to keep outside traffic from flooding the RT 
segment.

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Jon Elson
Dave Engvall wrote:
> Jon, Rafael, et al
> 
> IIRC CAN is 1 Mbit/sec.
Well, that is at least possible, but we can work out what the 
performance would be.  With 8 byte packets, you can't even send 
all the encoder positions for 4 axes in one packet, as that is 
12 bytes.  Anyway, for a 4-axis system, we need to read 12 bytes 
of position, and then send 8 bytes of velocity command to a PPMC 
or UPC, and 12 bytes to a UPC.  They all have 3 bytes of sense 
input, and 1 or 2 bytes of digital output.  So, a minimum of 15 
bytes to read, and a minimum of 9 bytes to write.
So, 15 + 9 bytes is 24, and at 1 MBit/sec, that is 192 us.
Given all the required overhead to read and write multiple 
packets, it is already pretty close to chewing up a whole 
millisecond, and there's no way it could handle even 5 KHz
servo update rate.  So, I really don't think CAN is a good 
candidate.  It severely limits the possible complexity and/or 
speed of the system.  A worst-case system might be 2 encoder 
counters, 2 DACs, and 4 DIO cards.  That would be 404 bytes 
total, for 3.2 ms, not counting ANY overhead.  So, such a system 
would probably be limited to a 200 Hz servo update rate.


The same data transfer, again ignoring all protocol overhead, on 
100 MBit/sec Ethernet, would only be 32 us, which is much more 
reasonable.  And, you get galvanic isolation of the ethernet, too!

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] zero motion homing in program

2007-10-29 Thread Cecil Thomas
Jeff,
Thanks for the response. I guess its not as simple as I had hoped.

  As you have probably already guessed, I was in the process of 
trying to do a little lathe work on my mill by writing some programs 
to utilize the rotary axis as the lathe spindle. I guess this is just 
one of many reasons why everybody isn't doing it.  (I haven't 
completely given up yet)

The only real problem with the "windup" and "unwind" situation is the 
amount of time it takes to unwind.  It is exactly analogous to using 
a late to thread with a threading dial (cut, retract tool, drop 
halfnuts, move carriage, repeat) compared to cutting threads without 
threading dial when you must leave the nuts engaged while you reverse 
the spindle and turn it the  same number of turns you used while 
cutting the thread.

It is just time... and someone, maybe my granny, once said "Life is 
just time and money, either one can be traded for the other"

I always put a "cleanup" section at the end of my programs where I 
set the axes back to where I want them to be when I open EMC the next 
time and there I also set all the variables that I used back to zero.

If I put the G92.1 command in the "Cleanup" section of the program 
that used the G92 command will that accomplish  the same as putting 
the G92.1 in the "setup" or preamble of all the other programs?



At 04:22 PM 10/29/2007, you wrote:

>If you use this method, I recommend adding G92.1 (cancel and zero G92
>offsets for all axes) in the preamble of all your gcode files.
>Otherwise, the first "G92 A0" in your program will erroneously apply
>offsets for other axes that were previously set, even in a previous run
>of emc.


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Andrew Ayre
A little bit more info:

When this function is called:

retval = rtapi_shmem_getptr(mem_id, &mem);

mem_id = 1. Upon return, mem = 0x0 and retval = 0.

So it seems the shared memory system doesn't work properly as mem should
never be set to zero. This is pretty much the limit of my debugging
abilities.

Andy

Andrew Ayre wrote:
> Thanks. It seg faults at line 2350 in hal_lib.c:
> 
> static int init_hal_data(void)
> {
>   /* has the block already been initialized? */
>   if (hal_data->version != 0) {
> 
> It appears that hal_data is NULL at this point. Here is the call stack:
> 
> hal/utils/halcmd_main.c:195 (main)
> hal/utils/halcmd.c:109 (halcmd_startup)
> hal/hal_lib.c:2350 (hal_init)
> 
> Andy
> 
> Jeff Epler wrote:
>> A system call trace (produced by using "strace") or a backtrace at the
>> time of the segmentation fault (produced using "gdb") would be helpful
>> in pinpointing the location of the problem.
>>
>> You can find information how to use these utilities on many pages on the
>> internet.
>>
>> Jeff
>>
>> -
>> This SF.net email is sponsored by: Splunk Inc.
>> Still grepping through log files to find problems?  Stop.
>> Now Search log events and configuration files using AJAX and a browser.
>> Download your FREE copy of Splunk now >> http://get.splunk.com/
>> ___
>> Emc-users mailing list
>> Emc-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/emc-users
>>
>>
>>
> 

-- 
Andy
PGP Key ID: 0x67090A54

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Andrew Ayre
Thanks. It seg faults at line 2350 in hal_lib.c:

static int init_hal_data(void)
{
  /* has the block already been initialized? */
  if (hal_data->version != 0) {

It appears that hal_data is NULL at this point. Here is the call stack:

hal/utils/halcmd_main.c:195 (main)
hal/utils/halcmd.c:109 (halcmd_startup)
hal/hal_lib.c:2350 (hal_init)

Andy

Jeff Epler wrote:
> A system call trace (produced by using "strace") or a backtrace at the
> time of the segmentation fault (produced using "gdb") would be helpful
> in pinpointing the location of the problem.
> 
> You can find information how to use these utilities on many pages on the
> internet.
> 
> Jeff
> 
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
> 
> 
> 

-- 
Andy
PGP Key ID: 0x67090A54

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Jeff Epler
A system call trace (produced by using "strace") or a backtrace at the
time of the segmentation fault (produced using "gdb") would be helpful
in pinpointing the location of the problem.

You can find information how to use these utilities on many pages on the
internet.

Jeff

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Andrew Ayre
I have narrowed the problem down to this:

[EMAIL PROTECTED]:~$ /usr/local/bin/halcmd help
Segmentation fault

[EMAIL PROTECTED]:~$ su
Password:
[EMAIL PROTECTED]:/home/andy# /usr/local/bin/halcmd help
Use 'help ' for more details about each command
Available commands:
  loadrt  Load realtime module(s)

then the rest of the help output follows.

As you can see, it works for root but not for a regular user. I'm
guessing there is a setup step missing.

Any ideas on how to solve this? Thanks!

Andy

Jeff Epler wrote:
> EMC 2.1.x is unlikely to work on Ubuntu 7.10.  However, the development
> version has been improved in various ways for compatability with newer
> versions of Ubuntu.
> 
> On Ubuntu 7.10 the default amount of "locked memory" for regular users
> is too low.  You can fix that problem by adding the line
> hard memlock 20480
> to /etc/security/limits.conf as root.  (it's necessary to log out
> completely after making this change)
> 
> However, the result of this problem is not an "insmod error", but
> another error about creating shared memory areas which I don't recall.
> In the case of insmod errors, the last few lines shown by "dmesg" are
> usually most useful in determining what is going on.
> 
> Jeff

-- 
Andy
PGP Key ID: 0x67090A54

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] x-axis lathe orientation

2007-10-29 Thread Chris Radek
On Fri, Oct 19, 2007 at 11:17:45AM -0400, Jaime Pozo wrote:
> Hi,
> 
> Is there a way in AXIS-lathe to "invert" one axis
> in the backplot drawing, that is to say, change the
> x-axis orientation, to see it like a mirror?

Not currently, sorry.  I know it would make more sense on some
lathes to have X pointing up instead of down, but nobody has
implemented this option yet.

Chris


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] var file source listing

2007-10-29 Thread Jeff Epler
On Mon, Oct 29, 2007 at 09:58:30AM -0500, Cecil Thomas wrote:
> I guess I'm looking for the "reverse directory" for the .var file.

Please see:
http://www.linuxcnc.org/docview/2.2/html/gcode_main.html#sub:Parameters

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] zero motion homing in program

2007-10-29 Thread Jeff Epler
Unfortunately, emc doesn't handle the repeating nature of rotational
axes very well.  I feel that the ultimate solution is for an A-axis
traverse move to always move less than one revolution, even if the axis
is "wound up" by a move to A3600.  If this approach is adopted, then
unwinding would be as simple as:
G0 A0
.. but that's for the future, not for today.

For now, I you can use G92 offsets for this purpose.  If you program
"G92 A0", then the G92 coordinate system offset is modified so that the
current position of the A axis is now called 0.

If you use this method, I recommend adding G92.1 (cancel and zero G92
offsets for all axes) in the preamble of all your gcode files.
Otherwise, the first "G92 A0" in your program will erroneously apply
offsets for other axes that were previously set, even in a previous run
of emc.

Another caveat when using G92 offsets in this way is that if you are
actually at A3599 when you issue "G92 A0", subsequent moves will be
offset by one degree.

Finally, when you use this approach you have to make sure that the
machine coordinate (the "wound up" coordinate) never reaches the limits
set for the A axis in the inifile.

You might also consider using relative coordinates, so that your command
is in effect the number of revolutions to move, rather than the angle to
move to.

Jeff

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Kenneth Lerman

Is 100BaseT ethernet full duplex? (I think it is.)

In principle, one could make a "hub" (not technically a hub) that daisy
chained cables. So, the master would output to slave 1 abd input from slave
N. Slave 1 would input from the master and output to slave 2. Slave 2 would
input from slave 1 and output to slave 2... Slave N would input from slave
N-1 and output to the master.

Each slave would read its input, process it if appropriate and pass it on to
the next in the link. It would also inject its output into the ring.

Think of it as a token ring using ethernet hardware that is cheap and
readily available.

The master would continuosly send poll packets around the ring.

An alternative is to use a standard hub and have the master poll each of the
slaves, in turn.

I don't see this as something to use with encoders, but I could imagine its
being used with smart motor controllers or multi-axis controllers (like
Jon's).

Ken

[EMAIL PROTECTED]
Mark Kenny Products Company, LLC
55 Main Street   Voice: (888)ISO-SEVO (888)476-7386
Newtown, CT 06470Fax: (203)426-9138
http://www.MarkKenny.com


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Peter C.
Wallace
Sent: Monday, October 29, 2007 2:16 PM
To: Enhanced Machine Controller (EMC)
Subject: Re: [Emc-users] Ethernet I/O


On Mon, 29 Oct 2007, Alex Joni wrote:

> Date: Mon, 29 Oct 2007 21:00:22 +0200
> From: Alex Joni <[EMAIL PROTECTED]>
> Reply-To: "Enhanced Machine Controller (EMC)"
> 
> To: "Enhanced Machine Controller (EMC)" 
> Subject: Re: [Emc-users] Ethernet I/O
>
>> Umm, no... As master, no problem but slaves will be expensive:
>>
>> Ethercat slaves require either custom proprietry hardware or proprietary
>> IP
>
> Hmm, unfortunately I can't argue there.. been trying to find some prices
for
> a slave chip.
> I found some products, but no prices anywhere:
> - beckhoff ET1100, ET1200
> - ESC10, ESC20
> and some FPGA IP Core for Altera & Xilinx
>
> Maybe you have an idea how expensive they are?


No, I looked into this several months ago but was discouraged by the
hardware requirements. For the sychronization standards, I have more faith
that IEEE 1588 will get embedded in more Ethernet chips and processors with
Ethernet, for example:
Ethernet Transceiver with IEEE 1588 PTP Hardware Support from National Semi
(Product News, 17 Oct 2007 )

National Semiconductor has introduced its Ethernet transceiver with
integrated
hardware support for the IEEE 1588 Precision Time Protocol (PTP). For
applications in motion control, instrumentation, data acquisition and
telecommunications, the DP83640 precision PHYTER transceiver synchronizes
the
distributed network nodes to a master clock with 8-nanosecond accuracy.


The model DP83640 precision PHYTER transceiver synchronizes distributed
network nodes to master clock with 8 nsec accuracy and offers 100 Mb
synchronous Ethernet mode that eliminates any inaccuracy caused by clock
drift
between nodes. It integrates hardware time stamping of receive and transmit
packets, high-accuracy IEEE 1588 clock, and 12 GPIO pins that handle
simultaneous real-time events/multiple triggers. Device interfaces with any
microcontroller, FPGA, or ASIC with Ethernet MAC. The samples of the DP83640
transceiver are available now in a 48-pin LQFP. The DP83640 will be priced
at
$5.24 each in 1,000-unit quantities.






>
> Regards,
> Alex
>
>
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lis

Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Alex Joni
I finally found this reference:

http://www.rtcmagazine.com/home/article.php?id=100822&pg=2

"The slave controller chips are in the same range as standard Ethernet chips 
(roughly $5 in quantity 10,000). The synchronization mechanism for EtherCAT 
is already built in. Other solutions that rely on IEEE 1588 require an extra 
chip. All together this makes EtherCAT a very affordable technology."

btw, I will be travelling in a couple of weeks to germany, might get in 
contact with Beckhoff for some details.

Regards,
Alex


- Original Message - 
From: "Peter C. Wallace" <[EMAIL PROTECTED]>
To: "Enhanced Machine Controller (EMC)" 
Sent: Monday, October 29, 2007 9:16 PM
Subject: Re: [Emc-users] Ethernet I/O


> On Mon, 29 Oct 2007, Alex Joni wrote:
>
>> Date: Mon, 29 Oct 2007 21:00:22 +0200
>> From: Alex Joni <[EMAIL PROTECTED]>
>> Reply-To: "Enhanced Machine Controller (EMC)"
>> 
>> To: "Enhanced Machine Controller (EMC)" 
>> Subject: Re: [Emc-users] Ethernet I/O
>>
>>> Umm, no... As master, no problem but slaves will be expensive:
>>>
>>> Ethercat slaves require either custom proprietry hardware or proprietary
>>> IP
>>
>> Hmm, unfortunately I can't argue there.. been trying to find some prices 
>> for
>> a slave chip.
>> I found some products, but no prices anywhere:
>> - beckhoff ET1100, ET1200
>> - ESC10, ESC20
>> and some FPGA IP Core for Altera & Xilinx
>>
>> Maybe you have an idea how expensive they are?
>
>
> No, I looked into this several months ago but was discouraged by the
> hardware requirements. For the sychronization standards, I have more faith
> that IEEE 1588 will get embedded in more Ethernet chips and processors 
> with
> Ethernet, for example:
> Ethernet Transceiver with IEEE 1588 PTP Hardware Support from National 
> Semi
> (Product News, 17 Oct 2007 )
>
> National Semiconductor has introduced its Ethernet transceiver with 
> integrated
> hardware support for the IEEE 1588 Precision Time Protocol (PTP). For
> applications in motion control, instrumentation, data acquisition and
> telecommunications, the DP83640 precision PHYTER transceiver synchronizes 
> the
> distributed network nodes to a master clock with 8-nanosecond accuracy.
>
>
> The model DP83640 precision PHYTER transceiver synchronizes distributed
> network nodes to master clock with 8 nsec accuracy and offers 100 Mb
> synchronous Ethernet mode that eliminates any inaccuracy caused by clock 
> drift
> between nodes. It integrates hardware time stamping of receive and 
> transmit
> packets, high-accuracy IEEE 1588 clock, and 12 GPIO pins that handle
> simultaneous real-time events/multiple triggers. Device interfaces with 
> any
> microcontroller, FPGA, or ASIC with Ethernet MAC. The samples of the 
> DP83640
> transceiver are available now in a 48-pin LQFP. The DP83640 will be priced 
> at
> $5.24 each in 1,000-unit quantities.
>
>
>
>
>
>
>>
>> Regards,
>> Alex
>>
>>
>> -
>> This SF.net email is sponsored by: Splunk Inc.
>> Still grepping through log files to find problems?  Stop.
>> Now Search log events and configuration files using AJAX and a browser.
>> Download your FREE copy of Splunk now >> http://get.splunk.com/
>> ___
>> Emc-users mailing list
>> Emc-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/emc-users
>>
>
> Peter Wallace
> Mesa Electronics
>
> (\__/)
> (='.'=) This is Bunny. Copy and paste bunny into your
> (")_(") signature to help him gain world domination.
>
>
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.503 / Virus Database: 269.15.12/1096 - Release Date: 
> 10/27/2007 11:02 AM
>
> 


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Peter C. Wallace
On Mon, 29 Oct 2007, Alex Joni wrote:

> Date: Mon, 29 Oct 2007 21:00:22 +0200
> From: Alex Joni <[EMAIL PROTECTED]>
> Reply-To: "Enhanced Machine Controller (EMC)"
> 
> To: "Enhanced Machine Controller (EMC)" 
> Subject: Re: [Emc-users] Ethernet I/O
> 
>> Umm, no... As master, no problem but slaves will be expensive:
>>
>> Ethercat slaves require either custom proprietry hardware or proprietary
>> IP
>
> Hmm, unfortunately I can't argue there.. been trying to find some prices for
> a slave chip.
> I found some products, but no prices anywhere:
> - beckhoff ET1100, ET1200
> - ESC10, ESC20
> and some FPGA IP Core for Altera & Xilinx
>
> Maybe you have an idea how expensive they are?


No, I looked into this several months ago but was discouraged by the 
hardware requirements. For the sychronization standards, I have more faith 
that IEEE 1588 will get embedded in more Ethernet chips and processors with 
Ethernet, for example:
Ethernet Transceiver with IEEE 1588 PTP Hardware Support from National Semi
(Product News, 17 Oct 2007 )

National Semiconductor has introduced its Ethernet transceiver with integrated 
hardware support for the IEEE 1588 Precision Time Protocol (PTP). For 
applications in motion control, instrumentation, data acquisition and 
telecommunications, the DP83640 precision PHYTER transceiver synchronizes the 
distributed network nodes to a master clock with 8-nanosecond accuracy.


The model DP83640 precision PHYTER transceiver synchronizes distributed 
network nodes to master clock with 8 nsec accuracy and offers 100 Mb 
synchronous Ethernet mode that eliminates any inaccuracy caused by clock drift 
between nodes. It integrates hardware time stamping of receive and transmit 
packets, high-accuracy IEEE 1588 clock, and 12 GPIO pins that handle 
simultaneous real-time events/multiple triggers. Device interfaces with any 
microcontroller, FPGA, or ASIC with Ethernet MAC. The samples of the DP83640 
transceiver are available now in a 48-pin LQFP. The DP83640 will be priced at 
$5.24 each in 1,000-unit quantities.






>
> Regards,
> Alex
>
>
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Alex Joni
> Umm, no... As master, no problem but slaves will be expensive:
>
> Ethercat slaves require either custom proprietry hardware or proprietary 
> IP

Hmm, unfortunately I can't argue there.. been trying to find some prices for 
a slave chip.
I found some products, but no prices anywhere:
 - beckhoff ET1100, ET1200
 - ESC10, ESC20
and some FPGA IP Core for Altera & Xilinx

Maybe you have an idea how expensive they are?

Regards,
Alex


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Peter C. Wallace
> I really think all of the thread raised issues have been addressed by
> Ethercat:

Umm, no... As master, no problem but slaves will be expensive:

Ethercat slaves require either custom proprietry hardware or proprietary IP

You can not use a generic ucontroller with Ethernet as a EtherCat slave.


Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Peter C. Wallace
On Mon, 29 Oct 2007, Jon Elson wrote:
> The idea is that 100 mbit/sec ethernet is fast.  What other
> RS485 device do you have that runs that fast?

Of course a RS-485 link can have smaller packets, and may actually have much 
better real time performance. (a single 10 MBps RS-485 link will have much 
better performance than 100 BT Ethernet connected to a single encoder)

Also 100BT with its MLT3 encoding is not as electrically robust as isolated 
RS-485 or 10BT.

Ethernet is great for broadcast but I don't think so good for collecting data 
from a large number of separate real time devices (say encoders)

I think Ethernet would be a really good way to connect a multi channel motion 
controller to a PC where the large packet size is not such nuisance. You would 
likely need a separate Ethernet card from the main network connection.

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Alex Joni
I really think all of the thread raised issues have been addressed by 
Ethercat:

1. it uses Ethernet (100MBps max) raw packages
2. there is an opensource Ethercat "Master", which runs under linux/RTAI 
(http://www.etherlab.org/en/ethercat/index.php)
3. you could command motion and IO devices using one Ethercat network
4. "Data for and from 100 servo axis can be updated with up to 10 kHz."
5. "Process data exchange with 1000 distributed digital I/O takes about 30 
µs."
6. The packages are really simple packages, each device looks inside if 
there's anything for itself, otherwise the package gets passed on. "Due to 
these features EtherCAT can support almost any topology such as line, tree 
or star. "
7. "Since 100BASE-TX Ethernet physical layer is used, the distance between 
any two nodes can be up to 100 m (300 ft). Up to 65535 devices can be 
connected per segment. If an EtherCAT network is wired in ring configuration 
(requires two ports on the master device), it can provide cable redundancy."
8. "For synchronization a distributed clock mechanism is applied, which 
leads to very low jitters of significantly less than 1 µs even if the 
communication cycle jitters. Therefore EtherCAT does not require a special 
hardware in the master device and can be implemented in software on any 
standard Ethernet MAC, even without dedicated communication coprocessor."
9. While the master can be implemented in software on the PC, "EtherCAT 
slave controllers are available as code for different FPGAs and are also 
available as ASIC implementation."
10. Using ethercat one could drive the motors from HAL, and read back 
encoder information (this would assume 1-2 ethercat logical devices / axis). 
I (personally) would implement a single axis controller (analog output or 
stepgen, and encoder input) which can be commanded by Ethercat. Then you 
could join 2-9 of these, depending how many joints the machine has. For I/O 
I would use existing products for starters (e.g. from Beckhof).

Regards,
Alex

PS: most of the quotes are form http://en.wikipedia.org/wiki/EtherCAT

- Original Message - 
From: "Jon Elson" <[EMAIL PROTECTED]>
To: "Enhanced Machine Controller (EMC)" 
Sent: Monday, October 29, 2007 7:44 PM
Subject: Re: [Emc-users] Ethernet I/O


> Erik Christiansen wrote:
>> On Fri, Oct 26, 2007 at 08:37:47PM -0500, Javid Butler wrote:
>>
>>>The real problem is the endpoint device. There will have to be some way 
>>>to
>>>decode the signals from the ethernet into the actual drives. It will
>>>probably be a while before cost effective drives are available with 
>>>ethernet
>>>inputs. Until then we will have to use decoders that provide translation 
>>>of
>>>the ethernet commands to individual bits such as are on the parallel 
>>>port.
>>
>>
>> Is it essential that it be ethernet? If Jon's custom host controller had
>> one or more RS485 ports (preferably 4-wire full-duplex), then any fast
>> microcontroller with one or more serial ports could potentially serve as
>> the endpoint controller.
>>
> The idea is that 100 mbit/sec ethernet is fast.  What other
> RS485 device do you have that runs that fast?
>> With on-board multiple-channel PWM generators (e.g. with 64 MHz clock) &
>> counter/timers to offload the CPU, and interrupt service routines being
>> the natural order, a reasonably fast uC can handle velocity feedback,
>> and calculating PID without too much fuss. (But high speed machine
>> control may be more demanding.)
>>
> The main idea of this discussion os to PRESERVE the mode of
> EMC2, and get around the disappearance of the parallel port.
> There is no doubt that the entire motion control task, in fact
> all of EMC2 except the GUI, could be moved to one of these ARM
> micros.
> And, by spoon-feeding the G-code in large chunks, there's be no
> need for a fast I/O channel.  But, that is not waht I was trying
> to do!
>
>> If ethernet is used, it'd surely be necessary to be able to DMA the data
>> into the micro, or the benefit of 100 Mb/s would be lost. Now we'd need
>> an ARM chip as axis controller? Incidentally, if linux is to run on the
>> host, then ARM would be a better choice than the NXP beast? (Though
>> eCos is well endowed in the ISR area, and more suited to real-time.)
> This is all handled by these ARM7 micros, they are an entire PC
> on one chip, except for video.  The NXP LPC2300 IS an ARM7 CPU.
>  They also have ARM9 if you need even more.  Their problem is
> getting working silicon out of the lab.
>
> Jon
>
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>
>

Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Andrew Ayre
CAN is indeed a maximum 1Mbps, however about 50% of that is overhead, so
the actual data bandwidth is more like a max of 500kbps. This is over a
distance of something like 40 meters.

CAN only defines the physical connection and message frame format. All
the bit stuffing, sync, acknowlegements and limited retransmits are
handled in hardware, but your application has to process messages that
arrive fast enough for your application. Nearly all CAN controllers
implement message filtering in hardware as well, reducing the number of
messages that your application has to process. There is a max of 8 bytes
in a message frame. The hardware implementation is quite a bit more
sophisticated than a UART.

Andy

Jon Elson wrote:
> Rafael Skodlar wrote:
> 
>> I would not want to rely on UDP for real time applications unless it's 
>> used on an isolated network with a limited number of well behaving 
>> nodes.
> Yes, you would have to do it that way.
> 
>> Gigabit ethernet would be better but then which microcontroller will be 
>> able to run with it? 32 bit only:
>> http://www.freescale.com/webapp/sps/site/application.jsp?nodeId=0220502E112E1F
>>
> This gets quite expensive, at least for a while still.
>> How about using some other bus for real time applications? I'm sure 
>> there is a better bus for the price (CAN?)
> I think CAN is much slower, and the hardware support is at a 
> MUCH lower level.  It isn't much more sophisticated than a UART, 
> thus software overhead.
> 
> Jon
> 
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
> 
> 
> 

-- 
Andy
PGP Key ID: 0x67090A54

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Dave Engvall
Jon, Rafael, et al

IIRC CAN is 1 Mbit/sec.

Philosophically I'd opt for KISS. (keep it simple stupid).

No more complexity than is necessary to get the job done.

To me that sounds a lot like raw packets point to point.

Dave
On Oct 29, 2007, at 10:33 AM, Jon Elson wrote:

> Rafael Skodlar wrote:
>
>> I would not want to rely on UDP for real time applications unless  
>> it's
>> used on an isolated network with a limited number of well behaving
>> nodes.
> Yes, you would have to do it that way.
>
>>
>> Gigabit ethernet would be better but then which microcontroller  
>> will be
>> able to run with it? 32 bit only:
>> http://www.freescale.com/webapp/sps/site/application.jsp? 
>> nodeId=0220502E112E1F
>>
> This gets quite expensive, at least for a while still.
>> How about using some other bus for real time applications? I'm sure
>> there is a better bus for the price (CAN?)
> I think CAN is much slower, and the hardware support is at a
> MUCH lower level.  It isn't much more sophisticated than a UART,
> thus software overhead.


>
> Jon
>
> -- 
> ---
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a  
> browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Jon Elson
Erik Christiansen wrote:
> On Fri, Oct 26, 2007 at 08:37:47PM -0500, Javid Butler wrote:
> 
>>The real problem is the endpoint device. There will have to be some way to 
>>decode the signals from the ethernet into the actual drives. It will 
>>probably be a while before cost effective drives are available with ethernet 
>>inputs. Until then we will have to use decoders that provide translation of 
>>the ethernet commands to individual bits such as are on the parallel port.
> 
> 
> Is it essential that it be ethernet? If Jon's custom host controller had
> one or more RS485 ports (preferably 4-wire full-duplex), then any fast
> microcontroller with one or more serial ports could potentially serve as
> the endpoint controller.
> 
The idea is that 100 mbit/sec ethernet is fast.  What other 
RS485 device do you have that runs that fast?
> With on-board multiple-channel PWM generators (e.g. with 64 MHz clock) &
> counter/timers to offload the CPU, and interrupt service routines being
> the natural order, a reasonably fast uC can handle velocity feedback,
> and calculating PID without too much fuss. (But high speed machine
> control may be more demanding.)
> 
The main idea of this discussion os to PRESERVE the mode of 
EMC2, and get around the disappearance of the parallel port.
There is no doubt that the entire motion control task, in fact 
all of EMC2 except the GUI, could be moved to one of these ARM 
micros.
And, by spoon-feeding the G-code in large chunks, there's be no 
need for a fast I/O channel.  But, that is not waht I was trying 
to do!

> If ethernet is used, it'd surely be necessary to be able to DMA the data
> into the micro, or the benefit of 100 Mb/s would be lost. Now we'd need
> an ARM chip as axis controller? Incidentally, if linux is to run on the
> host, then ARM would be a better choice than the NXP beast? (Though
> eCos is well endowed in the ISR area, and more suited to real-time.)
This is all handled by these ARM7 micros, they are an entire PC 
on one chip, except for video.  The NXP LPC2300 IS an ARM7 CPU. 
  They also have ARM9 if you need even more.  Their problem is 
getting working silicon out of the lab.

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] LRK Motors

2007-10-29 Thread Jon Elson
Kirk Wallace wrote:
> I am wondering if these motors, if scaled up could work as servo motors.
> 
> http://www.torcman.de/peterslrk/LRK350-20-15_eng.html
> http://www.torcman.de/peterslrk/index_eng.html
> http://groups.yahoo.com/group/lrk-torquemax/
> 
> Being able to build my own servo motors is very appealing.
> 
These are high-speed motors, not designed for positioning 
applications.  I think you'd find there is a lot of torque and 
velocity ripple with them.  Also, these motors are designed for 
intermittent use.

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Jon Elson
Rafael Skodlar wrote:

> I would not want to rely on UDP for real time applications unless it's 
> used on an isolated network with a limited number of well behaving 
> nodes.
Yes, you would have to do it that way.

> 
> Gigabit ethernet would be better but then which microcontroller will be 
> able to run with it? 32 bit only:
> http://www.freescale.com/webapp/sps/site/application.jsp?nodeId=0220502E112E1F
> 
This gets quite expensive, at least for a while still.
> How about using some other bus for real time applications? I'm sure 
> there is a better bus for the price (CAN?)
I think CAN is much slower, and the hardware support is at a 
MUCH lower level.  It isn't much more sophisticated than a UART, 
thus software overhead.

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Jon Elson
Stephen Wille Padnos wrote:
> Jon Elson wrote:

>>As long as you could throttle traffic on that ethernet segment, 
>>so a network file transfer, for instance, couldn't bog down the 
>>ethernet, then that would work.
>>
> 
> No, it wouldn't (not necessarily).
> You'd also have to set the MTU pretty low.  A single UDP packet of 
> 12.5kBytes takes 1ms to transmit on the wire.  (12.5k * 8 bits = 100 
> kbits = 1/1000 of 100 mbits/sec = 1msec)  Even if you throttle large 
> transfers, and you can somehow convince multiple hosts on the segment to 
> all share the same "throttled pool" of bandwidth, a single large packet 
> can throw a wrench in the works.
> 
12.5 K bytes?  I've never run a system with an MTU greater than 
1536, I thought that was some generally agreed standard.  My 
current system has it at 1500.  1536 * 8 bits = 12288, at 100 
MBit/sec that would take 122 us plus overhead.  Better not let 
more than one of those packets through per millisecond.  That 
wouldn't really clobber the bandwidth for net transfers, though, 
you'd still get 1.5 MBytes/second throughput.  There would not 
be multiple hosts, just the CNC machine and whatever was acting 
as a router for it.  If you hooked a bunch of CNC control 
machines and their ethernet devices all on one segment, then 
you'd be asking for trouble.
> 
>> But, I have no idea what would 
>>be involved in making the ethernet port driver and network stack 
>>RT compatible.  Some time ago the RT stuff didn't do anything 
>>well except regularly-schenduled tasks, I think that is no 
>>longar a problem.  But, the net driver would have to respond to 
>>interrupts whenever a packet came in.
>> 
>>
> 
> I think the base for interrupt-response threads is there - the current 
> HAL thread mechanism uses it to grab the timer interrupt.  ADEOS can 
> route multiple interrupts (and multiple interrupt domains), and I'm 
> pretty sure RTAI also supports this.  It's just not part of RTAPI or HAL.
Yes, and I have no idea how hard it would be to put all that in. 
  HAL might not need to know about it at all, but it seems RTAPI 
would.  Now, maybe you could just start up the rtnet directly 
when the system boots, and let the drivers access rtnet without 
anybody else knowing its there.  I certainly don't know all the 
implications, it would take some study!

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Andrew Ayre
Jeff,

Thanks -  I will give that a try. I think a shared memory error was in
the mix.

I also need to manually create the application menu entries.
/usr/local/bin/emc is obvious. Are there any other executables that
users should be able to run from the menu?

Once I have this set up I will publish a blog entry with every single
step to get EMC2 working so others can benefit from my efforts.

thanks, Andy

Jeff Epler wrote:
> EMC 2.1.x is unlikely to work on Ubuntu 7.10.  However, the development
> version has been improved in various ways for compatability with newer
> versions of Ubuntu.
> 
> On Ubuntu 7.10 the default amount of "locked memory" for regular users
> is too low.  You can fix that problem by adding the line
> hard memlock 20480
> to /etc/security/limits.conf as root.  (it's necessary to log out
> completely after making this change)
> 
> However, the result of this problem is not an "insmod error", but
> another error about creating shared memory areas which I don't recall.
> In the case of insmod errors, the last few lines shown by "dmesg" are
> usually most useful in determining what is going on.
> 
> Jeff
> 
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
> 
> 
> 

-- 
Andy
PGP Key ID: 0x67090A54

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] var file source listing

2007-10-29 Thread sam sokolik
This is a good explaination coordinate systems. 
http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?CoordinateSystems

The var file info is here 
http://www.isd.mel.nist.gov/documents/kramer/RS274NGC_3.pdf  on page 13.
- Original Message - 
From: "Cecil Thomas" <[EMAIL PROTECTED]>
To: "Enhanced Machine Controller (EMC)" 
Sent: Monday, October 29, 2007 9:58 AM
Subject: [Emc-users] var file source listing


>I have searched the users and integrators manuals and can't find this
> but maybe I've missed it.
>
> When strange things appear on startup of my axis or tkemc it is
> usually because there is a value stored in the .var file.
> If I zero out the strange numbers and save the .var file and restart
> it usually fixes the problem.
>
> I would really like to trace down how the values got there in the
> first place.  Probably because I was doing on-the-job-training using
> G54, G92, G28, G30, etc. without fully understanding what I was doing.
>
> If I had a listing of each variable and what G command causes it to
> be changed I could then look at how I got into the situation in the
> first place and maybe use the same command in the program to reset
> the variable.
>
> I know that the discussions of each of the commands mentions which
> variable it sets but to find the culprit I have to go through each
> command searching for the variable number.
>
> I guess I'm looking for the "reverse directory" for the .var file.
>
> Thanks,
> Cecil
>
>
> -
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
> 


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] var file source listing

2007-10-29 Thread Cecil Thomas
I have searched the users and integrators manuals and can't find this 
but maybe I've missed it.

When strange things appear on startup of my axis or tkemc it is 
usually because there is a value stored in the .var file.
If I zero out the strange numbers and save the .var file and restart 
it usually fixes the problem.

I would really like to trace down how the values got there in the 
first place.  Probably because I was doing on-the-job-training using 
G54, G92, G28, G30, etc. without fully understanding what I was doing.

If I had a listing of each variable and what G command causes it to 
be changed I could then look at how I got into the situation in the 
first place and maybe use the same command in the program to reset 
the variable.

I know that the discussions of each of the commands mentions which 
variable it sets but to find the culprit I have to go through each 
command searching for the variable number.

I guess I'm looking for the "reverse directory" for the .var file.

Thanks,
Cecil


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] zero motion homing in program

2007-10-29 Thread Cecil Thomas
Is there some G command that works like the "HOME" button in AXIS or 
TKEMC that simply "makes the present position HOME"   Without 
storing offsets in the .var file

I am trying to do what appears to be a simple operation in g code but 
it seems to be over my head.
here's the setup:
I am using xyza with rotary axis parallel to X. I am using an endmill 
in the spindle to cut a square thread in a round bar in the chuck of 
the a axis.  to cut a 5 pitch thread of 2 inch length the primary 
command line is  G1 X2 A3600.
There is obviously more to the program(multiple cuts with incremented 
Z etc) but this is the basic command.

Here is the problem:  When I finish the 10 revolutions along the 2 
inch length I need to extract the tool and go back to where I started 
for the next cut.  I can use G0 to extract the tool and bring it back 
to the beginning of the cut...But... If I use G0 A0 the darned thing 
sits there and "unwinds" the A axis 10 turns all the way back to 0 
degrees.  Since I went an integral multiplier of 360 degrees it is 
already sitting on "0" degrees of the part but EMC wants to "unwind" 
it back to 0 which is where it already is.

What I would like:  I would like to tell the controller "yeah, I know 
you think you are sitting on 3600 degrees but I'm telling you to 
forget that and from now 'til I tell you otherwise you are at 0 
degrees which is home."

Now I can increment the cut depth and repeat the process till the cut is done.

I think what I am looking for is a way to "home" the axis  with no movement.
I tried G92 and G28 but they really don't Home the axis, they just 
store an offset in the .var file and offset the axis by that much on any move.
The problem with that is that those offsets stay in the var file and 
when you bring up the controller the next time they are still there. 
So now every time I start EMC I have to remember to open the .var 
file and clean up all the junk BEFORE I start EMC.

I know I could just increment the A command each time ...A3600 on 
pass one  A7200 on pass two A9800 on pass three etc. but that seems 
like a workaround and besides when I finish the job I will have to 
"UNWIND" 30 revolutions or shut down EMC and start over.

Bottom Line:  Is there some G command that works like the "HOME" 
button in AXIS or TKEMC that simply "makes the present position HOME" 
  Without storing offsets in the .var file

I know I am going to be embarrassed by how simple the solution is but 
it has evaded me for the last 3 days so I am asking for help.

Thanks,
Cecil


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Kenneth Lerman
The issue is at the PC end.

In the past, parallel ports have been used, but it takes about a microsecond
per byte to output to them. Ethernet has the advantage is that the
controllers are PCI based and are a lot faster.

Ken

[EMAIL PROTECTED]
Mark Kenny Products Company, LLC
55 Main Street   Voice: (888)ISO-SEVO (888)476-7386
Newtown, CT 06470Fax: (203)426-9138
http://www.MarkKenny.com


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Erik
Christiansen
Sent: Monday, October 29, 2007 2:26 AM
To: Enhanced Machine Controller (EMC)
Subject: Re: [Emc-users] Ethernet I/O


On Fri, Oct 26, 2007 at 08:37:47PM -0500, Javid Butler wrote:
> The real problem is the endpoint device. There will have to be some way to
> decode the signals from the ethernet into the actual drives. It will
> probably be a while before cost effective drives are available with
ethernet
> inputs. Until then we will have to use decoders that provide translation
of
> the ethernet commands to individual bits such as are on the parallel port.

Is it essential that it be ethernet? If Jon's custom host controller had
one or more RS485 ports (preferably 4-wire full-duplex), then any fast
microcontroller with one or more serial ports could potentially serve as
the endpoint controller.

With on-board multiple-channel PWM generators (e.g. with 64 MHz clock) &
counter/timers to offload the CPU, and interrupt service routines being
the natural order, a reasonably fast uC can handle velocity feedback,
and calculating PID without too much fuss. (But high speed machine
control may be more demanding.)

Something like the AT90PWM3B, while only clocking 16 MIPS, needs only
H-bridges and drivers added, to control a BLDC from its on-chip
synchronised power stage controllers (specialised PWM). I haven't tried
the ready made card at
http://www.atmel.com/dyn/products/tools_card.asp?family_id=607&family_name=A
VR+8%2DBit+RISC+&tool_id=3764
Estop can be fed directly into the output power stage controllers, if
desired.

The 100 MHz 8051 core also sounds interesting (as an axis controller)
from a hardware point of view,  but it's famously mismatched for 'C'
coding, due to its stack limitations, and accumulator-centric
architecture. The (possibly consequential) lack of gcc support, is
probably the biggest hindrance to my eye, followed by the greater wealth
of on-board peripherals on competing products. (Having used it
professionally for nearly 2 decades, I have a soft spot for it, though.)

A distributed architecture appeals because it is easier to
upgrade/rebuild if the host controller only reads gcode and says "go to
x, at speed s". There are no precison dc control voltages dodging EMI
from power electrics either. Incidentally, with eeprom as well as flash
in these microcontrollers, PID and other parameters can be stored in the
drive, and updated via the host. (No panicked search for old data files
when bringing a mothballed drive back into service.)

Trying to make the serial communications super-hard real-time could be
the hard way to do things. Where several axes need to be synchronised,
one axis controller can put its encoder pulsetrain directly onto an
RS485 synchronisation bus, and slaved axes feed that into on-chip
hardware counters, either interrupting when the count is big enough to
act on, or being read at the sample interval to check if the axis feed
ratio is being maintained. Especially at high speeds, with high encoder
line counts, a micro will still have to sample. (1 mS & 16 MIPS = 16,000
instructions per interval)

The synchronising source can be chosen by selecting which axis
controllers send, and which receive on a bus. The synchronisation busses
would necessitate running a second cable between controllers, I figure.
(I have some cat5 cable and some oil-resistant metallic flexible
conduit, which I figured might do.)

Would a 64 byte packet be required to issue a motion command
to an axis controller, addressing included? (Since commands and status
reports need not be nanosecond realtime, now that sync is on separate
busses, does it hurt that an AT90PWM3B's 2Mb/s maximum baudrate extends
transfer time to 320 uS for 64 bytes?) Let's send 32 bytes. ;-)
Like the 8051, the AVRs have hardware address frame recognition, but
must compare addresses in software, so an RS422-style point-point
connection would be kinder.

If ethernet is used, it'd surely be necessary to be able to DMA the data
into the micro, or the benefit of 100 Mb/s would be lost. Now we'd need
an ARM chip as axis controller? Incidentally, if linux is to run on the
host, then ARM would be a better choice than the NXP beast? (Though
eCos is well endowed in the ISR area, and more suited to real-time.)

Erik

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files us

Re: [Emc-users] Ethernet I/O

2007-10-29 Thread Kenneth Lerman

What I had in mind is a DEDICATED ethernet segment. There would be no other
traffic on it other than our RT traffic.

I would NOT use UDP; I would use raw ethernet packets.

Ken

[EMAIL PROTECTED]
Mark Kenny Products Company, LLC
55 Main Street   Voice: (888)ISO-SEVO (888)476-7386
Newtown, CT 06470Fax: (203)426-9138
http://www.MarkKenny.com


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Jon Elson
Sent: Sunday, October 28, 2007 10:44 PM
To: Enhanced Machine Controller (EMC)
Subject: Re: [Emc-users] Ethernet I/O


Kenneth Lerman wrote:
> For me, the issue of RTnet is irrelevant. I would, instead, just want to
use
> the Linux driver. If we can get that to generate and receive ethernet
frames
> in real time, we are in business.
>
Well, that's the problem, it is NOT real time code.  I don't
know how far it is from being real time compatible, but I
suspect there's a lot of things in there that might cause
problems.
> Then we could let the PC be a master and any peripherals be slaves. In the
> case of the UPC board, there might be only one slave. The master would
poll
> each of the slaves as appropriate.
As long as you could throttle traffic on that ethernet segment,
so a network file transfer, for instance, couldn't bog down the
ethernet, then that would work.  But, I have no idea what would
be involved in making the ethernet port driver and network stack
RT compatible.  Some time ago the RT stuff didn't do anything
well except regularly-schenduled tasks, I think that is no
longar a problem.  But, the net driver would have to respond to
interrupts whenever a packet came in.

Jon

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Problems Compiling/Running - Update

2007-10-29 Thread Jeff Epler
EMC 2.1.x is unlikely to work on Ubuntu 7.10.  However, the development
version has been improved in various ways for compatability with newer
versions of Ubuntu.

On Ubuntu 7.10 the default amount of "locked memory" for regular users
is too low.  You can fix that problem by adding the line
hard memlock 20480
to /etc/security/limits.conf as root.  (it's necessary to log out
completely after making this change)

However, the result of this problem is not an "insmod error", but
another error about creating shared memory areas which I don't recall.
In the case of insmod errors, the last few lines shown by "dmesg" are
usually most useful in determining what is going on.

Jeff

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users