Vai al contenuto
PLC Forum


Info su SCADA - Cerco SCADA


Luca Bettinelli

Messaggi consigliati

Luca Bettinelli

Avrei la necessità di avere uno SCADA che mi permetta di utilizzare le CommonDialog di Windows, per effettuare salvataggio di ricette con interfaccia standard di Windows.

So di avere chiesto queste molte volte, ma purtroppo non ho ancora trovato una soluzione.

Devo applicare questo SCADA su macchine che hanno molti progrmmi di lavoro, ogni programma ha circa 30-40 variabili ed i programmi dovrebbero essere in alcuni casi superiori al centinaio a volte anche 500, i clienti mi chiedono di avere una gestione di salvataggio e carico di questi programmi con una finestra di tipo Apri e Salva con nome di Windows, dove inserire il nome del programma e poterlo salvare in sottodirectory.

Ho inoltre la necessità di dover generare dei file di log di dati di lavorazione, dei quali il cliente dovrebbe poterne scegliere il nome e definire dove salvarlo.

Qualcuno mi può aiutare, purtroppo la mia azienda mi impone di utilizzare uno SCADA commerciale, mi hanno già escluso a priori di scrivere un interfaccia con altri software, già non so se riuscirò a far digerire uno Scada non Siemens.

Attualmete uso ProTool ma non può fare le cose richeste e quelle che può fare sono già sfruttate al massimo, (ho già raggiunto il massimo degli script utilizzabili e comincia a diventare lento anche l'aggiornamento delle variabili).

Sono conscio che penserete che voglio un po troppo da uno SCADA, ma putroppo è sono costretto ad utilizzare questa strada.

Grazie.

Link al commento
Condividi su altri siti


Claudio Monti

Non ne sono sicuro (ho visto solo la demo velocemente) ma mi sembra che VijeoLook della Schneider dia la possibilità di usare le CommonDialog di Windows.

Chiedi al Pronto Contatto tel. 011-*******

P.S. è uno SCADA di livello inferiore rispetto al loro MonitorPro, comunque è completo, facile ed efficiente (a quanto dicono... ;) )

Link al commento
Condividi su altri siti

Forse dico una cosa banale (ma io non ho mai usato ProTool) ma se questo pgm ti dà la possibilità di usare oggetti OCX, puoi benissimo importare l'Active-X che ti fa la funzione del CommonDialog.

Perchè non usi Visual Basic per costruirti lo SCADA?

Link al commento
Condividi su altri siti

Luca Bettinelli
cdc+Oct 9 2002, 06:23 AM-->
CITAZIONE(cdc @ Oct 9 2002, 06:23 AM)

ProTool utilizza VBA ma non mi permette di utilizzare tutti gli Active-X, tra quelli non utilizzabili ci sono proprio lr CommonDialog.

Per quanto riguarda il VB mi è stato imposto di utilizzare uno SCADA commerciale, altrimenti l'avrei già fatto!!!

Link al commento
Condividi su altri siti

Luca Bettinelli

In ProTool non da errori importando gli ocx proprio non si può, i mie capi per SCADA commerciale intendono uno SCADA che acquisti in commercio, VB non è uno SCADA è un software con il quale si possono anche fare delle interfacce operatore, se fosse per me VB lo avrei già usato ma purtoppo non sono il solo a fare software in questa azienda, quindi per la intercambiabilità delle persone non accetteranno mai di farmi scrivere un software che poi gli altri programmatori non sono in grado di utilizzare, in quanto una cosa è imparare ad usare uno SCADA e un'altra cosa è imparare a programmare in VB.

In quanto a dipendere da Microsoft non sarebbe uno svantaggio (a mio parere) anzi forse costa di più pagare un RunTime per ogni macchina che acquistare un pacchetto VB con abbonamento a MSDN. Ma purtoppo in questo progetto ho le mani completamente legate, figuratevi che probabilmente non riesco neanche a convincerli di cambiare il ProTool.

Ciao

Link al commento
Condividi su altri siti

Scusa l'ignoranza , ma se ti viene messo a disposizione VBA , con VBA dovresti poter scrivere delle funzioni per salvare dei file binari o ascii direttamente , che se poi vuoi puoi importarle in programmi quali Excel ecc..

Qui di seguito ti allego degli esempi in Vb per leggere e scrivere su dei file Ascii i dati di alcune variabili globali.

Function rPercorsi() As Boolean

Dim TextLine As String

Dim Dato As String

Dim fp As Integer

Dim Fname As String

rPercorsi = False

On Error GoTo ErrHandler

fp = FreeFile ' Prende il Puntatore al primo file libero

If Len(Command$) > 0 Then ' Nella Variabile Command$ Vengono passati i parametri per il programma

Fname = "\Locale.txt"

Else

Fname = "\Percorsi.txt"

End If

Open App.Path & Fname For Input As #fp

Dato = ""

While Not Dato = "#" ' Salta i Commenti

Line Input #fp, TextLine

Dato = Left$(TextLine, 1)

Wend

Line Input #fp, gPathMdb ' Path files .MDB

Line Input #fp, TextLine ' Salta Commento

Line Input #fp, gPathDoc ' Path files .DOC

Line Input #fp, TextLine ' Salta Commento

Line Input #fp, gPathDwg ' Path files .DWG

Line Input #fp, TextLine ' Salta Commento

Line Input #fp, gPathRtf ' Path files .RTF

' Si assicura che il Path non abbia blank in coda

gPathMdb = Trim(gPathMdb)

gPathDoc = Trim(gPathDoc)

gPathDwg = Trim(gPathDwg)

gPathRtf = Trim(gPathRtf)

Close #fp

rPercorsi = True

Exit Function

ErrHandler:

MsgBox Err.Description, vbOKOnly Or vbExclamation, "rPercorsi"

Err.Clear

On Error Resume Next

Close #fp

End Function

' Funzione per salvare i percorsi

Function wPercorsi() As Boolean

Dim fp As Integer

Dim Fname As String

If Len(Command$) > 0 Then ' Nella Variabile Command$ Vengono passati i parametri per il programma

Fname = "\Locale.txt"

Else

Fname = "\Percorsi.txt"

End If

wPercorsi = False

On Error GoTo ErrHandler

fp = FreeFile ' Prende il Puntatore al primo file libero

Open App.Path & Fname For Output As #fp

Print #fp, "# PATH DI DATI.MDB"

Print #fp, gPathMdb

Print #fp, "# PATH OFFERTE"

Print #fp, gPathDoc

Print #fp, "# PATH DISEGNI"

Print #fp, gPathDwg

Print #fp, "# PATH TEMPLATES"

Print #fp, gPathRtf

Close #fp

wPercorsi = True

Exit Function

ErrHandler:

MsgBox Err.Description, vbOKOnly Or vbExclamation, "wPercorsi"

Err.Clear

On Error Resume Next

Close #fp

End Function

Un saluto al forum

:D

Link al commento
Condividi su altri siti

Luca Bettinelli

Il problema reale è che nel codice che hai scritto ci sono senza esagerare una decina di istruzioni non supportate da ProTool, attualmente utilizzo una routin simile per salvare i dati del protocollo statistico ma con questo l'operatore deve inserire il nome del file ed il path alla ceca, senza poter vedere se le directory che inserisce sono scritte nel modo giusto.

Link al commento
Condividi su altri siti

Ciao..

Credo che il SCADA Intellution IFIX Dynamic utilizza la libreria di windows e altri che sono propietari, ma non sicuro di utilizare CommonDialog di Windows, comunque devi fare la domanda diretta a Intellution. ;)

Link al commento
Condividi su altri siti

Luca Bettinelli

Il problema è eliminato, in quanto l'azienda mi ha imposto di contiunuare ad utilizzare ProTool, probabilmente addirittura la versione 5.2 in Quanto sono contrari all'aggiornamento alla versione 6.

Grazie comunque

Link al commento
Condividi su altri siti

ProTool permette di utilizzare una serie limitata delle

funzioni vbScript.Forse potresti provare a gestire

gli archivi di ProTool con uno Script esterno (.vbs).

In pratica un eseguibile non compilato che potrebbe

essere avviato da ProTool con la funzione

"Call PtFct.Avvio_programma("Prova.vbs",0)"

Ad esempio il programma potrebbe leggere i files di archivio originali

di ProTool in background e presendando la dialog box salvare in un nuovo file scelto

dall'utente nello stesso formato.

Viceversa leggere i "nuovi"

file salvati dall'utente presentando la dialog box "apri file" e sovrascrivere il file di ProTool "corrente".

Mi rendo conto di aver descritto la cosa in maniera assolutamente contorta, spero in ogni caso di aver reso l'idea.

Ciao :)

Link al commento
Condividi su altri siti

Provo a spiegarmi meglio

Salva Ricetta

In Protool creo un pulsante che:

Salva la nuova ricetta in un file sempre con lo stesso nome,quindi sovrascrive sempre l'esistente.

Chiama il programma esterno che presenta una CommonDialog tipo "Salva File"

L'utente scrive il nome voluto.

Il programma legge il file originale Protool e lo salva nel nuovo file specificato dall'utente.

Leggi Ricetta

In Protool creo un pulsante che:

Chiama il programma esterno che presenta la CommonDialog "Apri File"

L'utente seleziona il file ricetta (meglio verificare se il formato è ok prima di caricare il file

specificato, altrimenti potrebbe caricare Win.com il che non sarebbe bello)

A questo punto sovrascrivo il file ricetta di Protool.

Quindi segue lo script di Protool che carica "normalmente" il file ricetta (modificato)

Ammesso che vada bene l'unico inconveniente è che esiste uno Script esterno a Protool.

Ciao :)

Link al commento
Condividi su altri siti

  • 2 weeks later...
luca.bettinelli+Oct 8 2002, 02:23 PM-->
CITAZIONE(luca.bettinelli @ Oct 8 2002, 02:23 PM)

Io uso LabView di National Instruments. Non ho usato altro, se non qualcosa fatto in Delphi.

Una volta entrati nella loro filosofia di programmazione grafica, ci si trova bene. L'ambiente e' Windows, ha il modulo SQL per accere a database ODBC, permette di leggere/scrivere files in formato DIF (compatibile excel) e in vari altri formati, TXT compreso. Ha un database nativo di log di allarmi ed eventi. Non ha una struttura nativa di ricette, te la devi fare da solo.

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