• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于DXF文件獲取激光切管系統(tǒng)中三維軌跡點(diǎn)算法的研究

    2022-01-11 05:59:50方素平張坤朋
    現(xiàn)代機(jī)械 2021年6期
    關(guān)鍵詞:圖元型管圓管

    徐 陳,方素平,顧 磊,張坤朋

    (1.合肥工業(yè)大學(xué)機(jī)械工程學(xué)院,安徽 合肥 230009;2.河海大學(xué)機(jī)電工程學(xué)院,江蘇 常州 213002)

    0 引言

    在激光切管系統(tǒng)中,為了實(shí)現(xiàn)系統(tǒng)的多功能,有必要提供一種根據(jù)已編輯好的圖形交換格式(Drawing Exchange Format,DXF)文件就能直接在圓管、矩形管、腰型管上切割出相應(yīng)圖形的功能。如何根據(jù)DXF文件提取有用信息滿足所需要求就顯得尤為重要。

    在DXF文件解析方面,已有一些學(xué)者做過研究。文獻(xiàn)[1-4]中詳細(xì)介紹了DXF格式和文件結(jié)構(gòu),設(shè)計(jì)了DXF解析模塊。文獻(xiàn)[5]探討了CAD與C語(yǔ)言程序的數(shù)據(jù)接口設(shè)計(jì)。文獻(xiàn)[6]針對(duì)DXF文件中的多個(gè)圖形進(jìn)行排序,利用貪婪算法進(jìn)行路徑規(guī)劃。本文在綜合了文獻(xiàn)[1-6]所提供方法的基礎(chǔ)上,實(shí)現(xiàn)了直線、圓、圓弧、多段線等圖元的解析,并進(jìn)一步在一個(gè)平面域上存在有多個(gè)圖形時(shí),實(shí)現(xiàn)了多個(gè)圖形有序且每個(gè)圖形的圖元有序的DXF模塊解析,最終得到了有序的二維離散點(diǎn)。在管件展開方面,關(guān)于圓管、矩形管、腰型管展開的研究很少,文獻(xiàn)[7]中介紹了相貫線展開和圓錐面展開的方法,文獻(xiàn)[8]中介紹了異徑管件放樣的展開方法,但對(duì)于具體實(shí)現(xiàn)均未給出具體有效的方法。

    針對(duì)管件上三維軌跡點(diǎn)的獲取問題,本文提供了一種解析DXF文件和管件展開相結(jié)合的新方法,得到了實(shí)際切割中的三維軌跡點(diǎn)。

    1 DXF文件解析獲得二維離散點(diǎn)

    DXF文件是Autodesk公司開發(fā)的用于AutoCAD與其他軟件之間進(jìn)行數(shù)據(jù)交換的文件格式,有二進(jìn)制和ASCII碼兩種格式,本文中所研究的DXF文件是ASCII格式文本文件。

    1.1 DXF文件解析

    一個(gè)完整的DXF文件由HEADER段、CLASSES段、TABLE段、BLOCKS段、ENTITIES段、OBJECTS段和文件結(jié)束標(biāo)志組成。DXF文件中,所需的圖元信息都存儲(chǔ)在ENTITIES段,因此獲得直線、圓、圓弧、多段線的數(shù)據(jù)只需對(duì)ENTITIES段進(jìn)行解析。而多段線是由直線和圓弧組成,因此多段線的存儲(chǔ)可以將其拆分為直線和圓弧分別存儲(chǔ)。

    在讀DXF文件時(shí),圖元元素是先繪制的先存儲(chǔ),依次讀取到的直線、圓、圓弧、多段線是無序的,因此在設(shè)計(jì)DXF文件解析模塊時(shí)分為兩步,先將讀取到的圖元信息臨時(shí)存儲(chǔ),直到所有圖元存儲(chǔ)完成后,再通過兩次排序使得多個(gè)圖形有序且每個(gè)圖形的圖元有序。其中,第一次排序使得多個(gè)圖形有序,第二次排序使得每個(gè)圖形內(nèi)的圖元有序。

    在C語(yǔ)言中,共用體具有在同一塊內(nèi)存上可以存儲(chǔ)不同類型成員的優(yōu)點(diǎn),因此可以將DXF文件中所有的直線、圓、圓弧、多段線數(shù)據(jù)存儲(chǔ)到一個(gè)共用體中,再將共用體和圖元類型一起封裝到結(jié)構(gòu)體中。DXF文件主要解析流程圖如圖1所示。

    圖1 DXF文件主要解析流程

    提取直線、圓、圓弧、多段線的數(shù)據(jù)時(shí),方法相同,都是逐行讀取組碼和組值,來獲取圖元的參數(shù)值,通過表1中的組碼信息對(duì)DXF文件進(jìn)行解析,并將這個(gè)圖元的參數(shù)值存儲(chǔ)到共用體數(shù)組中。

    表1 DXF組碼信息

    讀取直線、圓、圓弧、多段線的圖元信息時(shí),將讀取到的組值依次與“LINE”“CIRCLE”“ARC”“LWPOLYLINE”等字符串作比較來確定圖元類型,進(jìn)而對(duì)這個(gè)圖元進(jìn)行解析。

    1.2 獲得二維有序離散點(diǎn)

    二維有序離散點(diǎn)的獲取分為兩步。第一步,用排序算法,根據(jù)圖元特征,使得圖元由無序存儲(chǔ)變?yōu)橛行?;第二步,將有序圖元進(jìn)行離散,得到有序離散點(diǎn)。

    排序算法的作用是將所有圖元通過首尾相連的方式依次串聯(lián)起來,保證圖元在內(nèi)存中存儲(chǔ)位置的正確性。

    已知直線的起點(diǎn)和終點(diǎn),可以得到直線的總長(zhǎng)度,再按照離散精度值δ1,得到直線上的離散點(diǎn)。圓的離散和圓弧的離散方法相同,都是用弓高值δ2作為離散的約束條件。將求得的弓高值與δ2作比較,如果求得的弓高值大于δ2,則對(duì)圓和圓弧進(jìn)行二分后再次求取弓高值,依次循環(huán)下去,直到求得的弓高值不大于δ2為止。

    最后,根據(jù)鏈表具有順序隨機(jī)存儲(chǔ)和動(dòng)態(tài)申請(qǐng)內(nèi)存空間的優(yōu)點(diǎn),將得到的離散點(diǎn)依次有序存儲(chǔ)到鏈表中。

    2 三維軌跡點(diǎn)的算法實(shí)現(xiàn)

    根據(jù)上述步驟,獲得了有序的二維離散點(diǎn)。接下來將二維離散點(diǎn)轉(zhuǎn)化到圓管、矩形管、腰型管等三種管型上去。3種管型建模如圖2所示。

    圖2 圓管、矩形管、腰型管建模

    基于建立的圓管、矩形管、腰型管的三維模型,以O(shè)1點(diǎn)為起始點(diǎn),Y軸方向?yàn)橹休S方向,對(duì)Z軸左右兩側(cè)進(jìn)行展開,展開圖如圖3所示。

    圖3 圓管、矩形管、腰型管展開圖

    圖3中,陰影部分表示圓弧區(qū)域,標(biāo)注尺寸表示線段長(zhǎng)度。圖3(a)中,R為圓管半徑;圖3(b)中,L表示矩形管的長(zhǎng),H表示矩形管的高,R為圓角半徑,當(dāng)L與H相等時(shí),矩形管型為方管;圖3(c)中L表示腰形管的長(zhǎng),R表示腰型管的圓弧半徑。

    經(jīng)過DXF文件解析得到的二維離散點(diǎn)用坐標(biāo)(XSource,YSource)表示,三維管件上的軌跡點(diǎn)用坐標(biāo)(X,Y,Z)表示。

    2.1 數(shù)據(jù)處理

    在對(duì)圓管、矩形管、腰型管進(jìn)行建模時(shí),由于是人為定義空間坐標(biāo)系原點(diǎn)O,那么將二維離散點(diǎn)轉(zhuǎn)化到管件上得到的軌跡點(diǎn)是絕對(duì)軌跡點(diǎn)。因此要實(shí)現(xiàn)管件上的任意位置切割,必須使三維軌跡點(diǎn)具有相對(duì)坐標(biāo)系原點(diǎn)O偏移的功能。如果是單個(gè)圖形切割,可以直接求出這個(gè)圖形的幾何中心(CoreX,CoreY);對(duì)于多個(gè)圖形切割,先確定每個(gè)圖形的幾何中心,然后通過幾何中心作差的方式,確定每個(gè)圖形的相對(duì)位置。這里僅給出單個(gè)圖形切割,得到具有偏移功能的相對(duì)軌跡點(diǎn)算法:

    (1)

    其中,X0、Y0為偏移參數(shù)。

    將二維離散點(diǎn)轉(zhuǎn)化為三維軌跡點(diǎn)之前,要先確保二維離散點(diǎn)能夠落在圓管、矩形管、腰型管兩側(cè)的展開區(qū)域,這里要對(duì)數(shù)據(jù)作如下處理:

    對(duì)于圓管:

    XSource=XSource%(2·π·R)

    (2)

    (3)

    對(duì)于矩形管:

    XSource=XSource%(2·L+2·H+2·π·R)

    (4)

    (5)

    對(duì)于腰型管:

    XSource=XSource%(2·L+2·π·R)

    (6)

    (7)

    式(2)、(4)、(6)中“%”為取余運(yùn)算。

    根據(jù)圖2中建立的坐標(biāo)系,每一個(gè)二維離散點(diǎn)轉(zhuǎn)化為三維軌跡點(diǎn)都滿足Y=YSource;下文中將給出每種管型上X和Z的求解算法。

    2.2 圓管上軌跡點(diǎn)的獲取

    根據(jù)圖3(a)中制定的圓管展開規(guī)則,將圓管劃分為①、②兩個(gè)區(qū)域。①、②兩個(gè)區(qū)域滿足的算法公式相同。圓管上三維軌跡點(diǎn)的獲取算法如下:

    (8)

    2.3 矩形管上軌跡點(diǎn)的獲取

    根據(jù)圖3(b)中制定的矩形管展開規(guī)則,將矩形管劃分為①~⑩十個(gè)區(qū)域。通過判斷二維離散點(diǎn)在矩形管展開圖上的位置,獲得轉(zhuǎn)化后矩形管上的三維軌跡點(diǎn)。判斷條件如下:

    (9)

    (10)

    式(9)、(10)為①~⑩區(qū)域的判斷條件。

    矩形管上三維軌跡點(diǎn)的獲取算法如下:

    (11)

    (12)

    其中,θ1=(XSource-L/2)/R;θ2=(XSource-L/2-π·R/2-H)/R;θ3=(-XSource-L/2)/R;θ4=(-XSource-L/2)/R。

    2.4 腰型管上軌跡點(diǎn)的獲取

    根據(jù)圖3(c)中制定的腰型管展開規(guī)則,將腰型管劃分為①~⑥六個(gè)區(qū)域。通過判斷二維離散點(diǎn)在腰型管展開圖上的位置,獲得轉(zhuǎn)化后腰型管上的三維軌跡點(diǎn)。判斷條件如下:

    (13)

    式(13)為①~⑥區(qū)域的判斷條件。

    腰型管上三維軌跡點(diǎn)的獲取算法如下:

    (14)

    (15)

    其中,θ1=(XSource-L/2)/R;θ2=(-XSource-L/2)/R。

    3 Matlab仿真

    3.1 圓管上軌跡點(diǎn)仿真

    圓管半徑R=17.5 mm。如圖4所示,圖4(a)是CAD畫的直線和圓弧組成的對(duì)稱圖形,直線長(zhǎng)度L=20 mm,圓弧半徑r=14 mm;圖4(b)是由圖4(a)得到的三維軌跡點(diǎn)。

    圖4 CAD二維圖和轉(zhuǎn)化到圓管上的三維軌跡點(diǎn)

    3.2 矩形管上軌跡點(diǎn)仿真

    矩形管長(zhǎng)L=30 mm,高H=20 mm,圓角半徑R=2 mm。如圖5所示,圖5(a)是CAD畫的矩形,長(zhǎng)L2=60 mm,高H2=15 mm,;圖5(b)是由圖5(a)得到的三維軌跡點(diǎn),分布在矩形管的三個(gè)面和圓角上。

    圖5 CAD二維圖和轉(zhuǎn)化到矩形管上的三維軌跡點(diǎn)

    3.3 腰型管上軌跡點(diǎn)仿真

    腰型管長(zhǎng)L=40 mm,圓弧半徑R=10 mm。圖6(a)是CAD畫的帶圓角矩形,長(zhǎng)L1=80 mm,高H1=30 mm,圓角半徑r2=4 mm;圖6(b)是由圖6(a)得到的三維軌跡點(diǎn),分布在腰型管兩個(gè)面和圓弧上。

    圖6 CAD二維圖和轉(zhuǎn)化到腰型管上的三維軌跡點(diǎn)

    4 結(jié)語(yǔ)

    本文通過DXF文件解析與管件展開相結(jié)合的方式獲取了圓管、矩形管、腰型管等3種常見管型上的三維軌跡點(diǎn),并給出了具體實(shí)現(xiàn)方法。以Matlab2020b為仿真軟件,驗(yàn)證了獲取三維軌跡點(diǎn)算法的正確性。對(duì)激光切管機(jī)的研發(fā)具有實(shí)際意義,有廣泛的應(yīng)用前景。

    猜你喜歡
    圖元型管圓管
    一種組態(tài)控件技術(shù)在電力監(jiān)控系統(tǒng)中的運(yùn)用
    一種方便連接的涂塑鋼管
    鋼管(2021年2期)2021-11-30 02:11:01
    b型管板與筒體溫差應(yīng)力的分析計(jì)算和評(píng)定
    化工管理(2021年7期)2021-05-13 00:46:04
    內(nèi)置加勁環(huán)T型管節(jié)點(diǎn)抗沖擊承載力計(jì)算
    Study on the Letter Words and Letter-word Phrases under Language Contact Theory
    學(xué)術(shù)出版物插圖的編排要求(一):圖注
    聯(lián)鎖表自動(dòng)生成軟件的設(shè)計(jì)與實(shí)現(xiàn)
    Montgomery T型管置入術(shù)治療聲門下氣管狹窄失敗三例報(bào)道并文獻(xiàn)復(fù)習(xí)
    一種圓管內(nèi)孔自動(dòng)打磨機(jī)的設(shè)計(jì)
    基于Qt繪圖系統(tǒng)的圖形應(yīng)用優(yōu)化研究與實(shí)現(xiàn)
    軟件(2016年12期)2016-02-13 05:58:14
    综艺| 湖州市| 苍山县| 理塘县| 赫章县| 自贡市| 宜良县| 新民市| 大关县| 深水埗区| 额济纳旗| 龙泉市| 孟连| 大城县| 康马县| 甘泉县| 蓬溪县| 从江县| 金昌市| 湾仔区| 邢台市| 南丰县| 永济市| 运城市| 通化县| 始兴县| 张家界市| 潮州市| 贺州市| 巫溪县| 长阳| 昭通市| 兴安县| 六盘水市| 中卫市| 出国| 尼勒克县| 隆尧县| 沙雅县| 中方县| 庆云县|