Cip77 Inserito: 9 giugno 2021 Segnala Share Inserito: 9 giugno 2021 (modificato) Ciao a tutti, sono da un cliente e non riesco a far dialogare il PLC con una stampigliatrice Brain Evo 3. Configurazione attuale è: Modulo: CM PtP - 6ES7 137-6AA00-0BA0 Periferia dec.: IM 155-6 PN/2 HF - 6ES7 155-6AU01-0CN0 (sul quale è montato il modulo) PLC: CPU 314C-2 PN/DP - 6ES7 314-6EH04-0AB0 Premetto che non ho modo di controllare la trasmissione seriale in quanto sulla stampigliatrice non sono presenti menù di debug e non ho porte e/o convertitori da poter usare. Premetto anche che ho una macchina gemella con stessa stampigliatrice e stesso PLC, ma modulo seriale differente (1 SI - 6ES7 138-4DF01-0AB0) dove funziona tutto perfettamente. La stringa che vado a comporre e che, sul vecchio modulo, mando con il comando S_SEND è la seguente: $01K00$021-22.42$03161$R Veniva mandato indicando il DB che contiene la stringa (es. DB110) ed indicando la DBB (es. DBB2, in quanto la stringa parte da DBB0, ma serve per non mandare i primi due caratteri che mette il PLC nella stringa). Con il nuovo modulo ho usato il comando SEND_P2P con i seguenti parametri: - REQ a 1 quando faccio la richiesta e si resetta quando legge il DONE - PORT a 960 (indirizzo iniziale preso dalla configurazione hardware) - BUFFER ho messo la mia stringa, nel mio caso "SerialSendBuffer".SendData - LENGTH ho messo la lunghezza della stringa (nel mio caso 17) - COM_RST è false Finita l'operazione DONE va a TRUE mentre ERROR resta sempre a FALSE VARIANTI: Ho provato a cambiare BUFFER mettendo P#DB110.DBX2.0 BYTE 90 (DB110 è SerialSendBuffer) Ho provato a convertire "SerialSendBuffer".SendData in un array di Char (sia partendo da 0 che partendo da 2) Ho provato a convertire "SerialSendBuffer".SendData in un array di Byte(sia partendo da 0 che partendo da 2) Ho provato a mettere LENGTH, in teoria dovrebbe mandare l'intero BUFFER Ho anche provato ad inserire Port_Config in OB100. La configurazione del modulo è RS232C con i parametri identici a quelli della stampigliatrice (9600, none, 8, 1) fatta sia da configurazione hardware che successivamente da Port_Config. AIUTOOOOOOOOOOOOOOOOOOOOOO Grazie a tutti, Claudio. Modificato: 9 giugno 2021 da Cip77 Aggiunto info mancanti Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 10 giugno 2021 Segnala Share Inserita: 10 giugno 2021 Ciao, quando comincio a tribulare con le seriale di un PLC, prima faccio un pò di prove con il dispositivo dialogando con un computer; ti serve una seriale per PC, il cavo che puoi anche autocostruirti; ho anche fatto acquistare una presa DB9 con morsetti a vite (molto comoda) per collegarmi al posto del PLC: la puoi trovare su RS o Distrelec; infine ti serve un software per gestire la seriale da PC: se cerchi nel forum, trovi quello che avevo scritto io, che è limitato, o, altrimenti, puoi usare Hercules. Lo faccio perchè con il PC cambiare parametri, cablaggio e quant'altro è molto più veloce che con il PLC. Una volta che tutto funziona, mi segno le modifiche e, a quel punto, il PLC non ha più scuse: deve funzionare per forza. Link al commento Condividi su altri siti More sharing options...
Cip77 Inserita: 11 giugno 2021 Autore Segnala Share Inserita: 11 giugno 2021 (modificato) Buongiorno, scusate ma sono rientrato ieri sera e non ho avuto tempo per aggiornare il post. 21 ore fa, drugo66 scrisse: Ciao, quando comincio a tribulare con le seriale di un PLC, prima faccio un pò di prove con il dispositivo dialogando con un computer; ti serve una seriale per PC, il cavo che puoi anche autocostruirti; ho anche fatto acquistare una presa DB9 con morsetti a vite (molto comoda) per collegarmi al posto del PLC: la puoi trovare su RS o Distrelec; infine ti serve un software per gestire la seriale da PC: se cerchi nel forum, trovi quello che avevo scritto io, che è limitato, o, altrimenti, puoi usare Hercules. Lo faccio perchè con il PC cambiare parametri, cablaggio e quant'altro è molto più veloce che con il PLC. Una volta che tutto funziona, mi segno le modifiche e, a quel punto, il PLC non ha più scuse: deve funzionare per forza. Grazie per la risposta Drugo. Avrei fatto così anche io, ma essendo fuori dal cliente, con i tempi corti, e senza il materiale da te descritto, non ho potuto farlo. Alla fine era solo un problema di collegamento e di manuale della stampigliatrice errato (hanno segnato i pin RxD e TxD invertiti): il fatto è che io avevo provato ad invertire Tx con Rx, ma non aveva funzionato comunque. Probabilmente nella fretta ho spinto troppo i cavi nei morsetti o altro ... non saprei. Alla fine ha dialogato perfettamente e come BUFFER va bene passare il puntatore con questa sintassi: P#DBXXX.DBX2.0 BYTE 90 (ovvero l'offset della stringa + 2 byte) Se avete altre domande, fatele pure che magari sono informazioni che in futuro potranno essere utili ad altri. Ciao, Claudio. Modificato: 11 giugno 2021 da Cip77 Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora