[DriveWorks] Driving an Assembly inside another Assembly?

Hello to you! 

I'll first explain the context before asking my question: my company has just acquired DriveWorks to be able to configure some of its machines. We have followed the training provided by CadWare, and for the past week I have been working on a part of one of the machines that we want to make configurable. 

So far so good, I remade a clean SW model, a priori adequate to work with DW. I have completed my DW project, it seems finished to me (especially in its functional part the design will be to be thought about when it works!).  

My problem is that when designing the Main Assembly, I had to place 200 instances of the same part. So I decided to make a subassembly, in which I assembled 100 (screen1 http://image.noelshack.com/fichiers/2016/16/1461156558-screen1.png),    and then I inserted this assembly into my main assembly twice to get to my 200 occurrences. This saves me from having 600 more constraints in the main assembly. 

A priori, I followed the necessary steps to be able to independently control the dimensions of each of these 200 parts. 

I entered the instances of the two subassemblies, which I also placed under their components (in the DW rule tree) (screen2 http://image.noelshack.com/fichiers/2016/16/1461156561-screen3.png)

I also entered the variables for the captured dimensions, as well as for the FileNames (screen3 http://image.noelshack.com/fichiers/2016/16/1461156555-screen4.png)

Then I replaced the instances of these subassemblies in the main assembly (which is placed at the very bottom) (screen4 http://image.noelshack.com/fichiers/2016/16/1461156560-screen5.png)

And I made a rule for the fileName of the subassemblies (screen5 http://image.noelshack.com/fichiers/2016/16/1461156553-screen6.png).

Only during my model generations I get: (screen6 http://image.noelshack.com/fichiers/2016/16/1461156560-screen7.png)

The two subassemblies have not moved, but they have taken the names indicated in the FileNames. 

During the tests that can be carried out in the spec explorer, you can see that my files have the right name, and should therefore move accordingly (Screen7 http://image.noelshack.com/fichiers/2016/16/1461156556-screen8.png

. We can also see, on Screen8 ( http://image.noelshack.com/fichiers/2016/16/1461156560-screen9.png ) ), that the values of the variables predicted for the dimensions move well and do not remain at the initial value which was 592. However, in the generated assemblies they all have the same name (Screen9 http://image.noelshack.com/fichiers/2016/16/1461156558-screen10.png ), which makes them the same part as the original one.

It's a bit like if there was a missing link, between DW and SW, maybe you have an idea?

Thank you for your help!

PS: It's not practical to be able to put only one attachment! :p

 

 

 

EDIT: Ah thank you for your answer PL, I didn't expect so much speed! Oh I hadn't seen the button provided for this purpose, so I uploaded my images and put the links in my message, note that I didn't expect to have to upload them, and that there is therefore a delay in the numbers that are present in the links, You have to refer to the name of the screen that I put in bold before the link;) 

 

Otherwise sorry, I forgot to mention that we are running on SW11 and we therefore have version 10 of DriveWorks (the one that was compatible with our SolidWorks)

 

And yes, the problem persists despite restarting the system. 

 

I'll try with a sub-assembly of a part to see if it works 


screens.pdf

Hello

For your information, you can insert images directly in the middle of the text of the question with the appropriate button.

Is everything up to date at SolidWorks SP5 for 2015 and below or SP3 for 2016?

After a restart of the workstation, there is still the same problem?

With a simpler trial (1 piece), does it work?

So I tried with another smaller assembly, to see if it worked. 

To save time I skipped the step of renaming the assembly, so I left DWSpecification in the FileName field of the two subassemblies, and it worked. 

So I tried again by leaving DWSpecification in the FileName fields of my two big assemblies and it worked!! So they have a name that is not really up to standard, but they are now changing. 

 

However, I don't really understand why it didn't work by applying a FileName different from DWSpecification? Is there no way to do this by applying a name to the subassemblies we use? 

Because in this case it's not a big problem not to be able to rename it, but I'll certainly have cases later where I'll have to give standardized names to my subassemblies ..  

And it's not possible to apply the name afterwards? To do it in two steps?

If in this case there are no real problems, I can change the name of the assembly by hand once the model is generated. 

Afterwards we risk having several small assemblies that will go into a machine, and then it may be more complicated to get out of it... (we don't have all the visibility yet to make a complete machine, we just started!:)    ) 

And it will also leave an impression of unfinished, or badly finished as for the configurator, having a more square result would have been preferable... Because if from the start we don't manage to have clean results on our small projects, what will it look like for big projects? 

 

Maybe I need to manage this with a parent-child system? 

 

 

_____________________________________________________________________________________________________________________

 

So I still didn't find it very logical that it didn't work, and so I modified the FileName of my small sub-assemblies, which worked once, and when I tested it didn't work anymore. And when I looked at the generated files, I realized that it was no longer generating my assemblies for me. 

In fact, when the fileName remains the same, as the generations are made, they will just retrieve the previous file that had that name in its specifications. That's why he didn't change my parts. 

 

So here is what you have to do to get around this "problem": (for those who would be interested later!)

for example, you have to enter a TextBox in a design form in which you will have to write the business number or equivalent, and you will have to inject it into the FileName, and thus the part will be generated at each specification. 

 

 

 

Thank you for your answers PL and good luck

Hello

I see that you have seen for yourself that indeed, if the name provided is reused then the file is reused. (the advantage of "DWSpecification" is that, by default, it contains the "DWSpecificationID" which itself is unique to each specification).

You can also force to crush but it's not necessarily desirable... It's up to you to intelligently manage what needs to be reused (a kind of library built up over time) and what needs to remain specific to a configuration (the head assembly for example).

Afterwards, on what you want to do, I'm not sure I understand, but I'm sure that a complementary point on the methodology with your trainer can save you time and facilitate the maintenance of your configurator over time.

And if you have the opportunity: take a look at the new features of version 14: you might like them.

1 Like