Arduino e PLC. Quali differenze?

Ciao a tutti,
ieri ho incontrato un amico che ha automatizzato una macchina manuale per la ricarica dei bossoli dei proiettili (pratica il tiro dinamico). Ebbene, ha utilizzato un PLC siemens che costa 500€ senza nemmeno gli input analogici per i quali ha speso altri 190€ per un modulo aggiuntivo con 4 pin analogici (per non parlare del manuale di 3000 pagine per imparare a programmare in ladder). Gli ho chiesto perché non avesse utilizzato Arduino, e lui mi ha risposto che neanche sapeva cosa fosse. È cominciata quindi tutta una discussione per cercare di capire se lo stesso risultato si sarebbe potuto ottenere con Arduino. Io ho cercato di difendere la nostra "piattaforma" in tutti i modi ma essendo un neofita non sono riuscito a rispondere a tutte le sue domande tecniche.
Cercando poi su internet quale fosse la differenza tra Arduino e un PLC ho trovato pagine su cui si parla di differenze dell'architettura (e su questo non ci piove), differenze sul tipo di programmazione (e anche su questo non avevo dubbi), differenze sulla robustezza nei riguardi di condizioni operative sfavorevoli (umidità, campi magnetici dcc.) e differenze sulla "professionalità" dei PLC (in poche parole sono omologati per un utilizzo industriale). Non sono però riuscito a capire quali siano le limitazioni effettive (sui risultati ottenibili) di Arduino rispetto a un PLC. Voi che mi dite?

dipende che PLC, e dipende che arduino.

In generale dal punto di vista pratico un arduino UNO può sostituire un PLC senza problemi. Certo senza info su cosa fa col PLC non possiamo dare una risposta più "tecnica" e "definitiva"

Ho trovato il video su youtube. La macchina è questa:

Considerando che su molti PLC c'è un ATMega8 o equivalente, la risposta è scontata.

Arduino usa un 328, ben più capiente.

Poi, specie i Siemens, sono più complessi, ma alla fine tra un PLC e un Arduino, ci passa solo l'Hardware per l'adattamento dei valori in ingresso (una manciata di diodi e zener) e quelli verso l'uscita (un ULN 2003 + qualche transistor PNP), questo perchè lo standard PLC è a 24V DC.

non conosco la storia, ma credo che i PLC avevno più senso in era pre-microcontrollori, ormai sono solo uno "standard de facto", sia da punto di vista certificazioni che dal punto di vista linguaggio, che è più di alto livello

lesto:
non conosco la storia, ma credo che i PLC avevno più senso in era pre-microcontrollori,

Direi proprio di no, le mcu sono nate proprio per essere usate con i PLC la cui origine risale alla fine degli anni 60, i primi PLC erano realizzati con microprocessori normali e tutto il relativo ambaradan di ram, rom, periferiche esterne, etc.

lesto:
ormai sono solo uno "standard de facto", sia da punto di vista certificazioni che dal punto di vista linguaggio, che è più di alto livello

è proprio quello a cui ero giunto bazzicando su vari forum. E in effetti è anche quello che diceva il mio amico: "se sai programmare i plc lo puoi mettere nel curriculum"

PLC e microcontrollori sono così imparentati che ne hanno fatto una via di mezzo:

https://web.archive.org/web/20130511053255/http://www.cubloc.com/product/01_01.php

così li puoi programmare con quello che vuoi e hanno form-factor compatibili (alcuni modelli).

astrobeed:

lesto:
non conosco la storia, ma credo che i PLC avevno più senso in era pre-microcontrollori,

Direi proprio di no, le mcu sono nate proprio per essere usate con i PLC la cui origine risale alla fine degli anni 60, i primi PLC erano realizzati con microprocessori normali e tutto il relativo ambaradan di ram, rom, periferiche esterne, etc.

ah, ma quindi la differenza?

lesto:
ah, ma quindi la differenza?

Una mcu è una mcu, un plc è un plc :slight_smile:

Testo, grosso modo la differenza è questa:

BaBBuino:
...ma alla fine tra un PLC e un Arduino, ci passa solo l'Hardware per l'adattamento dei valori in ingresso (una manciata di diodi e zener) e quelli verso l'uscita (un ULN 2003 + qualche transistor PNP), questo perchè lo standard PLC è a 24V DC.

La differenza é siccuramente la robustezza dell'elettronica che sopporta maggiori tensioni/correnti sulle uscite / entrate e un sistema operativo del PLC che é ultratestato a causa delle innumerevoli installazioni.
Se Tu scrivi un programma che pilota il Tuo progetto prativamente é allo stato alfa e non verrá sottoposto a un controllo come un sistema comerciale. Da questo risulta che un PLC é piú affidabile del Arduino.

Ciao Uwe

Concordo per quanto riguarda le certificazioni e le possibilità di espansione per quanto riguarda i PLC.
Volevo anche segnalare un prodotto interessante che si pone a metà strada tra Arduino e il classico PLC.
Lo chiamano modulo logico ma effettivamente è un PLC a relativamente basso costo, con tutti i vantaggi del caso (certificazioni robustezza e tutto il resto).

Si chiama Zelio Logic, questo:

Si trovano già prodotti evoluti a 200/250 euro che sembrano tanti rispetto ad Arduino però hai già un prodotto alimentato a 220Vac con display, orodatario, case e via dicendo.
Inoltre la parte interessante è il software (gratis) che accetta oltre al ladder il linguaggio a blocchi che ho usato io che, per chi viene dall'elettronica è fenomenale perchè ti permette di scrivere applicazioni senza una riga di codice. In più il software permette di simulare a PC l'applicazione prima di scaricarla sul modulo.

Interessante l'applicazione del tuo amico. Praticando lo stesso sport, mi piacerebbe saperne qualcosa di più ... è possibile? Grazie!

easy:
Concordo per quanto riguarda le certificazioni e le possibilità di espansione per quanto riguarda i PLC.
Volevo anche segnalare un prodotto interessante che si pone a metà strada tra Arduino e il classico PLC.
Lo chiamano modulo logico ma effettivamente è un PLC a relativamente basso costo, con tutti i vantaggi del caso (certificazioni robustezza e tutto il resto).

Si chiama Zelio Logic, questo:

http://www.schneider-electric.it/sites/italy/it/solutions/energy_efficiency/Soluzioni-base-di-automazione/kit-zelio-logic.page

Si trovano già prodotti evoluti a 200/250 euro che sembrano tanti rispetto ad Arduino però hai già un prodotto alimentato a 220Vac con display, orodatario, case e via dicendo.
Inoltre la parte interessante è il software (gratis) che accetta oltre al ladder il linguaggio a blocchi che ho usato io che, per chi viene dall'elettronica è fenomenale perchè ti permette di scrivere applicazioni senza una riga di codice. In più il software permette di simulare a PC l'applicazione prima di scaricarla sul modulo.

Interessante l'applicazione del tuo amico. Praticando lo stesso sport, mi piacerebbe saperne qualcosa di più ... è possibile? Grazie!

Ciao, io non ho informazioni da darti però se cerchi sul canale youtube del mio amico dovresti trovare il modo di contattarlo. Vedi all'inizio di altri video, mi sembra che ci sia la sua email.
Saluti

Mah ... premesso che, comodita' a parte, per ricaricare proiettili che poi devo sparare io, mi fiderei solo di me stesso, e non di una macchina automatica (si, sono paranoico, riguardo a questo ... forse e' per quello che ho ancora tutte le dita :stuck_out_tongue: :D) ... con arduino ci faresti la stessa cosa, dovresti solo costruirti una scheda rele dimensionata per le tue necessita', ma la cosa e' piuttosto semplice e relativamente economica ...

La differenza principale e' la programmazione ladder, ma credo che la programmazione nativa di arduino la superi di parecchio ... e se proprio dovesse servire, non penso che sia cosi difficile emularla sulla piattaforma arduino, in fondo, semplificando al massimo il concetto del sistema ladder, si limita ad una serie concatenata di if-then-else quasi in stile basic :stuck_out_tongue: :smiley:

Cercando un po al volo, ho trovato sia questa discussione sul forum inglese Simulating a PLC ladder diagram on arduino - Programming Questions - Arduino Forum , sia questa pagina di "ladder logic for pic and avr" (tradotta in Ita :wink: ) http://www.webalice.it/gino.mariani/LDmicro/LDmicroPIC_AVR_IT.html ... non ho ancora avuto il tempo di leggerle bene, ma ad occhio mi sembra che parlino di quello che volete :slight_smile:

Ho trovato un po' in ritardo questa discussione sulla programmazione PLC ma mi è stata molto utile e interessante. In generale mi trovo abbastanza d'accordo con lesto, quando dice che un Arduino 1 può sostituire un PLC, ma tutte le risposte sono valide. Grazie :wink: