0

Koppeling Modbus adressen -> PLC adressen

Michel Smeysters 8 years ago in Tips en Trucs updated by Dirk Moonen 8 years ago 3

Dag iedereen,


Ik ben nieuw op iRidium en ben bezig met mijn eerste project.

Ik heb een Beckhoff PLC CX8090 en kan via Modbus communiceren naar iRidium. Nu heb ik via de wiki, voorbeeld programma's en het forum al wat info gevonden ivm het programmeren van de software. Maar toch heb ik moeite met het aanspreken van mijn variabelen in de PLC. Ik heb namelijk weinig tot geen ervaring met modbus TCP....

Het volgende is me al gelukt:


Voor het opvragen van de status van Merkers heb ik het volgende gevonden:

ModbusTCP: commands:

Image 11992

De naam verwijst naar mijn MW0 in de PLC (als geheugensteun)


Drukknop om M0.0 te activeren bij drukken:

Image 11993

Instelling:

Image 11994

Send nummer 1 (dec) -> bin 0000 0001 en komt dus overeen met M0.0


Drukknop om M1.0 te activeren bij drukken:

Image 11995

Instelling:

Image 11996

Send nummer 256 (dec) -> bin 0000 0001 0000 0000 en komt dus overeen met M1.0


Het lukt mij echter niet om rechtstreeks inputs en outputs te bereiken...


Kan er iemand voor mij een concreet voorbeeld geven hoe ik bepaalde adressen kan opvragen/sturen?

De ingangen van men PLC beginnen vanaf I19.0, de uitgangen vanaf Q19.0.

Alvast bedankt op voorhand


Michel

Hier nog wat screenshots van Twincat System Manager:


Overzicht:

Eerste input kaart: Term 2


Eerste output kaart: Term 6


Eerste dimmer kaart: Term 11


Laat maar weten als ik nog info moet geven


Michel

Aan onze Nederlandse klanten: kan iemand Michel helpen met zijn probleem?

Hoe gaat de translatie voor Beckhoff inzake de te gebruiken registers?

Graag reactie!

Theo Derks

Michel,


Modbusmerkers beginnen in beckhoff van adres 12288, deze merkers moet je dan in je beckhoff programma verwerken voor de sturing van uitgangen (parallel over de ingangen). Uitgangen beginnen vanaf modbusadres 0. Dus de eerste uitgang in je global variabele = modbusadres 0. Het Ip adres van modbus is het ip adres van je beckhoffplc


Voor de merkers van modbus mag je deze niet vergeten in je global variables te declareren

bv

Schakelaar1_iridium AT%MX0.0 :BOOL;
Schakelaar2_iridium AT%MX2.0 :BOOL;


de uitgangen van modbus daarentegen niet, deze kan je zo oproepen....


Hopende U hiermee geholpen te hebben


Dirk Moonen