• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            The Creation of Bending Activities Tables in

            AVEVA Marine PipeSketches

            AM管子零件圖中彎管參數(shù)表的生成

            一、引言

            AVEVA Marine生成的管子零件圖中包含以下幾種表格:

            l MTO Tables; ——材料表;

            n MTO Tables主要為管子下料長度及一些閥附件數(shù)據(jù);

            l Bending Tables;

            l Bending Activities Tables; ——彎管表;

            n 彎管信息表,主要為彎管機(jī)加工所需數(shù)據(jù);

            l Automatic Welding Tables; ——自動焊接表;

            l Assembly Activities Tables; ——裝配表;

            l End Points Tables; ——端點(diǎn)表;

            n 管子端部的坐標(biāo)值,用于管子安裝時位置的確認(rèn);

            有了以上數(shù)據(jù),可以對管子進(jìn)行數(shù)控加工,節(jié)約材料,簡單正確安裝,提高生產(chǎn)效率。

            本文主要講述彎管機(jī)所需的彎管參數(shù)的計算方法,以及在AVEVA Marine中利用PML編程時如何獲取這些彎管信息,理解這些內(nèi)容可對管子零件圖進(jìn)行靈活地控制,也可以自己編程實(shí)現(xiàn)對彎管參數(shù)的自動計算,生成數(shù)控彎管機(jī)加工管子零件所需要數(shù)據(jù)。

            AVEVA Marine中彎管參數(shù)是在管子工藝檢查后自動生成,管子工藝檢查程序未以PML的形式公開,而是以PipeCheckAddin.dll動態(tài)庫的形式發(fā)布的,看不到源代碼,所以,本文是本人學(xué)習(xí)總結(jié),僅為個人觀點(diǎn),歡迎討論。若有錯誤或建議請聯(lián)系:eryar@163.com

            二、彎管參數(shù)計算

            由彎管機(jī)進(jìn)行彎曲的管子,必須有相應(yīng)的彎管程序,即彎管參數(shù)的計算。彎管參數(shù)計算分成兩部分:一部分是關(guān)于管段實(shí)長、彎角和轉(zhuǎn)角的計算;一部分是關(guān)于彎管的起彎點(diǎn)和管長總長度及無余量下料長度的計算。其中,下料長度的計算要根據(jù)管子加工工藝決定,如果采用先焊的加工工藝,則要考慮到兩端連接件的形式、彎曲部分的伸長量、彎子彎曲后回彈所引起的彎曲半徑的變化等。

            現(xiàn)對彎管參數(shù)中的彎角、管段長度、旋轉(zhuǎn)角的概念及其計算方法進(jìn)行介紹。

            2.1 彎角

            彎角是指一根直管子彎成一定形狀時,管子一端所彎過的角度,即彎管機(jī)彎模旋轉(zhuǎn)的角度,一般用α表示。

            由兩管段所組成的角度稱為成形角,用β表示。它與彎角互補(bǔ)。

            管子的彎角數(shù)Nα與管段數(shù)N的關(guān)系為:Nα=N-1

            2.2 管段長度

            管子中心線的長度稱為管段實(shí)長,通常也是管子零件圖上尺寸線標(biāo)出的長度。管子彎曲部分實(shí)際上是一段圓弧,并不是一條直線。圓弧的長度與管子彎曲半徑及彎角有關(guān),設(shè)彎管半徑為R,彎角為α時彎管的弧長計算公式為:

            因?yàn)楣芏螌?shí)長中包含彎管處圓弧的切線長,在進(jìn)行彎管參數(shù)計算時它的直管段長必須減去與彎角對應(yīng)的切線長,計算公式為:

            采用先彎后焊的管子加工工藝時,下料長度就是彎制成形的管子的總長。理論上它時直管段長度和彎管圓弧長度的總和,即管段實(shí)長減去彎角對應(yīng)的切線長加上彎管部分的圓弧長度。

            若采用“先彎后焊”工藝,管子彎曲成形后,還要進(jìn)行二次畫線和切割,可以不考慮以下因素。若采用“先焊后彎”工藝,在求管子長度時,還需要考慮以下幾個因素:在彎制管子時,彎管部分的圓弧因材料的塑性變形等原因略有伸長,伸長的量稱為伸長量;其次,不同的管端連接件形式也會要求管子比計算長要短。如對于搭焊法蘭必須減去端距,若是對焊法蘭需要減去整個法蘭的厚度。

            2.3 轉(zhuǎn)角

            一根彎管中,任何兩個相鄰彎管所在的平面間的夾角稱為轉(zhuǎn)角,也可稱為彎管間直管段的轉(zhuǎn)角。把管子相鄰的三段作為一個單元,并依次稱為三段管子的首段、中段、尾段。規(guī)定尾段向首段的旋轉(zhuǎn)方向?yàn)檗D(zhuǎn)角的旋轉(zhuǎn)方向。從首段向尾段看,順時針為正轉(zhuǎn),逆時針為負(fù)轉(zhuǎn)。因此,轉(zhuǎn)角也可表述為:以中段管子為旋轉(zhuǎn)軸,尾段管子和中段管子組成的平面轉(zhuǎn)到與首段管子與中段管子所組成的平面重合時,所轉(zhuǎn)過的角度即為轉(zhuǎn)角。

            求取轉(zhuǎn)角比較復(fù)雜,若使用矢量代數(shù)法來計算,則可對轉(zhuǎn)角進(jìn)行統(tǒng)一計算,便于計算機(jī)程序?qū)崿F(xiàn)。

            2.4 應(yīng)用矢量代數(shù)計算管子曲形參數(shù)

            用幾何、三角函數(shù)法來計算管子曲形參數(shù)的過程較為復(fù)雜,特別遇到曲形復(fù)雜的管子零件時,要經(jīng)過投影變換、解三角形、求中間參數(shù)等過程,往往耗費(fèi)較多時間。即便將各種彎曲形狀歸結(jié)為幾種基本形式,并導(dǎo)出相應(yīng)的計算公式,實(shí)際應(yīng)用也甚感不便。矢量代數(shù)法是把一根曲形管子上的每一段看作是一個矢量,并根據(jù)各管段的坐標(biāo)值,運(yùn)用矢量代數(shù)數(shù)量積、矢量積、模推導(dǎo)出一組完整、通用的曲形求解公式。應(yīng)用這些公式計算不需要進(jìn)行復(fù)雜的投影變換,也不需要解三角形和求解中間變量,可以大減輕計算工作量,更可用于計算機(jī)編程實(shí)現(xiàn)管子曲形參數(shù)的自動計算,應(yīng)用于三維管子設(shè)計系統(tǒng)中的管子零件圖自動生成彎管數(shù)據(jù)。

            Pipe Spool

            圖1 空間任意三段管

            上圖中彎管為任意空間三段管,坐標(biāo)系中X、Y、Z分別表示艏艉、舷、高度方向。A、B、C、D為彎管曲形中心點(diǎn)位置。根據(jù)上圖推導(dǎo)出彎管曲形參數(shù)的計算方法。推導(dǎo)過程如下:

            1. 管段實(shí)長l

            求出管段實(shí)長后,還需要計算出彎角對應(yīng)的切線長和圓弧長,然后再用實(shí)長減去切線長加上圓弧長度即得管子的下料長度。

            2. 由數(shù)量積推出彎角α的求解公式:

            3. 由矢量積推出轉(zhuǎn)角的求解公式:

            4. 根據(jù)行列式計算管子旋轉(zhuǎn)方向:

            若行列式大于零,則為逆時針方向旋轉(zhuǎn);若行列式小于零,則為順時針方向旋轉(zhuǎn)。若為零,則為平面彎管。

            至此,我們得到了空間任意彎曲管子的彎管參數(shù)計算公式,這些是計算三段管子為一個單元的曲形參數(shù)的基本公式。因?yàn)槊咳喂芙M成兩個平面,具有兩個彎角和一個轉(zhuǎn)角,所以三段以上的彎管同樣可以利用上述公式,先計算第一、第二、第三段管,再計算第二、第三、第四段管,依次類推。

            具體編程實(shí)現(xiàn)時,可用鏈表或棧來存儲一個管子零件的所有節(jié)點(diǎn)坐標(biāo)值,再把節(jié)點(diǎn)值轉(zhuǎn)化為向量值,然后以每三段為一個單元來計算相關(guān)參數(shù)。

            三、C++編程實(shí)現(xiàn)

               1:  //------------------------------------------------------------------------------
               2:  //    Copyright (c) 2011 eryar All Rights Reserved.
               3:  //
               4:  //        File    :    Vector.h
               5:  //        Author    :    eryar@163.com
               6:  //        Date    :    2011-12-2 21:34
               7:  //        Version    :    1.0v
               8:  //
               9:  //    Description    :    
              10:  //
              11:  //==============================================================================
              12:   
              13:  #ifndef _VECTOR_H_
              14:  #define _VECTOR_H_
              15:   
              16:  #include <cmath>
              17:  #include <string>
              18:  #include <iostream>
              19:  using namespace std;
              20:   
              21:  class CVector  
              22:  {
              23:  public:
              24:      CVector();
              25:      CVector(const CVector& v);
              26:      CVector(double x, double y, double z);
              27:      virtual ~CVector();
              28:   
              29:      // Overload operators
              30:      CVector& operator =  (const CVector& v);
              31:      bool     operator == (const CVector& v) const;
              32:      bool     operator != (const CVector& v) const;
              33:      CVector  operator +  (const CVector& v) const;
              34:      CVector  operator -  (const CVector& v) const;
              35:      CVector  operator *  (double k) const;
              36:      // 向量點(diǎn)乘
              37:      double   operator *  (const CVector& v) const;
              38:   
              39:      // 向量叉乘
              40:      CVector CrossProduct(const CVector& v);
              41:   
              42:      // 求向量的模
              43:      double Magnitude(void) const;
              44:   
              45:      // 顯示向量
              46:      void    Show(void) const;
              47:   
              48:  private:
              49:      double  m_x;
              50:      double  m_y;
              51:      double  m_z;
              52:  };
              53:   
              54:  #endif // _VECTOR_H_

            計算實(shí)例:

               1:  //------------------------------------------------------------------------------
               2:  //    Copyright (c) 2011 eryar All Rights Reserved.
               3:  //
               4:  //        File    : Main.cpp
               5:  //        Author  : eryar@163.com
               6:  //        Date    : 2011-12-4 10:05
               7:  //        Version : 1.0v
               8:  //
               9:  //    Description : 
              10:  //
              11:  //==============================================================================
              12:   
              13:  #include "Vector.h"
              14:   
              15:  int main(int argc, char* argv[])
              16:  {
              17:      // One Pipe piece
              18:  //     CVector aVector(287, 0, 0);
              19:  //     CVector bVector(313, 204, 165);
              20:  //     CVector cVector(0, 746, 0);
              21:   
              22:      // Another pipe piece
              23:  //     CVector aVector(150, 0, 0);
              24:  //     CVector bVector(50, 150, 150);
              25:  //     CVector cVector(50, 250, 0);
              26:   
              27:      // Test Vectors
              28:      CVector aVector(1, 0, 0);
              29:      CVector bVector(1, 2, 0);
              30:      CVector cVector(1, 1.732, 1);
              31:   
              32:      CVector alpha;
              33:      CVector beta;
              34:      double  phi = 0;
              35:   
              36:      aVector.Show();
              37:      bVector.Show();
              38:      cVector.Show();
              39:   
              40:      alpha   = aVector.CrossProduct(bVector);
              41:      beta    = bVector.CrossProduct(cVector);
              42:   
              43:      phi = (alpha * beta) / (alpha.Magnitude() * beta.Magnitude());
              44:      cout<<"Rotate : "<<acos(phi) * 180 / 3.1416<<endl;
              45:   
              46:      return 0;
              47:  }

            四、AVEVA Marine中獲取彎管參數(shù)

            AVEVA Marine中彎管參數(shù)由類PipeSpoolManager來管理,其方法如下:

            PipeSpoolManager

            使用方法:(對通過工藝檢查后的管子PIPE使用)

            How to Use PipeSpoolManager

            通過PipeSpoolManager對象可以得到管子零件圖所需要的各種數(shù)據(jù)。如彎管參數(shù):管段長度Feed、彎角Bend、轉(zhuǎn)角Rotate則由其成員函數(shù)getPipePieces()來得到,結(jié)果保存為一個數(shù)組。

            AVEVA Marine中取得這些彎管數(shù)據(jù)很簡單,其計算方法我估計是按上述矢量代數(shù)法來計算得出。若你有更好的計算方法,請聯(lián)系我:eryar@163.com

            彎管機(jī)工藝檢查由對象BendingMachineResult來管理,檢查項(xiàng)目由其成員函數(shù)來實(shí)現(xiàn):

            BendingMachineResult

            五、結(jié)論

            用矢量代數(shù)法計算彎管參數(shù)簡單通用,可用于計算程序自動計算。

            AVEVA Marine可用對象PipeSpoolManager來取得彎管參數(shù)及其它數(shù)據(jù),深入理解此對象可自定義管子零件圖上的一些信息,也可根據(jù)船廠實(shí)際需要編寫管子零件圖的出圖程序。

            六、參考資料

            1. 章煒梁、許正權(quán). 船舶管系工. 國防工業(yè)出版社. 2008

            2. 陸金銘. 船舶動力裝置安裝工藝. 國防工業(yè)出版社. 2006

            3. 付錦云. 船舶管路系統(tǒng). 哈爾濱工程大學(xué)出版社. 2006

            4. 黃廣茂. 造船生產(chǎn)設(shè)計. 哈爾濱工程大學(xué)出版社. 2008

            5. Pipework Design User Guide

            PDF 版本:

            Feedback

            # re: The Creation of Bending Activities Tables in AVEVA Marine PipeSketches  回復(fù)  更多評論   

            2016-03-21 10:20 by hebo
            支持,吧你的文章都看一遍!

            # re: The Creation of Bending Activities Tables in AVEVA Marine PipeSketches  回復(fù)  更多評論   

            2016-03-21 19:23 by eryar
            @hebo

            哈哈,有耐心啊!
            狠狠精品干练久久久无码中文字幕| 精品久久久久久久久久久久久久久| 2021国内久久精品| 香蕉久久夜色精品国产尤物| 亚洲а∨天堂久久精品9966| 97久久精品国产精品青草| 国产成人久久777777| 免费久久人人爽人人爽av| 99久久综合狠狠综合久久止| 午夜福利91久久福利| 伊人热人久久中文字幕| 97视频久久久| 亚洲国产成人精品女人久久久 | 超级碰碰碰碰97久久久久| 久久亚洲国产中v天仙www| 成人午夜精品无码区久久| 久久综合九色欧美综合狠狠| 久久超乳爆乳中文字幕| 久久久久免费精品国产| 激情久久久久久久久久| 日本道色综合久久影院| 亚洲中文精品久久久久久不卡| 欧美激情精品久久久久久| 久久久久国产精品| 色噜噜狠狠先锋影音久久| 久久精品国产99久久久| 色播久久人人爽人人爽人人片AV| 国产成人精品久久| 久久久久久国产精品免费免费| 亚洲国产精品久久久久| 久久精品国产福利国产秒| 91久久婷婷国产综合精品青草| 久久A级毛片免费观看| 国产色综合久久无码有码| 久久久久亚洲av综合波多野结衣| 香蕉久久久久久狠狠色| 丁香色欲久久久久久综合网| 色综合久久久久久久久五月 | 久久精品中文无码资源站| 午夜不卡久久精品无码免费| 亚洲色婷婷综合久久|