Adding a flowing parameter in mechanical - flow

9009676
Participant
Participant

Adding a flowing parameter in mechanical - flow

9009676
Participant
Participant

Hi there, 

The built in revit MEP domestic water flowing parameters works based on Fixture units and flow.

Here in the netherlands we work with Tap eenheden, its basicly the same as fixture units but the values are different. 

 

I made a family off an wallplate (since all our instllations end there) and made a new parameter called TE. then made entered a formula so it projects the flow, see the picture below;

9009676_0-1732542056173.png

 

this works, but when i use the system inspector it only projects the flow. I want to project the flow & TE instead of the Flow & FU. 

9009676_1-1732542174630.png

 

I also want to make the TE flow through te piping system just like the Flow and Fixture units would. but the parameter TE (wich is a shared project parameter) comes up empty. it only projects the value on the wallplates

 

On the wall plate family:

9009676_2-1732542329527.png

9009676_3-1732542342775.png

 

On the pipe / fittings:

9009676_4-1732542403583.png9009676_5-1732542410943.png

 

As i said before i want the TE to automaticly add up and let the parameter "flow" throught the system.

 

Hope someone can help me out.

 

Thanks in advance!

 

 

 

 

0 Likes
Reply
Accepted solutions (1)
726 Views
23 Replies
Replies (23)

dbutts7
Collaborator
Collaborator

Frickin' brilliant!!

David A. Butts

Virtual Design and Construction Manager - Kimley-Horn

Revit Certified Professional/Autodesk Certified Instructor

Revit, AutoCAD Architecture, MEP, Plant 3D, BIM Collaborate Pro Subject Matter Expert

The MEP BIM/CAD Engineer Blog

EESignature

0 Likes

iainsavage
Mentor
Mentor

Next:

In this module of the sample file:

iainsavage_0-1732779376116.png

 

This line of code appears to be what is setting the fixed flow value for all pipes:

iainsavage_1-1732779450950.png

If I change this value and re-run then the flow value in the project changes (still fixed flow value regardless of FU value, but different from before).

 

So I conclude that in this section of code, this is where there should be a conversion method to relate flow value to FU value either by formula or array(?) or maybe reference to another file?

Anyone know how to do this? @jeremytammik @Joseph_Peel 

0 Likes

iainsavage
Mentor
Mentor

Been away doing some crash courses on programming - don't understand half of it but I've made some slight progress.

I've edited the sample flow calculator file to insert a very simplistic formula to relate Flow values to FU values and it seems to work. This is just a test formula it is not meant to represent anything real-world.

Note: it appears that in the API Revit always uses US Gallons per Minute as the units so a unit conversion will need to be added.

 

iainsavage_0-1733227365835.png

iainsavage_1-1733227411679.png

 

iainsavage_2-1733227453952.png

 

Now need to work out how to do it with tabulated data - Lists? Arrays? Dictionary?

I'm thinking it might be a dictionary method where the FU is the key and the paired value is the flow?

 

Still looking for some help here from anyone who has experience of doing this.

 

0 Likes

iainsavage
Mentor
Mentor

Progressed the dictionary method and it seems to work okay.

I put in a few values from the UK methods (Institute of Plumbing / BS 8558.

I only put a few sample values in to prove the concept before populating the whole dictionary.

This is a code snippet:

iainsavage_0-1733434695646.png

The conversion factor converts litres per second from the Standards into US GPM, then in the model it converts back to litres per second.

 

Result in a test model:

iainsavage_1-1733434811742.png

The tags which show zero are because there is no matching key value pair in the dictionary (yet).

I also need to figure out how to deal with any values which fall between the listed values. I tried using nested IF THEN ELSE methods to separate out the lower end of the FU scale from the upper end then Maths. Round function to round values to 1 decimal place at lower end and round to a whole number at upper end - it sort of worked but gave me some weird values so I'll need to play about with it again.

 

However in principle the concept of using a dictionary seems to work and then for other locations/codes it would just be a matter of editing the dictionary (or importing the dictionary pairs from an external file but I'm not as far along as that yet).

 

@9009676 regarding your initial post "Here in the Netherlands we work with Tap eenheden, its basically the same as fixture units but the values are different. ", if you send me the details of the method I could trial the script using your values.