CANopen structuur

Introductie

CANopen is een gestandaardiseerde communicatieoplossing voor gedistribueerde automatiseringssystemen op basis van CAN (Controller Area Network) dat de volgende mogelijkheden biedt: Verzenden van tijd kritische procesgegevens volgens het producent/consument-principe.

  • Gestandaardiseerde beschrijving van aangesloten apparaten (gegevens, parameters, functies, programma’s) in de vorm van zogenaamde "object dictionary".
  • Toegang tot alle “objects” van een apparaat via een gestandaardiseerd verzend protocol volgens het client/server-principe.
  • Gestandaardiseerde hulpmiddelen voor apparaat monitoring (node monitoring/hartslag), foutsignalering (met noodoproep), en netwerk coördinatie (Netwerk management).
  • Gestandaardiseerde systeem hulpmiddelen voor synchronisatie (synchronisatieberichten) en centraal tijdstempel.
  • Gestandaardiseerde hulpfuncties voor configuratie, baudrate en apparaat identificatie via de bus.
  • Gestandaardiseerd toewijzingsmechanisme voor berichten ID’s voor eenvoudige systeemconfiguratie in de vorm van zogenaamde “predefined connection set”.

CANopen profielen binnen het ISO communicatie-model
CANopen Profielen in ISO-model
CANopen profielen binnen het ISO communicatie-model
CANopen Profielen in ISO-model

Specificaties

De standaardnorm CiA 301 "CANopen Application Layer and Communication Profile" beschrijft de CANopen basisspecificatie en is verkrijgbaar via de CAN-gebruikersgroep "CAN-in-Automation e.V." (CiA) in Duitsland. Het uitgebreide communicatiemechanisme is beschreven in CiA 302: "Framework for Programmable Devices", en is vooral gericht op communicatie met PLC’s, HMI’s en CANopen tools. De specificaties CiA 303, CiA 305 en CiA 306 definieren standaards en aanbevelingen voor kabels, connectoraansluitingen, SI eenheden, layer setting services (LSS) en de specificatie van de Electronic Data Sheet (EDS). Alle CANopen-specificaties zijn ontwikkeld door bedrijven die lid zijn van de CIA en zijn vrij toegankelijk. Een overzicht van de CANopen-apparaten en applicatieprofielen zijn terug te vinden in de sectie Device and Application Profiles .

Fysieke structuur van een CANopen netwerk

Bedenk dat CANopen, een standaard is die van CAN gebruik maakt en eigenlijk alleen uit software bestaat. Het veranderd de CAN-standaard dus niet. Als we in dit kader spreken over directe adressering met behulp van Node id’s, is dat enkel een software-afspraak. In werkelijkheid zal ieder deelnemende CAN-controller een dergelijke bericht ontvangen, maar bepaalt de software of op een bericht ook gereageerd wordt.

De onderliggende CAN-architectuur definieert de fysieke structuur van het CANopen-netwerk. Daarom is een lijn (bus) topologie gebruikt. Om reflecties van signalen te voorkomen, moeten beide uiteinden van het netwerk met weerstanden worden afgesloten. Bovendien dienen de maximaal toelaatbare aftak lengten voor de aansluiting van de individuele netwerkknooppunten in acht te worden genomen.

CANopen Fysiek netwerk met nodes en afsluitweerstanden
CANopen Fysiek Netwerk
CANopen Fysiek netwerk met nodes en afsluitweerstanden
CANopen Fysiek Netwerk

De aanbevolen toegestane bitsnelheden voor een CANopen netwerk zijn gedefinieerd in CiA 301: 10 kbps, 20 kbps, 50 kbps, 125 kbps, 250 kbps, 500 kbps, 800 kbps en 1000 kbps. In CiA 301 is tevens een aanbeveling voor de configuratie van de bit timing aangegeven. Bovendien wordt voor CANopen, moet aan twee aanvullende voorwaarden worden voldaan: - Alle nodes moeten worden geconfigureerd naar dezelfde bitsnelheid en - Geen enkel node-ID mag twee keer voorkomen. Helaas zijn er geen mechanismen voorzien die automatisch voor deze voorwaarden zorgen. De systeem integrator dient de bit rate en node-ID van elke node te controleren tijdens de bedrading van een netwerk en indien nodig aan te passen. Normaal gesproken wordt de node-ID direct geconfigureerd op het apparaat via DIP-schakelaars of hexadecimale draaischakelaars. Alternatieve oplossingen vereisen het instellen, via software, van deze parameters via twee gereserveerde CAN-id's met behulp van de zogenaamde "LSS-service" (layer instelling service), zoals beschreven in CiA 305. Voor een uitgebreide introductie van de systeemconcepten van CAN en CANopen verwijzen we naar de boeken, artikelen en links.

Sommige nodes beschikken over automatische baudrate herkenning. Een dergelijke (hardwarematige) herkenning is echter binnen CAN onmogelijk. Wat deze nodes doen is simpelweg alle mogelijke standaard CiA-baudrates uitproberen, totdat er daadwerkelijk communicatie plaats vindt.