RE: What to use? EtherCAT or Ethernet Powerlink with CANopen protocol

"Albert Saenz" <[email protected]>
Newsgroups gmane.comp.hardware.bus.can
Organization iNAV electronica, S.L.
Message-ID <78E0013DA07548B0AE4D252EC7984172@DELLStudio>
Hi all,
I want to thanks everybodybut, I'm sorry, I think my question was not
clearly introduce.
1.    Despite any PLC can NOT be deterministic because it depends on the
"branch" it executes the program (Soft Real Time).
It will be completely diferent to start an equation with an IF condition
that is not done or it's done, lasting more time if the PLC skip this
equation immediatly at the begining or if it has to execute many AND/OR
sub-equations. So the PLC's program executes an infinite loop that depends
on the I/Os and its own internal state.
2.    Let me explain a litlle what a CNC must do for sure deterministically
(I think this was the problem, nobody knows in detail):
Each TICK (e.g. 1 ms) must supply the "next" position (by R-PDO telegram) to
be achieved for all the axis are interpolating. In Absolute coordinates, it
represents 4 bytes per each axis, or 2 bytes in Incrementals. Furthermore,
each axis connected must "report" at least the position where it is (4 bytes
in Absolutes o 2 in Incremental) and its Status (2 bytes minimun) including
alarm code that could be later detailed by an SDO telegram. On this escenary
of a 4 axis machine ...
The sentence (extracted from the Sercos Field Bus competitor):
			"Simple CAN bus resources are quite poor on
applications that needs Real Time performances".

How to solve this important problem? Let's see how we did (www.inavcnc.com).

As we already mention, the strongest limitation is 1Mb/s=1000bits/ms.
Any CAN message has a length of 51 bits + 8 * No of Bytes per message (for a
CAN 2.0a with an "interframe space" of 7 bits). That is, 115 bits/telegram
for an 8 bytes message, 99 bits/telegram for a 6 bytes message 65
bits/telegram for a 2 bytes message and 51 bits/telegram for an 0 bytes
message. 
Master PDO (R-PDO) will be named as m_Cmd and the Slaves PDO (T-PDO) that
are the return messages of any Servo Drive Amplifier connected as m_Ret.
CANopen accepts to multiplex in the same PDO the command for 4 axis (we used
this very important performance!) 
Return messages (or Return telegrams) can use a lot of CANbus resources
increasing notably the traffic on the Bus and could produce a CANbus
overhead keeping on mind that a TICK of 1ms is our target.
We have fixed that m_Ret will be sent when m_Sync is received.
As it was mentioned earlier, each CANbus channel can control up to 4 axes
per 1 millisecond, representing:
1.-           m_Sync                                                 51 bits
2.-           m_Cmd (for 4 axes: named as X,Y,Z,C)                   115
bits
3.-           m_Ret (Axis X)                                         115
bits (8 bytes) or 99 bits (6 bytes)
4.-           m_Ret (Axis Y)                                         115
bits (8 bytes) or 99 bits (6 bytes)
5.-           m_Ret (Axis Z)                                         115
bits (8 bytes) or 99 bits (6 bytes)
6.-           m_Ret (Axis C)                                         115
bits (8 bytes) or 99 bits (6 bytes)
7.-           m_Req (Async. Telegram or T-SDO)                       115
bits
8.-           m_Res (Async. Telegram or R-SDO)                       115
bits
TOTAL in worst case:                856 bits/ms   or   792 bits/ms

IMPORTANT NOTE: CANbus has NOT ENOUGH SPACE FOR FURTHER INFORMATION (4 axis
more and the Inputs and Outputs).
8 telegrams =856 bits (so, balanced 144 microseconds could be uses to
increase any needed "interframe space" before the m_Sync has been send). It
can be noted that 8 axes with the same CANbus line is completely impossible
in the case that m_Ret of 6 or 8 bytes has been used.

m_Req and m_Res on normal conditions (interpolation) should not be use. Only
they will be used when the Servo Drives Amplifiers are disabled in order to
change or initialize some determines parameters. On our application we use
mainly Async Telegrams for:
a)                  Enable /disable the Servo Drives.
b)                  For the Zero Datum Point Search Procedure.
c)                  For Touching and/or collision Procedure. 
d)                  Emergency and Alarm Procedures.
Also, the use of 2 different m_Sync message types could be used to CHANGE ON
THE FLY the PID GAINS (for EDM and LASER) or the Electronic Gearbox and/or
Electronic CAM (for Printing and Packaging Machines), etc.

With respect m_Ret (its synchronous reception will serve to the CNC to know
the Servo Drive Amplifier is "alive"):
1.                    We discarded the Speed Return. Reason: they would be
used for the CNC as Oscilloscope signal and any more. On first commissioning
could be used, but in that case, we believe we could do a utility that
asynchronously demands those values each predetermined time. 
2.                    In some axes, we could use Torque Return in order to
know the consumption of the motor (tool is broke or wasted or ...). That
represents 2 bytes on the m_Ret telegram.
3.                    Incremental or Absolute Return Position would be used
to "control" if the servo is working properly.  We use the Real Absolute 16
bits Position in order to control the trailing error (or "Following
Distance" named too) just to produce an alarm. That represents 2 bytes more
on the m_Ret telegram. 
4.                    Servo Drive's status. That is the only relevant and
important Synchronous Information (all other can be perfectly omitted if the
Position Loop is in the Servo Drive Amplifier. That represents 2 bytes more
on the m_Ret telegram.
From the point of view of the Real Time, we are applying all is presented on
this paragraph in Servo Drives that implement CANbus with absolutely no
problem.
 
Anyhow, our query was to demand your opinions when we need to control more
axis and all the I/Os (digital and analog) with a single field bus channel?
That is because we are thinking in EtherCat or Powerlink (despite that I
sincerely believe that Ethernet hardware will win to any other solution in
the CNC market).
Hope I have clarify properly
Best,
Albert Saenz
Skype: my_voip

 
 


________________________________

De: [email protected]
[mailto:[email protected]] En nombre de Steinhoff
Enviado el: viernes, 14 de diciembre de 2012 9:30
Para: [email protected]
CC: [email protected]
Asunto: Re: [CANLIST] What to use? EtherCAT or Ethernet Powerlink with
CANopen protocol


[email protected] wrote:


	
	Hello,
	
	The module without power supply does not bypass, but the previous
device (from master point of view)
	does. Of course all the devices "after" the one without power supply
disappear but all the devices
	"before" remain active.
	
	Powerlink behaves similarly as long as the internal cut-through
switch is sharing same power supply
	with the rest of the device.
	


Yes ... but this is specific for the physical implementation of such a
module and the bus.
Hot swap of modules are always possible with Ethernet Powerlink if the
physical bus structure is a clean bus
without inter module dependencies.

But have in mind also a hub could be a single point of failure ... but this
wouldn't stop the whole system.

Hower ... what behavior is acceptable depends on the application.
The behavior of EtherCAT could be optimal if you have to control the
material flow over several convayers e.g.

Regards

--Armin



	
	This behavior is a consequence of using full-duplex Ethernet
physical layer instead of bus-type
	physical layer, e.g. CAN or coaxial-Ethernet.
	
	Best regards,
	
	-H
	
	
	
	
	
	Steinhoff
	
	
		
		From:        Steinhoff <[email protected]>
<mailto:[email protected]> 
	To:        [email protected]
	Cc:        [email protected]
	Date:        11.12.2012 13:41
	Subject:        Re: [CANLIST] What to use? EtherCAT or Ethernet
Powerlink with CANopen protocol
	Sent by:        [email protected]	


________________________________




	[email protected] <mailto:[email protected]> wrote:
	
	Gentlemen,
	
	From logical point of view, EtherCAT is a ring, but each device has
an ability to bypass
	connected physical segment if it is down. 
	
	That's only partly true. If the power supply is broken of the
errornous module it doesn't bypass anything.
	Yes ... if one module is broken there is the possibility to split
the initial ring into two rings ... but this works just for one broken
module.
	
	--Armin
	
	Physically EtherCAT networks can form any
	kind of topology.
	
	Powerlink follows standard Ethernet physical layer and if other than
star topology is
	required, hubs are needed. In practice, "hubs" are actually
cut-through type switches.
	Logical operation of Powerlink is based on a managing node
requesting controlled
	nodes to transmit point-to-multipoint packets.
	
	Redundant masters are challenging in any technology, even in
CAN-based CANopen,
	where change of effective NMT-master expects NMT-reset. However, in
CAN-based
	CANopen networks all transmissions can be asynchronous and
NMT-master blackout
	does not necessarily introduce any effect on the process signaling.
	
	On the contrary, master-node needs to trigger all transmissions in
both EtherCAT and
	Powerlink networks.
	
	Best regards,
	
	-H
	
	
	
	
	Steinhoff
	
		
		From:        Steinhoff <[email protected]>
<mailto:[email protected]> 
	To:        'CANLIST' <[email protected]>
<mailto:[email protected]> 
	Cc:        Albert Saenz <[email protected]>
<mailto:[email protected]> 
	Date:        11.12.2012 11:33
	Subject:        Re: [CANLIST] What to use? EtherCAT or Ethernet
Powerlink with CANopen protocol
	Sent by:        [email protected]
<mailto:[email protected]> 	

	
	
	
________________________________

	
	
	
	Albert Saenz wrote:
	> Hi all,
	> My first participation!
	> I know that perhaps it is not the best forum, but in any case I
believe many
	> of you have the same problem nowadays.
	> Despite CAN bus is a nice and powerful field bus (I like very much
compared
	> with any similar industrial bus), we'd need to improve notably the
speed (1
	> Mbit/s is clearly not enough even multiplexing the 8 bytes
telegrams at
	> R-PDO and minimizing all T-PDO). Bandwidth for Hard Real Time
applications
	> were the Tick should be less than 1 ms and massive I/Os and Motion
Drivers
	> should be controlled (typical CNC application) can not be limited
by the 1
	> Mb/s (even using multiple channels: 2 or more CAN buses, as our
applications
	> is using nowadays. 1 for I/Os and 1 o 2 more for control 4 or 8
axis with a
	> tick of 1 ms). In case we need "multi-channel" (i.e. 2 or more
independent
	> CNCs running at the same platform), CAN bus drastically limits and
it makes
	> no sense in many application.
	> My question is (requesting opinions):
	> CANopen protocol is supported by EtherCAT (ETG group) and Ehernet
Powerlink
	> (EPGS group) and that simplify migration from CAN bus (or we could
even
	> share both).
	
	The topology of the fieldbus must fit to your application.
	
	EtherCAT is based on a ring topology ...  EVERY I/O module must
transmit 
	every single bit throughout the ring.
	That means every I/O module could be a single point of failure .. 
	EtherCAT is also bound to the transmission speed of 100Mbit/s.
	Fault tolerant master configurations (hot standby a.s.o) are hard to

	realize .. or nearly impossible.
	
	Ethernet Powerlink has a clean bus topology ... there are also
master 
	nodes based on co-processor boards which allows to run the bus 
	independent from the load of the PC CPU.
	A problem with a single I/O module can't stop the bus. Ethernet 
	Powerlink isn't bound to 100Mbit/s.
	Fault tolerant configuration are easy to realize because of the
clean 
	bus topology.
	
	--Armin
	
	
	
	
	> I would like to know Guru's opinion and those are many of you.
	> Thanks in advance for your contribution,
	>
	> Albert Saenz
	> Sant Cugat del Valles - Barcelona
	>
	> --
	> Archives and useful links: http://groups.yahoo.com/group/CANbus
<http://groups.yahoo.com/group/CANbus> 
	> Subscribe and unsubscribe at www.vector.com/canlist/
	> Report any problems to <[email protected]>
<mailto:[email protected]> 
	>
	
	--
	Archives and useful links: http://groups.yahoo.com/group/CANbus
<http://groups.yahoo.com/group/CANbus> 
	Subscribe and unsubscribe at www.vector.com/canlist/
	Report any problems to <[email protected]>
<mailto:[email protected]> 
	
	
	
	This e-mail is confidential and it is intended only for the
addressees. Any review, dissemination, distribution, or copying of this
message by persons or entities other than the intended recipient is
prohibited. If you have received this e-mail in error, kindly notify us
immediately by telephone or e-mail and delete the message from your system.
The sender does not accept liability for any errors or omissions in the
contents of this message which may arise as a result of the e-mail
transmission. 
	
	
	
	This e-mail is confidential and it is intended only for the
addressees. Any review, dissemination, distribution, or copying of this
message by persons or entities other than the intended recipient is
prohibited. If you have received this e-mail in error, kindly notify us
immediately by telephone or e-mail and delete the message from your system.
The sender does not accept liability for any errors or omissions in the
contents of this message which may arise as a result of the e-mail
transmission. 
	


Se certifico que el correo entrante no contiene virus.
Comprobada por AVG - www.avg.es
Version: 9.0.930 / Base de datos de virus: 2634.1.1/5456 - Fecha de la
version: 12/14/12 01:25:00



--
Archives and useful links: http://groups.yahoo.com/group/CANbus
Subscribe and unsubscribe at www.vector.com/canlist/
Report any problems to <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.