PVC Pipe and Fittings Library: Difference between revisions

From Open Source Ecology
Jump to navigation Jump to search
Line 215: Line 215:
Run [[File:create-outer-corner.FCMacro]] to create a corner part. Ensure that you have a valid outer-corner.csv file in the same directory as the macro.  
Run [[File:create-outer-corner.FCMacro]] to create a corner part. Ensure that you have a valid outer-corner.csv file in the same directory as the macro.  
To add new parts you need to change your outer-corner.csv file.  
To add new parts you need to change your outer-corner.csv file.  
* A simple CSV with dimensions from Aenta Plastics is here [[File:outer-corner.csv]]. Aetna Plastics calls this part "side outlet elbow".
* A simple CSV with dimensions from Formufit is here [[File:outer-corner.csv]].
* CSV files with more parts can also be found in [https://github.com/rkrenzler/ose-piping-library-data].
* CSV files with more parts can also be found in [https://github.com/rkrenzler/ose-piping-library-data].



Revision as of 15:34, 10 February 2018

Basics

  • This is a library of all the current PVC Pipe and Fittings that have been made in freecad for OSE



Pipes

The dimensions of the PVC pipes can be found here PVC_Pipe. Wikipedia on Nominal Pipe Size (NPS) [6],

A pipe is described by its outeder diameter OD, its inner diameter ID and its length L.

Pipe-dimensions.png

The default pipe length is 1ft. When a user uses a macro, the macro stores the last user's input.


Macro

To create pipes use File:Create-pipe.fcmacro and a coresponding CSV file File:Pipe.csv with dimensions. On a unix-like system ensure that the file name is pipe.csv.

The macro creates a vertically pipe with one end (base) of the pipe onto the x-y plane. The center of the base has coordinates (0,0,0). The other end points to the positive direction of the z-axis.

Rationale: FreeCAD places in the same way a new cylinder. We mimic this FreeCAD behavior for the UI consistency.


Pvc-pipe-gui-screenshot.png
Pvc-pipe-cad-screenshot.png


Notations

  • O.D. - outer diameter.
  • Average I.D. - average inner diameter (why average?). This dimension determines the size of the pipe.
  • Min. Wall - thickness of the pipe wall.
  • Schedule - determines (indirectly) the thickness of the wall.



Elbows

Useful links: [7]

90° - Elbows

Described by 3 dimensions: pipe size, schedule, G,H,M. Other dimensions are derived from NPS pipe-dimensions.

One can create 90° with alpha°-elbow macro. Just set alpha=90° and J = G. I use dimension names from why Aetna Plastics, but I do not know, why they use "G" for 90°-elbows and "J" for other elbows.


Macro

To create an 90° elbow, run File:Create-elbow-90.FCMacro.

Pvc-elbow-90-gui-screenshot.png
Pvc-elbow-90-cad-screenshot.png


alpha° - Elbows (Non-90° Elbows)

alpha, pipe size, schedule, H,J,M. Other dimensions are derived from NPS pipe-dimensions.


Macro

To create an elbow with an arbitrary angle alpha from 0° to 180°, run File:Create-elbow-alpha.FCMacro.

Pvc-elbow-alpha-gui-screenshot.png
Pvc-elbow-alpha-cad-screenshot.png



Couplings

Simple Coupling

A general coupling is described by 10 Dimensions: POD1, PID1, L, M, N. The dimensions POD1 and PID1 are not from a official specifications. They are derived from pipe size and schedule.

Simple-coupling.png


Reducer Coupling

The reducer coupling is described by 8 Dimensions: 4 Pipe dimensions (they follows from pipe sizes and schedule), L, M, M1, and N.

Coupling-dimensions.png

Pvc-coupling-gui-screenshot.png
Pvc-coupling-cad-screenshot.png


Macro

To install macros follow instructions in PVC Pipe and Fittings Library#Installation.

Run File:Create-coupling.fcmacro to create a simple coupling or a reducer coupling. Ensure that you have a valid coupling.csv file in the same directory as the macro. To add new parts you need to change your coupling.csv.

  • A simple csv is here File:Coupling.csv. Note, when downloaded from the OSE wiki, the file will be stored as Coupling.csv, on a linux system it must be renamed to coupling.csv.
  • CSV files with more parts can also be found in [8].



Bushings

Bushings are described by dimensions N, L and pipe dimensions. As pipe dimensions we use POD, PID1, and POD1.

Bushing-dimensions.png


Macro

To install macros follow instructions in PVC Pipe and Fittings Library#Installation.

Run File:Create-bushing.FCMacro to create a reducer bushing fitting. Ensure that you have a valid bushing.csv file in the same directory as the macro. To add new parts you need to change your bushing.csv.

Pvc-bushing-gui-screenshot.png
Pvc-bushing-cad-screenshot.png



Tees

Almost General Tees

Described by parameters G, G1, G2, H, H1, H2, M, M1, and pipe dimensions. As pipe dimensions we use POD, POD1, PID, PID1.

Tee-dimensions.png


Macro

Run File:Create-tee.fcmacro to create a tee.

Pvc-tee-gui-screenshot.png
Pvc-tee-cad-screenshot.png


Simple Tees

Described by parameters G, G1, H, H1, L, M, and pipe dimensions. As pipe dimensions we use POD, POD.

Simple-tee-dimensions.png


Macro

Run File:Create-tee.fcmacro to create a tee.



Cross

Almost General Cross

Described by dimensions G, G1, G2, G3, H, H1, H2, H3, M, M1, and pipe dimensions. As pipe dimensions we use POD, POD1, PID, and PID1.

Cross-dimensions.png


Macro

To install macros follow instructions in PVC Pipe and Fittings Library#Installation.

Run File:Create-cross.FCMacro to create a (reducing) cross fitting. Ensure that you have a valid cross.csv file in the same directory as the macro. To add new parts you need to change your cross.csv.

  • A simple csv is here File:Cross.csv. Note, when downloaded from the OSE wiki, the file will be stored as Cross.csv, on a linux system it must be renamed to cross.csv.
  • CSV files with more parts can also be found in [10].
Pvc-cross-gui-screenshot.png
Pvc-cross-cad-screenshot.png


Corners

"Outer" Corner

Bushings are described by dimensions G, H, M and pipe dimensions. As pipe dimensions we use POD and PID.

Outer-corner-dimensions.png


Macro

To install macros follow instructions in PVC Pipe and Fittings Library#Installation.

Run File:Create-outer-corner.FCMacro to create a corner part. Ensure that you have a valid outer-corner.csv file in the same directory as the macro. To add new parts you need to change your outer-corner.csv file.

  • A simple CSV with dimensions from Formufit is here File:Outer-corner.csv.
  • CSV files with more parts can also be found in [11].

Genaerated Library Parts

Library of STEP Downloads from McMaster Carr

Comparable in size to generated parts - except for some parts which are way too heavy.



Macros

Macros are now in a git repository for the macros is https://github.com/rkrenzler/ose-piping-library. The CSV tables with parameters can be found in https://github.com/rkrenzler/ose-piping-library-data

FreeCAD community provides a little tutorials for creation and installation of macros.


Installation

The video isntructions are here [12].

  1. Download ose-piping-library from [13]. To run the macros you only need the content of the directory macros. The macros directory contains macro files with extension .FCMacro, drawing with dimensions .png and some .csv tables with part parameters for testing. The more realistic .CSV tables can be downloaded from [14].
  2. Determine the directory where FreeCAD looks for macros: Menu "Edit"->"Preferences"->"Macro". Look at the settings "Macro path". It is for example "/home/ose-developer/.FreeCAD/Macro/".
    Freecad-macro-directory.png
  3. Now copy all files from the downloaded macros directory to the FreeCAD macro directory. In this example "/home/ose-developer/.FreeCAD/Macro/".
  4. Select a FreeCAD menu item "Macro"->"Macros..." then select the corresponding macro -- it startart with "create-..." and click "Create".

How to create a pipe macro

Steps to create GUI: The original instruction are taken from [15] but I (Ruslan) have problems with them. I adjusted them to FreeCAD.


  1. Create with QT Designer a Dialog based on QDialog class. Save the name for example add-nps-pvc-pipe-dialog.ui.
  2. Convert add-nps-pvc-pipe-dialog.ui to python code running
    pyside-uic add-nps-pvc-pipe-dialog.ui -o pipe-dialog.py
    or call
    pyside-uic --indent=0 add-nps-pvc-pipe-dialog.ui -o pipe-dialog.py
    to use tabs as indention.
    If you use the FreeCAD macro editor, pay attention that the indention of pyside-uic and of the editor are the same.
  3. Insert content of the methods setupUi(self, Dialog) and retranslateUi(self, Dialog) from pipe-dialog.py (How can I insert here a block of python code?) into your macro file.


Remarks about the coupling macro

To create a simple coupling or a reduced we internally use a more general coupling. This general coupling is described by 9 dimensions: POD, PID, POD1, PID1, X1, X2, N, M, M1. The dimensions POD, PID, POD1, and PID1 are derived from the pipe sizes. The are abbreviations of Pipe Outer Diameter and Pipe Inner Diameter. The dimensions X1 and X2 are not official dimension names.


Coupling-calculations.png

The offset a1 is calculated in such a way, that the thinest part of the middle section is not thinner than the walls on of the both sockets. Lengths a2, a3, a4 and angle b1 are derived from the dimensions and are only used to calculate a1.



FAQ

  • Do we really want to 3D-print pipe fittings? Somehow I have doubt about mechanical properties of the 3D-printed products.
    Yes. For high pressure applications - 300 PSI - we would have to be very careful. For low pressure, such as 5 PSI, it's not a problem. Eventually, we want to refine printing techniques where our fittings can do what standard schedule 80 ABS fittings can do.
    • Also with things such as part baking/anealing, composite filaments, and SLA or SLS Printers, very durable parts can be made



See Also



Useful Links