ARRAY INITIALISIEREN

Deutsch
Anonymous
2013-10-30
2013-10-30
  • Anonymous - 2013-10-30

    Originally created by: mg

    Wago 750-880 FW2
    Codesys 2.3.9.41

    Hatte mal folgendermaßen das Array initialisiert:

    ModBus_DATA_Lin_r: ARRAY [0..255] OF REAL:=
        0.1,0.1,1,  0.1,0.1,1,
        0.1,0.1,1,  0.1,0.1,1,
        0.1,0.1,1,  0.1,0.1,1,
        0.1,0.1,1,  0.1,0.1,1,
        1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1,
        1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1,
        1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1,    (* Moxa Gateway letzte Adresse *)
        1 (144);
    

    Die letzte Zeile ist die interessante:
    Das sollte lt. Handbuch 144 mal ein Einser im ARRAY von [letzter verwendeter Zelle] bis [letzter verwendeter Zelle+144] sein.
    Aber da wird auf ModBus_Data_Lin_r[letzter verwendeter Zelle] der REAL-Wert "144" hineingeschrieben und die folgenden sind "0"
    sieht dann so aus (....,1,1,0.1,144,0,0,0,0,....)
    sollte aber meiner Meinung so sein (....,1,1,0.1,1,1,1,1,1,....)

    Verstehe ich da was falsch?

    Danke Mario

    PS: Problem wurde bereits gelöst mit 144 mal einen Einser rein schreiben ... mir gehts hier nur darum ob ich den obigen Befehl richtig verstanden habe oder ob da ein Fehler vorliegt.

     
  • Anonymous - 2013-10-30

    Originally created by: jl

    Hallo mg

    So ist es richtig:

    ModBus_DATA_Lin_r: ARRAY [0..255] OF REAL:=
    0.1,0.1,1, 0.1,0.1,1,
    0.1,0.1,1, 0.1,0.1,1,
    0.1,0.1,1, 0.1,0.1,1,
    0.1,0.1,1, 0.1,0.1,1,
    1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1,
    1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1,
    1,1,1,1,1,1,1,1,1,0.0244140625,0.0244140625,1,1,0.1, ( Moxa Gateway letzte Adresse )
    144 (1);

    vor der Klammer wie oft, in der Klammer den Wert

     
  • Anonymous - 2013-10-30

    Originally created by: mg

    Ahh Ok ... Danke

     

Log in to post a comment.