Vroeger werd alles bestuurd met op maat gemaakte bekabeling en eigen dataformaten. In ieder geval in de industriële wereld zijn dit soort dingen al lang verleden tijd: nu zijn complete systemen gebaseerd op volledig uitgeruste busarchitecturen. Naast de voor de hand liggende voordelen dat dit eenvoudiger te onderhouden en uit te breiden is, zijn er nog andere redenen om de voorkeur te geven aan een dergelijke aanpak. Zo zorgt een wijdverspreide industriestandaard er bijvoorbeeld voor dat hardware- en softwarecomponenten op de lange termijn beschikbaar zijn, althans tot op zekere hoogte. In dit artikel kijken we naar AS-Interface.

 

Figuur 1:
De hiërarchische niveaus van een industrieel automatiseringssysteem.

De aanpak voor het automatiseren van complexere productieprocessen kan worden gezien als een reeks lagen zoals geïllustreerd in Figuur 1. Op het onderste niveau vinden we de sensoren en actuators. Om redenen van kosten en efficiëntie moeten we voor de communicatie met deze apparaten gebruik maken van Ethernet-achtige bekabeling: korte-afstandsverbindingen met protocollen zoals SPI of I2C zijn vaak niet geschikt voor de barre omgeving van een industriële installatie [1].

Twee wijdverspreide technieken voor het verbinden van sensoren en andere apparaten zijn AS-Interface (actuator-sensor interface, ook bekend als ASi) en het IO-Link protocol, gestandaardiseerd onder de naam SDCI en aanbevolen voor gebruik in PROFIBUS omgevingen. Het belangrijkste voordeel van AS-Interface is dat een master met veel slaves kan communiceren via een enkele poort. IO-Link daarentegen vereist normaal gesproken een aparte poort en kabel voor elke slave. In de Engelstalige wereld wordt IO-Link over het algemeen geschikter geacht voor gebruik in systemen waar grote hoeveelheden gegevens moeten worden verzonden.

Houd er rekening mee dat ASi en IO-Link tot op zekere hoogte naast elkaar kunnen bestaan. Bijvoorbeeld, het systeem van Bihl+Wiedemann dat in Figuur 2 wordt getoond en in detail wordt beschreven in [2] gebruikt IO-Link om informatie te verzamelen; de samengestelde datagrammen worden dan doorgegeven aan de master met behulp van ASi.
 

Figuur 2: Van Fieldbus naar sensoren en actuators (bron).


Welke versie?

AS-Interface is in 1990 ontstaan uit de vorming van een groep bedrijven onder de naam 'AS-International Association', een soort belangengroep. Deze groep bezit de rechten op de naam 'AS-Interface' en verkoopt producten gebaseerd op de officiële standaard. Als je overweegt lid te worden van de groep, houd er dan rekening mee dat het lidmaatschap je zo'n €4000 per jaar kost.

Als je alleen de standaard wilt bekijken, is er een meer betaalbare weg beschikbaar: AS-Interface wordt gespecificeerd via een bundel industriële normen, waarvan EN 62026-2:2015 veruit de populairste is. Dit normdocument kan via de officiële kanalen worden verkregen voor slechts €250. Als je persoonlijk onderzoek wilt doen, is het ook mogelijk om het document te vinden in de bibliotheek van een plaatselijke technische hogeschool of universiteit; en als dat niet lukt, kan interbibliothecair leenverkeer of een geschikte institutionele bibliotheek je misschien helpen.

Een mogelijke complicerende factor om grip te krijgen op al deze materialen is dat er momenteel twee versies van ASi op de markt zijn. Hiervan is alleen versie 3.0 in belangrijke mate beschikbaar, zowel qua specificaties als qua hardware. Sinds de beurs 'SPS IPC Drives 2018' wordt versie 5.0 echter breed onder de aandacht gebracht: de nieuwe versie verbetert de oude op verschillende details.

Hoewel dergelijke ontwikkelingen op zich heel normaal zijn, is een knelpunt dat de exacte specificatie voor versie 5.0 van het protocol op het moment van schrijven niet beschikbaar is voor alle leden van de vereniging. Volgens insiderinformatie is de informatie alleen beschikbaar voor degenen die direct betrokken zijn bij de ontwikkeling van het protocol.

Dit levert een interessant resultaat op. Transceiver IC's voor versie 3.0 (waarover hieronder meer) zijn afkomstig van het bedrijf ZMD, dat vervolgens werd opgekocht door IDT en dat op zijn beurt weer werd opgeslokt door Renesas. Vandaar dat Renesas de partner is die werkt aan ondersteuning voor versie 5.0, en dus kunnen ze verkondigen 'we implementeren alle protocollen'.

De ASi-kabel

Een fundamenteel aspect van de implementatie van de 'multidrop' mogelijkheid van ASi ligt in de constructie van de kabel. Er zijn twee geleiders in de kabel die de signalen AS+ en AS- voeren. Hier is AS- de 'massa' verbinding ten opzichte waarvan AS+ het positieve datasignaal doorgeeft. Het is echter in geen geval toegestaan om het AS- signaal met aarde te verbinden.

In werkelijke installaties zijn de ASi-kabels bijna altijd geel van kleur. De asymmetrische vorm in Figuur 3 is kenmerkend, de vorm van de doorsnede doet denken aan een neus. Een optionele zwarte kabel met dezelfde constructie kan worden gebruikt om extra stroom te leveren aan apparaten op de bus.

Figure 3: Cross-section of an ASi cable (conductor diameter 1.8 mm).
The ‘nose’ shape prevents accidental reverse-polarity connection.
(Image: after Bihl+Wiedemann).

De meeste ASi-apparaten hebben connectoren voor een kabel van het type dat in Figuur 3 wordt getoond, voorzien van tanden die de isolatie van de kabel doorboren wanneer de connector wordt aangebracht om een elektrische verbinding te maken met de twee geleiders binnenin. Het toevoegen van een nieuw apparaat aan een ASi bus is daarom redelijk eenvoudig en 'failsafe'. Hoewel dit ontwerp gebruikelijk en praktisch is, is het mogelijk om de ASi bus met andere soorten kabels te gebruiken.

Wanneer sensoren rechtstreeks worden aangesloten op microcontrollersystemen die de 1-draads bus gebruiken, is het mogelijk dat apparaten met een laag vermogen hun voeding rechtstreeks uit het bussignaal halen. Hetzelfde geldt voor AS-Interface apparaten: de nominale busspanning is 24 V en volgens de specificatie kan de bus in theorie tot 8 A voeren. In de praktijk is het echter aan te raden om de stroomopname onder de 2 A te houden om de spanningsverliezen in de bekabeling en connectoren binnen de perken te houden.

Een belangrijk punt is dat de signalen van de AS-interface niet op een vast potentiaal ten opzichte van aarde staan. Zoals hierboven vermeld, is het expliciet verboden om de kabel te aarden. Naast ASi slave apparaten aangesloten op een netwerk is het ook mogelijk om apparaten te gebruiken die de bus alleen als voedingsbron gebruiken. Ze kunnen tot 400 mA trekken bij 24 V, maar krijgen geen adres toegewezen en nemen niet deel aan de communicatie. Omdat een ASi bus tot 100 m lang kan zijn (en met een geschikte afsluiting zelfs tot 300 m), is het ook een handige manier om 'vreemde' systemen met een bescheiden stroombehoefte van stroom te voorzien. Zulke apparaten worden gewoon aangesloten op AS+ en AS- en gaan dan verder met wat ze ook doen.

Een ASi systeem wordt normaal gesproken gevoed door een speciale voeding, waarvan de constructie wordt geïllustreerd in Figuur 4. Het zelf ontwerpen en bouwen van een voeding van dit type voor een professionele toepassing wordt sterk afgeraden: op de website van de ASi association staan links naar veel bedrijven die je graag voldoende gecertificeerde producten verkopen.
 

Figuur 4: De PELV-voeding heeft een relatief complexe interne constructie (bron).

Het is interessant om op te merken dat de voeding een DC uitgang moet leveren tussen 29,5 V en 31,6 V. Dit niveau, iets meer dan 24 V, is nodig om spanningsverliezen in kabels en connectoren te compenseren. De hoge mate van ongevoeligheid voor ruis die het ASi systeem biedt, is geen vrijbrief voor slordige of ongeorganiseerde bekabeling. Als een ASi-kabel in dezelfde kabelgoot wordt gelegd als netkabels met power-line communicatie, is het in sommige omstandigheden mogelijk dat het netwerk last krijgt van interferentie die moeilijk te verwijderen is. Een presentatie van Phoenix Contact geeft verder advies over hoe een installatie te regelen.

Communicatie

Uit de kabelconstructie in Figuur 3 blijkt duidelijk dat er geen aparte aansluitingen zijn voor voeding en data. Hieruit volgt dat voordat een ontvanger een bericht kan verwerken, het signaal moet worden getransformeerd of gedemoduleerd.

Gegevens worden verzonden met APM (alternating pulse modulation). Dit is een schema gebaseerd op Manchester codering, waarbij de dataklok en de te verzenden bitstroom worden gecombineerd. Vervolgens wordt het Manchester-gecodeerde signaal gebruikt om een stroom te moduleren om de gegevens te verzenden. Volgens de vrij beschikbare informatie ligt de amplitude van deze modulatie tussen nul en 60 mA.

Negatief verlopende flanken worden weergegeven door een stijging van de verzonden stroom en positief verlopende flanken door een daling. Vanwege de inductie van de kabel worden deze stroomveranderingen omgezet in spanningsimpulsen, met uitschieters van ongeveer ±2V rond de nominale voedingsspanning. Het is belangrijk op te merken dat het begin van een datagram altijd gemarkeerd wordt door een negatieve puls: dit is van belang voor het triggeren van digitale oscilloscopen en signaalanalysers.

Helaas hebben de gebruikelijke makers van oscilloscopen tot nu toe weinig interesse getoond in het inbouwen van kant-en-klare ASi protocol decoders in hun producten. Alleen de reeks apparaten van Pico Technology ondersteunt het protocol, maar zelfs dan niet direct: een tool van een ander merk gebruikt de API om analysefuncties te bieden.

Als je een ASi-apparaat wilt bouwen, is het niet echt praktisch om de decoderhardware zelf te implementeren. Het hierboven genoemde bedrijf IDT biedt de ASI4U transceiver chip, die geconfigureerd kan worden om als master of als slave te werken. Figuur 5 toont de basisschakeling, overgenomen uit het datasheet.
 

Figuur 5: De transceiverchip heeft zeer weinig externe onderdelen nodig (bron).

Bijzonder opmerkelijk zijn de twee lichtgevende diodes, die volgens het datasheet van IDT groen en rood zijn. De ASi busspecificatie vereist dat deze LED's aanwezig zijn op slave-apparaten en ze geven informatie over de huidige operationele status. Meer informatie hierover is te vinden in het datasheet van het apparaat.

De pinnen DIx en DOx zijn in- en uitgangen. Als een module die de transceiver gebruikt in slave-modus werkt, dan worden hier de gegevens beschikbaar gemaakt die over de bus zijn verzonden. De pinnen met het label Px worden gebruikt om parameters te configureren en zijn vooral belangrijk in de master-modus, waar we hier niet op ingaan.

De communicatiestandaard

Nu we de onderliggende elektrische eigenschappen van een ASi systeem hebben begrepen, kunnen we ons richten op de logica achter het communicatieformaat. Alle communicatie staat onder de strikte controle van de master, die een cyclisch polling proces uitvoert waarbij hij elke individuele slave die op de bus is aangesloten om de beurt ondervraagt. Elke slave antwoordt normaal gesproken met een payload van vier bits. Als een cyclus is voltooid, begint hij weer van voren af aan: zie Figuur 6.

Figuur 6: Dataformaat van een ASi-bericht (bron).

Het formaat van het adres bepaalt het maximum aantal apparaten op de bus. In 'normale' datagrammen zijn er slechts vijf adresbits beschikbaar en adres nul is gereserveerd voor een nieuwe slave. Er blijven dus 31 beschikbare waarden over voor adresseerbare slaves. Een nieuw slave-apparaat, dat aanvankelijk adres nul heeft, krijgt van de master een nieuw adres toegewezen uit de beschikbare pool.

Een gevolg van het cyclisch pollen is dat de responstijd van een ASi systeem vast bepaald is. In ASi 3.0 is de responstijd normaal ongeveer 5 ms, terwijl de nieuwere versie 5.0 met 24 busdeelnemers een cyclustijd van slechts 1,2 ms belooft. Ook is het maximale aantal slaves in ASi 5.0 aanzienlijk groter, namelijk 96.

Het is vooral belangrijk om te weten dat zowel data als parameters kunnen worden verzonden. Een van de informatiebits geeft aan welk type informatie op de bus wordt verzonden. De controlebit geeft aan of er een adres of een commando volgt.

Hoe nu verder?

Als je aan een bestaand ASi-systeem gaat werken, of als je een nieuw ASi-systeem wilt (of moet) bouwen, is het belangrijk om verstandig na te denken. Je eigen modules en sensoren ontwikkelen klinkt misschien leuk, maar in de praktijk is het niet economisch. Er zijn veel bedrijven die op dit gebied actief zijn en ze bieden praktisch elk denkbaar type sensor en actuator met een AS-interface. Het is veel efficiënter om je complete systeem samen te stellen uit deze componenten en het, samen met ondersteunende adviesdiensten, aan klanten te verkopen.

Als het bovenstaande je niet afschrikt en je toch wilt experimenteren met ASi, dan ontkom je er niet aan om vroeg of laat lid te worden van de standaardisatieorganisatie. De standaard bevat alle benodigde informatie en volgens oemsecrets.com is de ASI4U transceiverchip beschikbaar op de vrije markt, maar houd daarbij rekening met het volgende.

Het probleem heeft te maken met intellectuele eigendomsrechten. Als je zonder expliciete toestemming de term 'ASi' of het ASi logo gebruikt, kom je al snel in juridisch heet water terecht. En als je probeert je systeem op de vrije markt te verkopen, is het slechts een kwestie van tijd voordat iemand bij je komt aankloppen.

Deze situatie is niet bepaald bevredigend voor hobbyisten die in het lab willen experimenteren. Aan de andere kant kan het werken met ASi-systemen op de langere termijn zeer lucratief blijken, omdat de salarissen voor ontwikkelaars en consultants in industriële automatisering over het algemeen relatief hoog zijn: dat is misschien een beetje compensatie voor alle formaliteiten en rompslomp.

 

Literatuur:

[1] J. M. Jacob, Industrial Control Electronics, page 260 ff.: 
 

Webinar

Een kort overzicht van de basisprincipes van de ASi standaard is te vinden op het YouTube-kanaal van Pepperl+Fuchs. 

Het lezen van het datasheet is niet verplicht!

Wegens ruimtegebrek kan dit artikel slechts een globaal overzicht geven van de ASi-standaard. Voordat je praktische stappen onderneemt, raden we je daarom aan om de datasheet van het IDT ASI4U product zorgvuldig te bestuderen.

 Wil je meer artikelen van ElektorLabs lezen? Word nu Elektor-lid!


Vertaling: Hans Adams

(190124)