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

Results 1 to 6 of 6

Thread: Letzter Fehler SMS versenden mit einer ETH150GSM

  1. #1
    Join Date
    01.06.2020
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo an alle

    Ich möchte, um SMS mit einer ETH150GSM zu versenden, eine Array of String mit Phoenix Worx Express initialisieren. Das Arbeitsblatt für Dateitypen "sys-flag-types" habe ich mit

    TYPE
    ARRAY_OF_WORD_0_1 : ARRAY[0..1] OF WORD;
    END_TYPE


    erweitert und erfolgreich kompiliert. So bald ich für den Funktionsbaustein SMS_SEND an dem Eingang DATA den erstellten Datentyp ARRAY_OF_WORD_0_1 verwende, erscheind nach dem kompilieren die Fehlermeldung:

    STD_CNF.STD_RES: Die Initialisierung von Multi-Element-Variablen wird in der aktuellen Build-Einstellung nicht unterstützt!


    Hab schon alles mögliche ausprobiert, immer der selbe Fehler. Weiß jemand von Euch da eine Lösung? Sonerbarerweise habe ich bei meinem allerserten Versuch, ich weiß nicht wie, eine SMS mit Text versenden können. Ich vermute mit einem einfachem STRING. Aber da zeigt der jetzt immer den Fehler "Falscher Anfangswert" an. Gleiches auch bei einem STRING(160) o. ä.

    Vorab schon mal vielen Dank.
    Frank
    Reply With Quote Reply With Quote Letzter Fehler SMS versenden mit einer ETH150GSM  

  2. #2
    Join Date
    25.06.2017
    Location
    Oerlinghausen
    Posts
    2,642
    Danke
    282
    Erhielt 502 Danke für 415 Beiträge

    Default

    In einem ARRAY[0..1] OF WORD kannst Du mal gerade 4 Byte (4 ASCII-Zeichen) unterbringen. Das brauchst Du, um eine SMS zu versenden?
    Ich kenne leider die Thematik nicht näher, vermute aber, dass Dich vielleicht der DatenTyp WORD bzw. sein Name auf eine falsche Fähre gelockt hat?

  3. #3
    LARIFARI is offline Neuer Benutzer
    Themenstarter
    Join Date
    01.06.2020
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo Heinileini

    Du hast Recht und mich darauf aufmerksam gemacht, ich habe mich verschrieben, es werden zwei Strings und nicht Word benötigt. Es sollen ja auch bist zu den SMS üblichen 160 Zeichen dargestellt werden. Anders als oben in meinem Beitrag steht in meinem Worx-Express auch richtig:

    TYPE
    ARR_SMS_DATA_STR_0_1 : ARRAY [0..1] OF STRING;
    END_TYPE

    Aber selbes Problem, so bald ich für den Funktionsbaustein SMS_SEND an dem Eingang DATA den erstellten Datentyp ARR_SMS_DATA_STR_0_1 verwende, erscheind nach dem kompilieren die Fehlermeldung:

    STD_CNF.STD_RES: Die Initialisierung von Multi-Element-Variablen wird in der aktuellen Build-Einstellung nicht unterstützt!


    Bitte entschuldigt die falschen Angaben in meinem ersten Beitrag.

  4. #4
    Join Date
    25.06.2017
    Location
    Oerlinghausen
    Posts
    2,642
    Danke
    282
    Erhielt 502 Danke für 415 Beiträge

    Default

    Moin Frank,
    da anscheinend qualifizierte Antworten zu Deinem Problem noch auf sich warten lassen, versuche ich es mal mit meinem deutlich-weniger-als-Halbwissen, diesen Thread irgendwie anzuschieben.

    Die Initialisierung von Multi-Element-Variablen wird in der aktuellen Build-Einstellung nicht unterstützt!

    1. zu "aktuelle Build-Einstellung":
    Was ist Build-Einstellung? Ich vermute, dass Du irgendwo dem Compiler sagen kannst, dass er Multi-Element-Variablen initialisieren können soll. Vielleicht ist das eine kostenpflichtige (?) Option, die Dir nicht zur Verfügung steht?

    2. zu "Initialisierung":
    Unter Initialisierung verstehe ich, dass der Compiler Variablen mit einem Wert vorbesetzt. Ist es das, was Du bei diesem Array vergeblich versuchst?
    Vielleicht stimmt die Syntax an dieser Stelle nicht?
    Ich denke, Du könntest ersatzweise die gewünschte "Grundstellung" der Array-Elemente "zu Fuss" programmieren, ehe Dein Projekt an der Unwilligkeit des Compilers scheitern muss.

    3. zu "Multi-Element-Variablen":
    Damit dürfte Dein Array gemeint sein. Ein Array mit nur zwei Elementen ist ja nicht so wahnsinnig "multi", dass man es nicht durch zwei einzelne Variablen ersetzen könnte, wenn man einen überschaubaren Mehraufwand in Kauf nimmt?

    4. zu "ARRAY[0..1] OF STRING":
    Ich könnte mir vorstellen, dass der Compiler beim DatenTyp STRING gerne eine LängenAngabe sehen würde. Fehlt sie vielleicht? Gibt es eine Möglichkeit eine LängenAngabe hinzuzufügen?

    Gruss, Heinileini

    PS:
    5. zu "Sobald ich für den Funktionsbaustein SMS_SEND an dem Eingang DATA den erstellten Datentyp ARRAY_OF_WORD_0_1 verwende, erscheint nach dem Kompilieren die Fehlermeldung ...":
    Anscheinend mag der SMS_SEND am Eingang DATA keine Arrays? Hast Du Beispiele, was an DATA zu verschalten ist? Geht evtl. Array Of Char?
    Gibt es von SMS_SEND evtl. einen neueren Stand, der mit einem Array Of String etwas anzufangen weiss?
    Warum willst Du an DATA ein Array übergeben?
    Wie erfährt der SMS_SEND, auf welches Element des Arrays er zugreifen soll?
    Soll er beide Elemente bzw. Strings hintereinander hängen? Das könntest Du vor dem Aufruf von SMS_SEND tun und an ihn das Ergebnis in einer "normalen" StringVariable übergeben.

    6. zu "Das Arbeitsblatt für Dateitypen 'sys-flag-types' habe ich mit
    TYPE
    ARRAY_OF_WORD_0_1 : ARRAY[0..1] OF WORD;
    END_TYPE
    erweitert und erfolgreich kompiliert.":
    Was sind denn 'sys-flag-types'? Flags sind doch normalerweise vom Typ BOOL und sys-flags vom BetriebsSystem belegte, vordefinierte Bits. Gehört die Deklaration von benutzerdefinierten DatenTypen wirklich dort hin? Na ja, der Compiler akzeptiert es anscheinend.
    Last edited by Heinileini; 15.06.2020 at 11:30.

  5. #5
    LARIFARI is offline Neuer Benutzer
    Themenstarter
    Join Date
    01.06.2020
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo Heinileini

    Schon einmal vielen Dank für Deine Antwort. Auch ich besitze nur Halbwissen, quasi learning by doing. Leider ist hier eine Grenze für mich erreicht... Deine Fragen versuche ich nun genau damit zu beantworten:
    Zu 1: Die Build-Einstellungen sind in der Programmierebene bei dem Hardwarebaum zu finden. Dort sind wohl die Variablen hinterlegt.
    Zu 2 und 6: Unter Worx Express kann ich für Dateitypen kein neues Arbeitsblatt erstellen, aber in einem anderen Beitrag habe ich gelesen das es ausreicht, in einem vorhandenen Arbeitsblatt (ein anderes beschreibbares als das mit der Bezeichnung "sys-flag-types" habe ich nicht gefunden) mit der Variable zu erweitern, eben mit:
    TYPE
    ARR_SMS_DATA_STR_0_1 : ARRAY [0..1] OF STRING;
    END_TYPE
    Das Arbeitsblatt für sich ist nach dem kompilieren ohne Fehler. Die nun zwei Strings werden auch richtig im Initialisierungsfenster für Multi-Elementvariablen angezeigt und können beschrieben werden.
    Zu 3: Setze ich an dem SMS-SEND Eingang DATA nur einen String, zeigt der immer nach dem ersten eingesetzten Zeichen den Fehler "Falscher Anfangswert" Im Prinzip würden mir für die Alamierung mit einer SMS auch 80 Zeichen (einfacher String) reichen.
    Zu 4: Hab ich nirgens gelesen und ich wüsste auch nicht, wo ich die eingeben müsste.
    Zu 5:Weil das lt. Bausteinbeschreibung erforderlich sein soll(ILC 150 GSM/GPRS Nr. 2916545).An den DATA verschalte ich einen SMS-Text wie z. B "Alarm! Rauchmelder angesprochen!". Array of Char geht nicht. Array of String, weil der Text länger als 80 Zeichen sein könnte. Wie erfährt der SMS_SEND, auf welches Element des Arrays er zugreifen soll? Keine Ahnung.Zu 6: Nur beim kompilieren des Arbeitsblattes 'sys-flag-types'. Beim kompilieren des ganzen dann der besagte Fehler. Für mich unverständlich und leider nicht mehr nachvollziehbar, bei meinem aller ersten Versuch, ohne dem Array_of _String habe ich einen Text versendet bekommen. Ich vermute, ich habe da einen normalen String verwendet, aber wie geschrieben, jetzt kommt immer "falscher Anfangswert".

    Irgendetwas habe ich übersehen oder Worx-Express gibt das nicht her, wo ich aber nirgens einen Hinweis gesehen habe. Ich habe es auch schon auf einem anderen Rechner versucht. Auch ohne erfolg blieb das Kopieren der Bibliothek aus einem anderen Worx-Projekt in mein Projekt. Die gleiche Fehlermeldung.

  6. #6
    Join Date
    25.06.2017
    Location
    Oerlinghausen
    Posts
    2,642
    Danke
    282
    Erhielt 502 Danke für 415 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Last edited by Heinileini; 16.06.2020 at 00:37.

Similar Threads

  1. SMS mit CP 1242-7 Versenden
    By jbilode in forum HMI
    Replies: 12
    Last Post: 18.05.2020, 10:46
  2. TIA TIA V15 SMS versenden mit Scalance M876
    By mzva in forum Simatic
    Replies: 0
    Last Post: 10.10.2019, 09:28
  3. Replies: 7
    Last Post: 25.02.2019, 13:40
  4. SMS versenden mit Intouch via Phoenix Modem
    By Waelder in forum PHOENIX CONTACT
    Replies: 3
    Last Post: 19.12.2011, 22:13
  5. SMS Versenden
    By Maik.josephs in forum Simatic
    Replies: 4
    Last Post: 23.09.2009, 12:00

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •