亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于船舶設計軟件SPD 4.0的二次開發(fā)

        2018-11-01 03:28:50彬,優(yōu)
        造船技術 2018年5期
        關鍵詞:物量二次開發(fā)管子

        周 彬, 吳 優(yōu)

        (中船澄西船舶修造有限公司, 江蘇 江陰 214433)

        0 引 言

        船舶產(chǎn)品設計(Ship Product Design, SPD)軟件是能滿足船體結構、機裝、電裝、居裝和甲裝等專業(yè)設計的三維全數(shù)字化產(chǎn)品模型軟件平臺。隨著SPD應用的不斷深入,用戶對SPD的開放性提出了更高的要求,因此SPD V4.0新增數(shù)據(jù)查詢二次開發(fā)接口,使用戶可在獲取數(shù)據(jù)后根據(jù)實際需要對數(shù)據(jù)進行篩選、排序、統(tǒng)計并輸出數(shù)據(jù)報表等,大大提升用戶與SPD間的交互能力。由于SPD已在船廠長期使用,船廠的物量及管理數(shù)據(jù)結構已趨于穩(wěn)定,與之配套的軟件也已形成,如果更換船舶設計軟件,會對原有的管理造成沖擊,船廠基本不會愿意更換。而且,幾乎沒有SPD二次開發(fā)的交流平臺,開發(fā)人員無法方便地獲取資料,這也會對SPD獲取更多用戶造成影響。

        中船澄西船舶修造有限公司現(xiàn)行船舶設計軟件為SPD V4.0,在載重量82 000 t船的生產(chǎn)設計中,利用C#語言對SPD進行軟件的二次開發(fā),主要為突破生產(chǎn)設計瓶頸,提高設計人員效率,同時獲取實際需要的數(shù)據(jù)。

        1 SPD軟件二次開發(fā)接口

        SPD V4.0提供SpdCustomization.dll和SpdArxCustomization.dll等2個DLL文件作為數(shù)據(jù)查詢二次開發(fā)接口,提供基于模型和基于產(chǎn)品數(shù)據(jù)庫的2種數(shù)據(jù)提取方式。2種提取方式的特點有:模型數(shù)據(jù)完整,提取效率較低;產(chǎn)品數(shù)據(jù)庫的數(shù)據(jù)不完整,提取效率較高。用戶可根據(jù)不同需求選擇提取方式。SPD軟件的管子模型數(shù)據(jù)提取流程如圖1所示(產(chǎn)品數(shù)據(jù)結構樹和其他模型數(shù)據(jù)均類似)。

        圖1 管子模型數(shù)據(jù)提取流程

        源代碼如下:

        Project m_proj = new Project();

        m_proj.Open(string projectname);

        ModelFile mdf = m_proj.OpenModelFile

        (string modelname,SpecialityIdx.Pipe) ;

        For (mdf.RewindRec(); mdf.GetRecState (out rectype, out recnum) == 0; mdf.NextRec());

        MddRec rec = mdf.GetMddRec(recnum) ;

        其他主要數(shù)據(jù)接口如下:

        (1) SpdtRecord類:數(shù)據(jù)表基類,主要存儲SQL數(shù)據(jù)庫數(shù)據(jù);

        (2) Component類:實體部件記錄基類,主要存儲管子部件、實體部件和參數(shù)化部件;

        (3) PpdRec類:原理記錄基類,主要存儲管子原理和電氣原理數(shù)據(jù)。

        2 部件管理

        部件庫是SPD設計系統(tǒng)中管子、電氣、舾裝專業(yè)設計的基礎,沒有部件庫,設計師無法在SPD設計系統(tǒng)實現(xiàn)快速建模。SPD部件分為參數(shù)化部件、實體部件和管子部件。SPD部件提供的接口有基類和拓展類,其中基類為空體部件記錄基類(Component),擴展類分別為參數(shù)化部件(ParaComponent)、實體部件(PartComponent)和管子部件(PipeComponent)。

        2.1 參數(shù)化部件

        SPD參數(shù)化建模系統(tǒng)支持用戶自定義計算、報表生成和模型瀏覽,為用戶提供良好的設計模式、數(shù)據(jù)瀏覽和管理方式。參數(shù)化部件按專業(yè)分為管子、電氣、舾裝和通用,按用途分為基礎型材和組合部件,按標準又分為標準件和非標件。對復雜部件物量的抽取,原SPD接口需要在每個部件中單獨計算并定義物量,才能實現(xiàn)物量輸出。通過二次開發(fā)參數(shù)化部件數(shù)據(jù)查詢工具,實現(xiàn)對參數(shù)化部件建模準確性的檢查,完成參數(shù)化部件建模數(shù)據(jù)的提取程序。完善后的接口可以根據(jù)底層基礎型材定義的物量信息實現(xiàn)復雜部件物量信息的完整提取,復雜部件無需再單獨計算和定義物量,提高了參數(shù)化部件的設計效率。SPD參數(shù)化部件可以用其他部件組合為復雜的部件,參數(shù)化部件物量提取流程如圖2所示。

        圖2 參數(shù)化部件物量提取流程圖

        主要源代碼如下:

        List listpara = new List();

        MddSstru recsstru = (MddSstru)rec;

        ParaComponent paracomponent = new ParaComponent(recsstru.ParaCompNum, recsstru.ParaValues);

        listpara.Add(paracomponent);

        組合件判斷源代碼如下:

        if (listpara[i].RefParaComps[j].ParaNum < 9000)

        {

        listpara.Add(listpara[i].RefParaComps[j]);

        }

        通過ParaComponent屬性輸出物量信息如下:

        (1) SubSpecs:組件規(guī)格描述($MSPEC),如:型材規(guī)格;

        (2) SubSpecLengths:組件規(guī)格長度($LENS),如:型材長度、電氣基座的螺栓個數(shù);

        (3) SubSpecNums:組件數(shù)量($NUMS),如:型材數(shù)量、電氣導架的螺栓個數(shù);

        (4) SubWeights:組件基準質量($WETS)。

        本文通過SubSpecs判斷部件是否為組合件,參數(shù)化部件組合件無需定義和計算物量信息,原參數(shù)化部件的物量數(shù)據(jù)抽取不受影響,提高了參數(shù)化部件基礎庫的建模效率,降低了參數(shù)化部件基礎庫的維護難度。

        2.2 實體部件

        對管子專業(yè)的實體部件進行優(yōu)化。管子專業(yè)物資種類多,標準件多,管子專業(yè)的實體部件如果處理不好,后期會對物資采購需求產(chǎn)生較大影響。物資編碼是物資管理的基礎,每個企業(yè)均有自己的物資編碼體系,由于各個企業(yè)的物資編碼體系差異性較大,SPD軟件無法為每個企業(yè)建立完善的物資編碼系統(tǒng)。通過對SPD數(shù)據(jù)的深入了解,開發(fā)了物資編碼系統(tǒng)。該系統(tǒng)采用的是基礎數(shù)據(jù)配置,實現(xiàn)全自動復雜結構編碼。以管子為例,介紹物資編碼系統(tǒng)的結構和原理,管子編碼結構如圖3所示。系統(tǒng)設計原理為提取每個結構信息單獨的編碼,通過數(shù)據(jù)庫中的組合規(guī)則將單獨的編碼組合成完整的物資編碼,如圖4所示。

        圖3 管子編碼結構

        圖4 自動編碼設計原理

        3 原理定義

        SPD的原理定義是其短板,定義效率不高。SPD原理提供的接口為原理記基類(PpdRec)和擴展類,擴展類包括閥附件原理(PpdValve)、管路原理(PpdPipeline)和設備原理(PpdDevice)等。主要對管路原理定義進行優(yōu)化,實現(xiàn)管路原理以詳細設計的DWG原理圖直接輸入到SPD系統(tǒng)。其主要原理為:定義各系統(tǒng)基礎信息,如法蘭、處理、壓力等信息,然后抓取詳細設計的DWG原理圖的管路信息(管路號、管子規(guī)格、管子材質、管子等級),在定義每條原理數(shù)據(jù)的過程中自動選取法蘭、處理和壓力等信息,最終實現(xiàn)管路原理自動定義功能。自動定義設計原理如圖5所示。

        圖5 自動定義設計原理

        主要源代碼如下:

        PrincipleFile principlefile = m_proj.GetPipePpdFile();

        PpdPipeline ppdpipeline = new PpdPipeline();

        // ppdpipeline屬性賦值

        ppdpipeline.SysCode= "管路名";

        ppdpipeline.PipeCompCode="管子部件代號";

        ……

        principlefile.WriteRec(ppdpipeline);

        4 物量提取與物量需求

        4.1 物量提取和重組

        物量提取是建立在中船澄西船舶修造有限公司自主研發(fā)的綜合數(shù)據(jù)管理平臺和SPD二次開發(fā)基礎上的,可以實現(xiàn)將SPD模型數(shù)據(jù)無縫導入綜合數(shù)據(jù)管理平臺,然后通過該平臺對外發(fā)布數(shù)據(jù)。

        SPD雖然提供了大量報表,但是報表中部分數(shù)據(jù)并不完整,無法滿足實際需求,因此對SPD模型數(shù)據(jù)進行準確的提取和重組是有必要的。管子制作托盤提取界面如圖6所示。通過該模塊提取的管子材料明細有材料來源信息、物資編碼信息和需要的備注信息。

        圖6 管子制作托盤提取

        主要源代碼如下:

        if ((mdf = m_proj.OpenModelFile(modelname, SpecialityIdx.Pipe)) != null)//判斷模型是否為管子專業(yè)

        {

        for (mdf.RewindRec(); mdf.GetRecState(out rectype, out recnum) == 0; mdf.NextRec())//遍歷模型

        {

        if ((rec = mdf.GetMddRec(recnum)) != null)

        {

        recspool = (MddSpool)mdf.GetMddRec((uint)Math.Abs(SPD_Pipe.spoolrecno(rec)));//獲取零件

        if (recspool != null && recspool.Pallet == Listview.SelectedItems[0].SubItems[0].Text && recspool.PalletOrderNumber < 3000)//判斷零件托盤

        {

        spoolname = recspool.SpoolName;

        ArrayList pipedetail = new ArrayList();//管子材料

        pipedetail = SPD_Pipe.PipeDetail(rec, mdf, m_proj);//讀取管子部件詳細信息(自己寫的接口)

        }

        }

        }

        }

        4.2 物量需求

        物量需求是指在設計端建立出庫和入庫數(shù)據(jù)庫,將設計下發(fā)的采購需求作為入庫數(shù)據(jù),模型提取的數(shù)據(jù)作為出庫數(shù)據(jù),通過對出入庫數(shù)據(jù)的對比分析,動態(tài)顯示物量需求,指導設計人員進行材料采購。目前完成了管子專業(yè)模塊的開發(fā),主要功能有基礎物資庫、材料請購、材料比對、材料查詢和材料請購單。物量需求模塊程序設計原理如圖7所示。

        圖7 物量需求設計原理

        基礎物資庫主要作用為將模型數(shù)據(jù)與采購數(shù)據(jù)對照,形成標準的采購數(shù)據(jù),同時也作為材料比對的標準數(shù)據(jù)。程序輸入端為托盤、基礎物資庫和采購單。托盤由模型直接輸出,基礎物資庫需要系統(tǒng)管理人員進行維護,采購單則由缺料數(shù)據(jù)直接輸出,設計師只允許進行數(shù)量調整,修改備注等操作。該系統(tǒng)保證了采購需求物量信息的標準化。

        通過該系統(tǒng),設計師能在提交模型數(shù)據(jù)后快速生成物料需求,過程中可以直觀地看到訂貨數(shù)據(jù)和模型數(shù)據(jù),通過對比分析,指導后續(xù)項目訂貨,其他專業(yè)物量需求可用類似的方法實現(xiàn)。

        5 全套料技術

        全套料技術指實現(xiàn)船體以外其他專業(yè)板材類零件圖形數(shù)據(jù)的提取。該技術是建立在參數(shù)化建模基礎上的,對參數(shù)化建模和手工建模過程作如下約定:

        (1) 在建模過程中除了板材類零件可以使用軟件自帶的拉伸體功能,其余均通過參數(shù)化部件建模。

        (2) 在參數(shù)化部件的組合部件中型材類均從基本型材中引用,只有板材可以引用基礎實體部件。

        通過約定,可以實現(xiàn)自動過濾,將舾裝件中需要套料的板材過濾出來,最終實現(xiàn)舾裝件板材零件的全套料。

        實現(xiàn)過程源代碼如下:

        MddSstru recsstru = (MddSstru)rec; //獲取鐵舾件零件

        HdEntStretchPrism hdentstretchprism = (Hd

        EntStretchPrism)recsstru.Ents[0];//獲取實體信息

        hdentstretchprism.BottomSpline //獲取實體圖形信息,拉伸體底面邊界樣條

        底面邊界樣條數(shù)據(jù)解析如下:

        xyz

        x1y1z1

        ……

        xnynzn

        其中:yn、zn為樣條節(jié)點的坐標;xn為連接節(jié)點(yn-1,zn-1)和(yn,zn)組成的樣條片段的有向半徑, 當xn= 0時為直線段。程序通過獲取的邊界樣條自動輸出圖形文件,該圖形文件能在中船澄西船舶修造有限公司套料軟件中直接套料。

        6 結 語

        設計軟件二次開發(fā)是打通企業(yè)信息化建設孤島的關鍵所在,能夠使設計軟件更加貼合企業(yè)實際需求。船舶設計模型數(shù)據(jù)是船廠信息化的基石,理論物量、理論工時等均以模型數(shù)據(jù)為源頭,二次開發(fā)是從模型數(shù)據(jù)中獲得基礎數(shù)據(jù)的必由之路。通過對SPD軟件的二次開發(fā),可以將設計模型數(shù)據(jù)轉化為其他軟件需要的信息,建立企業(yè)統(tǒng)一的數(shù)據(jù)源,打通設計、生產(chǎn)和管理之間的信息孤島。隨著SPD軟件二次開發(fā)接口的不斷完善,船廠信息化建設要求將更能滿足。

        猜你喜歡
        物量二次開發(fā)管子
        模擬降雨下枯落物調控坡面徑流特征分析
        地下水(2023年5期)2023-10-13 06:03:28
        淺談基于Revit平臺的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        西門子Easy Screen對倒棱機床界面二次開發(fā)
        造林密度對米老排凋落物量及動態(tài)的影響
        植物研究(2017年5期)2017-11-10 01:47:20
        《左傳》數(shù)詞計物量和動量研究
        滾球游戲
        搞不定的水管子
        臺風干擾對天童常綠闊葉林凋落物量的影響
        基于Pro/E二次開發(fā)的推土鏟參數(shù)化模塊開發(fā)
        亚洲国产成人精品一区刚刚| 国产亚洲日本精品无码| 亚洲国产精品福利片在线观看| 亚洲熟妇无码av不卡在线播放 | 国产av无码专区亚洲aⅴ| 99国语激情对白在线观看| 91视色国内揄拍国内精品人妻| 五月丁香六月综合缴清无码| 无码精品人妻一区二区三区人妻斩| 日本丰满妇人成熟免费中文字幕| 国产男女猛烈无遮挡免费视频网址| 日本妇女高清一区二区三区| 久久久久99人妻一区二区三区 | 亚洲一二三四区免费视频| 国产av无码专区亚洲avjulia| 欧美gv在线观看| 99久久综合国产精品免费| 人妻熟女中文字幕av| 亚洲乱码中文字幕在线播放| 亚洲一区二区三区无码久久| av人摸人人人澡人人超碰小说| 在线无码免费看黄网站| 一本色道精品亚洲国产一区| 免费成人电影在线观看| 性一交一乱一伧国产女士spa| 久草热这里只有精品在线| 久久夜色精品国产三级| 青青草亚洲视频社区在线播放观看 | 中文字幕爆乳julia女教师| 欧洲国产精品无码专区影院| 亚洲国产精品天堂久久久 | 亚洲最大一区二区在线观看| 日日躁夜夜躁狠狠躁| 亚洲av无码一区二区二三区 | 国产aⅴ天堂亚洲国产av| 加勒比久草免费在线观看 | 欧洲成人一区二区三区| 亚洲精品成人区在线观看| 亚洲国产成人资源在线桃色| 精品久久中文字幕一区 | 亚洲国产综合精品一区最新|