Pagina 1 di 2

Panel PC e semplice sistema di automazione

Inviato: 29 apr 2014, 15:05
da bekoki
Ciao a tutti,

vorrei chiedervi un aiuto per un progetto che sto seguendo: per me si tratta di cose nuove e mi sarebbe molto d'aiuto se poteste indirizzarmi un po'.

Il sistema che devo sviluppare si può sinteticamente riassumere con un elaboratore, un display touch screen per l'interfaccia con l'operatore, un modulo laser (da pilotare on/off agendo sull'alimentazione) ed una videocamera.
Il flusso di funzionamento prevede:
- interazione dell'operatore
- accensione modulo laser
- interazione dell'operatore
- spegnimento modulo laser
- acquisizione fotogramma tramite videocamera
- elaborazione ed interazione con l'operatore (eventuale comunicazione con Database in rete)

Dopo varie ricerche e ragionamenti, la soluzione che avevo pensato vede l'uso di un touch panel PC per l'elaborazione e l'interfacciamento con operatore e video-camera. Il modulo laser potrebbe esser pilotato tramite una scheda con relè connessa al panel PC. L'ambiente d'uso è di tipo industriale "leggero".

Sulla scelta del panel PC mi sento abbastanza confidente, però sono perplesso sul pilotaggio del laser...
Inoltre, se volessi sviluppare il programma di controllo in Java, sarebbe possibile o ci vorrebbe un ambiente dedicato? Da quanto ho capito dipenderebbe esclusivamente dal sistema operativo, e mi pare di capire che il supporto a java non sia così scontato per i SO generalmente in uso in questa tipologia di dispositivi...

Ogni parere o suggerimento è ben accetto !
Grazie,

Alessandro

Re: Panel PC e semplice sistema di automazione

Inviato: 29 apr 2014, 18:02
da carlomariamanenti
Foto Utentebekoki, urca che confusione ... alcune domande per meglio capire e cercare di aiutarti:

Il flusso di funzionamento prevede:
- interazione dell'operatore
- accensione modulo laser
- interazione dell'operatore
- spegnimento modulo laser
- acquisizione fotogramma tramite videocamera
- elaborazione ed interazione con l'operatore (eventuale comunicazione con Database in rete)


Che cosa intendi con "interazione dell'operatore?
L'acquisizione di un fotogramma della videocamera prevede che in questa fase operativa l'operatore possa eseguire operazioni di editing di un filmato acquisito?
Cosa intendi per "comunicazione con un eventuale database in rete"?

Sulla scelta del panel PC mi sento abbastanza confidente, però sono perplesso sul pilotaggio del laser...
Inoltre, se volessi sviluppare il programma di controllo in Java, sarebbe possibile o ci vorrebbe un ambiente dedicato? Da quanto ho capito dipenderebbe esclusivamente dal sistema operativo, e mi pare di capire che il supporto a java non sia così scontato per i SO generalmente in uso in questa tipologia di dispositivi...


Quale PC avresti scelto, ma soprattutto, quale piattaforma avresti scelto?
Il controllo di hardware remoto da parte di un PC non è complesso, diventa critico il controllo di un sistema laser perché lo stesso dovrebbe sottostare a condizioni di sicurezza che non sembra tu abbia preso in analisi.

Il programma di controllo che desideri sviluppare in Java dovrebbe preoccuparsi di controllare l'hardware e/o di eseguire l'editing dei filmati acquisiti?

In quanto all'utilizzo di sistemi java su PC per utilizzi come controllore in ambito industriale avrei alcune perplessità.

Riusciresti a descrivere nel dettaglio di quale hardware, laser, videocamera, PC ... stiamo parlando e quale l'applicazione del progetto?

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 10:53
da bekoki
carlomariamanenti ha scritto:Foto Utentebekoki, urca che confusione ... alcune domande per meglio capire e cercare di aiutarti:

Eh eh, purtroppo non è nemmeno il mio campo e anche cercando in internet, come si suol dire, "non ne ho cavato gli zampetti"... :shock:

In effetti ho cercato di tener la descrizione semplice per non far troppa confusione ed ho invece ottenuto l'effetto contrario... :ok: Cerco di fare chiarezza.
Si tratta di un sistema di controllo dimensionale: il laser (o led) proietta dalla verticale un pattern fisso su un tavolo da lavoro per aiutare l'operatore nel posizionamento dei pezzi, dopo di che la videocamera (una Axis da 300€) cattura un frame che viene elaborato. Le interazioni dell'operatore consistono in:
- inserimento preliminare delle informazioni identificative del/i pezzo/i in analisi (ad es. il codice identificativo, la commessa, ecc...) che possono anche essere caricate da un database SQL presente nel server aziendale (ad esempio tramite lettura del codice a barre sul pezzo e successiva query)
- avvio della procedura automatica
- stampa dei risultati con conseguente aggiornamento del database

Alcune considerazioni aggiuntive:
- Il modulo laser da 10mW (o LED) non dispone di un comando logico ma si deve agire brutalmente sull'alimentazione. Da un punto di vista della sicurezza, ora che ho chiarito meglio, non credo che vi siano particolari problemi, visto che il modulo sarà sulla verticale del centro del tavolo, a circa 1500 mm di distanza... sicuramente ci vorranno le opportune prescrizioni nel manuale e bisognerà attaccare gli opportuni pittogrammi, però a parte questo non dovrebbe esservi nient'altro di particolare secondo me... sbaglio?

In definitiva, le operazioni che il sistema deve effettuare sono piuttosto semplici e senza vincoli temporali stringenti, però non mi sembra il caso di usare un PC normale e la soluzione con touch panel PC mi sembrava la più compatta e adatta ad un uso industriale (seppur leggero). La preferenza per Java è legata al fatto che, rispetto a C e C++ o altri linguaggi, ne ho una buona conoscenza, anche nello sviluppo di GUI.
Il modello esatto del panel PC non l'ho ancora selezionato, ho fatto solo una panoramica (pensavo di esporre i requisiti ad un fornitore e farmi suggerire uno o più modelli specifici): non avendo particolari esigenze di calcolo un dispositivo "base" dovrebbe esser sufficiente.
Ci sarebbe anche la possibilità di programmare in Labview, però poi, oltre ai pacchetti di sviluppo, per ogni panel PC ci vorrebbero € 500 solo di licenza di deploy e non mi sembrava una soluzione conveniente...

Ma, domanda stupida, solitamente quale ambiente di sviluppo/linguaggio di programmazione si usano per questo genere di dispositivi ?


Grazie,

Alessandro

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 14:50
da carlomariamanenti
Ciao Foto Utentebekoki, alla luce di quanto riportato la faccenda assume un altro aspetto, parlare genericamente di laser poteva voler dire tutto e niente ... non so perché io mi immaginavo una macchina da taglio ...

Quello che tu chiedi è semplicemente un'interfaccia I/O da collegare ad un PC per gestire l'accensione e lo spegnimento del puntatore laser.

Spendere una licenza LabView per accendere un relè è forse uno spreco, esistono differenti prodotti in commercio che esaudiscono la tua richiesta, questi possono essere collegati via RS232, USB o Ethernet e normalmente sono forniti con una serie di librerie di esempio per differenti linguaggi; qui un esempio.

Oltre all'accensione del puntatore laser devi acquisire anche altri segnali dal campo?

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 15:20
da bekoki
Ciao Foto Utentecarlomariamanenti,

in effetti non avevo detto "proiettore" laser... #-o
Per il controllo del relè in effetti avevo pensato ad una schedina come quella che hai suggerito e che mi sembra di capire sia la soluzione più conveniente...

Per il resto non devo acquisire altri segnali dal campo: di per se è un sistema piuttosto ridotto con compiti abbastanza semplici... si trattasse di un normale PC con un SO classico avrei meno dubbi, ma non avendo esperienza nel campo dell'automazione ho il timore di tralasciare qualcosa e optare per soluzioni "stupide" ed inefficienti e/o ritrovarmi poi in un vicolo cieco quando provvederò allo sviluppo...

Per quanto riguarda però il semplice programma che dovrà risiedere nel panel PC, non ho ancora ben capito come potrei implementarlo... Labview permette di sviluppare anche applicazioni complete per il panel PC, però ha i limiti che ho già accennato... Per l'uso che devo farne potrei vedere il panel PC come un normale PC, magari richiedendo un sistema operativo non embedded/CE ? In tal caso Java o C dovrebbero andar bene...

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 15:50
da carlomariamanenti
Un Panel PC può essere equipaggiato con SO consumer o con SO industriali, Soft PLC ...
Per il tipo di applicazione non ritengo sia strettamente necessario utilizzare un SO industriale.
Per quanto riguarda la gestione del touch screen anche qui non vedo particolari criticità in quanto questa funzionalità restituisce le identiche informazioni di un mouse.

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 16:11
da bekoki
Perfetto! :ok:
Alla fine erano più paranoie mie allora: temevo potessero essere dispositivi "troppo" diversi da un normale PC e quindi non programmabili in maniera "tradizionale", ma con ambienti-tool dedicati...

Grazie ancora per l'aiuto e la pazienza ! :D


Alessandro

Re: Panel PC e semplice sistema di automazione

Inviato: 30 apr 2014, 16:13
da carlomariamanenti
Di nulla figurati, se hai bisogno d'altro siamo qui. :ok:

Re: Panel PC e semplice sistema di automazione

Inviato: 2 mag 2014, 16:58
da dimaios
Fossi in te, visto che ho sviluppato molte applicazioni del genere non impiegherei un softplc ma configurerei il tutto come segue.

1 PC industriale con windows 7 pro che con i relativi driver può accedere alla telecamera USB o Giga Ethernet.

1 modulo I/O esterno con interfaccia modbus TCP per i comandi digitali. Es. Adam dell'Advantech o Phoenix Contact.

Invece di modulare il laser in modalità impulsata agisci sullo shutter della telecamera per ottenere il giusto contrasto senza saturare. Se non riesci così aggiungi un filtro interferenziale a banda stretta sull'obiettivo della telecamera.

Per accedere al grabber del driver utilizzerei il C++ in quanto oggettivamente più adatto al tipo di applicazione. Per l'interfaccia grafica invece puoi scegliere quello che vuoi da Java al C#.... o se sei più audace HTML5 con Canvas e Websocket!

Re: Panel PC e semplice sistema di automazione

Inviato: 2 mag 2014, 17:50
da bekoki
Ciao Foto Utentedimaios,

grazie per la risposta.
dimaios ha scritto:1 PC industriale con windows 7 pro che con i relativi driver può accedere alla telecamera USB o Giga Ethernet.

Ok, suppongo che ti riferisca ad un "touch panel PC" o stai suggerendo una soluzione "PC industriale" + "touchscreen"?
1 modulo I/O esterno con interfaccia modbus TCP per i comandi digitali. Es. Adam dell'Advantech o Phoenix Contact.

Invece di modulare il laser in modalità impulsata agisci sullo shutter della telecamera per ottenere il giusto contrasto senza saturare. Se non riesci così aggiungi un filtro interferenziale a banda stretta sull'obiettivo della telecamera.

Il comando sull'alimentazione del laser mi servirebbe per spegnere il modulo quando non serve (in alcuni casi deve star spento) e non per modularne la luminosità... In tal senso una schedina relè USB tipo quelle delle KMtronic non rappresenterebbe il giusto compromesso funzionalità/costo? Il modulo I/O lo intendi per pilotare un altro relè sull'alimentazione?

Per accedere al grabber del driver utilizzerei il C++ in quanto oggettivamente più adatto al tipo di applicazione. Per l'interfaccia grafica invece puoi scegliere quello che vuoi da Java al C#.... o se sei più audace HTML5 con Canvas e Websocket!

Premetto che ho una formazione elettronica con basi di linguaggi assembler (microcontrollori), Java e C (limitate in quest'ultimo caso): dovendo scegliere una strada (anche formativa) che sia poi riutilizzabile in altre applicazioni, anche più complesse, suggerisci quindi di studiare il C++ ?

Colgo l'occasione per chiedervi un'altra curiosità: se in un futuro si parlasse di realizzare un sistema più complesso con, ad esempio, un PC industriale che deve interfacciarsi con moduli di i/o, plc, ecc, in tal caso, che linguaggio/ambiente di sviluppo si renderebbe necessario? sarebbero riusabili Java/C/C++ o ci vorrebbe altro? Lo chiedo perché vorrei cogliere l'occasione dello sviluppo di questo sistemino per iniziare a farmi delle basi poi riutilizzabili in ambiti simili... :mrgreen:

Grazie,

Alessandro