Vai al contenuto
PLC Forum


Scheda S5 IP 267


lele1975

Messaggi consigliati

Gentili ragazzi del forum possiedo una macchina industriale del 1990 che è stata realizzata con Siemens S5 - CPU103 , ho sistemato e ampliato il programma che ho trovato nella CPU ma una cosa proprio non riesco proprio a gestire è la parte dedicata alla scheda IP 267 per il posizionamento di motori passo-passo.

Avrei bisogno di sapere se nel forum qualcuno si ricorda come programmare gli FB per i telegrammi per gestire i movimenti e le variabili di velocità e lunghezza movimento (ma anche qualsiasi altra informazione va bene) , ho provato a leggere il manuale in inglese….ma non ho compreso molto.

La scheda IP 267 non è molto conosciuta anche in rete non si trova praticamente nessuna informazione , tranne il manuale.

Vi ringrazio buone feste a tutti.

Link al commento
Condividi su altri siti


Buongiorno Lele1975,

dove 1975 presumo sia l'anno di nascita. Purtroppo, o per fortuna, io ho qualche anno di più ed ho cominciato a fare automazione nel periodo in cui Step5 era all'apogeo, prima della sua curva discendente dovuta all' introduzione delle nuove serie 300/400 o la piccola 200; volevo, nonostante non abbia mai lavorato direttamente con passo-passo su S5, darti il mio contributo alla comprensione prima che comincino le risposte del tipo "... Ma perché lavorare ancora su un plc obsoleto? ...lascia perdere e revampa tutto col 1200... Tempo perso per un plc così vecchio ... ormai è abbandonato, inaffidabile 

, inutile, pericoloso, velenoso, porta alla sterilità e alla calvizie, bla bla bla ...".

Rileggo sempre con piacere i vecchi manuali Siemens perché sono completi ed esaustivi, sopratutto quelli in inglese,  lasciamo perdere il tedesco che lo sarebbero ancor di più,  conoscendo bene la lingua: se tornassi indietro, farei una scelta diversa, dovuta non solo a questo, ma anche alle innumerevoli aziende tedesche con cui ho avuto a che fare nella mia carriera.

Dando una letta con attenzione al manuale di mamma Siemens, trovi gli FB già belli e pronti nel capitolo 7: i listati di FB17 e FB 19, assieme ad un esempio di istanza di DB 17, sono tutti lì, pronti ad essere copiati nel tuo programma;tutte le parti precedenti spiegano dettagliatamente come collegare i motori, i finecorsa di limite, le aree di memoria occupate nelle immagini di processo in/out, etc. Tutto quello che ti serve è scritto con precisione teutonica: ci sono persino più  di un paio di esempi al capitolo 6.

Se posso aiutarti meglio, fai domande precise ed avrai risposte precise.

Link al commento
Condividi su altri siti

Ciao busanela ciao ragazzi del forum grazie per l'interessamento, hai ragione busanela mi aspettavo risposte del tipo: cambia plc, butta via tutto, lascia perdere...... Ecc ecc.... Ma come ho trattato in altre mie vecchie discussioni alcune macchine industriali hanno un valore affettivo che difficilmente il titolare vuole adeguare ai nuovi sistemi attuali. 

Tornando al problema della programmazione scheda 267 nei prossimi giorni vi. mostro  il FB che hanno realizzato per far muovere il motore passo passo e gentilmente mi spiegate i comandi, alcuni li comprendo altri proprio non li capisco e poi vediamo insieme come modificarlo, vi spiegherò tutto con l'inizio del nuovo anno. 

Intanto ringrazio tutti in particolare busanela per la collaborazione buone feste a presto. 

Si il 75 sta per l'anno di nascita 😅

 

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao ragazzi del forum , si hai ragione busanela anche il "costa troppo" incide notevolmente sull'adeguamento dei sistemi sulle macchine vecchie , intanto cerco di sistemare quello che posso!!

 

Link al commento
Condividi su altri siti

Questo è il mio FB 20 che comanda il motore passo-passo :

 

nome: COMP-P
EN          E           Bi
RUN       E           BI
VVEL      E           W
VCOR     E           W
MAR       A           Bi
CWA       A           W
CWB       A           W
PBM        E           Bi

                 : U   = EN
                 : U (
                 : O   = RUN
                 : O   = PBM
                 : )
                 : SPB   = M001
                 : U    M 0.1
                 :RB   = MAR
                 : L   = VVEL
                 : SLW 8
                : L   KH 000F
                : + F
               : T    = CWA
              : L    KH FFFF
             : T    = CWB
            : SPA   = M002
M001   : U   M 0.1
             : S    = MAR
             : UN   = RUN
             : SPB   = M003
             : L   = VVEL
             : SLW 8
             : L   KH 0010
             : +F
            : T    = CWA
            : L    = VCOR
            : L    DW 15
            : +F
            : T   = CWB
            : SPA   = M002
M003 : UN    = PBM
            : SPB   = M002
            : L   KH 0060
            : SLW 8
            : L    KH 001F
            : +F
            : T   = CWA
            : L    KH FFFF
            : T    = CWB
M002  :
            :
            : BE 

Link al commento
Condividi su altri siti

L'ingresso EN è enable mentre l'ingresso RUN mi fa muovere il motore poi abbiamo la variabile della velocità VVEL e la variabile della corsa del motore VCOR inoltre ci sono le due variabili in uscita CWA e CWB , "credo" vengono inviate alla scheda tipo telegramma e sono i riferimenti di CWA = velocità e CWB = corsa.

Abbiamo anche l'ingresso PBM che è dedicato al movimento manuale del motore io lo chiamo pulsante di JOG.

IL valore di M 0.1 indica il bit sempre a 1.

Avrei bisogno di una traduzione semplice di questo FB in modo da capire i passaggi e poter effettuare alcune modifiche.

Ho compreso che quando l'ingresso RUN è a 1 il motore esegue un movimento relativo con corsa e velocità impostati da pannello operatore , il DW15 non serve a nulla è vuoto.

Poi se avete qualche domanda sono a vostra disposizione , spero di essere stato abbastanza chiaro , vi ringrazio in anticipo per il vostro aiuto.

Buona giornata a tutti.

Emanuele 

Link al commento
Condividi su altri siti

Ciao Lele,

il programma che utilizzi è diverso rispetto quanto esposto negli esempi del manuale: Siemens utilizza FB17 per la comunicazione cpu-ip e FB19 per il programma di gestione del motore; l'utilizzo dell' FB20  non rientrerebbe nella gestione ordinaria degli FB di IP 267.

Veniamo comunque al "tentativo" di traduzione:

la presenza dell' ingresso EN in concomitanza con uno fra RUN o PBM  salta alla label successiva : M001 per il settaggio valori di lavoro "RUN"; se non c'è il bit ddi'ingresso  RUN ma solo quello di PBM, a causa della condizione UN=RUN, salta alla M003, altrimenti passa alla M002 e fine. Se la condizione degli ingressi iniziali, invece, non fosse soddisfatta, prosegue prima della label M001 resettando l' uscita di marcia (RB=MAR) e ponendo a 0 i valori in cui sono impostati velocità, corsa e, secondo me, rampe di accellerazione e decellerazione (CWA e CWB sembrano dei jobs di rampa, non riferimenti di corsa e velocità  che già sono in VVEL e VCOR). Anche gli scorrimenti a sinistra di 8 bit del VVEL sembrano impostazioni di modalità di jobs particolari.

Link al commento
Condividi su altri siti

Ciao ragazzi ciao Busanela si hai ragione , ho visto che FB 20 in realtà fa solo da appoggio per le variabili di velocità e corsa , praticamente aggiunge al valore della variabile anche altri bit del modo operativo cioè come deve comportarsi il motore , poi ci sono gli ingressi di comando e le uscite delle variabili.

In realtà sono FB 50 e FB 51 i blocchi funzione che stavo cercando , non ho idea del perché abbiano scelto il 50 e il 51 ma ho visto in alcuni esempi del manuale che sono gli stessi , il FB 50 è un blocco funzione utilizzato per la configurazione della scheda IP267 mentre il FB 51 fa il posizionamento.

Vi riporto il contenuto di FB 51 che mi interessa particolarmente e anche di OB1 cosi mi spiegate alcune cose.

 

Link al commento
Condividi su altri siti

 

nome : FAST-TV    (FB 51)

         : U E 65.6
         : U M 200.1
         : S A 65.4
         : S A 65.5
         : BEB
         : U M 203.0
         :SPB =M001
         : S M 203.0
         : S M 203.7
         : L DW 43
         : T AW 64
         : L DW 44
         : T AW 66
         : BEA
M001     : R M 201.0
         : R A 65.4
         : R A 65.5
         : L KB 0
         : T MB 203
         : BE

Link al commento
Condividi su altri siti

OB1

         : A DB 2
         : SPA FB 13
         : U M 201.6
         : SPB FB 50
         : O M 201.5
         : O M 201.6
         : R M 201.5
         : BEB
         : U M 200.1
         : S M 201.0
         : U M 203.7
         : R M 203.7
         : BEB
         : 
         :    (parti di programma che non ci interessano)
         : 
         : 
         : 
         : U M 201.0
         : SPB FB 51
         :
         :    (il programma continua ma non ci interessa)

Link al commento
Condividi su altri siti

Senza conoscere esattamente cosa fanno gli indirizzi in/out non è semplice capire il senso, in ogni caso va così:

FB 51viene richiamato se M201.0 è alto ed il DB di istanza, salvo non ci siano altri AUF DB tra i puntini di OB1 è  il DB2; in FB51, se la condizione and tra E65.6 e M200.1 è soddisfatta, si settano le uscite A65.4 e 65.5 e fine blocco.

Se RLC non è 1 (mancano E65.6 e/o M200.1), controlla la presenza del bit di M203.0: se è alto allora salta alla label M001, spegne le uscite 65.4 e 65.5, carica 0 nel byte MB 203, fine; se M203.0 non fosse presente, attiva i merker 203.0 e 203.7 e carica le parole di DB2-DW43 e DW44 direttamente all' immagine di processo d'uscita rispettivamente AW64 e 66, fine.

Come dicevo, la maggior comprensione sapendo esattamente l'utilizzo delle variabili usate, così è molto generico.

Non facciamo prima che  ci dici cosa ti serve fare e andiamo direttamente al punto?

Modificato: da busanela
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...