Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Ruter

Modbus TM-FLOW

Modbus CODESYS

Vi valgte å koble opp en egen ruter for å opprette et LAN som Wago PLS-en og roboten kunne kobles til. Da blir det også mulig å koble seg til systemet med PC-en trådløst, på det lukkede nettverket.

Videre måtte vi grave oss inn i kommunikasjonsoppsettet til modbus MODBUS protokollen. Det var mange manualer fra både CodeSys sin side:

 og TM FLOW:


For å kunne finne roboten måtte man ha en eldre versjon av TM FLOW, altså system versjon 1.88.2400.



Etter mange timer med prøving og feiling ble det endelig forstått hvordan oppsettet på Modbus dataen skulle legges inn.

I CODESYS blir det lagt inn

  • Holding registers for å lese data (DWORDWORD) fra OMRON PLS-en inn til WAGO-en
  • Coils for å lese BOOLsende BOOL Coil/booleans
  • Input registers for å sende DWORDDiscrete inputs for å sende BOOL WORD

For å sette innstillinger for variablene måtte det settes opp slik. Antallet avhenger av hvor mange variabler man trengervil sende over MODBUS:

Image Modified

Holding registers

For å lese inn inn holding registers data måtte variablene deklareres slik som i den øverste figuren ,og bli koblet til en variabel i et kjørende program (kan ikke bare mappes direkte til en global variabel).

Image RemovedImage Added

For variabler som skal sendes til OMRON kan de bare mappes til variabelen.


Input register

Input registers blir brukt til å sende variabler i WORD format fra Wago PLC. Disse er relativt simple å sette opp og krever bare at man mapper variablene til det registeret det skal sendes på. Ettersom en setter det til WORD (16 bit)  må en passe på at variablene blir konvertert riktig når det skal sendes. I vårt tilfelle ble INT_TO_WORD brukt, siden robotkoordinatene var i mm, og vi ikke trengte høyere oppløsning en hele tall.

Coil/booleans

Coil/booleans

For å sende BOOL må en variabel deklareres til typen byte og bli koblet til en coil som vist under.

Image Added


Image Added

Deretter må en aktivere enkelte bits i byte variabelen. Det går ikke an å koble en enkelt bit til en BOOL uten å mappe til en byte.


Selve programstrukturen må se slik ut, med Ethernet porten og ei Slave lagt til i devices:

Image Added

Ruter Setup

Image Removed

Ressurser