Continue to Site

Welcome to MCAD Central

Join our MCAD Central community forums, the largest resource for MCAD (Mechanical Computer-Aided Design) professionals, including files, forums, jobs, articles, calendar, and more.

Knowledge Fusion (KF)

Joru

New member
Hi,
this is my first post in this forum. My name is Joru and I am using Knowledge Fusion to automate typical engineering activities.

This post is not aimed at modelling or knowledge fusion directly, I am only interested in if there are other individuals on this forum which use KF to automate/increase the efficiency of any design activities.
Since this forum was most active I chose to post here and I apologize in advance if it was wrongly posted.

Regards,
Joru
 
Joru,
My employer purchased KFabout 6 months ago. I was involved in evaluating the software, but am not a user myself. Three of my fellow engineers are learning KF in order to automate/increase the efficiency of product design. They have taken theone week KF training course offered by UGS, which is apparently the extent of KF training (at least at that time). They are finding it difficult to apply what they have learned. This was a bit surprising since one of them has used Unigraphics for over 10 years and has programed extensively using other UG programming tools. The concepts make sense, but there are many small barriers to overcome. We believe KF has great potential, but we are having difficulty gettingit off the ground. What has your experience been?
 
pdxraven,
It is interesting to hear that other users are working with KF and see what it can accomplish if treated well.

I have no experience in the KF training course - the basics was tought by some of my colleagues but I am certain that I would benefit from taking the course in the future. Like one of your colleagues I have also been programming for a number of years using different languages.

I like the object oriented nature of the language but sometimes have issues with creating reference geometries/features etc that frequently change in quantity (hmm? =). This is very common during conceptual stages where the generation of alternative designs in a short amout of time is of high importance. The main problem I experience is that the execution of the KF-rules does
not always "wait" for geometry-engine to finish it's activities. Using
DemandOrder: and DemandValue: helps in solving parts of the problems but
far from all.


I also often find myself "fighting with the CAD-engine" trying to automate
too much of the geometry generation activities using KF. Nowadays I use
a combination of KF-rules and standard modelling operations/expression usage, especially
now that it is possible to have operations performed by KF appear in
the part history tree (NX4 - nx_application class) just like a standard
feature. This is a huge step in the right direction since many of the
modelling activities need to be executed in sequential order. I also find that KF behaves better when working in assemblies where parts are updated in a certain order. I look at KF and the CAD-engine as complements that are brilliant at certain taskt rather than trying to replace one with the other.


In general I have experienced that building smaller "modules/objects" that perform well defined activities are most powerful/gives most payoff. This could be the creation and positioning of typical bolts or inserts. The partfile (lets treat that as an "object" in the same way you treat a peice of source code an object) representing the bolt can input expressions/parameters that drive its sketches/features. Next step is to allow for the engineer working with the CAD-system to easily and freely position these objects on the design, this is done by using a custom window interface - similar to any used interface in NX - by using the User Interface Styler. Positioning geometry such as points and vectors can be incorporated in the custom window and aid the positioning process.

Some examples...

Maybe you often find yourself creating wind surfing boards using
numerous guide and section strings? Why not use KF to automate this "point-and-click-nightmare"?

Maybe you and your team create designs that need to be evaluated by stress engineers? Is it possible to instead use hand calculations driven by the shape of the geometry for initial dimensioning at an early stage?

Maybe it is important in an early stage to know which surface roughness you can tolerate for the inside of a straight pipe in order to evaluate if the flow inside the pipe will be laminar or turbular? Is it of absolute priority to create the model as fast as possible, export it using another file-format and hand it over to CFD team for evaluation? Could you have eliminated 30% of the different models by using a set of hand calculations? How much extra work were you and the CFD team forced to perform due to poor export geometry/model quality?

...

Since I am not aware of how you and your colleagues go about when modelling and creating assemblies for your designs it is hard for me to come up with custom solutions. However, what I advise you and your team to do is to sit down together and brainstorm/look at your design activities trying to locate reoccuring activities that you often experience to be annoying and a "hack that works for now". Do not limit yourself to people working with definition but also look at the world outside of your sphere - what interfaces to other disiplines do you have?

Your goal should be to create general modules/applications, preferably easily driven by custom graphical user interfaces. in order to prevent a black-box phenomenon. The outcome naturally depends on what you and your team are designing - maybe you work as a contractor with new things/geometries/analysis models all the time or you redesigns your own parts on a daily basis. The latter case is easier to work with when it comes to automation.. i suspect?

Code-wise I suggest you to use a combination of classes and functions that are as general as possible. Imagine that you have created a function that calculates the radial location of a sheet body. It should be possible for you to call this function in any of your classes in whatever project you work on.
Going one step further you could create a second function that inputs a list of sheet bodies, this function makes numerous calls to your first function calculating the radial location of each individual sheet body. Last, maybe you have created a third function that lets you sort the list of the sheet bodies with regard of their radial location. If you've done your homework well your third function should be able to sort lists containing general items with respect of a distance/facial area/angle, not only sheet bodies but points/faces/curves.

I hope this post can help you and your team in some way, feel free to reply in any matter and I will try my best in helping you out.

Joru
 

Sponsor

Articles From 3DCAD World

Back
Top