Pagina 37 van: Aandrijftechniek – nummer 2 – 2018

www.AT-aandrijftechniek.nlMAART 2018 AT AANDRIJFTECHNIEK 37
TECHNIEK Besturingen
van de module. Dit is een tekst- of een
XML file, waarin alle communicatie en I/O-
parameters zijn vastgelegd. In ons geval
hebben we de EDS in tekstformaat opge-
tekend.
De specificatie van de I/O in de EDS noe-
men we het Device Profile. Het meest ge-
bruikte Device Profile in CANopen is
CiA 401. Dit kan worden gebruikt voor alle
eenvoudige digitale en analoge in- en uit-
gangen. Hierbij ligt dan wel de hardware-
configuratie vast. Onze module kent ech-
ter een flexibele I/O architectuur, die met
een Basic commando vastgelegd kan wor-
den. Daarom hebben we besloten geen
gebruik te maken van een standaard I/O
profile, maar van het zogenaamde custom
profile.
Custom profile
In de meeste device-profielen is een in-
dexnummer van de Object Dictionary ge-
koppeld aan een type I/O. Wij hebben dit
in ons custom profile omgedraaid: het
nummer is gekoppeld aan de fysieke I/O-
pin. We hebben in principe 22 I/O-pinnen
tot onze beschikking. Dit resulteert dan
ook in 22 indexen. In de sub-indexen vin-
den we dan de waarden terug, maar ook
de configuratie. In principe kunnen we op
deze manier tijdens gebruik de functie
van een I/O-pin wijzigen. We doen bij-
voorbeeld eerst een aantal analoge me-
tingen voor kalibratie en stellen daarna
de meting in op analoog maximum, zodat
alleen een bericht verstuurd wordt als het
maximum overschreden wordt.
Als ingang kunnen we configureren:
• standaard analoog (0 – 3,3 V)
• delta analoog (alleen bij afwijkingen
groter dan vooraf ingestelde waarde)
• maximum analoog (alleen bij overschrij-
ding vooraf ingestelde waarde)
• minimum analoog (alleen bij onder-
schrijding vooraf ingestelde waarde)
• standaard digitaal (0/1)
• frequentie (0 – 100 kHz)
• delta frequentie (afwijking ten opzichte
van vorige meting)
• periode (0 – 1.000.000 µs)
• delta periode (afwijking ten opzichte
van vorige meting)
• teller (0 – 1.000.000)
• interrupt van laag naar hoog (lokale
routine hiermee te activeren)
• interrupt van hoog naar laag (idem)
• motion/jam detectie (alleen als gedu-
rende ingestelde tijd geen verandering)
• batch counter (alleen als vooraf inge-
stelde counter is bereikt)
Speciale CANopen scripts, gemaakt in eigen scripttaal completeren de applicatie.
Als uitgang kennen we:
• standaard digitaal
• open collector digitaal
• PWM (pulsbreedte gemoduleerd signaal
voor analoge uitgang)
• open collector PWM
Met name vanwege het grote aantal ver-
schillende configuraties en de mogelijke
mix hiervan is deze CANopen slave mo-
dule zeer flexibel in te zetten. De functio-
naliteit is een mix van hardware gerela-
teerde mogelijkheden, in de C-firmware
ingestelde zaken en de Basic programma-
tuur.
De ontwikkelomgevingen
De eindgebruiker kan de module direct
inzetten en met een CANopen configura-
tieprogramma alles instellen. Er is geen
programmeerervaring hiervoor vereist.
De eindgebruiker, die iets meer wil, kan
een pc aansluiten op de lokale USB poort
en middels een terminal programma de
Basic programmatuur bekijken en direct
aanpassen.
Voor de OEM-gebruiker kan het interes-
sant zijn om ook de gebruikte CANopen
scripts nog aan te passen. Daarvoor kan
er een licentie verkregen worden om op
de online ontwikkelomgeving te komen.
De aangepaste scripts kunnen dan ook
weer op de module geladen worden.
Tenslotte is er natuurlijk voor de specialist
altijd de mogelijkheid om in de low-level
C-programmatuur te duiken. Hiervoor is
een source code licentie beschikbaar.
Van project naar product
Functioneel is hiermee onze CANopen
slave module gereed. In principe kan er
nog wel een en ander verder geoptima-
liseerd worden. Zo zijn momenteel wel
alle CANopen communicatie-objecten in
ons sneller scripttaaltje gerealiseerd,
maar geschiedt het scannen van alle I/O
nog wel in Basic. Dit zouden we ook nog
in een script kunnen onderbrengen. De
scanloop is nu ingesteld op 100 ms. Dit
zouden we kunnen versnellen tot 10 ms.
Bovendien moeten de zogeheten EMCY-
berichten, evenals andere foutmeldin-
gen, nog verder uitgewerkt worden.
Echter ook als dat allemaal gerealiseerd
is, hebben we nog nog geen direct in-
zetbaar product. De hardware moet
voorzien zijn van een behuizing. De I/O,
voeding en CANbus aansluitingen moe-
ten voorzien zijn van connectoren. Voor
toepassing in vervuilde omgevingen
moet de module misschien ingegoten
worden. Kortom, de hardware moet nog
verder afgerond worden. Om hem ver-
der als echt CANopen product geregi-
streerd te krijgen, zal hij bij CiA (CAN in
Automation) gecertificeerd dienen te
worden. Om de module als product te
verkopen zal er ook een CE goedkeuring
verkregen moeten worden. Allemaal
zaken waarbij we als ontwikkelaar graag
behulpzaam willen zijn, maar die we
niet voor eigen rekening willen opstar-
ten.
De module wordt ‘as is’ verkocht door
ABTronix. Ook als er geen direct project
voor is, kan hij goed dienen om beter
inzicht te verkrijgen over de werking van
CAN en CANopen.
www.si-kwadraat.nl
www.abtronix.com
34-35-36-37_canopen.indd 37 08-03-18 14:42