Quantcast
Channel: SPS-Forum - Automatisierung und Elektrotechnik
Viewing all articles
Browse latest Browse all 47324

Diverse Werte aus SPS mit C# auslesen (BEKCHOFF/Twincat)

$
0
0
Hallo,

ich habe folgendes Problem: Ich kann nur Integer aus meiner SPS auslesen.
Für meine Aufgabenstellung benötige ich aber auch das Auslesen von BYTES, WORD, STRUCTS, BOOLEAN usw.
Also habe ich es mit dem ReadAny versucht.

So sieht mein Code in der SPS aus:
Code:

PP3_Stoermeldungen            :ARRAY[0..28] OF BYTE;
PP3_PollBereich                :ARRAY[0..6] OF WORD;
PP3_Fenster            :WORD;   
PP3_Fensterwechsel :BOOL;

usw...

So sieht mein Code für Integer auslesen aus:

SPS:
Code:

PP3_Stoermeldungen            :ARRAY[0..28] OF INT;
Visual C#:
Code:

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
           
        }
        private int int_stoermeldungen;
....

tcClient = new TcAdsClient();
            tcClient.Connect(801);

            try
            {
                int_stoermeldungen = tcClient.CreateVariableHandle(".PP3_Stoermeldungen");

....

das klappt auch alles mit Integer.

Jetzt muss ich das selbe mit den anderen Daten machen. Dazu habe ich gelesen, man kann ReadAny benutzen. Schön und gut, aber klappt nicht so wie ich es will.

So sieht mein Code aus:

SPS:
Code:

PP3_Stoermeldungen            :ARRAY[0..28] OF BYTE;
Visual C#:
Code:

public Form1()
        {
            InitializeComponent();
           
        }
        private int int_stoermeldungen;
        byte[] byte_stoermeldungen;

...

                int_stoermeldungen = tcClient.CreateVariableHandle(".PP3_Stoermeldungen");
                byte_stoermeldungen = tcClient.ReadAny(int_stoermeldungen, typeof(byte[]), new byte[] { 4 });

Die Fehlermeldung gibt nur aus: "Es gibt ein paar falsche Argumente".. und bei Beckhoff werd ich auch nicht schlauer.

Viewing all articles
Browse latest Browse all 47324


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>