[To...] Posted August 20 Share Posted August 20 I am running a family of parts that sit on a fixture. The bottom of all parts sit on the same location on the fixture, however the top or Z origin of each part is different. I've used a "Load an alignment" from a fixture before but didn't have varying heights of parts. As I sit here thinking about it, I suppose I could create a secondary alignment with a Z offset equal to my part height and assign this alignment to all of the features. Am I on the right track or is there an easier solution? Link to comment Share on other sites More sharing options...
[Ke...] Posted August 20 Share Posted August 20 How much variance is there in the height of the parts? Are the other alignment components consistent? If so you may not need a fixture alignment, you could possibly use a typical "on the part" alignment, just set a search distance before probing on your Z feature, and teach the alignment on the tallest part (dont run from the (cnc) version of the alignment of course) Link to comment Share on other sites More sharing options...
[To...] Posted August 20 Author Share Posted August 20 Please sign in to view this quote. The only problem I see is that I need to measure the bottom of the part (or the top of the fixture without a part) to get the Z value of the bottom of the part. Loading a fixture alignment allows me to create a theoretical point at Z zero. Link to comment Share on other sites More sharing options...
[Ke...] Posted August 20 Share Posted August 20 Yep, that makes sense. I didn't think about that need, so in that case I think you are on the right path with a secondary alignment. I'm not sure if a Z feature with a search, a Z feature with a formula'd Z, or a formula'd Z offset in the secondary alignment would be the best option from there for what you are doing, but all of those should be viable methods Link to comment Share on other sites More sharing options...
[Mi...] Posted August 20 Share Posted August 20 I like the rule I was told once. "If it doesn't go to the customer, don't measure it". Due to the need to get both sides of most of our parts we have ditched almost all the XY plane fixtures and make ZY plane vises instead. Previous programs at my facility loaded alignments from Fixtures and that was fine, until there was a form error problem with the part, and it didn't sit properly in said fixture. Part Based alignments only has improved measurement reliability greatly. I've done similar, but without knowing the geometry it's hard to suggest. an exact path but: 1 Start Alignment, shared by all programs, that can handle the variations from part to part (I love doing this) Make you're Start Alignment something simple, that can be made to work for all variants, set it to run every time. It does not have to be the same features, just as long as you build in enough clearance for it to measure any part that will be sharing. Each program will need the Start Alignment features in correctly with the correct offsets to the Base Alignment features for that program. Put enough Clearance/Retract/Search distances to measure any variant. Use PCM to control variables. Notice the ID circle is in space? the program uses the shaft, as there is 3 variants of this part and they load in different orientations. By using the shaft for the Start Alignment only I can locate the part well enough, without having to parameterize the Z height of that circle. See this? Different part, Different Diameter, Different Z Height, Different Relationship to the Base Alignment (look at the trihedron) Same Start Alignment. In cases where there is an extreme differences in Z or X between variants or machine operations I: Take a point on the face, large retract and search distances. Post settings of the point startAlignmentOffset_x = getActual("Pt. X Check - SA").x Then use the X as a variable in the true Start Alignment Features. To Force that point to run every time regardless of anything else in the Presettings of the First Start Alignment feature simply put this: getActual("Pt. X Check - SA").comment That's alot, and I probably explained it poorly. Tom if you're interested in a method like that I can try and explain better, but that's a general idea. Most importantly, create a program, with nothing but your Start Alignment features. Name the Base Alignment of that program EXACTLY the same as your Start Alignment. I use "XXPartNumberXX Shared(Start), teaching people that if they see "Shared" it means there's an external alignment program to run. In some cases I have 60+ programs for part families that share the same single alignment. After the Start Alignment, you have a proper, normal Base Alignment - whatever makes sense for your task. If you like this idea I can elaborate more, but I shouldn't post too detailed of photos of a current part on an open forum. Link to comment Share on other sites More sharing options...
[Ma...] Posted August 20 Share Posted August 20 Create an alignment on the fixture. Load the fixture alignment into your part program. Create a theoretical plane on the top of the fixture that the part sits on. Now add a PCM check to make sure each subsequent part is level in the fixture to avoid any offset due to misloading. Mark Link to comment Share on other sites More sharing options...
[Ma...] Posted August 21 Share Posted August 21 I am not sure if it's mentioned here, but. You can load alignment instead of creating new alignment for program ( i think only base alignment ) Then you can recall stored alignment in program - if you make theoretical plane in recalled alignment, then you can evaluate your measurement with that T plane. Link to comment Share on other sites More sharing options...
[To...] Posted August 21 Author Share Posted August 21 Please sign in to view this quote. Hi Mark, Can you add a few more details? (1) Use this alignment via "Load Alignment" in BA window? Or, use Load Alignment from Resources > Utilities menu during program run How do I get Z zero of fixture alignment to transfer to Z zero on the top of part? I would consider moving CAD origin to bottom and then create a secondary alignment on top of part. Will I need to do a manual alignment on the part at any point? I am trying to avoid having to do any manual probing on part. Forget PCM Link to comment Share on other sites More sharing options...
[To...] Posted August 21 Author Share Posted August 21 I believe I just figured this out. I created a program with a base alignment on the fixture. In the part program, I selected "Load a saved Base Alignment" in the BA window. I re-opened the BA window and selected "Change alignment", click Special button. Added and offset in the +Z direction. When I closed BA window, I was presented with the option to transform the nominals and I selected NO, which means the original CAD origin stayed in tact. Didn't need a secondary alignment. Now, I just need to prove this works from scratch, i.e. adding a new part program in the future. * * * * U P D A T E * * * * * Didn't work on new part. Back to drawing board. Link to comment Share on other sites More sharing options...
[Je...] Posted August 21 Share Posted August 21 Please sign in to view this quote. I nearly allways doing it this way, we use standard-fixtures. After loading the base-alignment for the fixture, I create a secondary alignment for the offset of the part-alignment. After that I do (most min two, like looping base-alignment) alignment(s) on the part. That saves me time when bringing the part from offline-seat on the mashine. Greets Jens Link to comment Share on other sites More sharing options...
[To...] Posted August 21 Author Share Posted August 21 Please sign in to view this quote. Greeting Jens. I made my secondary alignment from the model. Do you perform the secondary alignment "manually" on the first run? I am not clear on how Calypso knows that the Z is "x" amount above the fixture. Link to comment Share on other sites More sharing options...
[Cl...] Posted August 21 Share Posted August 21 I haven't read all the responses, but what about using PCM with a para file containing all the Z variables? Then you can add an operator prompt to choose a part number (or size) and based on that choice the correct Z nominal value will populate the feature. Something like this: LN = getRecordHead("order") clearCAD() dir = getActualInspectionDir() Part_Size = inquireList("Which size part would you like to run?", "Size_1", "Size_2") selectCase Part_Size case "Size_1" readPCMFile(dir + "\1.PARA") loadCADFile(dir+"\S1.sab") case "Size_2" readPCMFile(dir + "\2.PARA") loadCADFile(dir+"\S2.sab") endSelect Then the para file Size_1// Z = 0.100 Link to comment Share on other sites More sharing options...
[Ma...] Posted August 21 Share Posted August 21 Tom, You are on the right track. You should not have to manually align the part, but I do recommend a CNC alignment if possible on every part. The PCM is to verify that the current part is in the fixture correctly. I use A1 and A2 angle confirmation. This PCM program will check an angled plane and verify its position before it runs the program. This PCM code is entered as a Pre-Setting in the program. This part has a surface that has a 17.90 degree angle. We will check that first thing in the program to determine if the part is loaded correctly. Note: the stepRS(0,150,0) line skips the next command and in this case moves the probe 0 in X, 150 in Y, and 0 in Z) allowing the operator to reposition the part. getActual("Error Proof Plane Measure").z A1 = abs(deg(getActual("Error Proof Plane Measure").a1)-17.9) A2 = abs(deg(getActual("Error Proof Plane Measure").a2)) if A1>0.5 then stepRS(0,150,50()) message(" Part is Loaded Incorrectly ",cr()," Reload Part and Reset Traffic Light ") cncbreak() endif if A2>0.5 then stepRS(0,150,50()) message(" Part is Loaded Incorrectly ",cr()," Reload Part and Reset Traffic Light ") cncbreak() endif Mark Link to comment Share on other sites More sharing options...
[To...] Posted August 22 Author Share Posted August 22 Please sign in to view this quote. Thank you for the detailed response. I understand and appreciate the benefit of using PCM but end user does not have it. They may decide to get it after an incident. Link to comment Share on other sites More sharing options...
[To...] Posted August 22 Author Share Posted August 22 Please sign in to view this quote. Thank you for the response but it really doesn’t answer my question and end user does not have PCM. Link to comment Share on other sites More sharing options...
[Da...] Posted August 22 Share Posted August 22 We had some parts that were checked from a fixture. Like you had suggested before the program was from the fixture up, then we used mini plans for each part number with the various Z heights. Link to comment Share on other sites More sharing options...
[Cl...] Posted August 22 Share Posted August 22 Please sign in to view this quote. FYI. Even without PCM. They can still run the program. Link to comment Share on other sites More sharing options...
[To...] Posted August 22 Author Share Posted August 22 Solution has been resolved with the assistance of user Jens Kröcher. Much thanks to Jens. 1) Create cmm program to run base alignment of fixture. Z origin is portion of fixture where part sits. 2) Create part program. Translate and rotate model so Z origin is at bottom of part where it will sit on fixture. 3) Open base alignment window and select "Load a saved base alignment" and select the fixture(cnc) alignment from step 1. 4) Create secondary alignment using a offset in Z equal to the distance from the bottom of the part to the top of the part (or desired location of Z origin) 5) Create a secondary alignment, changing the alignment reference from base alignment to fixture offset alignment. 6) Assign all features (not including base alignment features) to secondary alignment created in step 5. 7) Theoretical feature for the bottom of the part remains at base alignment. 8) Run part using fixture(cnc) Note: this fixture uses an alignment tool to control clocking orientation Part program does not need any manual alignment from operator. . .base alignment from fixture.jpgfixture offset alignment.jpgpart alignment.jpgfeature alignments.jpg Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in