PinokkioPLC Inserito: 19 dicembre 2013 Segnala Inserito: 19 dicembre 2013 Buonasera a tutti, mi sto avvicinando alla programmazione dei PLC, in particolare Siemens s7-300, avendo già letto/simulato qualcosina con step7 Microwin per l's7-200, leggendo i primi getting started per Step7 Professional sono venuto a conoscenza della diversa modalità di programmazione degli s7-300, rispetto agli S7-200, avvero la programmazione strutturata con i vari blocchi OB/FB/FC/DB. La mia domanda è la seguente, tale programmazione strutturata è utilizzata sono in ambito Siemens o è una caratteristica anche di altre marche di PLC? Nel caso in cui altre marchi di PLC adottassero anche loro tale tipo di programmazione, le differenze sono minime, magari i blocchi vengono chiamati in qualche altro modo, oppure ci sono grosse differenze e dunque il passaggio da Siemens S7-300 ad altro non è una cosa semplicissima (ovviamente per un neofita) ? Vi ringrazio tutti per le eventuali risposte.
lucios Inserita: 20 dicembre 2013 Segnala Inserita: 20 dicembre 2013 (modificato) La mia domanda è la seguente, tale programmazione strutturata è utilizzata sono in ambito Siemens o è una caratteristica anche di altre marche di PLC? Tutti i plc che si rispettino hanno la possibilità di suddividere la programmazione in blocchi "logici", anche se non tutti danno la possibilità di utilizzare "istanze" con dati separati come può fare Siemens con gli FB. dunque il passaggio da Siemens S7-300 ad altro non è una cosa semplicissima Più che altro quando lavori con altri poi ti viene il mal di pancia quando riprendi con Step7 di mamma Siemens . Ma questa è solo una mia personale opinione già espressa altre volte in questo forum... Ciao Modificato: 20 dicembre 2013 da lucios
PinokkioPLC Inserita: 20 dicembre 2013 Autore Segnala Inserita: 20 dicembre 2013 (modificato) Save Lucios, la possibilità di utilizzo di sottoprogrammi, per non riscrivere pezzi di codice utilizzati più volte o scritti in precedenza, l'avevo vista anche per l'S7-200, ma li mi è sembrato fosse solo un aiuto ad una migliore programmazione. Con l'S7-300 la cosa mi sembra molto più complicata, qui si intende proprio un altro modo di programmare, proprio tutta un'altra storia... ed effettivamente per uno che si avvicina a tale programmazione il passaggio s7-200 -> s7-300 non è una cosa semplice, ciò mi era stato già detto, ma ho voluto lo stesso leggere qualcosa per il 200 e poi iniziare con il 300, per vedere se poi c'era tutta questa differenza, e iniziando a leggere di tutti questi blocchi OB/FB/FC/DB inizialmente si fa molta confusione, mi sento rimbambito come dal passaggio alla programmazione procedurale in C, nell'esame fondamenti di programmazione, alla programmazione ad oggetti in java, nell'esame programmazione ad oggetti... Dunque anche se altri plc permettono l'utilizzo di sottoprogrammi, solo Siemens utilizza tutti questi blocchi, rendendo la cosa più complicata ad un inesperto, se cosi fosse partendo dal più difficile Siemens, poi il passaggio ad altri più semplici dovrebbe essere in qualche modo agevolato, o mi sbaglio? Grazie delle informazioni. Modificato: 20 dicembre 2013 da PinokkioPLC
lelos Inserita: 20 dicembre 2013 Segnala Inserita: 20 dicembre 2013 Più che altro quando lavori con altri poi ti viene il mal di pancia quando riprendi con Step7 di mamma Siemens . Ma questa è solo una mia personale opinione già espressa altre volte in questo forum... per me 100% ragione. Posso dirti che la programmazione strutturata con omron ,mitsubishi, schneider è un copia-incolla di codice. se cosi fosse partendo dal più difficile Siemens, poi il passaggio ad altri più semplici dovrebbe essere in qualche modo agevolato, o mi sbaglio? per me siemens è un mondo a parte. sicuramente siemens ,secondo me e vedendo ragazzi neo-diplomati sui plc, è più difficile da imparare ,per un inesperto, di altri plc . Ma non voglio cominciare il solito pro-contro siemens. Quello che conta per te ,è ciò che usi ,che vedi e che giudichi .
lucios Inserita: 20 dicembre 2013 Segnala Inserita: 20 dicembre 2013 (modificato) mi sento rimbambito come dal passaggio alla programmazione procedurale in C, nell'esame fondamenti di programmazione, alla programmazione ad oggetti in java, nell'esame programmazione ad oggetti... Beh, a parte che ti capisco perchè passare, come mentalità, dalla programmazione standard su macchine tipo PC ai PLC non è proprio banale e se non si capisce a fondo il concetto di sistemi operativi real-time si fa un pò di fatica. Però se hai studiato linguaggi evoluti dovresti cavartela... Lasciando perdere i concetti legati ai linguaggi ad oggetti (classi, ereditarietà, polimorfismo, ecc.) che fanno parte di un altro mondo, semplificando si potrebbe dire così (anche se i guru di Siemens frequentatori di questo forum probabilmente potranno essere più esaustivi: Siemens ha pensato bene di fornire dei blocchi di sistema chiamati OB la cui esecuzione è predeterminata dal sistema operativo (all'avvio, ciclicamente, in seguito ad allarmi, ecc. ecc.). All'interno di questi blocchi tu puoi inserire il tuo codice direttamente o il richiamo di altri blocchi chiamati FB e FC con i quali puoi strutturare il tuo programma come meglio credi (esistono anche librerie di FB e FC di sistema ma non "incasiniamoci" troppo per ora...). La differenza tra FB ed FC estremizzando e semplificando la puoi vedere così: FC: sono routine senza passaggio di dati statici. Io le utilizzo solitamente per suddividere il programma logicamente in blocchi (senza passaggio di dati) o per eseguire dei calcoli. FB: sono routine che possono utilizzare dati statici per mezzo di DB di istanza. Sono molto comode ad es. quando devi eseguire delle operazioni uguali più volte ma su variabili diverse (un pò come in C quando fai delle funzioni che utilizzano dei parametri puntatore o in VB quando passi dei parametri byref, tanto per capirci). Come impostazione di sistema è corretta, poichè riesci a strutturarti il codice in modo "quasi moderno". Quello che rende difficile il tutto è l'adozione di un linguaggio farragginoso e antiquato come AWL che è in pratica un macro-assembler (spaghetti like, se hai fatto un pò di informatica sai cosa intendo) che andava di moda quando ero giovane e che sarebbe ora di mandare in pensione. Esiste è vero anche la possibilità di farti il tutto in ladder, ma ti voglio vedere a maneggiare dati e puntatori... Poi c'è SCL che praticamente ti permette di programmare in uno pseudo-pascal (fatto male) che, una volta compilato produce in ogni caso un AWL assolutamente incomprensibile (almeno per i miei pochi neuroni rimasti funzionanti...). Modificato: 20 dicembre 2013 da lucios
PinokkioPLC Inserita: 20 dicembre 2013 Autore Segnala Inserita: 20 dicembre 2013 In primis grazie per l'esaustiva risposta, poi senza poter aggiungere altro non mi resta che iniziare, in quanto la roba da imparare è tanta e neanche tanto facile... ma penso che dopo tanti esami rompicapo superati, possa iniziare con un bel po' di impegno a muovere i primi passi in questo affascinante mondo. Per quanto riguarda i vari linguaggi di programmazione, se l'AWL si avvicina molto all'assembler, come cosa non mi dispiace tanto, in quanto ho fatto già qualcosa di molto semplice con dei microcotrollori per un esame, è quella modalità di programmazione mi divertiva tanto, altra sorpresa è stata per me anche il Ladder in quanto qualche piccolo esercizio contatti/bobine/temporizzatori/contatori l'ho messo sù con step7 microwin e simulato con i vari simulatori disponibili in rete, e devo essere sincero anche questa modalità di programmazione mi piace tanto..... Le mie prime impressioni su tale mondo sono molto positive per quanto riguarda la parte software e personalmente mi appassionano molto, quello che invece mi piace meno e che conosco meno (studiando ingegneria informatica e elettronica) è al parte di impiantistica azionamenti, pneumatica, ma queste cose penso che alla fine si inizieranno a capire solo sul campo, in quanto secondo me una cosa è studiare un azionamento sul libro e una cosa è poi averlo di fronte..... Grazie delle informazioni.
batta Inserita: 24 dicembre 2013 Segnala Inserita: 24 dicembre 2013 Quote per me 100% ragione. Che dire, per me è esattamente il contrario. Il mal di pancia mi viene quando riprendo in mano altri PLC e, per fare quello che con Siemens fai sfruttando FB ed FC (e relativo passaggio di parametri), devi fare chissà quali giri contorti, oppure accontentarti di fare dei rozzi copia/incolla di parti di codice praticamente uguali. Il discorso poi KOP-FUP-AWL-SCL non ha nulla a che vedere con modo in cui è strutturato un programma S7, ma riguarda solo il linguaggio. E, in questo senso, si potrebbe dire che Siemens ha qualcosa in più rispetto agli altri. Il KOP (o ladder) è comune a quasi tutti i PLC. Tutto quello che si scrive in KOP può essere visualizzato in FUP e viceversa, quindi, vista anche la scarsissima diffusione del FUP, non lo prendo nemmeno in considerazione. Negli altri PLC generalmente c'è la lista istruzioni, che però è solo la traduzione, in lista istruzioni appunto, di quello che è stato scritto in ladder. L'AWL di Siemens invece è qualcosa di diverso, perché tutto quello che è stato scritto in KOP può essere convertito in AWL, ma scrivendo direttamente in AWL sei molto più libero e puoi fare molto di più. Ecco che questo "maledetto" AWL è qualcosa che gli altri, generalmente, non hanno. Se poi l'AWL non ti piace e non lo vuoi usare, nessuno ti costringe a farlo. Puoi sempre usare KOP e SCL, come nella maggior parte degli altri PLC. Anche sul fatto che l'AWL sia farraginoso non sono d'accordo. Da un certo punto di vista si potrebbe considerare il linguaggio più semplice, visto che non si fa altro che scrivere, una alla volta, le istruzioni da eseguire. Tutto avviene in modo molto lineare. E poi c'è l'SCL. Sono abbastanza d'accordo sul fatto che sia un pseudo Pascal fatto male, ma questo non riguarda solo l'SCL di Siemens, ma il linguaggio strutturato usato nei PLC di tutte le marche. Una cosa che mi chiedo sempre è perché come linguaggio più evoluto nei PLC si sia affermato il testo strutturato, quando sarebbe stato meglio usare direttamente il C. Ma questo non riguarda solo Siemens. E il fatto che venga convertito in AWL non costituisce un problema, dato che debug e modifiche verranno fatti sempre usando il sorgente in SCL. O forse, con gli altri PLC, ti preoccupi di cosa ci sia tra il codice che hai scritto e il processore? E nelle nuove cpu S7-1200 e S7-1500 poi, non è più nemmeno vero. In Siemens c'è da fare un po' più di fatica per capire come utilizzare OB, FC, FB, DB globali e di istanza. Ma una volta imparato ad usarli, quello che all'inizio era una complicazione si traduce poi in maggior flessibilità. Le mie prime impressioni su tale mondo sono molto positive per quanto riguarda la parte software e personalmente mi appassionano molto, quello che invece mi piace meno e che conosco meno (studiando ingegneria informatica e elettronica) è al parte di impiantistica azionamenti, pneumatica, ma queste cose penso che alla fine si inizieranno a capire solo sul campo, in quanto secondo me una cosa è studiare un azionamento sul libro e una cosa è poi averlo di fronte..... Diciamo che per un programmatore di PLC la conoscenza dei linguaggi di programmazione è solo il primo passo e, a mio avviso, anche il più semplice. Poi non servirà a nulla avere perfetta padronanza del linguaggio se non si conoscono le problematiche dell'automazione.
lelos Inserita: 24 dicembre 2013 Segnala Inserita: 24 dicembre 2013 ciao. Che dire, per me è esattamente il contrario. Il mal di pancia mi viene quando riprendo in mano altri PLC e, per fare quello che con Siemens fai sfruttando FB ed FC (e relativo passaggio di parametri), devi fare chissà quali giri contorti, oppure accontentarti di fare dei rozzi copia/incolla di parti di codice praticamente uguali. non è affatto vero. anche gli altri plc hanno il passaggio di parametri e per parti uguali non devi fare copia incolla. Tutto quello che fai con siemens lo fai anche con altri e volte anche meglio. Chissà come fanno i programmatori che non usano siemens a fare i programmi ? Sono dei geni? E in Asia che non è molto usato come fanno ? Le case produttrici di plc mica sono state ferme in questi ultimi anni,anzi è una corsa per portare il plc alla portata di tutti (quello che non ha fatto siemens e stà cercando di fare ultimamente ) Prova anche le alternative aggiornate a siemens e valutale con senso critico e non partendo dal presupposto che siemens sia il meglio.
PinokkioPLC Inserita: 24 dicembre 2013 Autore Segnala Inserita: 24 dicembre 2013 Diciamo che per un programmatore di PLC la conoscenza dei linguaggi di programmazione è solo il primo passo e, a mio avviso, anche il più semplice. Poi non servirà a nulla avere perfetta padronanza del linguaggio se non si conoscono le problematiche dell'automazione. Di questo me ne sto convincendo giorno per giorno anche io....
batta Inserita: 24 dicembre 2013 Segnala Inserita: 24 dicembre 2013 non è affatto vero. anche gli altri plc hanno il passaggio di parametri e per parti uguali non devi fare copia incolla. Premetto che non ho nessuna intenzione di scatenare una guerra tra pro e contro Siemens, tanto meno la vigilia di Natale. Però non tutti ti danno la possibilità di passare parametri e di gestire istanze e multiistanze come Siemens. E chi lo fa, è comunque arrivato dopo. Tutto quello che fai con siemens lo fai anche con altri e volte anche meglio. Io fino ad oggi non ho mai trovato nulla che si potesse fare con altri PLC che non si potesse fare con Siemens, e spesso con meno fatica. Chissà come fanno i programmatori che non usano siemens a fare i programmi ? Sono dei geni? E in Asia che non è molto usato come fanno ? E chissà come fanno tanti programmatori a continuare a preferire Siemens, se veramente è così complicato ed astruso. Le case produttrici di plc mica sono state ferme in questi ultimi anni,anzi è una corsa per portare il plc alla portata di tutti (quello che non ha fatto siemens e stà cercando di fare ultimamente ) Prova anche le alternative aggiornate a siemens e valutale con senso critico e non partendo dal presupposto che siemens sia il meglio. Chi ti dice che non lo stia già facendo? Non sono ceto fossilizzato su Siemens. Se continuo ad usarlo è perché mi ci trovo bene. Solo per citare esempi recenti: - Ho provato ad usare il Mixorlogix 1400. Sulle caratteristiche del PLC, niente da dire: perfettamente allineato alla concorrenza nella stessa categoria, che per Siemens significa S7-1200. Per quanto riguarda il software di sviluppo, abituato ad usare Step 7 e TIA Portal, con RSLogixMicro mi pare di essere tornato indietro di 20 anni. E non si può nemmeno dire che sia un programma leggero. - Con Omron sono ancora fermo a CX Programmer 6.1, ma non mi risulta che nelle versioni più recenti ci siano novità eclatanti, e il passaggio di parametri e le istanze in stile Siemens non sono nemmeno nei pensieri dei giapponesi. - Ho valutato anche PLC ABB (programmazione in Codesys), e anche qui non ho visto nulla di nuovo. Nulla che me lo facesse preferire a Siemens. - Sto facendo un piccolo lavoro con un pannello operatore Proface con logica integrata. Soluzione interessante per piccole macchine soprattutto per il costo molto contenuto. Per quanto riguarda la programmazione, sono rimasto favorevolmente impressionato, ma anche qui nulla di nuovo. Nulla che non si possa fare con Siemens, spesso con minor fatica. Se poi capita che un programmatore abituato ad usare, per esempio Omron, si trova una volta ogni tanto a dover utilizzare Siemens, capisco perfettamente che si trovi spiazzato. Ma ti posso assicurare che vale anche il contrario.
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