Vai al contenuto
PLC Forum


Step 7 basic blocchi di programma


alessiozu

Messaggi consigliati

Ciao a tutti, volevo chiedere qualche informazione in merito  alla programmazione del tia portal step 7 basic in attesa che mi vengano comunicate le date dei corsi.

Premetto che fino ad adesso ho programmato solo logo, adesso mi trovo a dover fare un impianto gestito da un S7-1200.

Come prima cosa vorrei capire meglio come sono strutturati i blocchi organizzativi, cioè ad esempio in un blocco devo mettere solo gli allarmi? non capisco come suddividere la programmazione.

Seconda cosa non riesco a capire come assegnare un ingresso da digitale ad analogico nelle variabili plc.

 

 

Link al commento
Condividi su altri siti


Il problema non è conoscere il tia ma penso che non hai idea su come funziona un plc. Il blocco OB 1 viene eseguito periodicamente di continuo facendo la scansione progressiva di tutti i segmenti.

Poi ci sono blocchi che vengono eseguiti su stimoli di allarmi interrupt, blocchi FC ed FB che vengono ingaggiati da altri blocchi ecc ecc.

Se guardi i video corsi Siemens presenti sui YouTube poi iniziare ad utilizzare il PLC. Per quel che riguarda gli ingressi analogici già a bordo della CPU o moduli espansioni di qualsiasi tipo 

 Mettono a disposizione un numero derivato dal campionamento del segnale analogico ed in funzione al canale associato, allla quantità di bit del convertitore e al settaggio dello stesso si possono misurare tensioni e correnti 0/10V -10/+10V 0/20mA 4/20mA termoresistenze PT 100 Pt 1000 termocoppie J K T ecc ecc.

Spero di averti detto qualcosa di utile..

Link al commento
Condividi su altri siti

Oltre a ciò che ti ha già detto max.bocca, la suddivisione di un software in blocchi, sta a te farla, non ci sono regole predefinite, ma solo l'esperienza, il buonsenso, il seguire pratiche di buona programmazione non codificate ma accettate un po' da tutti, sulle quali puoi trovare qualcosa sicuramente in rete. Detto brevemente, si tratta di suddividere l'impianto che devi fare in unità logiche, a seconda della funzione che fanno e a ognuna assegnare un blocco di programma. Provo a spiegare. Una parte dell'impianto carica i pezzi da un pallet e li mette su un nastro: allora potrai creare un blocco di programma che fa il caricamento. Una seconda parte scarica i pezzi dal nastro e li mette da qualche parte: creerai una blocco di programma che fa lo scaricamento. I blocchi di programma dovranno "parlare" tra di loro: il blocco "scaricamento", per esempio, non dovrà eseguire nulla finché il blocco "caricamento" non gli fornirà (per esempio con un merker) un segnale di "abilitazione allo scarico". Entrambi i blocchi non faranno nulla se, per esempio, un terzo blocco chiamato "messa in automatico" non fornirà un segnale di "modo automatico attivato". Poi ci sono funzioni più o meno accessorie, come gli allarmi che hai giustamente citato: anche lì è buona norma mettere tutti gli allarmi un unico blocco. Il tutto detto, ripeto, molto brevemente. La suddivisione in blocchi, in unità logiche, ti permette di:
1) avere un programma più leggibile in cui è facile isolare i problemi che inevitabilmente ti capiteranno in fase di messa in servizio e identificarli (e quindi risolverli) con maggior facilità. Cioè, se hai problemi sul caricamento pezzi, andrai a cercarli nel corrispondente blocco di software e non in giro per tutto il programma.
2) rendere il tuo software riutilizzabile. Una macchina che farai in futuro potrà avere un sistema di caricamento simile a quello già fatto, quindi potrai riutilizzare, apportando solo qualche modifica, quel blocco di software
3) rendere il tuo programma più facilmente leggibile anche a terzi, cosa che viene troooooooooppo spesso trascurata. Ti capiterà che il tuo software vada in mano a collaboratori, manutentori o, viceversa, riceverai software fatti da altri sui quali dovrai lavorare e un software ben fatto aiuta ovviamente tantissimo, come puoi ben capire (a me è capitato giusto l'altro ieri di apportare modifiche a un software ricevuto solo il giorno prima: era ben fatto e tutto è filato liscio, con soddisfazione mia e del cliente, cosa più importante).

Link al commento
Condividi su altri siti

tipo ad esempio i blocchi di programma che dicevi te, ad esempio il programma che fa il caricamento e quello che fa lo scaricamento andrebbero creati all'interno dell' OB o FC? 

gli allarmi solitamente andrebbero messi all'interno del blocco DB?

Link al commento
Condividi su altri siti

Quando dico "blocco" intendo un FC o FB. Quindi la parte di programma che fa il caricamento potrebbe stare in un FC o FB; la parte che fa lo scaricamento in un differente FC o FB e così via. Per quanto riguarda gli OB, tralascia un attimo tutti gli altri per i quali dovrai avere conoscenze un po' più approfondite e usa solo OB1: in quello, che viene sempre elaborato dal PLC, metterai per esempio i richiami ai sopracitati FC o FB perché un FB o FC ha sempre bisogno di essere richiamato da un OB o da un altro FB o FC affinché il suo codice venga elaborato. Le DB sono delle aree di programma, o aree di dati che non contengono codice ma solo variabili in cui memorizzare lo stato di qualcosa, che sia un 1/0 o un valore (o altro ancora): un FC o FB che ha "bisogno" di conoscere un valore ("pezzi prodotti", per esempio) potrebbe leggerlo in una word di una DB, dove era stato scritto magari da un altro FC o FB.
Devi cercare in rete della documentazione su come iniziare con PLC Siemens, dalle basi; il forum è più adatto a rispondere a domande specifiche, più mirate, piuttosto che a fornire le basi per programmare.

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