Vai al contenuto
PLC Forum


Cp 341 E Modbus Slave - Non funziona correttamente


Reverendo bit

Messaggi consigliati

Ciao a tutti

Sono alle prese con la configurazione di una cpu 313C ed una CP341 da far funzionare come slave.

vi spiego un po come e messo il sistema che uso:

CPU 313C 6ES7-313-5BF03-0AB0 V2.0

CP 341 6ES7-341-1AH01-0AE0 RS231C

Dopo aver installato i driver, ho caricato il progetto d'esempio copiando pari pari i blocchi dal progetto d'esempio all'interno del mio progetto, le uniche modifiche che ho apportato sono l'indirizzo della CP in OB1.

Inserisco DB1 e vado a dichiarare 4 variabili di prova, di cui 16 bit(da DB1.DBX0.0 a DB1.DBX1.7) e 3 interi DB1.DBW2,DB1.DBW4 e DB1.DBW6.

Dopo aver impostato il DB1 nel FC 03 06 16, imposto il mio simulatore di Master Modbus inviando le seguenti richieste:

01 03 00 00 00 04 + CRC (Dicendo di leggere lo Slave 1 con FC 03 partendo dal registro 0)

La prima stringa di risposta è:

01 03 08 + i valori delle Word a seguire.

Fin qui tutto bene :)

Il problema inizia quando vado ad interrogare in sequenza la CP, il risultato è che ogni tre richieste una è giusta e le due a seguire son sbagliate, della serie che

per una richiesta come questa 01 03 00 00 00 04 + CRC

Mi aspetto una risposta come questa, 01 03 08 + i valori delle Word a seguire, invece la stringa che ricevo e la seguente:

C0 40 58 DA 8F D8 7F 00 02 83 8A 7E

Ho fatto alcune prove cambiando le impostazione della CP ma non cambiava niente.

Un'altra cosa ho usato due tipi di cavi differenti:

1) 2-------3

3-------2

5-------5

2) 2------3

3------2

5------5

7- -7

8- -8

pin 7 e pin 8 sono ponticellati tra di loro

Grazie da Reverendo bit

Link al commento
Condividi su altri siti


Provato ad alzare il tempo tra due richieste?

oppure fare solo una singola richiesta e dopo un paio di secondi farne un altra?

Nei parametri del protocollo della CP341 ci sono i paramnetri:

Multiplier Character Delay Time

Normal operation , Interference suppression

prova a dare un occhiata a cosa variano nella gestione degli errori di ricezione.

magari al primo errore di comunicazione la CP non risonde più.

J.S.

Link al commento
Condividi su altri siti

Diciamo che in questi giorni le ho provate tutte.

Alzare il tempo tra due richieste, lavorare in normal operation o interface suppression, Multiplier Character Delay Time settato a 10, ma solo oggi sono riuscito a trovare una configurazione quasi stabile con poche risposte errate su tante richieste, ma non va bene :angry:

La configurazione che è impostata attualmente è la seguente:

9600,8,1,Even,Normal operation, Multiplier Character Delay Time settato a 10.

Un'altra cosa che vorrei tirare fuori dai manuali, e sapere se c'è qualche parametro che può resettare la comunicazione in FB7 o FB8.

comunque domani farò qualche altra prova e spero di riuscire a scrivere la soluzione

Saluti

Link al commento
Condividi su altri siti

L'impressione è che il telegramma di risposta non significhi assolutamente nulla...

Non direi che è colpa del cavo, perchè con la richiesta singola è tutto ok.

Uno spunto "stupido": verifica che la versione dei blocchi sia proprio l'ultima, perchè nei progetti d'esempio spesso ci sono blocchi piuttosto vecchi.

Link al commento
Condividi su altri siti

verifica che la versione dei blocchi sia proprio l'ultima, perchè nei progetti d'esempio spesso ci sono blocchi piuttosto vecchi.

Verificherò, anche non lasciare niente intentato. :thumb_yello:

Link al commento
Condividi su altri siti

:( Niente da fare,

La versione dei blocchi è la più recente, ma qualcuno mi sa dire se bisogna settare qualcosa nel DB80?

Oppure se per il protocollo Modbus la RS232 non è consigliasta, ed è meglio optare per la CP in 485?

Saluti da Revernedo

Link al commento
Condividi su altri siti

La 232 è insolita, perchè non ti consente di costruire il bus.

Ma non dovrebbero esserci limiti di sistema o incompatibilità, visto che alla fine cambia solo lo strato hardware.

Un'altra domanda: ogni quanto emetti la richiesta dal master? Prova a lasciar passare 1 secondo tra una richiesta e l'altra, soprattutto se usi la CP in periferia decentrata.

Link al commento
Condividi su altri siti

Dopo aver installato i driver, ho caricato il progetto d'esempio copiando pari pari i blocchi dal progetto d'esempio all'interno del mio progetto, le uniche modifiche che ho apportato sono l'indirizzo della CP in OB1.

Attenzione: mi ricordo che anche io, lavorando con la CP 341 parecchio tempo fa, ho scoperto che l'esempio di comunicazione conteneva un errore e non comunicava!! Ora non ricordo bene quale era l'errore, se il richiamo ad un FB sbagliato (quello di trasmissione anzichè quello di ricezione, mi pare) o cos'altro: stasera, quando ritorno in ufficio, ci do un'occhiata. Nel frattempo, verificati i blocchi d'esempio.

Link al commento
Condividi su altri siti

Nel frattempo, verificati i blocchi d'esempio.

Ma i blocchi sono protetti, cosa devo verificare?

Le uniche impostazioni alla quale posso accedere sono in OB1, o il DB80 istanziato per l'FB80

stasera, quando ritorno in ufficio, ci do un'occhiata.

comunque. grazie fammi sapere :thumb_yello:

Saluti

Link al commento
Condividi su altri siti

Ma i blocchi sono protetti, cosa devo verificare?

E' un pò che non lavoro con la 232, forse quindi ricordo male, ma mi pare di ricordare che il progetto d'esempio contenesse dei blocchi non protetti, ma la mia memoria ultimamente non è delle migliori, forse l'arterioscleresi, ...

Appena ho verificato, comunque, mi rifaccio vivo.

Link al commento
Condividi su altri siti

Eccomi di nuovo. Mi sa che è proprio l'arteriosclerosi: era la CP340, non la CP341.

Nel programma di esempio, viene citato erroneamente il bit d'ingresso 0.1 per l'abilitazione alla ricezione invece del 0.0.

A parte ciò, ho dato un'occhiata al manuale della 341 che avevo nel cd allegato alla 340 che ho usato, e in riferimento al cavo, descrive il seguente collegamento:

2---3

3---2

7---8

8---7

6---4

4---6

5---5

Il manuale lo trovi anche nel sito Siemens, se già non lo hai scaricato.

Link al commento
Condividi su altri siti

Ciao Busanella,

viene citato erroneamente il bit d'ingresso 0.1 per l'abilitazione alla ricezione invece del 0.0.

Allora, non ho davanti il progetto, ma ricordo che sia in OB1, che in OB100 vi sono una M180.1 ed M 180.1, se non ricordo male in OB100 setta la 180.0 e resetta la M180.1 quando viene elaborato, ed in OB1 usa la M180.1 per lo start e M180.0 per inizzializzare la CP.

Dovrei sostituire l'M180.1 con L'm180.0 ?

in riferimento al cavo, descrive il seguente collegamento:

Si ho provato anche quella configurazione, ma devo dire che ho notato qualche errore in meno con 7 e 8 ponticellati. :thumb_yello:

Saluti da Reverendo

Modificato: da Reverendo bit
Link al commento
Condividi su altri siti

Dovrei sostituire l'M180.1 con L'm180.0 ?

Dubito che possa essere stato commesso, da parte del progettista Siemens, lo stesso errore in due progetti differenti: sarebbe da licenziare immediatamente!

Comunque provare non ti costa nulla.

Link al commento
Condividi su altri siti

Ciao Ragazzi,

Problema risolto :thumb_yello:

Come? sostituendo la scheda <_< , mi hanno prestato una CP 341 con protocollo elettrico 422/485 ed ha funzionato alla grande.

Ora non so se la precedente non andava perchè era difettosa la CP o perché in 232 il modbus impazziva, dovrei recuperare un'altra CP 232 e provare se va.

comunque un Saluto da Revrendo.

Modificato: da Reverendo bit
Link al commento
Condividi su altri siti

Giuro che il modbus lo ho usato anche in 232... perchè è più facile da interfacciare con un simulatore in laboratorio...

Secondo me è la scheda schiantata...

Modificato: da turbineboost
Link al commento
Condividi su altri siti

Secondo me è la scheda schiantata...

Anche secondo me lo è, non credo che Siemens avrebbe commercializzato dei prodotti non confromi

Saluti

Link al commento
Condividi su altri siti

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