Vai al contenuto
PLC Forum


Telecontrollo S7200-226


Messaggi consigliati

Inserito:

Salve a tutti, vorrei alcuni consigli su come sviluppare un telecontrollo di un plc s7-200, più precisamente una cpu 226.

La cpu si trova in un luogo dove non c'è linea telefonica.

Il controllo a distanza deve essere gestito da un pc il quale non deve essere sempre connesso alla cpu, ma solo nel momento in cui c'è bisogno di intervenire sull'impianto a distanza. Il sistema oltre a visualizzare variabili deve poter interagire col sistema remoto.

In pratica vorrei capire quale modem (direi necessariamente gsm) utilizzare e quale programma per poter creare il software di suprevione sul pc.

Grazie a tutti


Inserita:

Io posso risponderti per ciò che credo .

Devi solo trovare un modem-gsm ottimo e a basso costo (scelta ardua ) e lo colleghi al plc. Dopodichè con un programma in Vb crei il software per il controllo.

Nel caso dei plc omron ( i siemens non li conosco bene ) c'è la famiglia dei cs che da modem oltre che gestire le normali operazioni puoi addirittura programmare il plc e tutto a distanza.

Per i modem cerca con google il sito della Microtel di Arese.

Ciao

Inserita:

Ho un pò di esperienza di programmazione in vb, ma non riesco a capire come poter fare ad esempio a leggere una word o dword che sia con VB.

Se sai come fare mi fai vedere.

Grazie mille

Inserita:

Allora :

per leggere o scrivere le word nella serie cpm1 o al di sotto della serie CS, si usa il cosiddetto protocollo sysway, ovvero

apri la seriale con questi parametri che sono standard ( poi puoi personalizzarli, ma devo farlo anche sul plc)

usa il controllo mscomm, che qui nell'esempio è chiamato CommPlc

setta i parametri : com1 o com2 , e,7,2

il comando che io ho chiamato TxPlc è cosi composto :

si inizia col carattere chioccilina "[at]" seguito da un numero di 2 caratteri che identifica il nodo del plc "00" poi segue la modalità del comando, per esempio leggere il data memory 10, in questo caso il comando di lettura è RD, segue il numero del data memory sempre di 4 carattere 0010 e per quanti dm vuoi leggere (nel nostro caso 1 ) quindi 0001 , il comando che ne viene fuori è una stringa : "[at]00RD00100001", non è finita su questa stringa devi calcolare l'FCS e mandi questa stringa (che io ho chiamata comando) alla seguente routine Fcs

Sub Fcs()

Dim l As Integer

Dim a As Integer

Dim j As Integer

Dim tj As String

l = Len(Comando)

a = 0

For j = 1 To l

tj = Mid$(Comando, j, 1)

If tj <> Chr$(10) Then a = Asc(tj) Xor a

Next j

fc = Hex$(a)

If Len(fc) = 1 Then fc = "0" + fc

TxPlc = Comando + fc + "*" + Chr$(13)

End Sub

dopo il calcolo dell'fcs viene aggiunto il carattere * + il ritorno carrello (chr(13)), questop è il TxPlc che devi inviare al plc

con la routine Tx

Sub Tx()

If Not CommPlc.PortOpen Then CommPlc.PortOpen = True

NumTentativiTx = NumTentativiTx + 1

Principale.CommPlc.Output = TxPlc

If NumTentativiTx >= 50 Then

NumTentativiTx = 0

Timeout = 1

End If

'MsgBox TxPlc

If Timeout = 1 Then Beep

DoEvents

end sub

A questo punto il plc ti risponderà con questa stringa

mettiamo che il valore del dm10 è di 9999, per avere la risposta fai un mid$(rispostaplc.8,4) e avari 9999

naturalmente ci sono molti comandi che sono descritti nei manuali omron..

Spero di esserti stato d'aiuto

Ciao

Inserita:

Ti ringrazio per l'aiuto ma quello che fai riferimento tu sono plc omron o siemens? Non credo che si comportino in modo uguale

Inserita:

Per non diventare matto io ho creato un mio protocollo esempio [at]xxxx# dove xxxx è l'indirizzo lui mi risponde il valore dell'indirizzo....

ecc.

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...