What painful TDD experiences have you had that you still don't have a solution for minimizing or eliminating the pain?*
I have heard a LOT of horror stories regarding Top Down Design (TDD). I have been using TDD since 2004 and have had the privilege of working and learning with a lot of TDD experts and one thing is now clear to me. If you do it right, TDD is the most powerful tool available for managing large assembly design development. If you don't, it will probably one of the top 10 most painful experiences of your career. Furthermore, even if you are experienced and doing TDD "right", there are a lot of tips and tricks that can really minimize pain even further.
I will be giving a presentation at PlanetPTC Live in June on tips and tricks for minimizing the pain and maximizing the benefits of TDD. I am looking for input from all of you on what tips and tricks are of most interest to the PlanetPTC Community. If I use your response, your reward is a mention of thanks on the last page of my presentation and of course, a tip or trick that directly addresses your issue.
*Please don't share if you already know what you should have done differently in the future!
So I've decided to have my say here cause top-down design seems just too terrible.
I am a Tool Designer working with Creo Parametric 1.0 without AAX. I am actually new to Creo. So far I've made 6 molds and 1 die with it using top-down design approach.
Or at least I thought it was TDD. I am not sure anymore. I am only sure that making changes to these assemblies is like going with my head against the wall. Everything is like related to everything around. When I change some parameter, for example height of one part, then few other parts change height too or move. It's such a big mess.
I come from non-parametric software where I didn't have to think about every dumb thing in my designs. I just kept pushing buttons and I was making a straight-forward progress all the time.
It is true that I had to do way more actions to get things done than in have to do Creo... well in theory THIS should be true but now it looks like I spend a while defining the design in Creo and then spend alot of time redefining it and forcing it to regen succesfully.
I am actually lucky that I have FMX (flexible modeling extension) and in some cases I can just tweak the design intent with it. It's the best thing ever made in parametric CADs.
At the moment I have no idea how can someone work in prior versions to Creo at decent pace.
I know there is Mold Design and Tool Design for Creo but I am not gonna get these addons anytime soon cause they are not cheap.
I would like to add that Creo is able to work with AnyData like the people from PTC say but the amount of time working with this sort of data is mostly way too high even with FMX. If the reference model for the tool is too complicated.
A few things:
I hope that helps. If you have a concrete example of what bothers you most, please let me know, I would love to give you my two cents on it.
hello again Matt,
It is easy to say that I will get used to it over time but for some reason I actually like to hear that. Makes you look like you have some sort of strong confidence in Creo and so I might not be able to put you down with my little experience.
Ok first few things I would like to remind you before I ask first question. I don't have Advanced Assembly Extension. That means I can't make skeleton models. Neither I can use Copy Geom feature and Publish Geom feature.
Now at these days I am working on a prototype mold. The input (reference) model is made of about 3,5 thousands surfaces. It's a plastic cover for motor assembly and so it's supposed to be tough. Which means it contains lots of ribs and such things that lead to model with many many corner radii. The most IMPORTANT on this matter is that the model is DEAD exported from Catia V5 to IGES. By "dead" I mean non-parametric.
I've spent about two and half working days fixing it in IDD (Import Data Doctor) but that's cause I did this type of work for the first time in Creo. That includes wipping bunch of round surfaces that couldn't be removed with Remove feature. Next time I may be at least twice faster.
Anyway after fixing the model of the plastic part (making solid model) I had to fix it abit for easier/cheaper manufacturability because it was too complicated at some areas. The designer of that part forgot to add drafts to some walls and holes of the model. Its the usual work for a tool designer.
Next was to make core and cavity. I could use component operation like cutout for it but I have never seen that working on an imported model and I was in hurry so I've decided to use "Copy" and "Paste" features in assembly mode to make core and cavity. The parting surface wasn't that complicated after I tweaked the draft walls using Flexible Modeling Extension.
I jumped right in headlessly and started copying surfaces using "Seed and Boundary" surface selection trying to copy bunch of surfaces from reference model into a new cavity part but the copy kept on failing. So it didn't create the surface copy in that new part. Even tho I had a solid model I was taking the surfaces from. So Creo showed me one error why the copy did not create and I went back to IDD and replaced the erroneous surfaces Creo showed with boundary blend tool.
I came back to trying to copy the bunch of surfaces from reference model to new part using Copy and Paste and it gave me another error. But this time it was only something like the "feature couldn't regenerate" blah blah and it didn't show where was the problem.
That was after like one day of work. Which wasn't really what I consider as a work. I was only trying to make one model to regenerate not really adding any actuall value to it. I would be far ahead if I was doing the same work using my good old non-parametric software. And so realizing that made me angry.
I went on and started making separated copies of groups of surfaces from the reference models most of them created succesfully and some pockets between ribs I wasn't able to copy because of particular surfaces in corner radii that were all good in IDD but in modeling environment I couldn't make copy of them. I made boundary blend surface in IDD instead of these surfaces and then I was able to copy these surfaces.
So the first initial huge copy of a bunch of surfaces I was meant to make at the very beginning in like 5 mins was done in about over one day of time.
I have exported the original model with bad surfaces wich werent bad according to Creo into STEP and opened in Rhino. It turned out that Creo actually generated few grade 5 surfaces from the initial IGES from Catia and Creo works with grade 3 surfaces as far as I know.
I will leave these concerns about surface theory that is Creo dealing or better say NOT dealing with for later.
After getting pretty complicated quilt in new part I've added few surfaces to close the volume and made it to a solid model. Doing some draft analysis on the new cavity model and thinking where would be good spots to make inserts I have noticed that there are still some non-manufacturable surfaces and walls without drafts etc.
So I went to reference model and in Flex Modeling modified those surfaces. Some features didn't want to regenerate again so I went to change the model inside IDD again.
Before asking my question finally I would like to add two important things here:
1) If you for example move a surface by dimension (linear or angular) in FMX the surface will change it's ID.
2)) If you modify suface in IDD, for example convert surface to planar which seemes to be planar but Creo doesn't consider is as planar, that means you can't perform certain parametric operations on that surface then, it CHANGES it's ID as well.
It is important for the injection mold technology that in the reference part all the surfaces along parting line have a draft on them. It makes sense I am picking up these surfaces in particular for "Seed and Boundary selection" for Copy and Paste operations. Which is well over 200 surfaces on this complicated model.
Ok so I was making modifications to surfaces along parting line in a way that they changed IDs because there was no other way for me to do it and guess what. The huge copy feature I was trying to make for over one day has failed.
My question is how do you redefine such a huge failed copy feature? One thing is that I don't know how to handle the interface in Creo to replace the old boundary surfaces with new ones for "Seed and Boundary selections" inside Copy feature redefinition.
To add to all of that Creo actually lags as hell while doing this type of operation on this complicated quilt (surface copy). Even on top end comp with I7 processor, NVIDIA Quadro card, 16 GB of RAM and SSD Disk.
So with all the changes I forgot to make on the reference part everytime I had to go back and recreate this copy feature from the ground like 5 times on each cavity part.
And imagine that the core and cavity were fully defined so each time I had to go through every trim, merge, extend or extrude feature to point it to new references. Selecting those 200 surfaces upfront every single time.
After one week of working on the mold I've finally got all the inserts and plates assembled together. I am sure I could do this in one day in Rhino. But yeah dead models... well these "parametric" models are a mess, dead or not. If I am ever gonna touch that mold again I am gonna use FMX anyway.
To sum this up I am comparing one day to five and dead but stable models to parametric models that might fail anytime I just turn around on my chair. lol
If you aren't using AAX then you aren't using TDD :-(
The pain you are experiencing is with Data Import. I am by no means an expert on that topic.
By the way, I feel your pain about bringing in geometry from other CAD systems into Creo. The last time I had to do it, it was nothing but non-value added work that had me wanting to rip my hair out.
I suggest reposting your issue to the Creo/Modeling community.
Ok, I doubt anyone has similar sort of problem and could help on that matter. I might just try to log a case to PTC or try to dig it out form Creo help.
Thanks for trying to understand.
Btw could you show here a little example of what do you mean by TDD?
Good luck on your presentation in June.