PROTOCOLO CANOPEN ¿QUÉ ES EL PROTOCOLO CANOPEN?: CANopen es un protocolo de comuni comunicac cacion iones es de alto alto nivel, nivel, para para uso industri industrial, al, basado basado en el bus CAN (ISO CAN (ISO 11898) y recogido en la norma N !"#$!%&'
CANo CANop pen a sido sido desar esarrrolla ollado do por por CiA (CAN (CAN in Auto Automa mati tion on), ), asociacin asociacin sin *nimo de lucro lucro +ormada +ormada por +abricante +abricantess y usuarios usuarios del bus CAN' CAN' a red CANopen es una red basada en CAN, lo -ue signi.ca decir -ue ella utili/a telegramas CAN para intercambios de datos en la red' CANopen es un protocolo de comunicacin -ue utili/a la capa +0sica de red de controladores de *rea (CAN) -ue usted puede usar como un bus interno para dispo spositivos embebidos y aplicaciones de movi movimi mien ento to'' i ise se2a 2ado do orig origin inal alme ment nte e para para redes edes de cont contrrol de m*-u m*-uin inas as orie orient ntad adas as a movi movimi mien ento to como como sist sistem emas as de mane mane3o 3o,, CANopen aora es parte de una variedad de productos y aplicaciones, incluyendo e-uipo m4dico, ve0culos de campo traviesa, electrnica mar0tima, transporte p5blico y automati/acin en construccin' ¿CÓMO ¿CÓMO ESTÁ ESTÁ CONST CONSTIT ITUID UIDO? O? n CANopen ay documentos -ue describen per.les' 6ay un per.l de comunicaciones (communication pro.le) donde est*n descritos todos los par*metros relacionados con las las comu comuni nica caci cion ones' es' Adem Adem*s *s ay ay vario varioss per. per.le less de disp dispos osit itiv ivos os (device pro.les) donde se de.nen los ob3etos de un dispositivo en particular'
7n per.l de.ne para cada ob3eto del diccionario su +uncin, nombre, 0ndice, sub0ndice, tipos de datos, si es obligatorio u opcional, si es de slo lectura, slo escritura o lectura%escritura, etc' os dispositivos se estructuran en tres unidades +uncionales: •
•
•
Comunicaciones: ;roporciona los ob3etos de comunicacin y la +uncionalidad necesaria para transportar los datos a trav4s de la red subyacente' iccionario de ob3etos: s una coleccin de todos los elementos de datos -ue tienen in
l diccionario de ob3etos +unciona como una inter+a/ entre las comunicaciones y la aplicacin' a descripcin completa de la unidad de aplicacin de un dispositivo, con respecto a los datos del iccionario de ob3etos recibe el nombre de perfl de dispositivo' CARACTERÍSTICAS BIEN IMPORTANTES. caracter0sticas del protocolo CAN open son:
as
principales
7n 5nico bus de transmisin'
=elocidad de comunicacin de asta 1 >bit?s' a velocidad de transmisin puede ser di+erente en distintos sistemas' n un sistema la velocidad debe de ser uni+orme' Se emplean dos cables por los cuales via3an dos se2ales e@actamente iguales en amplitud y +recuencia pero completamente inversas en volta3e' os mdulos con estos dos pulsos identi.can el mensa3e, pero tambi4n tiene opciones de mantener la red activa aun-ue +alle uno de los cables de comunicacin' =alores de us (ominante o recesivo)' os nodos conectados al bus interpretan dos niveles lgicos denominados: - ominante: la tensin di+erencial (CANB6%CANB) es del orden de $'" = con CANB6 #'!= y CANB 1'!= (nominales)' - Decesivo: la tensin di+erencial (CANB6%CANB) es del orden de "= con CANB6 CANB $'!= (nominales)' os mensa3es CAN poseen un +ormato .3o -ue puede tener di+erentes longitudes seg5n el tipo de trama' Cada mensa3e tiene un identi.cador de mensa3e, -ue es 5nico en toda la red' l contenido de un mensa3e se especi.ca por dico identi.cador, el cual no indica el destino, sino describe el signi.cado del mensa3e' Adem*s indica la prioridad del mensa3e, lo cual es importante en el momento en -ue varias estaciones (nodos) compiten por el acceso al bus (arbitra3e de bus)' a peticin de datos remotos se reali/a enviando primero una trama remota de peticin de trama -ue posee una determinado identi.cador y esta ser* contestada con otra de.nida con el mismo identi.cador' Ele@ibilidad de la con.guracin'
>ultimaestro:
-
-
Si el bus est* libre, cual-uier nodo puede comen/ar a transmitir un mensa3e' Cuando dos nodos comien/an a transmitir simult*neamente el con
-
urante el arbitra3e todos los transmisores comparan el nivel del bit transmitido con el nivel del bus: Si los niveles son iguales, la unidad puede enviar' Si son distintos, la unidad pierde el arbitra3e y debe retirarse sin enviar otro bit'
- Capítulo
eteccin de error y se2ali/acin: n todos los nodos CAN se implementan medidas especiales para la deteccin de errores, se2ali/acin y autoFce-ueo'
VELOCIDAD. a velocidad de transmisin depende estrictamente del tipo de cable usado'
n el protocolo CAN, la prioridad de las tramas se gestiona por una colisin entre los niveles dominantes y recesivos de la l0nea' sta colisin debe resolverse durante la transmisin de un bit, lo -ue limita el tiempo de propagacin de la se2al entre dos nodos' n las siguientes tablas se especi.ca la longitud m*@ima de cable principal en +uncin del cable CANopen -ue proporciona Scneider lectric (GSHCANCA, GSHCANC y GSHCANC) Longit! "#$i"% !&' (%)'& Como consecuencia, la distancia m*@ima entre los dos nodos m*s ale3ados de un bus CAN depende de la velocidad, y se detalla en la tabla siguiente: V&'o(i!%! &n )it*+ 1 >bit?s 8"" Kbit?s !"" Kbit?s $!" Kbit?s 1$! Kbit?s !" Kbit?s $" Kbit?s 1" Kbit?s
Longit! "#$i"% !&' (%)'& $" m (J! +t) &" m (1#1 +t) 1"" m (#$8 +t) $!" m (8$" +t) !"" m (1'J&" +t) 1'""" m (#'$8" +t) $'!"" m (8'$"$ +t) !'""" m (1J'&"& +t)
Seg5n la estrategia de red de Scneider lectric, se recomienda utili/ar las velocidades 1 >bit?s, 8"" Kbit?s, !"" Kbit?s, $!" Kbit?s y 1$! Kbit?s para las soluciones de automati/acin en el nivel de m*-uina y de instalacin' NOTA: a longitud m*@ima asume un tiempo ra/onable de propagacin interna del dispositivo y punto de muestra de bit' os dispositivos -ue presenten tiempos largos de propagacin interna reducir*n por este motivo la longitud m*@ima del cable -ue de otra manera se podr0a alcan/ar'
as longitudes de cable de la tabla anterior pueden incluir un cable de derivacin si est* en el e@tremo +0sico del cable principal' ALCANCES. TOPOLO,ÍA To-o'og% )#+i(% g&n&/%': a red CANopen consta de una l0nea de transmisin -ue debe estar terminada en ambos e@tremos +0sicos con resistencias de terminacin' 7na ca3a de derivacin en combinacin con cables de derivacin +orman una topolog0a en estrella parcial' ;ara minimi/ar los re
To-o'og% (on n /&-&ti!o/ ,&n&/%' a red CANopen puede estar compuesta por un 5nico segmento o por varios segmentos conectados entre s0 mediante un repetidor CAN' E0&"-'o !& to-o'og% (on /&-&ti!o/ n la siguiente ilustracin se muestra un e3emplo de topolog0a -ue incluye un repetidor:
1n(ion&+ !&' /&-&ti!o/ ;roporciona una actuali/acin de las se2ales CAN, lo -ue permite -ue aya m*s de J& nodos' ;uede proporcionar aislamiento entre el segmento' Cada uno de esos segmentos debe estar terminado' s transparente desde el punto de vista de la red, por-ue simplemente reenv0a las se2ales CAN' sto -uiere decir -ue los dispositivos conectados al bus participan en el mismo arbitra3e' No permite aumentar la longitud total del cable' ;ara conocer la longitud m*@ima de cable permitida, consulte la tabla ongitud m*@ima del cable' •
•
En(%!&n%"i&nto !&' (%)'& l encadenamiento del cable de un nodo al siguiente se reali/a mediante los conectores de cable de dos +ormas di+erentes: Conectando dos cables al mismo conector de cable' sta t4cnica, ampliamente utili/ada, permite desconectar el conector de cable del dispositivo (por e3emplo, para sustituir el dispositivo) sin interrumpir la red' Conectando los dos cables a conectores de cable individuales en los dispositivos -ue proporcionan dos conectores de cable (nodo ! en el e3emplo anterior)' a t4cnica de encadenamiento se utili/a especialmente en dispositivos de alta proteccin (por e3emplo, dispositivos I;JL) o en sistemas de cableado optimi/ados en el armario' To-o'og% ,&n&/%' 7na red global CANopen se puede dividir en subredes m*s o menos independientes mediante un puente CAN' E0&"-'o !& to-o'og% (on -&nt& n la .gura siguiente se muestra un e3emplo de topolog0a -ue incluye un puente:
1n(ion&+ !&' -&nt& 7n puente: Separa la red global CAN en subredes m*s o menos independientes' ;roporciona un arbitra3e individual para cada subred' ;roporciona la posibilidad de -ue cada subred tenga su propia velocidad de transmisin' Se basa en el principio de guardar y reenviar, es decir, los mensa3es CAN se reciben por una subred y se reenv0an a otra subred' ;ermite utili/ar reglas de .ltrado y traduccin' ;ermite -ue se realice adaptacin de protocolos entre las subredes' •
• •
•
• •
A di+erencia del repetidor CAN, el puente CAN permite ampliar el tama2o m*@imo de la red' C%+(%!% !& (%0%+ !& !&/i2%(i3n ,&n&/%' No se permite la cascada de ca3as de derivacin de las redes CANopen por-ue podr0a da2ar la caracter0stica de la l0nea de transmisin' E0&"-'o !& (%0%+ !& !&/i2%(i3n &n (%+(%!% n la ilustracin siguiente se indica -ue las ca3as de derivacin en cascada no est*n permitidas en las redes CANopen:
To-o'og% (on 4&nt& !& %'i"&nt%(i3n &$t&/n% ,&n&/%' ;ara proporcionar alimentacin a los nodos de la red CANopen, se puede conectar una +uente de alimentacin e@terna a una ca3a de derivacin' E0&"-'o !& n% /&! (on 4&nt& !& %'i"&nt%(i3n &$t&/n% n la ilustracin siguiente se muestra un e3emplo de topolog0a con +uentes de alimentacin e@ternas:
C%0%+ !& !&/i2%(i3n !& %'i"&nt%(i3n 6ay disponibles dos tipos de ca3as de derivacin de +uente de alimentacin: Ti-o !& (%0% !& !&/i2%(i3n
Ca3a de derivacin m5ltiple de alimentacin Ca3a de derivacin de alimentacin
1n(i3n
proporciona la alimentacin a los cables de derivacin proporciona la alimentacin al cable de salida y, por consiguiente, a los nodos siguientes
No!o+ %'i"&nt%!o+ &n &' &0&"-'o %nt&/io/ $y#
!yJ
S&5%'&+ !& %'i"&nt%(i3n
a alimentacin es transportada por las se2ales CANB=M y CANBN' ;uesto -ue esas se2ales se proporcionan en cables CAN est*ndar, no se necesitan cables especiales para la +uente de alimentacin' R&&n2o !& %'i"&nt%(i3n % t/%26+ !&' (%)'& ;ara reenviar la alimentacin a trav4s del cable, se necesita -ue la se2al CANB=M est4 conectada en el conector del cable de cada nodo, incluso si el respectivo nodo no usa la alimentacin sino -ue la reenv0a al nodo siguiente' Not%: os repetidores, los puentes y los cables D&! no reenv0an la se2al CANB=M en absoluto' ;ara obtener m*s in+ormacin sobre la distribucin de la alimentacin por la red, consulte la seccin imitaciones de la capa +0sica TRAMAS. T/%"% SDO
n Co, todoslosdatosdeunatrans+erenciadeSOsetransmitenatrav4sdetramas deSO' as tramas tienen la estructura siguiente: Jbytes >ailbo@ 6eader
$ bytes Co 6eader
>andatory 6eader
1 bytes
$
1bytes
& bytes ata
SO Inde Subind Control @ e@ yte Standard CANopen SO Erame
1 ''' n bytes ata optional
Grama SO: estructura de los telegramas: Co"-on&nt& >ailbo@ 6eader
Co 6eader SO Control yte Inde@ Subinde@ ata ata (optional)
D&+(/i-(i3n atos para la comunicacin de correo electrnico (longitud, direccin y tipo) Identi.cador del servicio Co Identi.cador de una orden de lectura o de escritura Pndice principal del ob3eto de comunicacin CANopen' Sub0ndice del ob3eto de comunicacin CANopen Contenido de datos del ob3eto de comunicacin CANopen Otros datos opcionales. El controlador de motor CMMP-AS-...-M3 no es compatible con esta opción, ya que solo pueden activarse obetos CA!open est"ndar. El tama#o m"$imo de dic%os obetos es 3& bits.
;ara transmitir un ob3eto CANopen est*ndar a trav4s de una trama SO de estas caracter0sticas, la trama SO CANopen se encapsula en
una trama SO terCAG y se transmite a continuacin' as tramas SO CANopen est*ndar pueden utili/arse para:
'niciali(ar la descar)a de S*O *escar)ar el se)mento de S*O. 'niciali(ar la subida de S*O. Subir el se)mento de S*O. Cancelar la trans+erencia de S*O. S*O upload e$pedited request. S*O upload e$pedited response. S*O upload se)mented request m"$. se)mento con datos tiles de / bytes0. S*O upload se)mented response m"$. se)mento con datos tiles de / bytes0.
l controlador de motor C>>;%AS%'''%># es compatible con todos los tipos de trans+erencia indicados m*s arriba' ;uesto -ue cuando se utili/a la implementacin Co del C>>;%AS%''%># solo se pueden activar ob3etos CANopen est*ndar cuyo tama2o est* limitado a #$ bits (& ytes), Qnicamentesoncompatibleslostiposdetrans+erenciasconunalongitudm *@imadedatosde asta #$ bits (& bytes 0. T/%"% PDO os ob3etos de datos de proceso (;O) sirven para e+ectuar la transmisin c0clica de datos de valores nominales y reales entre master y slave' l master los debe con.gurar en el estado ;re% Operational antes de poner en +uncionamiento el slave' A continuacin se transmiten en tramas ;O' as tramas tienen la estructura siguiente: n Co, todos los datos de una trans+erencia de ;O se transmiten a trav4s de tramas ;O' as tramas tienen la estructura siguiente: 7 ... n )8t&+ 7 ... n )8t&+ ;rocess ata ;rocess ata Standard CANopen ;O optional Erame Grama ;O: estructura de los telegramas Co"-on&nt& ;rocess ata
;rocess ata (optional)
D&+(/i-(i3n Contenido de los datos del ;O (;rocess ata Ob3ect) Contenido de datos opcionales de otros ;O
;ara transmitir un ;O a trav4s del protocolo Co terCAG, los ;O de transmisin y ;O de recepcin se deben asignar a un canal de transmisin del Sync >anager, adem*s de a la con.guracin de ;O (;O >apping) (cap0tulo &'!'1 Con.guracin de la inter+a/ de comunicacin)' l intercambio de datos de ;O para el controlador de motor C>>;%AS%'''%># tiene lugar e@clusivamente a trav4s del protocolo de telegramas de datos de proceso terCAG'
l controlador de motor C>>;%AS%'''%># no es compatible con la transmisin de los datos de proceso CANopen (;O) a trav4s de la comunicacin a c0clica (protocolo de telegramas de correo electrnico)' ;uesto -ue en el controlador de motor C>>;%AS%'''%># todos los datos intercambiados a trav4s del protocolo Co terCAG se env0an directamente a la implementacin CANopen interna, el ;O tambi4n se mapea de la manera descrita en ;O%>essage' n la .gura siguiente se muestra el procedimiento:
T/%"% !& &"&/g&n(i% A trav4s de la trama de emergencia Co terCAG se intercambian mensa3es de error entre el master y el slave' as tramas de emergencia Co sirven para transmitir directamente los mergency >essages (mensa3es de emergencia) de.nidos en CANopen' os telegramas CANopen se pasan por el t5nel de tramas de emergencia Co, como en el caso de la transmisin de SO y ;O' Jbytes
$ bytes
$ bytes
>ailbo@ Co 6eader 6eader >andatory 6eader
rror Cod
1bytes
! bytes ata
rror Degiste Standard CANopen mergency Erame
1 ''' n bytes ata optional
mergency Erame: estructura de los telegramas' Co"-on&nt& >ailbo@ 6eader
Co 6eader rrorCode rror Degister ata ata (optional)
D&+(/i-(i3n atos para la comunicacin de correo electrnico (longitud, direccin y tipo) Identi.cador del servicio Co Error Code del EME12E!C Messa)e de CA!open
rror Degister del >DNCR >essage de CANopen Contenido de datos del >DNCR message CANopen Otros datos opcionales. Puesto que en la implementación CoE
para el controlador de motor CMMP-AS-...-M3 solo son compatibles las tramas de emer)encia CA!open est"ndar, el campo 4*ata optional05 no se utili(a.
ado -ue en este caso tambi4n tiene lugar una simple entrega al protocolo CANopen implementado en el controlador del motor de los mergency >essages recibidos y enviados a trav4s de Co'
¿CUÁNTOS B9TES DE TRANSMISIÓN? VELOCIDAD DEL MOTOR EN 7 BITS
Dango de % #$LJ8 a #$LJL ;ropiedades: DO rupo de acceso v0a 6>I: NG
;adrn =alores
escripcin: ;ermite monitorear la velocidad del motor' sta palabra utili/a resolucin de 1# bits con se2al para representar la rotacin sincrnica del motor: ;"J81 """" (" decimal) velocidad del motor " ;"J81 $""" (819$ decimal) velocidad del motor rotacin sincrnica =alores de velocidad intermediarios o superiores pueden ser obtenidos utili/ando esta escala' ;or e3emplo, para un motor de & polos y 18"" rpm de rotacin sincrnica, caso el valor le0do sea $"&8 ("8""), para obtener el valor en rpm se debe calcular: 8;& 7< 899 rpm &9/8 7< 6elocidad en rpm 6elocidad en rpm 7 899 :&9/8 8;&
=elocidad en rpm &!" rpm
;ermite programar el valor de la velocidad m0nima y m*@ima para el convertidor' Solamente valores positivos son aceptos, sin embargo los valores programados tambi4n son v*lidos para el sentido de giro anti orario' os valores son escritos en rpm' Pndice
J"&J
Nombre Ob3eto Gipo ;ar*metros utili/ados Sub0ndice escripcin Acceso >apeable Dango =alor ;adrn Sub0ndice escripcin Acceso >apeable Dango =alor ;adrn Sub0ndice escripcin Acceso >apeable Dango =alor ;adrn
vl velocity min amount ADDAR 7NSIN#$ ;"1##, ;"1#&
ma@
" N5mero do 5ltimo sub% 0ndice ro No $ $
1 vl velocity min amount rT Si 7NSIN#$ %
$ vl velocity ma@ amount rT Si 7NSIN#$ %
APLICACIÓN. CANopen especi.ca el nivel de aplicacin, resultando una ar-uitectura simpli.cada con slo tres capas, muy com5n en los buses de campo' n la pr*ctica no signi.ca -ue las capas intermedias est4n totalmente vac0as, sino -ue la mayor parte de los servicios -ue o+recen no tienen utilidad para un bus industrial' a solucin es aligerar la implementacin suprimiendo esas capas y trasladando los servicios necesarios a la capa superior, -ue es la de aplicacin' BIBLIO,RA1ÍA : •
•
•
• •
CANopen % UiKipedia, la enciclopedia libre CiA (CAN in Automation)' ttp:??TTT'can%cia'org? (Qltima ve/ visitado: $L?J?$""L) CANopen Da-uel S*nce/ 0a/? epartamento de In+orm*tica y Autom*tica Eacultad de Ciencias?7niversidad de Salamanca >anual del 7suario CANopen ? Serie: CEUL"" ?Idioma: spa2ol Inter+aces CANopen % National Instruments