Vai al contenuto
PLC Forum


Limitazioni Linguaggio Kop


PinokkioPLC

Messaggi consigliati

Buongiorno a tutti, premetto di essere un principiante ed autodidatta del mondo dei PLC.... comunque a natale mi sono regalato vari libri per imparare qualcosa, tra questi:

1) PLC controllori logico programmabili-Massimo Barezzi (programmazione ladder PLC CJ1 OMRON)

2) manuale di programmazione dei PLC-Luca Bergamaschi (programmazione KOP PLC S7-200 Siemens)

Un mio dubbio è il seguente: Siccome dopo varie dispense lette online il linguaggio ladder mi piace tanto ed i due libri acquistati si basano proprio su questo, volendo in prospettiva iniziare a studiare qualcosa anche per l'S7-300, tale PLC può essere completamente programmato in KOP, oppure alcune cose non si possono fare e dunque è necessario anche imparare l'AWL ?

PS: Non sono interessato a sapere quale linguaggio sia meglio, e sono a conoscenza che alcune cose conviene farle in un linguaggio ed altre in altri linguaggi, voglio solo capire se imparando a programmare in ladder un PLC Omron e l'S7-200, poi adatto le mie conoscenze per l'S7-300 e dunque almeno per l'inizio qualcosina so fare, oppure per l'S7-300 sono obbligato ad imparare per forza anche l'AWL.

Grazie, ciao.

Link al commento
Condividi su altri siti


col ladder oltre un certo limite di controllo non puoi andare

per fare pilotaggi personalizzati di fino è indispensabile usare l'awl

i libri didattici ovviamente partono dal kop perchè più "umano" da insegnare e imparare

l's7 300 usa tranquillamente il kop: non vedo ragione di forzare l'awl a ogni costo

Modificato: da fraandco
Link al commento
Condividi su altri siti

ciao

col ladder oltre un certo limite di controllo non puoi andare

questo forse vale per siemens.

il set di istruzioni ladder di un plc omron serie cj è molto vasto e può fare di tutto.

Magari l'awl in certe cose te li semplifica (c'è chi sostiene di si)

Se usi il ladder omron probabilmente ci sono operazioni che in kop non ci sono, ma che puoi fare in awl .

Però le istruzioni base ,time ,contatori......spostamento dati , shift dati ....,ci sono per tutta la maggior parte dei plc,quindi quello che impari con il ladder omron non lo butti tutto via per siemens e lo stesso vale al contrario (sempre parlando di ladder).

Link al commento
Condividi su altri siti

col ladder oltre un certo limite di controllo non puoi andare

Se lo si conosce bene si può fare tutto, basta non limitarsi al set codificato nello standard IEC.

Alcune operazioni son più facili con altri linguaggi, ma sono comunque possibili.

i libri didattici ovviamente partono dal kop perchè più "umano" da insegnare e imparare

Questo è il peccato originale della didattica PLC.

I linguaggi ladder non dovrebbero essere usati per la didattica perchè sono diseducativi per la programamzione.

Il ladder diagram è nato per per permettere di far usare i PLC a chi non sa programmare. Sino a quando con il PLC si facevano automazioni sostitutive delle logiche a relè (anni '60 e inizio anni '70) era ammissibile. Con le macchine odierne è qausi un insulto.

in questo modo si formano utenti di PLC che fanno pessimi programmi, fatti funzionare a mazzate. Programmi non ben strutturati e disordinati.

Se si insegnasse con linguaggi simili allo AWL che è una specie di assembler, già la formazione sarebbe migliore.

meglio ancora se si usasse il "C", ma questo linguaggio è osteggiato dai costruttori perchè non "fidelizza" l'utente. :angry:

Link al commento
Condividi su altri siti

E' anche questione di abitudine, col 300 sto meno a scrivere un segmento KOP complesso in AWL piuttosto che direttamente in KOP, ma non mi sognerei mai di andare in stato online (parlo di segmenti a logica booleana) in AWL. Col 200 invece la situazione si ribalta, mi trovo molto bene a disegnare i contatti in serie/parallelo usando CTRL+FRECCE (spero di non sbagliarmi sul CTRL, scrivo da un PC che non ha s7-200).

Tornando al 300 trovo più comodo scrivere tutte le istruzioni che non siano booleane in AWL, credo proprio di non aver nessun FB scritto in KOP, per cui ritengo sia utille se non indispensabile conoscerlo (a meno di non usare SCL che però appesantisce molto il codice che sarà caricato nel plc)


Con le macchine odierne è qausi un insulto

Questo è un punto di vista

Link al commento
Condividi su altri siti

Bhe non è l'st il linguaggio ad alto livelli per i plc ??

Mi son confuso volevo dire scl o sono la stessa cosa??

Modificato: da stefano_
Link al commento
Condividi su altri siti

Questo è un punto di vista

Ovviamente riflette un'idea personale.

Però io sono giunto ai PLC sapendo programmare com puter e micro e, soprattutto, avendo studiato seriamente la programmazione. ( a livello universitario).

I PLC son nati su specifiche della General Motors. DOvevano essere strumenti adatti alle conoscenze tipiche dei manutentori delle fabbriche automobilistiche degli anni '60, quindi anche il linguaggio di programmazione doveva essere adattato alle loro conoscenze.

Ricordo ai tempi in cui lavoravo in Ercole Marelli, la Westingose aveva fatto qualche cosa di simile per venire incontro alle sesigenze del personale di manutenzione delle fabbriche siderurgiche.

La logica di impianto si poteva scrivere in ladder diagram, poi il compilatore traduceva il tutto, mentro lo SO prendeva in carico il programma come un Job.

Crescendo le prestazioni dei PLC, oggi si può fare tutto con queste macchine, si possono fare cose che 30 anni fa qausi non poteva fare un calcolatore di processo. Il guaio è che spesso chi programma i PLC non ha la cultura informatica necessaria. Quin di l'uso di linguaggi come il ladder permette di fare enorme porcherie. Il programma alla fine, a forza di amzzate, gira. però alla prima modifica crolla tutto come un castello di carte.

Ovviamente non tutti, fortunatamente, lavorano in questo modo.

Però, troppe aziende affidano lavori di programmazione, basandosi solo sul costo del programmatore......Poi magari si chiedono perchè i lavori fatti da programmatori più "pretenziosi" son più affidabili.

Ma sto ripetendo concetti che esprimo da quando aprtecipo a PLC forum, e son forse più di 10 anni. :(

come il c non esiste per i plc ?

Sono pochissimi, e solo marche "minori", che permettono l'uso di questo linguaggio universale.

La ragione è semplice. Se tu scrivi un programma in "C" che gira su un PLC della marca "X" lo puoi far girare senza qausi intervenire su qualsiasi altro PLC. Questo no piace ai grandi costruttori.

Immagiana cosa suiccederebbe se tu spendessi 300 ore per scrivere un programma per S7-300, poi senza quasi lavorare potessi trasferirlo si A&B o GE, o Omron, tanto per citare 4 costruttori di PLC molto diffusi.

Significherebbe che l'investimento ioniziale non sarebbe legato alla marca del PLC.

Questo accade da sempre nel mondo PC. Se scrivi un'applicazione per Window sei indipendente dallo Hw; non solo se hai scritto l'applicazione usando "C", am anche Java, puoi passare da Win a Linux senza troppo lavoro.

Con i PLC è impossibile, perchè non lo vogliono i costruttori.

Io spero che presto o tardi, l'autorità per la libera concorrenza faccia qaulche cosa, come ha imposto determinate cose a Microsoft, dovrebbe imporle anche ai costruttori di PLC.

E non misi venga a dire che è gia così perchè esiste lo standard IEC. Vorrei proprio sentire di qualcuno che programma professionalmente i PLC usando esclusivamente la parte di linguiaggio che rientra nello standard.

Provate a farlo con KOP o AWL!

Link al commento
Condividi su altri siti

Quindi anche l'st è diverso da plc a plc ?

Credevo che un ciclo for è un ciclo for ma cicli basilari a parte probabilmente ci sono funzioni/comandi che variano da plc a plc

giusto??

Link al commento
Condividi su altri siti

Quin di l'uso di linguaggi come il ladder permette di fare enorme porcherie

Se uno è un caprone lo è indipendentemente dal linguaggio che usa, però è anche vero che un linguaggio più facile può avvicinare più caproni :P

Link al commento
Condividi su altri siti

beh

per windows/linux/osx la cosa è già più attuabile: si tratta solo di usare le librerie appropriate e le modifiche sono fattibili nel tempo e spazio

La ragione è semplice. Se tu scrivi un programma in "C" che gira su un PLC della marca "X" lo puoi far girare senza qausi intervenire su qualsiasi altro PLC. Questo no piace ai grandi costruttori.

purtroppo è sempre la logica del profitto a obbligare a complicare le cose, ma se ci pensiamo è un paradosso assurdo

Link al commento
Condividi su altri siti

ciao

come il c non esiste per i plc ?

esiste .. esiste ci sono plc che montano cpu programmabili in C(ansi) sole o abbinate a cpu normali (ladder. linguaggio strutturato ,ecc).

Voglio però vedere a fare un debug , perché l'ambiente non di sviluppo pur bello che sia non è quello microsoft , mentre è molto più facile testare il programma off-line.

Il mondo non finisce ai confini dell' Europa. (per fortuna) :thumb_yello:


ciao

aggiungo:

Ok ma l'st non si avvicina al c ?



Non c'entra la vicinanza, ma la portabilità.

i programmi scritti in st con i plc japan sono trasportabili per le gradi marche plc japan al 99 %.

Link al commento
Condividi su altri siti

e un debug

Crescendo le prestazioni dei PLC, oggi si può fare tutto con queste macchine, si possono fare cose che 30 anni fa qausi non poteva fare un calcolatore di processo. Il guaio è che spesso chi programma i PLC non ha la cultura informatica necessaria

se devi fare piccola automazione non serve essere ingegnere.

l'evoluzione che hanno i plc in 2 anni è paragonabile a quello che tempi indietro si aveva in 10 anni.

io programma plc da 25 anni e negli ultimi anni è un continuo aumento di prestazioni , di nuovi modelli , di funzioni nuove abbinate al ladder, di semplificazione per portare il plc alla portata di tutti e il ladder non morirà mai.

Un esempio lampante è il motion control.

Fino a circa 6 anni fà dovevi avere buone basi informatiche per programmare un motion (non singoli assi , ma interpolazioni, inseguimenti tra assi ed encoder ,ecc, cose complesse) ora lo hanno portato a un livello che, un diplomato , più tranquillante farlo dopo un corso di pochi giorni.

Alcuni costruttori di plc stanno mettendo un linguaggio molto simile al ladder per il motion , perché solo portando l'alta tecnologia alla semplificazione e alla portata di più persone riusciranno a vincere il mercato.

Io non sono ingegnere , non so programmare i microprocessori ma i programmi che faccio in ladder funzionano , sono facilmente modificabili e sono lunghi minimo 20k step (20000 istruzioni ld base) e un debug mi impegna poco tempo.

ciao

Link al commento
Condividi su altri siti

:wacko: non volevo scatenare una discussione sui vari linguaggi, volevo solo sapere se imparando il KOP per l's7-300 (dopo averlo imparato per l's7-200 e OMRON dei quali ho acquistato libri) presentandomi ad un futuro eventuale colloquio di lavoro, mi sentivo rispondere che sapendo solo il KOP per l's7-300 non sapevo quasi fare niente visto che è indispensabile l'AWL per tale PLC.

PS: Ovviamente il mio sapere qualcosa è limitato al contesto di un neolaureato che ha studiato da autodidatta i PLC, quindi non pretendo di sfruttare l's7-300 al 100% con le mie competenza.

Link al commento
Condividi su altri siti

... mi sentivo rispondere che sapendo solo il KOP per l's7-300 non sapevo quasi fare niente visto che è indispensabile l'AWL per tale PLC.

ciao

ai colloqui di lavoro se parlano di s7-300 ti chiedono se conosci l'awl, quindi è indispensabile .

Link al commento
Condividi su altri siti

ciao

a proposito , righe tratte da una faq siemens sul 1200

Con quali linguaggi di programmazione di Step 7 Basic V12
è possibile programmare un S7-1200?
• Linguaggio a Contatti (Ladder)
• Diagramma Blocchi Funzionali (FBD)
• Linguaggio strutturato “simil Pascal” (SCL)
Per S7-1200 NON è disponibile il classico AWL.

io la prendo come è scritta, per specifiche più reali occorre chiedere a chi usa siemens , ma sulla tua domanda mi sorge un dubbio.... :o

Link al commento
Condividi su altri siti

Salve Lelos sono ben consapevole che ci sono vari linguaggi per programmare l's7-300, mi sembra 5-6 KOP-AWL-FUP-SCL-GRAPH..... da autodidatta, principiante e con altri 6 esami da fare per la laurea, non posso impararli tutti, ma vorrei cercare di prepararmi in modo da presentarmi minimamente formato per eventuali colloqui di lavoro, avendo visto che il ladder è adottato da tutti i PLC, non cambia eccessivamente da PLC a PLC (anche se cambia il nome l'istruzione la logica dell'istruzione è bene o male quella) la mia idea era quella di puntare su questo linguaggio, avendo anche libri per l's7-200 e PLC OMRON.

Adesso sentirmi dire che per l'S7-300 o sò l'AWL o non sò niente è una bella botta..... :(, non perché io non voglia o non possa imparare l'AWL, ma attualmente mi posso concentrare su 1 solo linguaggio per il tempo libero che ho.

Link al commento
Condividi su altri siti

Per S7-1500 , che sostituirà S7-300 e che dovrà funzionare con gli stessi programmi oltre che con i programmi di S7-1200, AWL è indidspensabile.

Link al commento
Condividi su altri siti

per amed:

sempre da siemens :

Sul 1500 Siemens propone invece il linguaggio STL (Structure Language), altro non è che l’AWL ripulito, per renderlo compatibile con la normativa IEC-61131-3.

sempre preso per quello che leggo da siemens

se è vero, il passaggio da siemens ad altri plc o viceversa non sarà più un problema (togliendo l'awl e mettendo SCL e STL )

ciao

Link al commento
Condividi su altri siti

se devi fare piccola automazione non serve essere ingegnere.

Essere ingegnere non serve ne per piccoli impianti ne per grandi impianti. L'unica con dizione necessaria e sufficiente è essere capaci, indipendentemente dal certificato di studio!

Rimane ilfatto che anche con un piccolo PLC, se ilavoro è fatto male, da caproni, per usare il termine di JumpMan :smile: , è sempre un lavoro fatto male, anche se chi la fatto è un ingegnere magistrale con 20 anni di esperienza.

l'evoluzione che hanno i plc in 2 anni è paragonabile a quello che tempi indietro si aveva in 10 anni.

Questo è un concetto errato, devi relativizzare sempre tutto. Cerco di chiarire con un esempio. Un incremento del 10% della velocità è sempre il 10%, ma se incrementi del 10% un PLC che esegue 1000 istruzioni in 100 ms otterrai 10 ms di tempo in meno, se invece impiega 100 µs semrpe per eseguire le 1000 istruzioni, il tempo risparmiato sarà solo di 10 µs, me sempre 10% è.

Idem per le prestazioni, e questo non riguarda solo i PLC. C'è un teorema empirico che stabilesce che ogni 2 anni le prstazioni raddoppiano. Questo vale per tutti i dispositii informatici. Ora però si sta arrrivando alla saturazione. Serve un salto tecnologico. Si stanno provando nuove vie come le giunzioni in grafene. Quando la nuova via sarà consolidita la corsa, probabilmente, riprenderà.

Rimane il fatto che un lavoro fatto male, senza magari sapere bene come e perchè funziona, è sempre un lavoro mal fatto indipendentemente dalle prestazioni della macchina usata.

Se pensi che sia impossibile debuggare bene un programma scritto in "C" in un ambiente PLC, significa che non conosci la programmazione, anche se son 20 anni che lavori.

20 anni fa debuggavo tranquillamente controlli scritti in "C" o in PLM in ambiente embedded che èmoklto più ostico di un PLC. Prima ancora si debugguvano tranquillamente programmi scritti per calcolatori di processo senza sovrchie preoccupazioni.

Il problema è sempre ilsolito: bisogna saper fare il lavoro.

Poi è chiaro che per una persona che non sa programmare, vedere un contatto che si chiude, quando dovrebbe aprirsi, è molto più facile che pensare perchè la condizione prevista non si è verificata. ;)

Avere la compatibilità sul 99% dei prodotti made in Japan sarà anche una bella cosa, ma non è la stessa cosa della portabilità universale.

Se scrivo un programma in "C", oggi lo posso far girare in ambiente Win, in ambiente Linix, o anche in un ambiente RTOS come il QNX.

Questa è la pèortabilità vera.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

PLC KernelGroup

programmabili in : "ladder" , "awl" e ( informatevi ) "c" .

il tutto naturalmente GRATIS .

Anche io uso SIEMENS ( se richiesto ) , praticamente e come montare il motore di una "ferrari" su una "punto" per le macchine che facciamo ( max 100 in/out )

Senza ombra di dubbio il TIA è ben fatto dopo un luuuuuuuungo periodo di rodaggio adesso sembra più stabile ( a spese nostre , anche monetarie )

Comunque per tornare alla domanda iniziale , puoi imparare anche gratuitamente scaricandoti i SW e i manuali di PLC meno pubblicizzati

anche perché il LADDER e come disegnare uno schema elettrico , se sai far quello riuscirai a fare i tuoi primi programmini di prova , e da li andare avanti .

Buon lavoro e buon anno a tutti .

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