Vai al contenuto
PLC Forum


Plc S200 Con Convertitore Rs232


Messaggi consigliati

Inserito: (modificato)

Ho un grosso problema

Ho programmato una cpu siemens s220 226 con n, 2 porte seriali ,

con lo scopo di comunicare mediante un convertitore con un apparecchiatura un po’ inusuale

una matrice elpro TZ16

http://www.elprovideolabs.com/ita_/prodotti/TZ16.htm

fin qui tutto ok

ma adesso che vado avanti con lo sviluppo del software mi trovo a dei problemi

spesso la matrice quando invio i dati per la commutazione non accetta il comando

le domande che mi farete possono essere milioni e qui di seguito spiegherò come ho cercato di risolvere il problema

· Ho controllato il flusso dai dopo il convertitore rs485 rs232 con il telnet in parallelo sia sulla trasmissione che sulla ricezione e ho constatato che il convertitore converte perfettamente e il plc invia i dati perfettamente

· Le velocità sono settate 9,600 di ambedue i dispositivi

· Quando la matrice non effettua la commutazione risponde con un errore , ma io non posso gestire questo errore per il rinvio dei dati

· Ho cambiato tre tipi di convertitori

· Il cavo è schermato e di lunghezza di circa tre metri

· Le masse sono corrette e collegate giustamente

· Il problema è saltuario

· Non posso smontare la matrice per inviarla alla elpro per dei controlli perche creerei un disservizio enorme l’impianto è installato all’interno di un ospedale

http://www.associazioni.prato.it/ailprato/htm/maurizio.htm

grazie per l’aiuto

***[at]**.it

Modificato: da Luca Bettinelli
Rimosso indirizzo di email, non consentito dal regolamento

Inserita: (modificato)

Ciao

Da quello che dici sembra che a volte la matrice prende il comando e altre no.

Inoltre quando non riesce a commutare risponde con errore.

Con che tipo di errore ti risponde?

Se restituisce un messaggio con codificato il numero di errore devi capire cosa significa.

Senza altre informazioni, io sposterei l'attenzione dall'aspetto elettrico a quello logico.

Probabilmente

1) il messaggio (la stringa) non è costruita nel modo corretto.

2) Non rispetti dei tempi minimi tra un messaggio e il successivo.

3) chiedi alla matrice di fare un'operazione non possibile nello stato in cui si trova.

Più di questo non ti posso dire dovrei conoscere meglio l'apparecchiatura.

Ciao ;)

Modificato: da salto
Inserita:

Suppongo, perchè non lo dici, che tu stia usando la seconda porta del PLC in modalità freeport.

Se non lo hai ancora fatto, verifica i livelli di tensione sulla linea RS232, può succedere che il convertitore abbia i livelli bassi, al limite di utilizzo per il terminale, questo potrebbe spiegare l'errore saltuario.

Sarebbe anche utile analizzare il codice di errore che rinvia la matrice.

Inserita:

il carattere di risposta su telenet è un errorre raffigurato da undollaro o per avvenuta conferma un picche

non dice niente altro

ma per i livelli di tensione potrebbe essere

ma come posso fare per verificarli ?

esiste un softvare che possa fare questo mediante la porta seriale?

potrei usare un oscilloscopio ma con le seriali

servirebbe un memoria di traccia ,

e come è possibile che la tensione non sia giusta dopo mt 2 di cavo schermatyo 4 x 0,50?

Inserita:

oppure potreste indicarmi un convertitore con le impostazioni completamente regolabili, compreso il livello di tensione di uscita

ma la cosa strana che se ci fosse un basso livello i

il terminale telnet a volte dovrebbe dare l'errore

invece la stringa è sempre perfetta ,

esempio di stringa inviata:

B0111

B INDICA RICHIESTA DI COMMUTAZIONE AUDIO + VIDEO

01 INDICA IL CANALE DA COMMUTARE

11 INNDICA SU QUALE CANALE VA COMMUTATO

mentre per interrogare la matrice

mando una :

b

e la risposta è di 64 caratteri mi dice dove sono commutati i 16 canali video e i 16 audio

il carattere di interrogazione di stato

viene trasmesso ogni 5 secondi da l'ultimo invio

e i seganli di commutazione vengono trasmessi 5 secondi l'uno da l'altro

con un tempo superiore 10 volte dal tempo minimo richiesto dalla matrice

Inserita:

Escludendo un difetto sul terminale o un comando errato, l'unia causa possibile è un livello non corretto della linea RS232.

Il protocollo elelttrico di RS232, cito a memoria quindo non garantisco la precisione assoluta, prevede tensioni che possono essere comprese tra -15v e -5v per il basso e +5v e +15v per l'alto. Per verificarlo è sufficiente trasmettere in continuazione un qualsiasi carattere ed osservarlo con un oscilloscopio anche non a memoria.

Ovviamnete è necessario conforntare i limiti ammessi dal terminale con i valori riscontrati.

L'analizzatore telnet, essendo uno strumento di misura, accetta segnali dal limite minimo di livello fino al massimo, mentre il terminale può essere un poco più "duro"

Ovviamente queste sono ipotesi.

Puoi fare una prova. Collega un PC, dotato di porta seriale RS232, con il programma di emulazione terminale Hyperterminal. In questo modo vedi cosa arriva effettivamente.

Inserita:

non è che commuti un canale su un uscita già impegnata ???

oppure che scrivi un numero maggiore di quello massimo ??

Gabriele Corrieri
Inserita: (modificato)

Ciao

il dollaro (errore) è rappresentato al carattere 36 (dec) 24 (hex) 0010 0100 (bin)

il picche (ok) è rappresentato al carattere 6 (dec) 6 (hex) 0000 0110 (bin)

il segnale 06(hex) è corretto ... è il segnale ACK (acknowledge= comando riconosciuto)

non quadra il segnale 24 (hex) ... il segnale NACK è 15 ...

010101 --15

100100 --24

la chiave di volta è proprio lì .. senti il produttore della matrice ...

Ciao

Modificato: da Gabriele Corrieri
Inserita:

vi spiego meglio :

all'uscita del convertitore io ho un cavo che va alla matrice ,

in oltre ho costruito un collettore che mi permette di prendere il segnale della 232

tx rx e di mandarlo su un pc all'ingresso delle due seriali

quindi riesco a monitorare il flusso effettivo in andata ed in ritorno

e qui risulta tutto ok

nessun errore di commutazione

nessun errore di carattere

il costruttore analizzando il flusso del telnet

conferma che non ci sono caratteri sbagliati

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...