Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  VB.NET CAM-Beispiel gesucht

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  VB.NET CAM-Beispiel gesucht (3926 mal gelesen)
Gregor Hensen
Mitglied
Software-Ingenieur

Sehen Sie sich das Profil von Gregor Hensen an!   Senden Sie eine Private Message an Gregor Hensen  Schreiben Sie einen Gästebucheintrag für Gregor Hensen

Beiträge: 2
Registriert: 31.10.2005

Win XP Prof SP2
Int Pentium M 2GHz
2 GB RAM, GeForce Go 6800
VB2005,C#2005 Express
NX, NX CAM Express, Teamcenter Express
Postbuilder, Knowledge Fusion, NX Open

erstellt am: 25. Jul. 2007 11:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich besachäftige mich seit kurzem mit NX5 > NXOpen > VB.NET und möchte gerne eine 5AX-CAM-Bearbeitung automatisieren.
Mit dem Journaling habe ich zunächst die Schritte aufgezeichnet und dann in VB2005Express editiert. Das funktioniert soweit recht gut sogar bis hin zum Debugging.

Probleme habe ich mit der Definition der Geometrie für PART / BLANK / MILL AREA etc.
Das Journaling hat hier Lücken, so dass nach dem Replay zwar die Operationen erzeugt sind, aber wg. der fehlenden Definition nicht ausgeführt werden können.

============== Journal-Auszug === Anfang ======================
' ----------------------------------------------
'  Dialog Begin Workpiece
' ----------------------------------------------
' ----------------------------------------------
'  Dialog Begin Part Geometry
' ----------------------------------------------
' ----------------------------------------------
'  Dialog Begin Blank Geometry
' ----------------------------------------------
Dim markId3 As Session.UndoMarkId
markId3 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "Workpiece")
                          <====================================================================
Dim nXObject1 As NXObject  <=== Wie muss das Geometrie-objekt an den Builder übergeben werden???
nXObject1 = millGeomBuilder2.Commit()
                          <====================================================================

theSession.DeleteUndoMark(markId3, Nothing)

millGeomBuilder2.Destroy()

theSession.DeleteUndoMark(markId2, Nothing)

' ----------------------------------------------
'  Menu: Insert->Operation...
' ----------------------------------------------
' ----------------------------------------------
'  Dialog Begin Create Operation
' ----------------------------------------------
Dim nCGroup4 As CAM.NCGroup = CType(workPart.CAMSetup.CAMGroupCollection.FindObject("NC_PROGRAM"), CAM.NCGroup)

Dim nCGroup5 As CAM.NCGroup = CType(workPart.CAMSetup.CAMGroupCollection.FindObject("MILL_FINISH"), CAM.NCGroup)

Dim tool1 As CAM.Tool = CType(workPart.CAMSetup.CAMGroupCollection.FindObject("MILL"), CAM.Tool)

Dim nCGroup6 As CAM.NCGroup = CType(nXObject1, CAM.NCGroup)

Dim operation1 As CAM.Operation
operation1 = workPart.CAMSetup.CAMOperationCollection.Create(nCGroup4, nCGroup5, tool1, nCGroup6, "mill_multi-axis", "CONTOUR_PROFILE", CAM.OperationCollection.UseDefaultName.True, "CONTOUR_PROFILE_2")

============== Journal-Auszug === Ende ======================

Probleme habe ich mit der fehlenden Doku zu den neuen Klassen, deren Aufgaben und wie man diese
für die CAM-Anwendung einsetzt. Es findet sich einfach kein .NET-CAM-Beispiel, weder in der Installation unter UGOPEN noch auf der UGS-Solution Datenbank noch in den Foren.
Es gibt zwar CAM-Beispiele für C/C++ (z.B. ufd_camgeom.c) und auch entsprechende .NET-wrapper-Klassen für die UFUNCs, aber hier weiss ich nicht wie ich die app_data structur  bzw. ein uf_allocate_memory in VB.NET abbilden soll und eigendlich will ich lieber die .NET-Umgebung nutzen.

Evtl. hat jemand Erfahrung mit der .NET-Programmierung und kann mit einen Tipp oder ein kleines Beispiel geben http://ww3.cad.de/foren/ubb/icons/icon6.gif http://ww3.cad.de/foren/ubb/icons/icon6.gif.

Danke im Voraus für Eure Zeit
Gregor

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

SMario
Mitglied
Konstrukteur/Designer


Sehen Sie sich das Profil von SMario an!   Senden Sie eine Private Message an SMario  Schreiben Sie einen Gästebucheintrag für SMario

Beiträge: 114
Registriert: 31.03.2005

FSC Celsius Workstation
CPU: Pentium 4 3.20GHz
Speicher: 2.00GB RAM
Grafik: Quadro FX 1400
Monitor: FSC P20-2
OS: Windows XP SP2
UG: NX4.0.2.2

erstellt am: 25. Jul. 2007 12:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Gregor Hensen 10 Unities + Antwort hilfreich

Hallo Gregor,

eine schnelle Suche in der .NET Referenz (%UGII_BASE_DIR%\UGDOC\html_files\nxopen_net_ref\) hat mir einige CAM Funktionen ausgespuckt.
Suche mal nach Dateien, die mit NXOpen.UF.UFCam* oder NXOpen.CAM. beginnen.

Zu den erstgenannten Dateien gibt es meist im oberen Bereich der HTML-Datei einen Link zu näheren Erklärungen.

In UG-Solutions (http://uganswer.ugs.com/login.asp?new_login&org_url=/qcksrch.stm&org_arg=) gab es zwei Beispiele.
Bei "Select the Product" OpenSamples auswählen und in der Suchzeile bsplw. "Visual Cam" eingeben.


Vielleicht hilft's
Mario

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Elektroingenieur (m/w/d)
Technologischer Fortschritt gelingt nur, wenn Visionen zur Realität werden. Dazu bringen wir bei FERCHAU als eine der führenden europäischen Plattformen für Technologie-Dienstleistungen die smartesten und innovativsten Köpfe mit Unternehmen verschiedenster Branchen zusammen. Wir suchen dich: als ambitionierte:n Kolleg:in, der:die wie wir Technologien auf die nächste Stufe bringen möchte. Wir realisieren ...
Anzeige ansehenElektrotechnik, Elektronik
Gregor Hensen
Mitglied
Software-Ingenieur

Sehen Sie sich das Profil von Gregor Hensen an!   Senden Sie eine Private Message an Gregor Hensen  Schreiben Sie einen Gästebucheintrag für Gregor Hensen

Beiträge: 2
Registriert: 31.10.2005

Win XP Prof SP2
Int Pentium M 2GHz
2 GB RAM, GeForce Go 6800
VB2005,C#2005 Express
NX, NX CAM Express, Teamcenter Express
Postbuilder, Knowledge Fusion, NX Open

erstellt am: 25. Jul. 2007 13:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Mario,

danke für die prompte Antwort. Die beiden Beispiele habe ich bereits ausprobiert und die funktionierten auch in meiner Anwendung, aber mein Kernproblem "Die Definition der Geometrie als PART oder BLANK oder MILL-AREA oder DRIVE-Geometry z.B. für eine Wälzbearbeitung, ist dort nicht behandelt.
In .NET sind dazu viele Builder-Klassen definiert (NXopen.CAM.MillGeomBuilder, ..MillBoundaryBuilder, ..MillAreaGeomBuilder). Ich weis aber nicht, welche Methoden ich einsetzen muss, um meine NXObjects (Solids und Faces) abzufüttern. Wie gesagt das Journal schweigt sich darüber aus.

Mir kommt es so vor, als fehlen diese Funktionen schlicht, was die Lücken im Journaling erklären könnte??
Andererseits existieren eben all diese Klassen. Evtl. sind diese aber auch automatisch bis zu einer gewissen Tiefe erstellt worden, wer weiß?

Die andere Schiene ist die Arbeit mit den wrapper-Klassen, aber hier stoße ich auf reine c/c++-Beispiele, die ich nicht in .NET übersetzen kann wg. structure app_data und Memory Management.

Die Frage bleibt: Wie geht man vor bei der Definition der Geometrie in NXOpen.CAM unter ".NET"

Evtl. siehst Du Dir mal unter C:\Programme\UGS\NX 5.0\UGOPEN die Datei ufd_camgeom.c oder ufd_cambnd.c an.
Alles läuft auf diese app_data Struktur hinaus. Die Verbindung zu meinem NXObject bleibt für mich aber im Dunkeln.

------------------
Viele Grüße
Gregor 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz