Vai al contenuto
PLC Forum


Curiosità sui Programmatori PLC


nicco5858

Messaggi consigliati

Buongiorno,

premetto che forse non mi trovo nella divisione del Forum corretta,

comunque intanto scrivo qua...

Avevo una curiosità, cioè' mi chiedevo se tutti i programmatori PLC conoscevano

anche i linguaggi di C, C++, C# e se quest'ultimi erano necessari per completare un programmatore-esperto di PLC

o se semplicemente danno un qualcosa in più al programmatore 

Vi ringrazio,

Nick

 

P.S. Se la collocazione della discussione non è corretta, fatemelo presente che la sposto

Link al commento
Condividi su altri siti


In genere chi progetta su piattaforme C eccetera non sviluppa su PLC e vice-versa. 

Sapere tutto di tutti i linguaggi NON è purtroppo possibile e ci vorrebbero più vite vista l'evoluzione del software negli ultimi 30 anni.

Ciò non toglie il fatto che interazioni fra i due mondi siano possibili in quanto gli impianti non sono tutti PLC o tutti C e capiti di fare modifiche dall'altra parte.

 

Link al commento
Condividi su altri siti

io conosco un sacco di programmatori PLC che non conoscono niente di C.

Detto questo, penso che i mondi della programmazione PC e PLC sono ancora distanti, convergenti ma distanti.

Quindi, per rispondere alla tua domanda, un programmatore esperto di PLC sa programmare bene i PLC, questo basta (se diamo per scontata la tecnica dell'automazione). Un programmatore molto buono sa costruire script (che di solito girano sui pannelli) anche in altri linguaggi. Inoltre la conoscenza di questi linguaggi permette di sviluppare applicativi ad hoc per pc ed altri componenti degli impianti.

In soldoni saper programmare in altri linguaggi fa di un programmatore PLC un integratore di sistemi completo, che non sempre serve, visto che il mondo dei PLC riesce a coprire uno spettro di casistiche industriali molto ampio.

Ovvio che questa è una considerazione personale, si potrebbero fare 1000 distinguo caso per caso.

bye

 

 

Link al commento
Condividi su altri siti

ciao

restando sempre nel campo dell'automazione ci sono molti programmatori di plc  che non sanno o che sanno ben poco di motion control (non intendo il treno d'impulsi) o di robot .

Per non parlare poi della visione artificiale.

Saper usare il C in automazione aiuta molto con gli scada , con i database,ecc  ; ma te ne fai ben poco se devi fare visione  per esempio con halcon , ti servono altre competenze.

Ovvio (come scrive Cialtrone)  che questa è una considerazione personale .

Link al commento
Condividi su altri siti

Nicola Carlotto

per chi ha ben capito il codice binario la differenza tra la programmazione plc e il mondo informatico dei pc e' molto piccola..

Ciao

 

Link al commento
Condividi su altri siti

elettromirko85

Ciao a tutti mi trovo a dire di non essere completamente d’accordo con quanto detto da alcuni... ora con i nuovi compilatori la possibilità di programmare in c o similare c’è... vedi scl per siemens (non è un c puro ma per chi programma in strutturato in c è poco traumatica la comprensione), e anche a livello di programmazione plc non è detto che uno che fa automazione plc va solo in kop... penso che non esiste il linguaggio di programmazione migliore, ma quello più adatto al compito che si deve fare... io uso il kop dove serve per anche essere più comprensibile da tutti (e a me in primis pensa a una chiamata alle 3 di notte in teleassitenza vai a ripensare a cosa avevi in testa in quel momento che hai scritto quel maledetto pezzo di codice😂😂😂), e quando serve vado di scl... esempio banale, devo gestire un marcia arresto kop tutta la vita, devo lavorare con degli indici e gestire la scrittura di una determinata variabile in un punto preciso di un array vado di scl! Pensate ragazzi a chi usa b&r... lì si usa c... poi sono d’accordo che un programmatore che viene dalla informatica pura a fare automazione si trovi un po’ spiazzato...  non per la differenza della piattaforma di programmazione ma di ciò che deve elaborare... sarà preparatissimo in molte cose ma dei problemi legati alla meccanica alla elettronica  alla elettrotecnica.... insomma di ciò che il tuo sw devea gestire... qui può trovare difficoltà... e qui vedo la vera differenza tra chi fa automazione industriale e chi fa sw per pc!

 

buona serata

👋👋👋

Link al commento
Condividi su altri siti

Buongiorno,

vi ho chiesto questo perché attualmente sto imparando ad

utilizzare l'AWL Siemens e volevo sapere appunto quanto fosse facilitato 

un programmatore che conosceva anche il C, C++, C Sharp ad entrare nel mondo dei PLC... 

Personalmente, io sono un perito elettronico e dei linguaggi di programmazione citati qui sopra 

ho fatto veramente poco (terra terra); naturalmente anche i PLC li sto imparando a conoscere, visto 

che non provengo dal mondo dell'automazione.

Nick

 

Link al commento
Condividi su altri siti

Quote

e volevo sapere appunto quanto fosse facilitato 

un programmatore che conosceva anche il C, C++, C Sharp ad entrare nel mondo dei PLC... 

 

Secondo me il vantaggio del conoscere linguaggi di programmazione tipo C, è quasi nullo.
Perché dico questo? Perché, per programmare un PLC, la conoscenza del linguaggio di programmazione è la fase più facile.
Quello che serve è il giusto approccio e, spesso, chi ha basi puramente informatiche, pensa di affrontare la programmazione di un PLC come affronterebbe la programmazione di un applicativo office. Niente di più sbagliato.
Poi, chi è abituato a programmare in linguaggi tipici da PC, quando si avvicina ad un PLC tende a sviluppare tutto in testo strutturato, perché è il linguaggio più familiare.
Ma fare tutto in testo strutturato non è certo la scelta migliore.
Poi servono almeno le basi di elettrotecnica, conoscere sensori, strumenti, trasduttori vari, inverter, e molto altro.

 

Link al commento
Condividi su altri siti

6 minuti fa, nicco5858 scrisse:

Quanta differenza c'e' fra le due programmazioni di testo AWL(Siemens) e

Testo Strutturato(che può somigliare ad un Testo C)?

Nick 

La stessa differenza che c'è tra programmare in C ed in Assembler.

Se devi partire da zero , ti consiglio di lasciar perdere l'AWL e focalizzarti su Ladder , ST e Grafcet

Link al commento
Condividi su altri siti

il 19/10/2018 at 21:29 , elettromirko85 scrisse:

Ciao a tutti mi trovo a dire di non essere completamente d’accordo con quanto detto da alcuni... ora con i nuovi compilatori la possibilità di programmare in c o similare c’è... vedi scl per siemens (non è un c puro ma per chi programma in strutturato in c è poco traumatica la comprensione), e anche a livello di programmazione plc non è detto che uno che fa automazione plc va solo in kop... penso che non esiste il linguaggio di programmazione migliore, ma quello più adatto al compito che si deve fare... io uso il kop dove serve per anche essere più comprensibile da tutti (e a me in primis pensa a una chiamata alle 3 di notte in teleassitenza vai a ripensare a cosa avevi in testa in quel momento che hai scritto quel maledetto pezzo di codice😂😂😂), e quando serve vado di scl... esempio banale, devo gestire un marcia arresto kop tutta la vita, devo lavorare con degli indici e gestire la scrittura di una determinata variabile in un punto preciso di un array vado di scl! Pensate ragazzi a chi usa b&r... lì si usa c... poi sono d’accordo che un programmatore che viene dalla informatica pura a fare automazione si trovi un po’ spiazzato...  non per la differenza della piattaforma di programmazione ma di ciò che deve elaborare... sarà preparatissimo in molte cose ma dei problemi legati alla meccanica alla elettronica  alla elettrotecnica.... insomma di ciò che il tuo sw devea gestire... qui può trovare difficoltà... e qui vedo la vera differenza tra chi fa automazione industriale e chi fa sw per pc!

 

buona serata

👋👋👋

Un informatico saprà di tutto di programmazione , ma dovrà conoscere il dominio in cui andrà a programmare.

Questo vale per un Gestionale (dove se non conosci la contabilità la vedo dura) , ma ancor di più per l'automazione dove devi saperne di tutto (meccanica , elettrotecnica , elettronica , pneumatica , informatica , idraulica e più ne hai e più ne metti).

Avere una preparazione informatica è molto importante , ma purtroppo c'è tantissima gente che programma senza avere la più pallida idea di cosa voglia dire fare programmazione strutturata (non parlo ad oggetti) e li si vede la differenza tra un programmatore serio ed uno improvvisato.

Link al commento
Condividi su altri siti

58 minuti fa, batta scrisse:

Poi servono almeno le basi di elettrotecnica, conoscere sensori, strumenti, trasduttori vari, inverter, e molto altro.

 

Questo è verissimo.

 

Però per programmare un PLC servono almeno le conoscenze fondamentali di informatica e programamzione.

Programmare un PLC non significa accatastare un po' di istruzioni e poi a forza di pezze far funzionare la macchina più o meno bene!

Programmare un PLC non significa nemmeno riprodurre pedissequamente uno schema a contatti di relè.

 

Purtroppo si vedono ancora troppi programmi di plc che fanno inorridire e se si dv procedere anche ad una pur minima modifica crolla tutto come un castello di carte.

 

Un programmatore informatico, se impara a conoscere macchina e ambeinte di sviluppo potrà produrre ottimi programmi di PLC se, e solo se, sopra di lui c'è un analista esperto che conosce la macchina e tutte le problematiche elttriche, meccaniche, sensoristiche, etc., che analizzerà il sistema e fornirà al programamtore le scpecifiche su cui realizzare le varie funzioni.

Link al commento
Condividi su altri siti

Quote

Un programmatore informatico, se impara a conoscere macchina e ambeinte di sviluppo potrà produrre ottimi programmi di PLC

Sicuramente.

Le basi della programmazione, per programmare, sono indispensabili. Non credo serva dirlo.
E chi ha una grande preparazione, e non solo le basi, ovvio che ha una marcia in più.
Però, come è vero che esistono troppi programmi fatti funzionare a martellate perché privi di una benché minima strutturazione, è vero anche che, quasi sempre, quando un informatico si mette a programmare PLC, fino a quando non avrà capito che deve cambiare completamente approccio, riesce a scrivere delle cose incomprensibili e che funzionano solo se tutto procede come lui aveva immaginato.

Non serve avere completa padronanza delle classi, se poi, per fare un marcia/arresto, si fanno voli pindarici che ti portano a scrivere 50 righe di codice.
Quello che voglio dire, se non fosse ancora chiaro, è che un informatico ha tutte e carte in regola per poter diventare un buon programmatore di PLC ma, pur con le sue solide basi teoriche, avrà comunque bisogno di alcuni anni di esperienza.

Link al commento
Condividi su altri siti

La qualità di un programma io la misuro dalla facilità di essere modificato ANCHE DA ALTRI.

Se per modificare la logica di una valvola bisogna tribolare per un'ora e mezza vuol dire che il software è fatto in modo discutibile. 

Altro parametro di valutazione personale: commenti e commenti e commenti (anche perché dalla stesura al test io mica mi ricordo cosa ho fatto....).

Tornando all'argomento della discussione: la padronanza della programmazione a oggetti  non serve per programmare un PLC, tantomeno tarare un servomotore o un controllo di temperatura o un lettore di codici a barre o un lettore di RFID...........

 

Link al commento
Condividi su altri siti

48 minuti fa, pigroplc scrisse:

Tornando all'argomento della discussione: la padronanza della programmazione a oggetti  non serve per programmare un PLC, tantomeno tarare un servomotore o un controllo di temperatura o un lettore di codici a barre o un lettore di RFID...........

 

Per ora no , ma in futuro secondo me si arriverà li.

Già vedo che alcuni software per PLC come Codesys danno l possibilità di creare dei dati ereditati , funzioni tipiche della programmazione ad oggetti (anche se al 99,9% della gente manco sa che esistono o se lo sa non capisce che cosa siano).

Anche certi protocolli tipo Bacnet lavorano ad oggetti , ed il futuro lo vedo con un'integrazione stretta tra plc e scada ad oggetti come cercano giò di fare software tipo quelli di Rockwell con librerie a scada che fanno scopa con certe strutture all'interno del plc per ridurre al minimo i tempi di programmazione , migliorare la riusabilità del codice , ecc....

Link al commento
Condividi su altri siti

1 ora fa, ifachsoftware scrisse:

Già vedo che alcuni software per PLC come Codesys danno l possibilità di creare dei dati ereditati , funzioni tipiche della programmazione ad oggetti (anche se al 99,9%

Io ho la gestione delle ricette customizzata rispetto a quanto offre mamma Siemens perché non lo condivido per mille motivi, quindi le classi e i metodi del VBA li mastico sufficientemente, ma lungi da me considerarmi un softwarista di livello superiore. 

Ritengo che la maggior parte del lavoro sia di livello inferiore, poi si potrebbe disquisire per ore, magari di fronte a qualche succo di frutta con le bollicine....😂

 

 

Link al commento
Condividi su altri siti

elettromirko85
10 ore fa, ifachsoftware scrisse:

Un informatico saprà di tutto di programmazione , ma dovrà conoscere il dominio in cui andrà a programmare.

Questo vale per un Gestionale (dove se non conosci la contabilità la vedo dura) , ma ancor di più per l'automazione dove devi saperne di tutto (meccanica , elettrotecnica , elettronica , pneumatica , informatica , idraulica e più ne hai e più ne metti).

Avere una preparazione informatica è molto importante , ma purtroppo c'è tantissima gente che programma senza avere la più pallida idea di cosa voglia dire fare programmazione strutturata (non parlo ad oggetti) e li si vede la differenza tra un programmatore serio ed uno improvvisato.

Scusa rileggi cosa o scritto...  

 

sono d’accordo che un programmatore che viene dalla informatica pura a fare automazione si trovi un po’ spiazzato...  non per la differenza della piattaforma di programmazione ma di ciò che deve elaborare... sarà preparatissimo in molte cose ma dei problemi legati alla meccanica alla elettronica  alla elettrotecnica.... insomma di ciò che il tuo sw devea gestire... qui può trovare difficoltà... e qui vedo la vera differenza tra chi fa automazione industriale e chi fa sw per pc!

Link al commento
Condividi su altri siti

elettromirko85
9 ore fa, pigroplc scrisse:

La qualità di un programma io la misuro dalla facilità di essere modificato ANCHE DA ALTRI.

Se per modificare la logica di una valvola bisogna tribolare per un'ora e mezza vuol dire che il software è fatto in modo discutibile. 

Altro parametro di valutazione personale: commenti e commenti e commenti (anche perché dalla stesura al test io mica mi ricordo cosa ho fatto....).

Tornando all'argomento della discussione: la padronanza della programmazione a oggetti  non serve per programmare un PLC, tantomeno tarare un servomotore o un controllo di temperatura o un lettore di codici a barre o un lettore di RFID...........

 

Esistesse il tasto straquota lo pigerei a sfondare lo schermo del tablet 😂😂😂 verissimo! Commenti commenti e commenti, mi è capitato di mettere le mani su un’sw dove le uscite venivano abilitate nel ciclo con dei set e reset(e già qui partiamo male)... peccato che nel programma questa cosa avveniva ovunque... ricordo per una uscita vi erano 15 o forse più condizioni di abilitazione e altrettante di disabilitazione... in 5 Fc sparse nel programma... (e nemmeno mezzo commenti).... un casino assurdo! Sorrido ancora pensando che aveva chiamato una variabile con il nome del cliente...

 

ps penso che delle volte questi magneggi vengano fatti a posta per rendere impossibile la lettura del programma!

Link al commento
Condividi su altri siti

elettromirko85
9 ore fa, batta scrisse:

Quello che voglio dire, se non fosse ancora chiaro, è che un informatico ha tutte e carte in regola per poter diventare un buon programmatore di PLC ma, pur con le sue solide basi teoriche, avrà comunque bisogno di alcuni anni di esperienza.

Verissimo Batta 👍

Link al commento
Condividi su altri siti

18 ore fa, batta scrisse:

Quello che voglio dire, se non fosse ancora chiaro, è che un informatico ha tutte e carte in regola per poter diventare un buon programmatore di PLC ma, pur con le sue solide basi teoriche, avrà comunque bisogno di alcuni anni di esperienza.

 

Sono perfettamente daccordo.

Oppure si può effettuare il percorso inverso: su una buona base di conoscenze teorico pratiche di elettromeccanica, elettronmica e fisica si va ad aggiungere anche le conoscenze teoriche di inormatica.

E un po' simile al mio percorso professionale.

 

La sostanza di tutto è che un buon programmatore di PLC, non è solo un programmatore ma è un analista (di sistemi complessi) ed un programamtore.

Peccato che quasi questa elevata professionalità venga riconosciuta a livello monetario.

18 ore fa, pigroplc scrisse:

La qualità di un programma io la misuro dalla facilità di essere modificato ANCHE DA ALTRI.

 

Questa è la base della buona progettazione Sw. Un programma che non ha questa caratteristica non è un buon programma.

Purtroppo nella realtà quotidiana spesso ci si scontra con programmi che sembra siano stati pensati proprio per non permettere questo lavoro

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