Vai al contenuto

Allarmi tramite stringa

Home Forum Terminali operatore (Weintek) Allarmi tramite stringa

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Autore
    Post
  • #74822
    michele-consoli
    Partecipante

    Sto gestendo una comunicazione tramite TCP/IP (Free Protocol). Il mio intento è che ogni volta che viene letta una stringa dall’HMI tramite inport essa venga visualizzata come se fosse un allarme.

    Ciò l’ho attuato legando la word a cui viene legata la stringa ad un evento (allarme) ed ho utilizzato la dicitura %(Watch#)s.

    Il problema è che una volta letta la prima stringa che ho inviato e che si setta come allarme la seconda poi non verrà più visualizzato come tale, dato che da come ho ragionato verrà settato a una LW successiva.

    La mia domanda è un esempio nel quale in qualsiasi momento io invio una stringa essa inizi a settarsi nella stessa LW?

    #74823
    michele-consoli
    Partecipante

    Il problema sussiste nella condizione per il quale si triggerava l’allarme, ora ho messo che quando è diverso da 48 si attiva dunque si resetta solo quando invio lo zero ASCII.

    Vorrei chiedere un esempio pratico di una macro che automaticamente ogni volta che inserisco una stringa resti settata ma quando ne invio una successiva essa si riazzeri e dopo cambi.

    Questo è ciò che ho pensato ma non funziona:

    char risposta[400], rst[2] = "0"
    short receive_len, wait_time = 20
    
    INPORT2 (risposta[0], "TCP/IP robot",receive_len,wait_time)
    
    if receive_len > 0 then
        StringSet(risposta[0], "Local HMI",LW,3001, 400)
    end if
    
    StringSet (rst[0],"Local HMI",LW,3001,2)
Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Devi essere connesso per rispondere a questo topic.