Interfacciare Catia con Matlab

Alessio85

Utente Junior
Professione: studente
Software: Catia, Pro-E, Matlab, Ansys, Fluent, Star CCM
Regione: Toscana
#1
Ciao a tutti....
è la prima volta che scrivo sul forum...spero di scrivere nella sezione giusta....
Ho un problema da cui non riesco a venire fuori....devo interfacciare Matlab r2010a con Catia v5r20 cioè devo gestire tutti i processi di catia da Matlab. So che in Matlab posso usare il comando "actxserver" per creare un server COM e poi inserire i comandi per Catia...il problema è che Matlab non riconosce Catia come server COM...sulla schermata di Matlab mi compare questo messagio:

C=actxserver('Catia.Application');
??? Error using ==> actxserver at 91
Server creation failed. Invalid ProgID 'Catia.Application'

Qualcuno sa come posso fare per fare in modo che Matlab riconosca Catia??
 
Professione: ingegnerizzatore prodotto-automotive (dream cars)
Software: SW 2009 - Pro/E WF4 - Catia V5 R20 - Matlab - Ansys - TC7 - VPM
Regione: Veneto - Austin (TX)
#2
Ciao a tutti....
è la prima volta che scrivo sul forum...spero di scrivere nella sezione giusta....
Ho un problema da cui non riesco a venire fuori....devo interfacciare Matlab r2010a con Catia v5r20 cioè devo gestire tutti i processi di catia da Matlab. So che in Matlab posso usare il comando "actxserver" per creare un server COM e poi inserire i comandi per Catia...il problema è che Matlab non riconosce Catia come server COM...sulla schermata di Matlab mi compare questo messagio:

C=actxserver('Catia.Application');
??? Error using ==> actxserver at 91
Server creation failed. Invalid ProgID 'Catia.Application'

Qualcuno sa come posso fare per fare in modo che Matlab riconosca Catia??
Forse la versione di Catia è troppo recente rispetto Matlab R2010a.
Prova con la R2011b (l'ultima uscita) o, se vuoi tenere la R2010a, con una versione + vecchia di Catia.
ciao
 

peloritano

Utente Standard
Professione: ingegnere
Software: catia pro engineer abaqus patran nastran
Regione: calabria
#3
se matlab interagisce con catia allo stesso modo in cui visual basic vi interagisce credo si potranno fare tante ma tante cose interessanti....
qualcuno ha un esempio pratico ??? una miniguida ????
 
Professione: ingegnerizzatore prodotto-automotive (dream cars)
Software: SW 2009 - Pro/E WF4 - Catia V5 R20 - Matlab - Ansys - TC7 - VPM
Regione: Veneto - Austin (TX)
#4
se matlab interagisce con catia allo stesso modo in cui visual basic vi interagisce credo si potranno fare tante ma tante cose interessanti....
qualcuno ha un esempio pratico ??? una miniguida ????
Mi unisco e aggiungo...qualcuno ha anche una miniguida di CATIA+VB?
grazie:smile:
 

Alessio85

Utente Junior
Professione: studente
Software: Catia, Pro-E, Matlab, Ansys, Fluent, Star CCM
Regione: Toscana
#5
stef_design grazie del consiglio, sto scaricando il Matlab 2011 e proverò a vedere se con quello lo riconosce....
però ho gia provato con il Matlab 2007 e mi riconosce Catia v5r20 come server Com presente nel computer,ma in quel caso non mi da nessuna proprietà utilizzabile con il comando Matlab

Catia.get

che dovrebbe darmi una lista di tutte le proprietà di Catia, ossia gli eventuali sottocomandi ( ad esempio per aprire una nuova parte in catia ecc..)

Il problema tra l'altro è che poi il progetto che sto facendo dovrò darlo al mio professore che non so che versione di Matlab o Catia ha....quindi cercavo un modo per far riconoscere Catia come server COM a qualunque versione di Matlab...
spero di essere stato abbastanza chiaro...grazie comunque...
 

peloritano

Utente Standard
Professione: ingegnere
Software: catia pro engineer abaqus patran nastran
Regione: calabria
#6
quando faccio una macro con vb lavora su tutte le versioni di catia (solo ultimamente con la r21 e' cambiato qualcosina) e quindi credo che se usi una versione di matlab ti aprira' qualsiasi versione di catia tu abbia installato.. il problema invece lo vedrei tra la tua versione di matlab e quella del professore... credo che anche qui valga la regola che una versione nuova apra tutti i file generati con le vecchie versioni mentre non vale il contrario
 

Alessio85

Utente Junior
Professione: studente
Software: Catia, Pro-E, Matlab, Ansys, Fluent, Star CCM
Regione: Toscana
#8
Contrordine,
sono riuscito a far riconoscere Catiab V5r20 come server COM in matlab r2010a però ora quando cerco di visualizzare le proprietà di Catia tramite il comando:

Catia.Application.get

ottengo come risposta:
1x1 struct array with no fields.

La stessa cosa che faceve con il Matlab 2007.
quindi ancora una volta non riesco a interagire in nessun modo ( ad esempio creare una nuova parte o visualizzare la finestra di Catia Ecc...)

Qualcuno sa come posso fare per importare in Matlab le proprietà di Catia?
 

peloritano

Utente Standard
Professione: ingegnere
Software: catia pro engineer abaqus patran nastran
Regione: calabria
#9
proviamo a vedere se matlab ragiona come vb....
se scrivi questo comando catia dovrebbe aprirti una nuova parte....
dimmi se funziona...
catia.documents.Add("Part")
 

Alessio85

Utente Junior
Professione: studente
Software: Catia, Pro-E, Matlab, Ansys, Fluent, Star CCM
Regione: Toscana
#10
peloritano ho provato come hai detto tu con il comando:

Catia.Application.documents.Add('Part')

ma non funziona, mi dice:

??? Undefined variable "catia" or class "catia.documents.Add".

Deve essere un linguaggio simile al Basic ma non proprio quello.
Io ho un esempio di script Matlab in cui si richiama Catia e ci si lavora, che mi hanno passato come funzionante e i comandi sono di questo tipo:

Catia.Application.ActiveDocument.Activate;
Catia.Application.ActiveDocument;
Catia.Application.ActiveDocument.Part;

quindi penso che il punto funzioni come comando per aprire il sottomenù, a me però proprio non riconosce queste proprietà. Cosa che invece fa se creo un server COM con Excel, in cui con Excel.Apllication.get mi dà un elenco di proprietà da poter usare.

Penso di dover in qualche modo aggiungerle, ho visto che con Microsoft Visual Basic 2008 per aggiungere un programma esterno da richiamare (ad esempio Excel) si fa attraverso Progetto-->Aggiungi riferimento e poi a inizio listato si usa il comando IMPORT
(scusa se non sono molto preciso ma non conosco molto bene il VB).

Credo di dover riuscire a fare una cosa simili in Matlab...ma non so bene come...
 

peloritano

Utente Standard
Professione: ingegnere
Software: catia pro engineer abaqus patran nastran
Regione: calabria
#11
si capito cosa intendi.... sono riferimenti esterni.... in effetti prima di usare vb devo aprire la voce riferimenti e dirgli di utilizzare tutte le librerie di catia.... quelle comuni tipo office(quindi excel word ecc ecc) solitamente sono riconosciuti dai software in automatico.....
prova a vedere se trovi qualcosa di simile......
 

marcusdius

Utente poco attivo
Professione: ingegnere
Software: windows
Regione: campania
#12
è possibile effettuare un disegno con catia v5 e aprirlo con abaqus 0 msc marc?grazie
 

peloritano

Utente Standard
Professione: ingegnere
Software: catia pro engineer abaqus patran nastran
Regione: calabria
#13
con abaqus si ma sei un po' fuori tema in questa discussione mi pare