Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations cowski on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

NX Open and Knowledge Fusion 2

Status
Not open for further replies.

PrintScaffold

Mechanical
Sep 8, 2006
453
Greetings all!

The answer might seem obvious for someone with th exprience on the subject, but not for me.

What is the actual difference between NX Open and KF capability? As far as I understand, NX Open is sort of 'above' the NX - running commands and calculations inside the executable code, and producing model as a result; while KF is sort of 'inside' the NX - making up custom functions which drive model according to the user input. How correct is this?

Industry creates wealth!
 
Replies continue below

Recommended for you

The link below will take you to a PDF document which should help you understand the differences between the various Programming and Customization tools available with NX.


John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
Hello John!

I've seen this flyer. It's an advertisement without any technical information. At the moment I'm not 100% getting how KF actually functions.

Industry creates wealth!
 
Your original statement is basically correct.
NXOpen is very powerful, but only executes outside the NX update mechanism. So as the code creates or changes something, it then has to wait for NX to update the part.
KF on the other hand is a 'rule based' language that interacts directly with NX's update mechanism. This means it can do things that NXOpen cannot.
Does this answer your question?

Graham Inchley, Systems Developer.
NX6, NX8.5(testing)
 
Hello Graham!

Thank you for the reply! Yes, it largely does answer the question.


Industry creates wealth!
 
One more question, Graham. I'm quite interested to sort out the situation with custom calculating funstions written in KF. We can define user functions in .dfa file and use them in expression, right? Can we define them in the .prt file itself? In other words, if I have created custom fucntions for use in some model and want them be available on different machines, shall I share .dfa files on those machines, or is it possible to define those functions in the .prt template and share only the template? Thanks!

Industry creates wealth!
 
One thing that you can do with KF routines is that they can be imbedded in expressions. For example, there's a KF routine which returns the 'username' of the current user. So lets say you want to automatically fill in a Drawing template with the name of the current user. So all you have to do is in your Drawing template file create a 'string' expression whose value is ug_askUserName() and it will return the user's login name. Then you can link that value to a note on your drawing or a field in the titleblock.

Another example is where you could insert a 'message' routine inside an IF statement where when some value exceeds some limit that a message gets displayed on the screen where you have to push OK to continue. This routine is named ug_printMessage(list).

For a complete list of all KF routines supported out-of-the-box, go to your NX Help files at...

Home -> Knowledge Fusion Help and Best Practices -> Knowledge Fusion Language Reference Help

...where you'll get a list of KF categories. Selecting one will bring up a list of links to specific KF routines in that category. When you select a link it will take you to a page showing the format of the routine, a paragraph or two of description and a list of the input/output formats and rules.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
I don't think you can store the KF in the part file. You just have to make sure that all users have their systems set up to find the DFA files. The best way to do that is have them stored on a common network share.


Graham Inchley, Systems Developer.
NX6, NX8.5(testing)
 
Hi! There is a small Siemens tutorial about how to create a box with a hole using KF rules which are defined in the .prt file itself. I know too little about KF at the moment to fully understand this. I suppose KF rules and KF custom functions which are defined in .dfa file are different things then?

Industry creates wealth!
 
Anyone running NX will automatically have access to all of the pre-defined KF routines accessible from things like the Expression editor and other applications. Only when a user-written KF routine is used does it need to be explicitly included in the DFA folder so as to be accessible to others using that part file. As for the ability to enable the KF module thus making the internal workings of the part file and any features accessible, that's done from the KF tab on the Resource Bar once the Knowledge Fusion application has been toggled ON. Any items modified/created from within this environment become an integral part of the Part file itself and does not need any special consideration or even an active KF application to be used by anyone. For example, I have set-up parts where you can use an expression to set the color of an NX object using the KF application to create links to the expression using the options available from the Knowledge Fusion Navigator.

Attached is an video clip showing how to set-up the aforementioned expression which can be used to control the color of an NX object.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
 http://files.engineering.com/getfile.aspx?folder=f08a52c0-855c-4f2e-94e5-2fb1caf916ca&file=Color_Expression.mp4
Thanks, John! The video is helpful.

Do I get it right that KF tab on the Resource Bar does not provide ability to define f(x) functions that we can use in Expressions? Those functions can only be defined via .dfa files? I'm a bit stuck on this subject at the moment.

Industry creates wealth!
 
That's correct. The KF tab (Knowledge Fusion Navigator) is a sort of 'portal' or 'gateway' into the NX data model as seen by KF. This is "the other side of the coin" as it were with Knowledge Fusion. The workings of KF are fully and intimately imbedded in the NX data model and part file. There is no way to separate them from each other and as such this is why we can define these KF modifications and include them as part of the definition of the model. In fact, this is being done all the time by the NX software itself, just that most of the time no one notices since it's so pervasive that we just assume that that's how NX works and we're right, it is. It's just that this KF 'structure' allows us to also insert our own behaviors and options into the part model so as to make it indistinguishable from that which was already part of NX. It's like in that video in my past last post. Once I've instanciated the link between the Expression and the Color assigned to the body, it was as if it had always been such.

The idea of writing a KF 'program' or custom routine, is just a way of creating some utility or application which would act on the model in such a way as if it were something that we (Siemens PLM) had implemented in NX in the first place.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
Thank you, John!

Could you tell a couple of words about KF licensing? Does user need license to execute KF code, or only to createit? If KF code is written in Notepad, is license still required?

Industry creates wealth!
 
There is no special license needed to 'execute' a KF routine, whether it was already predfined as part of out-of-the-box NX or it was something written by a user. You will however need a license to CREATE a new KF program.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
So if I take Notepad and write a KF .dfa file, will it count as a 'creation' of KF program for which the license is needed? Or does only ICE count?

Industry creates wealth!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor