![]() |
【转帖】CAD transform programmability
Dear Everyone!
I'm trying to write some sort of an automation that can determine the translation compensation of EDM electrodes. The compensation is the difference between the CAD model position and the actual machined electrode position (we are using EROWA fixtures for high precision repeatable positioning). For this task I need to use the CAD transform window to reposition the electrode by some 0.1 mm-s after each measurement, but it's highly time consuming. Is there some way to: 1. call CAD transform actions via VBA or any other means? 2. translate measured features by a certain vector all at once? Thanks for your help. David Bendes |
回复: 【转帖】CAD transform programmability
bitsandmore
Hi David, there's nothing in the PCDMIS-object-library for "Transform CAD", but i'm actually working on a solution to fill the "Translate" and "Rotate Matrix" fields through a tool called AutoIt. Find attached what I've done so far. HTH PCD_TransformWindow_Test.zip Bill McCafferty If I understand correctly, you're trying to compensate for the OVER BURN? If this is the case, simply use the THICKNESS setting in the AUTOFEATURES Dialog. -.1 will compensate for .1 of over burn and it will stay set at -.1 until you change it again. This way after you've aligned to the holder; I used to use the same holders, you can simply pick vector points off of the CAD and keep going. Bill David Bendes Hi David, there's nothing in the PCDMIS-object-library for "Transform CAD", but i'm actually working on a solution to fill the "Translate" and "Rotate Matrix" fields through a tool called AutoIt. Find attached what I've done so far. HTH Attachment 2060 Hi, I would worship you for that tool if that worked! I instantly dled it, trying to put it into action, but when I looked at the code I started wondering what language was it written in? Could you pls help me on that? I wasn't even familiar with the file extension. My automation would run from Excel, therefore I need to embed that code in some sort of VBA application. I would be really grateful for your support, many thanks Dv David Bendes If I understand correctly, you're trying to compensate for the OVER BURN? If this is the case, simply use the THICKNESS setting in the AUTOFEATURES Dialog. -.1 will compensate for .1 of over burn and it will stay set at -.1 until you change it again. This way after you've aligned to the holder; I used to use the same holders, you can simply pick vector points off of the CAD and keep going. Bill Hi, your guess is almost correct, but what I'm trying to do apart from compensating for overburn is to compensate the translation-type errors due to machining. That is e. g. the electrode is modeled to the centerline of the holder but when I receive the actually manufactured version, it is usually screwed up by a few tenths of millimeters to whatever direction. Therefore I need to find out the linear compensation to minimize that error. Anyway, your help is highly appreciated, since I never knew what for the thickness setting was, so now I can get to using it right away! thanks Dv Bill McCafferty This is right in the AUTOFEATURES dialog within PCDmis itself (Vector Point Advanced in the MISC area.). I've not done anything with automation, so this may not work for you, but somewhere there has to be PCDmis code that does the checks, it's within PCDmis itself. It does work exactly the way I discribed as well. I've used it in the past to check trodes and compensate for over burn. Bill Bill McCafferty bitsandmore Hi, the scripting-language is called AutoIt (freeware), you can find it here: http://www.autoitscript.com/ Sorry, no way with vb/vba here, because the Transform-function is not in the PCDMIS-object-library. Big advantage of that tool here: you can automate the process of transferring the values to the proper input boxes in the Transform-dialog. The previously attached .au3-file contains the code, it can with AutoIt also be compiled to an exe-file. HTH Bill McCafferty One last thought.. IF/WHEN ou use the THICKNESS feature, you have to MANUALLY turn it off or it WILL stay turned on, even if you close that program and start another. It even modifies features that it shouldn't. For instance if you used it for a trode check and then start a gage check and want to pick up tooling balls (sphere), it will STILL be turned on and the only place you can see it is in the Parameters of the feature in the edit window. You won't see it in the sphere autofeatures because it isn't an option there, but it WILL mess it up so be careful with this feature. Bill Thanks to both of you for your help, it was really appreciated. According to AutoIt, can I pass data from excel to AutoIt, or can I call AutoIt object from within excel? |
回复: 【转帖】CAD transform programmability
Hi,
no, data-passing the direct way would not work (as far as i now), but here's what can be accomplished: 1. i assume you have your "values" in the excel-sheet -> export/write that values with Excel-VBA to an external Textfile 2. call with Excel-VBA your generated AutoIt-exefile (with the Shell-command in vba) 3. the AutoIt-file then can gather the values from the textfile and send it to the transform-window Hope i was able to shed some light. Bye bitsandmore |
所有的时间均为北京时间。 现在的时间是 06:36 PM. |