Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  Bohrungen auf einer Fläche mit vorgegebenem Randabstand - Makro möglich?

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
  
CATIA V5 Grundkurs | Einsteiger - 5 Std. 15 Min 48
  
KISTERS 3DViewStation: 3D-Visualisierung für After Sales, Service und Ersatzteile, eine Pressemitteilung
Autor Thema:  Bohrungen auf einer Fläche mit vorgegebenem Randabstand - Makro möglich? (2689 mal gelesen)
thomau96
Mitglied
Konstrukteur


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

Beiträge: 43
Registriert: 18.10.2005

Catia V5 R19

erstellt am: 12. Sep. 2009 13:14    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


Makro_Bohrung.txt

 
Hallo,

ich stehe vor dem Problem, dass ich in viele Quader welche als einzelne Parts in einem Product positioniert sind gleiche Bohrungen einbringen muss.

Bisher bin ich so vorgegangen, dass ich zur Positionierung einer Bohrung 2 Kanten und die entsprechende Fläche eines Quaders ausgewählt und anschließend die Bohrung an sich definiert habe.

Dieser Schritt musste natürlich bei jedem Quader und jeder Bohrung einzeln wiederholt werden.

Nun meine eigentliche Frage: Lässt sich dieser Vorgang durch ein Makro automatisieren? Idealerweise würde es so arbeiten, dass es nach dem Auswählen von 2 Kanten und einer Fläche die Bohrungen mit einem Randabstand von x/y mm anbringt. Dies sollte bei allen Parts im Product ermöglicht werden.

Leider hab ich bis jetzt noch nie mit Makros gearbeitet, einen "Schnellkurs" zur Verwendung hab ich leider noch nicht finden können.

Hab es auch schon mit der Aufzeichnung eines Makros probiert, allerdings bezieht es sich bei der neu einzufügenden Bohrung wieder auf die urspüngliche Position der ersten Bohrung. Hab das entstandene Makro als txt Datei angehängt.

[Diese Nachricht wurde von thomau96 am 12. Sep. 2009 editiert.]

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

DanielFr.
Ehrenmitglied V.I.P. h.c.
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 12. Sep. 2009 16: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 Nur für thomau96 10 Unities + Antwort hilfreich

Hallo thomau96  ,

na sicher lässt sich das automatisieren. IMHO gibt es hier nur zwei Probleme. Erstens dein Problem st doch ein wenig spezieller und mit dem Makrorecorder kommst du auf keinen Fall weiter.

Jetzt beschreibe ich erstmal meine Vorgehensweise wie ich das lösen würde.

1. Anwender startet das Makro
2. Der Anwender gibt mit einer InputBox den X- und Y-Abstand der Kanten ein und optinal die Tiefe der Bohrung
3. dies läuft in eine Schleife durch alle Produkte (also Parts eines Produkts)
4. Innerhalb der Schleife gibt es drei Selektionen
  -> Selektion der ersten Kante (B-Rep) über ein SelectElement2 (als Typ "RectilinearTriDimFeatEdge")
  -> Selektion der zweiten Kante (wie erste Kante)
      => Übergabe an zwei Objekte (jeder Objekt stellt eine Kante dar (Referenz für die Bohrung)
  -> Selektion der Fläche auch über SelectElement2 (als Type "PlanarFace")
5. Mit diesen drei Selektionen und den X- und Y-Wert aus Punkt 2 kann ich die Bohrung erstellen (wie auch in deinem aufgezeichneten Script

Jetzt zum 2ten Problem:
Wenn du ein SelectElement2 machst dann kannst du innerhalb des Produktes z.B. jede Kante selektieren. Du darfst aber nur die Kante selektieren die auch zum gerade bearbeiteten Part gehört. Hier ist mein Problem. IMHO habe ich gerade keine Lösung um diese Fehlerquelle auszuschließen außer alle Parts bis auf das was gerade bearbeitet wird ins NoShow zu stellen.

Vielleicht habe ich morgen mal 20 Minuten zweit dir das zu Programmieren. Versprechen kann ich aber nichts 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

thomau96
Mitglied
Konstrukteur


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

Beiträge: 43
Registriert: 18.10.2005

Catia V5 R19

erstellt am: 12. Sep. 2009 17:53    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 Daniel,

vielen Dank für deine Antwort!

Das ganze scheint doch komplizierter zu sein als ich gedacht habe. Leider ist es sehr zeitaufwändig, bei vielen Blöcken jeweils 2 Zentrierbohrungen und 2 Gewindebohrungen einzubringen, da ja auch die Parameter jeder Bohrung Part für Part wieder eingestellt werden müssen.

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

DanielFr.
Ehrenmitglied V.I.P. h.c.
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 13. Sep. 2009 12:59    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 thomau96 10 Unities + Antwort hilfreich

Hallo,

ich frage jetzt nochmal kurz nach weil ich das so wie´s aussieht morgen in meiner Mittagspause kurz runterprogrammieren werden.

Da hast pro Block jeweils 4 Bohrungen? Oder meinst du du hast 2 Bohrungen mit Gewinden?
Die Randabstände (also Abstand in X- und Abstand in Y-Richtung der selektierten Kanten) sind in allen Blöcken gleich (sprich du willst sie definitiv nicht für jeden Block einzeln eingeben können (nicht mal die Möglichkeit soll bestehen?)
Das Makro läuft NUR auf Windows oder auch auf UNIX?
Wie oft setzt du das Makro ein?

Die Begründung zu den Fragen  :
Die ersten beiden sind ja klar (hoffe ich).

Zu der zweiten kann ich sagen wenn du in jedem Block den selben Abstand haben willst dann gibt es eine Eingabemöglichkeit. Diese ist bevor das Makro in die Schleife durch die Part´s läuft. Innerhalb der Schleife besteht dann keine Möglichkeit mehr ein "Ausnahmeblock" zu definieren außer du verschiebst nach dem Ablauf des Makro die Bohrung per Hand.

Wenn das Makro auch auf UNIX laufen soll dann muss es ein CATScript sein. Das ist IMHO für deine Problematik nicht schön da du nur mit InputBoxen arbeiten kannst. Diese haben das Problem das sich der Datentyp (also ob du jetzt eine "10.2" oder eine "10,2" oder ein "a" reinschreibst) nicht sauber von einem "Cancel" der Box trennen lassen.
Das heißt es existiert eine Fehlerquelle 

Zur letzten Frage ist zu sagen...Wenn du das öfters einsetzen bzw. hier noch jemand an einem solchen Teil gefallen findet oder es irgendwie einsetzen kann dann mach ich daraus ein *.CATvba (vorausgesetzt du arbeitest nur mit Windows). Hier gibts dann eine UserForm (die sieht genauso aus wie die Definition der Bohrung aus CATIA nur oben wird sie um ein Stück erweitert. In diesem erweiterten Feld stehen wie bei einem SendTo Befehl die Parts die bearbeitet werden können oben und die die das Makro bearbeitet unten. Der User kann also erst die Parts auswählen die er bearbeiten möchte, gibt dann seine Parameter (kann man so gestalten das man Sie für alle angibt, aber einzelne Parts explizit bearbeiten kann) und dann läuft das Makro in die Schleife)

Das lohnt sicher aber nur wenn auch ein Interesse besteht weil ich morgen in der Mittagspause nicht alzuviel Zeit habe 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

thomau96
Mitglied
Konstrukteur


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

Beiträge: 43
Registriert: 18.10.2005

Catia V5 R19

erstellt am: 13. Sep. 2009 20:27    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 Daniel,

zur Beantwortung deiner Fragen:

- Da hast pro Block jeweils 4 Bohrungen? Oder meinst du du hast 2 Bohrungen mit Gewinden?

Die Blöcke haben jeweils 2 einfache Bohrungen und 2 Gewindebohrungen. Die Bohrungen liegen jeweils diagonal gegenüber. Die Blöcke werden mit einer Grundplatte verstiftet und verschraubt.

- Die Randabstände (also Abstand in X- und Abstand in Y-Richtung der selektierten Kanten) sind in allen Blöcken gleich (sprich du willst sie definitiv nicht für jeden Block einzeln eingeben können (nicht mal die Möglichkeit soll bestehen?)

Wenn es möglich ist, die Abstände jeweils einzeln einzugeben (Eingabebox) wäre das optimal!

- Das Makro läuft NUR auf Windows oder auch auf UNIX?

Das Makro läuft in meinem Fall nur auf Windows.

- Wie oft setzt du das Makro ein?

Das Makro würde sehr oft eingesetzt werden. Würde es mit deiner Einverständnis auch an Kollegen weitergeben, da es die Arbeit doch deutlich beschleunigen würde! Ein *.CATvba Makro mit UserForm wäre also perfekt.

Freut mich sehr, dass man in diesem Forum kompetente und hilfsbereite Mit-Konstrukteure findet  

[Diese Nachricht wurde von thomau96 am 13. Sep. 2009 editiert.]

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 12054
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 13. Sep. 2009 20:37    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 thomau96 10 Unities + Antwort hilfreich

Servus
Vielleicht wäre für deinen Fall auch eine PowerCopy (näheres siehe Doku) ausreichend.
Oder könnten die "Blöcke" aus einer Vorlage erzeugt werden, in denen schon die Bohrungen vorhanden sind?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

tberger
Mitglied
Application Manager CATIA V5 / V6


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

Beiträge: 1385
Registriert: 13.01.2007

WIN 7 64bit
V5R21SP3HF49
3DX/V6 R2016x

erstellt am: 13. Sep. 2009 22:23    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 thomau96 10 Unities + Antwort hilfreich

Hallo Thomau96,

ich habe zwar noch keine Geometrie von dir gesehen, aber der Beschreibung nach könnte das auch mit einer Power Copy, wie Bernd auch schon vorgeschlagen hat, gehen.

Ich habe so eine Power Copy mit zwei Löchern (und auch einer spiegelbildlichen Tasche) für eine Clamp-Aussparung aufgebaut (siehe auch http://www.tobeplus.de/de/Zur%20Person/qualifications_BILDER.html  und dort den Abschnitt PC_Clampaussparung im unteren Drittel der Seite)
Diese PowerCopy benötigt als Input 2 Solid-Seitenflächen, könnte in deinem Fall auch klappen. In einer PowerCopy könnten dann auch mittels eines integrierten Design Tables verschiedene Varianten vorgehalten werden (z.B. Lochstich, Lochdurchmesser, Passung ja/nein etc.), wenn so etwas auch noch interessant ist für dich, wird das ein ziemlicher Aufwand bei der Programmierung.

Nichts desto Trotz bin ich sehr gespannt auf Daniels Makro und spiele ihm wieder den Ball zu.

------------------
Grüße aus dem Rheinland

Thomas

+++++++++++++++++++++++++++++++++

CATIA - eine Laune der Natur ...

"Phase 2 in CATIA V5"  - www.tobeplus.de

   tberger@tobeplus.de

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

thomau96
Mitglied
Konstrukteur


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

Beiträge: 43
Registriert: 18.10.2005

Catia V5 R19

erstellt am: 15. Sep. 2009 19:17    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!

Das Erstellen der Blöcke durch "Neu-Aus" ist leider nicht möglich, da die Blöcke zu verschieden sind.

Der Weg über die Power-Copy könnte allerdings erfolgreich sein, ich werde mich damit mal am Wochenende beschäftigen.

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)2025 CAD.de | Impressum | Datenschutz