Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: AI Adresse als INT an Baustein antragen

  1. #1
    Registriert seit
    26.05.2009
    Beiträge
    14
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich bin gerade dabei, einen eigenen Baustein zur Analogwertumrechnung und Auswertung in SCL zu schreiben.
    Stehe allerdings vor dem Problem, dass ich den universell halten will und die Eingangsadresse des AI gerne als INT-Wert
    an den FB antragen will. Allerdings habe ich nach vielem Nachdenken und suchen im Netz keine Quelle gefunden, wie ich mit dem INT-Wert umgehen muss,
    damit er mir wirklich auch den Analogwert aus dem Register zieht und ich damit arbeiten kann.
    Hätte da jemand ein Codeschnippselchen zur Verfügung? In SCL oder gerne auch AWL.

    Danke und Gruß

    Michael
    Zitieren Zitieren AI Adresse als INT an Baustein antragen  

  2. #2
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Stichworte: POINTER, POINTERFORMAT
    Gruß
    Michael

  3. #3
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    Du musst den INT-Wert in Deinem Baustein nach WORD wandeln, dann funktioniert es!
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

  4. #4
    Registriert seit
    22.07.2009
    Ort
    NRW
    Beiträge
    90
    Danke
    1
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Änder mal den Datentyp in der Symbolik

    Symbol Datentyp
    Alt: PEWXXX Word
    Neu: PEWXXX Int

    Und schon ist alles super.....

    Grüße
    wiesel

  5. #5
    Kaffeesüchtig ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    26.05.2009
    Beiträge
    14
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo,

    mit umwandeln in WORD war alles super, danke!
    --------------------------------------------------
    FUNCTION "I_ADDR_INT" : VOID
    TITLE = Indirekte Adressierung mit INT
    VERSION : 0.1
    VAR_INPUT
    E_ADDR : INT ;
    END_VAR
    VAR_OUTPUT
    A_VALUE : WORD ;
    END_VAR
    BEGIN
    NETWORK
    TITLE = Indirekte Adressierung mit INT
    L #E_ADDR;
    SLD 3;
    LAR1 ;
    L EW [AR1,P#0.0];
    T #A_VALUE;
    END_FUNCTION
    --------------------------------------------------

    Danke

    Michael

  6. #6
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard

    Pointer für den Analogwert ist nicht unbedingt erforderlich, einfach den INT-Wert in eine temporäre WORD-Variable schieben und dann symbolisch addressieren.

    Z.B. in AWL:

    L IN_VAR_ADR // Variable vom Typ INT
    T TEMP_WORD_ADR // Variable vom Typ WORD

    L EW [TEMP_WORD_ADR] // Lade symbolisch indirekt adressiert
    T ... // u.s.w.

    Ich denke das wird in SCL sehr ähnlich funktionieren.
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

  7. #7
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Dabei aber immer bedenken, dass dann in Xref nicht der Eingang gefunden werden kann.
    Das kann manchesmal etwas die Fehlersuche erschweren.


    bike

  8. #8
    Registriert seit
    17.05.2010
    Ort
    Paderborn
    Beiträge
    824
    Danke
    84
    Erhielt 125 Danke für 94 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von bike Beitrag anzeigen
    Dabei aber immer bedenken, dass dann in Xref nicht der Eingang gefunden werden kann.
    Das kann manchesmal etwas die Fehlersuche erschweren.


    bike
    So ist das bike.

    Das gilt aber immer bei Pointer- und indirekter Adressierung! Und dennoch ist es nützlich davon Gebrauch zu machen!
    Grüße
    Michael

    1001101110110100... Das ist meine Welt

Ähnliche Themen

  1. Antworten: 15
    Letzter Beitrag: 09.09.2011, 10:56
  2. bit-Nummer der E-Adresse in int
    Von Holger Levetzow im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 01.11.2010, 15:29
  3. int to time für IEC- Baustein
    Von Brian84 im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 10.02.2010, 10:44
  4. Antworten: 5
    Letzter Beitrag: 09.07.2008, 16:05
  5. Indirekte DB-Adresse als FC-Eingang
    Von Kniffo im Forum Programmierstrategien
    Antworten: 14
    Letzter Beitrag: 17.10.2007, 10:44

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •