油氣儲運網(wǎng)

 找回密碼
 立即注冊

QQ登錄

QQ快速登錄

一步迅速開始

pdms培訓&項目數(shù)字化360網(wǎng)
查看: 78685|回復: 98
打印 上一主題 下一主題

[PDMS教程] pdms軟件-detail text詳細描述的SCH和mm壁厚的快速設置方法(代碼方法)

  [復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2016-4-29 11:02:45 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
相信PDMS軟件-detail text的設置是件非常頭特的事情。
項目的spec有不少等級,每個等級又有很多分類,每個分類又有不同的描述。這就要建立很多個detail text。
detail text里一般會寫上元件的SCH號,長輸管線的壁厚有可能沒有SCH號,而是以mm壁厚表示的。
怎樣快速設置壁厚呢?下面介紹一種非常省事快速的方法。

對于detail text里書寫SCH的情況:可以使用代碼提取SCH號。

管子等單尺寸元件的SCH壁厚設置
管子等單尺寸元件指的是無分支且尺寸無變化的元件,如TUBE NIPPLE FLAN(WN類型) ELBO OLETCAP等。
對于管子等單尺寸元件,使用代碼提取SCH:
  1. (ATTRIB SCHED)
復制代碼
說明:對于任何BRAN下的元件都可以使用ATTRIB SCHED提取SCH壁厚;建議對于單尺寸的元件使用ATTRIB SCHED提取SCH壁厚。


REDUCER等只有P1 P2點的雙尺寸元件的SCH壁厚設置
REDUCER等只有P1 P2點的雙尺寸元件指的是無分支且尺寸發(fā)生變化的元件,如REDUCER SWAGE等。
對于reducer等只有P1 P2點的雙尺寸元件,使用代碼提取兩端的SCH號:
(IFTRUE(SEQU EQ 1, SCHED OF HSTU OF OWN,SCHED OF OWN OF ATWREF) + '×' + SCHED OF OWN OF LTWREF)
顯示效果為:大頭的SCH × 小頭的SCH,由于流向的不同,也可能顯示成小頭的SCH × 大頭的SCH。

所以有必要對代碼進行優(yōu)化如下(元件庫中P1是大頭,P2是小頭;根據(jù)PMS習慣,我們統(tǒng)一成:大頭的SCH × 小頭的SCH):
  1. (IFTRUE(ARREQ 1, (IFTRUE(SEQU EQ 1, SCHED OF HSTU OF OWN, SCHED OF OWN OF ATWREF) + '×' +SCHED OF OWN OF LTWREF), (SCHED OF OWN OF LTWREF + '×' + IFTRUE(SEQU EQ 1,SCHED OF HSTU OF OWN, SCHED OF OWN OF ATWREF))))
復制代碼
以下是對代碼的說明:
SEQU : sequence position in member list
ATWREF: arrive tube wallthickness reference
LTWREF: leave tube wallthickness reference

BRAN下所有元件(除了TUBI)都有LTWREF(leave tube wallthickness reference)屬性, 即便是最后一個元件(其后無TUBI)的,也有LTWREF屬性。
BRAN下第一個元件(即便前面有TUBI)均無ATWREF屬性,所以要用SCHED OF HSTU OF OWN提取第一個元件的SCH壁厚。

下面介紹下SCHED OF OWN OF ATWREF,以壁厚表WTHTAB SCH40為例:
WTHTAB SCH40
    WTHELE SCH40-25
    WTHELE SCH40-50
    ...
    WTHELE SCH40-25有以下屬性:
        NBORE: 25mm
        Schdule: SCH40
        ...

選擇一個元件,命令行輸入“Q ATWREF”, 結果是“/SCH40-25”
命令行輸入“Q OWN OF ATWREF”, 結果是“/SCH40”
命令行輸入“Q SCHED OF OWN OF ATWREF”, 結果是“SCH40”

TEE等有P1 P2 P3點的雙尺寸元件SCH壁厚設置
TEE等只有P1 P2點的雙尺寸元件指的是有一個分支的元件,如TEE等。

對于TEE等, 使用如下代碼提取壁厚SCH是有問題的(我看到網(wǎng)上有人這么寫);因為BRAN下第一個元件(即便前面有TUBI)均無ATWREF屬性:
(ATTRIB SCHED + '×' + IFTRUE(LEA EQ 3, SCHED OFOWN OF LTWREF, IFTRUE(ARR EQ 3, SCHED OF OWN OF ATWREF,IFTRUE(CEND EQ 'HEAD', SCHED OF HSTU OF CREF, SCHED OF LSTU OF LAST MEM OFCREF) ) ))
所以我進行了改進:
  1. (ATTRIB SCHED + '×' + IFTRUE(LEA EQ 3, SCHED OF OWN OFLTWREF, IFTRUE(ARR EQ 3, IFTRUE(SEQU EQ1, SCHED OF HSTU OF OWN, SCHED OF OWN OF ATWREF), IFTRUE(CEND EQ 'HEAD', SCHED OF HSTU OF CREF, SCHED OF LSTUOF LAST MEM OF CREF) ) ) )
復制代碼
比較以上兩段代碼紅色的地方,可以看出代碼的優(yōu)化。
顯示效果為: TEE主管SCH × TEE支管SCH

以下是對代碼的說明:
Cend: Closed End;Connection at other end of CREF (HEAD or TAIL)
Cref: ConnectionReference (BRAN);
LSTU: The Tube betweenthe Leave p-point of this Component and the Arrive of the Next (or Tail) isspecified by the named Specification Component; (BRAN的元件在任何情況下都有LSTU屬性,即使BRAN最后一個元件后面沒有TUBI,也存在這個屬性;BRAN無LSTU屬性!)
HSTU: At the Head of aBranch, there is no Upstream Component; therefore a special Branch attributeexists to allow Tube from the HEAD to the first Component to be specified(HSTU).  SINCE EACH BRAN HAS"HEAD" ATTRIB, EACH BRAN HAS "HSTU" ATTRIB; SINCE ONLY BRANHAS "HEAD" ATTRIB, ONLY BRAN HAS "HSTU" ATTRIB. (只有BRAN才有HSTU屬性;每個BRAN都有HSTU屬性)

說明:以上所有代碼中的 "SCHED OF LSTU" 可以和 “SCHED OF OWN OF LTWREF” 相互替換。

若想把STRAIGHT TEE壁厚表示成“TEE主管SCH”的形式, REDUCING TEE壁厚表示成“TEE主管SCH × TEE支管SCH”,那么再次改進的代碼是:
  1. (IFTRUE (PARA[1] EQ PARA[2], SCHED, SCHED + '×' + IFTRUE (LEAV EQ 3, SCHED OF OWNER OF LTWREF, IFTRUE (ARRI EQ 3, IFTRUE (SEQU EQ 1, SCHED OF HSTU OF OWNER, SCHED OF OWNER OF ATWREF), IFTRUE (CEND EQ 'HEAD', SCHED OF HSTU OF CREF, SCHED OF LSTU OF LAST MEMBER OF CREF ) ) ) ) )
復制代碼


元件mm壁厚的代碼設置
對于detail text里書寫mm壁厚的情況:(這種情況的代碼很簡單)

對于pipe等單尺寸元件:(STR(P1 WALL) + 'mm')

對于REDUCER等只有P1 P2點的雙尺寸元件:(STR(P1 WALL) + '×' + STR(P2 WALL) + 'mm')

對于TEE等有P1 P2 P3點的雙尺寸元件: (STR(P1WALL) + '×' + STR(P3 WALL) + 'mm')

需要說明的是,在detail text里寫STR(P1 WALL)類似這樣的代碼后,按下回車后,代碼會自動變成STR (PP1 ), 這是正常情況。
自己直接在detail text里輸入STR (PP1 )是不可以的。
還有,若要修改含有STR (PP1 )代碼的detail text,一定要注意把STR (PP1 )再寫成STR(P1 WALL),并且括號兩邊都不能有空格;不這樣做的話,PDMS會提示語法錯誤,不讓修改。

螺栓壁厚的代碼設置
特殊地,對于螺栓的detail text詳細描述,可以這樣寫:
( ATTRIB DESC OF CATR OF SPREF + '×BoltLength mm STUDBOLT/HEX NUTS(HEAVY)' )

說明1:“ATTRIB DESC OF CATR OF SPRE”指的是bolt引用的cata庫里的desc,如下圖:

說明2:“BoltLength”這個名字要和Isodraft里面的bolt設置的replacement text相一致,如下圖所示:

----------------------------------------------------------------------------------------------------------------
油氣儲運網(wǎng)(www.black-hills-tours.com)首發(fā),helloshigy整理校核改進。


pdf文檔顯示效果很好,請下載文件(以后有更新了,不再更新帖子,只更新這個文件):
pdms軟件-detail text詳細描述的SCH和mm壁厚的快速設置方法(代碼方法).pdf (434.97 KB, 下載次數(shù): 275, 售價: 8 金幣)

點評

代碼方式有個缺點:代碼過長時,會造成在design工具欄元件建模界面中的描述信息不顯示,而變成unset;但不影響元件在模型中的顯示,可以用命令Q DTXR看到元件的描述。  發(fā)表于 2019-7-23 08:16
剛更新了帖子 上傳了文件 請下載學習  發(fā)表于 2017-3-1 11:34

本帖被以下淘專輯推薦:


油氣儲運網(wǎng) - 論壇版權1、本主題所有言論和圖片純屬會員個人意見,與本論壇立場無關
2、本站所有主題由該帖子作者發(fā)表,該帖子作者與油氣儲運網(wǎng)享有帖子相關版權
3、其他單位或個人使用、轉載或引用本文時必須同時征得該帖子作者和油氣儲運網(wǎng)的同意
4、帖子作者須承擔一切因本文發(fā)表而直接或間接導致的民事或刑事法律責任
5、本帖部分內(nèi)容轉載自其它媒體,但并不代表本站贊同其觀點和對其真實性負責
6、如本帖侵犯到任何版權問題,請立即告知本站,本站將及時予與刪除并致以最深的歉意
7、油氣儲運網(wǎng)管理員和版主有權不事先通知發(fā)貼者而刪除本文

沙發(fā)
發(fā)表于 2016-4-29 18:42:52 | 只看該作者
{:4_115:}總結的很好啊  好資料 對于pdms新手很有用
大大提高了建庫效率啊
板凳
發(fā)表于 2016-4-29 18:43:08 | 只看該作者
學習啦  多謝
地板
發(fā)表于 2016-5-3 08:21:49 | 只看該作者
pdms好資料 {:4_99:}
5#
發(fā)表于 2016-5-3 13:18:54 | 只看該作者
detai text能快速設置倒是省了不少時間了
6#
發(fā)表于 2016-5-7 21:29:04 | 只看該作者
這么好的資料啊 pdms好東西
7#
發(fā)表于 2016-5-8 18:29:41 | 只看該作者
pdms的專業(yè)資料我要好好學習下
8#
發(fā)表于 2016-5-17 11:15:22 | 只看該作者
例如,對于管子,使用代碼提取SCH:
ATTRIB SCHED。具體為:Rtext ( 'PE SMLS PIPE, ' + ATTRIB SCHED + ', ANSI B36.10' )
'ATTRIB SCHED'這個屬性在哪里設置的?如何跟等級關聯(lián)?
對于reducer,使用代碼提取兩端的SCH號:
IFTRUE(SEQU EQ 1, SCHED OF HSTU OF OWN, SCHED OF OWN OF ATWREF) + 'x' + SCHED OF OWN
OF LTWREF
同上,前部分是一個判斷語句,何意??

對于TEE, 使用如下代碼提取壁厚SCH:
ATTRIB SCHED + ' x ' + IFTRUE(LEA EQ 3, SCHED OF OWN OF LTWREF, IFTRUE(ARR EQ 3, SCHED OF OWN
OF ATWREF, IFTRUE(CEND EQ 'HEAD', SCHED OF HSTU OF CREF, SCHED OF LSTU OF LAST MEM OF CREF) ) )
同上,判斷語句,何意??

點評

SEQU: SEQUENCE POSITION IN MEMBER LIST; HSTU: HEAD TUBE SPEC; ATWREF: ARRIVE TUBE WALL_THICKNESS REFERENCE;LTWREF: LEAVE TUBE WALL_THICKNESS REFERENCE;  發(fā)表于 2016-5-17 11:39
'ATTRIB SCHED' 是系統(tǒng)壁厚表里的(具體是TABWLD/WTHTAB的Schedule屬性,里面寫了SCH號),一般使用master數(shù)據(jù)庫的壁厚表就行了。'ATTRIB SCHED'不用你設置的。  發(fā)表于 2016-5-17 11:35
9#
發(fā)表于 2016-5-17 11:20:24 | 只看該作者
對于detail text里書寫mm壁厚的情況:(這種情況的代碼很簡單)

對于pipe:STR(P1 WALL) + 'mm'

對于REDUCER:STR(P1 WALL) + 'X' + 'STR(P2 WALL)' + 'mm'

對于TEE: STR(P1 WALL) + 'X' + 'STR(P3 WALL)' + 'mm'

P1,P2,P3 WALL,這三個wall參數(shù)如何定義??

點評

不用你定義 這是系統(tǒng)默認的 P1 WALL:入口壁厚 P2 WALL:出口壁厚 P3 WALL:分支壁厚  發(fā)表于 2016-5-17 11:32
10#
發(fā)表于 2016-5-17 16:26:01 | 只看該作者
zwp997 發(fā)表于 2016-5-17 11:20
對于detail text里書寫mm壁厚的情況:(這種情況的代碼很簡單)

對于pipe:STR(P1 WALL) + 'mm'

參數(shù)是系統(tǒng)預定義的,那么這數(shù)值需要在哪里定義?如何定義?

點評

spec會關聯(lián)PIPEDATA,pipedata會關聯(lián)壁厚表,你找到壁厚表 修改壁厚就行了  發(fā)表于 2017-1-19 10:44
P1 WALL 自動提取入口壁厚,不需要定義啊  發(fā)表于 2016-5-19 16:11
您需要登錄后才可以回帖 登錄 | 立即注冊  

本版積分規(guī)則

掃碼訪問手機版

QQ|關于我們|網(wǎng)站地圖|油氣儲運網(wǎng) ( 魯ICP備11007657號-3 )

GMT+8, 2024-9-19 20:33 , Processed in 0.050567 second(s), 17 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回列表