• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Python自動(dòng)辦公技術(shù)在隧道監(jiān)控設(shè)計(jì)中的應(yīng)用

      2022-06-21 16:24:41王嗣策
      機(jī)電信息 2022年12期

      摘 要:隧道監(jiān)控系統(tǒng)是高速公路機(jī)電系統(tǒng)的組成之一,其設(shè)計(jì)的主要工作是外場設(shè)備布置圖及一覽表的編制。在傳統(tǒng)的應(yīng)用AutoCAD繪圖設(shè)計(jì)的基礎(chǔ)上,對Python自動(dòng)化辦公技術(shù)進(jìn)行了研究,設(shè)計(jì)出了用于生成監(jiān)控外場設(shè)備布置圖及一覽表的腳本程序,改良了隧道監(jiān)控系統(tǒng)工程設(shè)計(jì)的流程,在隧道監(jiān)控設(shè)計(jì)工作的實(shí)際應(yīng)用中,提高效率的同時(shí),還避免了一些人工繪圖操作容易出現(xiàn)的錯(cuò)誤。

      關(guān)鍵詞:自動(dòng)化辦公技術(shù);隧道監(jiān)控系統(tǒng);高速公路機(jī)電系統(tǒng);AutoCAD;Python

      中圖分類號:U495? ? 文獻(xiàn)標(biāo)志碼:A? ? 文章編號:1671-0797(2022)12-0005-04

      DOI:10.19514/j.cnki.cn32-1628/tm.2022.12.002

      0? ? 引言

      隨著“建設(shè)交通強(qiáng)國”重大戰(zhàn)略決策的提出,我國的公路建設(shè)迅速發(fā)展,包括監(jiān)控系統(tǒng)在內(nèi)的交通工程沿線機(jī)電設(shè)施也取得了日新月異的進(jìn)步,從傳統(tǒng)的單一視頻監(jiān)視發(fā)展為多種傳感技術(shù)相配合的智能化監(jiān)控系統(tǒng)。隨著以人為本理念的深入和指揮調(diào)度需求的提升,外場機(jī)電設(shè)備的種類不斷增加,拓寬了監(jiān)控的維度,也有針對性地提高了外場機(jī)電設(shè)備的布設(shè)密度,滿足了各等級公路服務(wù)水平的要求。與此同時(shí),設(shè)計(jì)行業(yè)目前普遍應(yīng)用的計(jì)算機(jī)輔助設(shè)計(jì)繪圖方式,在不斷增長的設(shè)計(jì)工程量面前逐漸顯得力不從心,將計(jì)算機(jī)自動(dòng)化辦公技術(shù)應(yīng)用于設(shè)計(jì)繪圖將是解決問題的有效方法。本文以隧道監(jiān)控系統(tǒng)設(shè)計(jì)的相關(guān)作業(yè)為對象,研究并得出了一套基于Python的電子版圖紙自動(dòng)繪制的解決方法。

      1? ? 需求分析

      隧道是高速公路的重點(diǎn)監(jiān)控對象之一,特殊的行車環(huán)境使隧道監(jiān)控系統(tǒng)具有機(jī)電設(shè)備種類多、布設(shè)間距小的特點(diǎn),如中、長隧道內(nèi)每不超過150 m就需要布設(shè)一臺攝像機(jī)。此外,隧道內(nèi)可變信息情報(bào)板、亮度檢測器、風(fēng)速風(fēng)向檢測器、一氧化碳與能見度檢測器、車道指示器、緊急電話以及各類電光標(biāo)志等都在隧道監(jiān)控系統(tǒng)的設(shè)計(jì)范圍內(nèi)。

      因?yàn)樗淼纼?nèi)環(huán)境較為單一和封閉,無其他需要特殊監(jiān)控的路段,通常是每個(gè)設(shè)備按一定的間距逐個(gè)擬定其樁號,所以隧道監(jiān)控在布設(shè)點(diǎn)位上具有高度的重復(fù)性與規(guī)律性,布設(shè)的工作量與隧道長度成正比。

      監(jiān)控外場設(shè)備布置圖及一覽表的來源與組成如圖1所示,根據(jù)經(jīng)驗(yàn),僅照著監(jiān)控外場設(shè)備一覽表畫圖的這一環(huán)節(jié),每布設(shè)1 km長度的隧道需要花費(fèi)約1 h的時(shí)間,且隨著隧道長度的增加,工作量將呈線性增長。而與繪圖相比,一覽表的編制也不逞多讓,設(shè)備不同其布設(shè)間隔大多不同,并且需要盡量避免出現(xiàn)樁號重復(fù)的設(shè)備,以便為其配電預(yù)留硐室及橫埋管道提供一定的空間。因此,實(shí)現(xiàn)這部分設(shè)計(jì)的自動(dòng)化是十分必要的。此外,組成一覽表和布置圖的設(shè)備編號、樁號信息的擬定和排列均服從布設(shè)方案中制定的規(guī)則,并且與隧道基本信息相互關(guān)聯(lián),嚴(yán)密的邏輯和重復(fù)操作由計(jì)算機(jī)來取代人工執(zhí)行理論上是可行的。

      2? ? 軟件架構(gòu)與技術(shù)的選取

      2.1? ? 軟件的總體架構(gòu)

      根據(jù)前文的需求描述劃分出軟件輸入、輸出與總體的功能模塊,如圖2所示。通過讀取Excel表格,獲取隧道信息與布設(shè)規(guī)則,實(shí)現(xiàn)各設(shè)備樁號的計(jì)算與校驗(yàn),以Excel格式輸出布設(shè)一覽表;同時(shí)按圖紙比例對其編號、樁號、位置信息進(jìn)行繪圖,并寫入AutoCAD軟件支持的DWG格式文件中。

      2.2? ? 技術(shù)的選取

      AutoCAD作為目前工程設(shè)計(jì)工作應(yīng)用最廣的繪圖軟件,提供了多種接口以便進(jìn)行二次開發(fā),有以下幾種技術(shù)路線可供選擇:

      (1)AutoLISP:它是嵌入在AutoCAD中的一種編程語言,可以在AutoCAD軟件自帶的VisualLISP編輯器中進(jìn)行相關(guān)應(yīng)用程序的設(shè)計(jì)[1],其不僅擁有一般高級程序設(shè)計(jì)語言的基本框架及功能,而且擁有較為強(qiáng)大的圖形處理能力[2]。許多工程設(shè)計(jì)中應(yīng)用的插件如數(shù)條多段線求和、批量打印等大多是由其實(shí)現(xiàn)的。

      (2)VBA:它是一種標(biāo)準(zhǔn)宏語言,具備面向?qū)ο蟮某绦蜷_發(fā)理念與方法。在傳統(tǒng)的宏語言VB的基礎(chǔ)上,改進(jìn)了對AutoCAD、Office等應(yīng)用程序的接口支持,使對AutoCAD、Excel內(nèi)部信息的調(diào)用更為方便,實(shí)現(xiàn)了在這兩種應(yīng)用間的交互式開發(fā)[3]。

      (3)Python:它是一種具有解釋性、互動(dòng)性,面向?qū)ο蟮母呒壋绦蛟O(shè)計(jì)語言,對格式的限制和偏向自然語言的語法使其兼具了嚴(yán)謹(jǐn)和易讀的特點(diǎn)。Python語言易于擴(kuò)展,可以導(dǎo)入相應(yīng)的庫模塊以實(shí)現(xiàn)所需功能,對于AutoCAD、Excel等常見應(yīng)用均有對應(yīng)的庫模塊供使用者免費(fèi)下載安裝并進(jìn)行調(diào)用,因此在AutoCAD軟件的二次開發(fā)上,Python語言具備易于上手、簡潔、高效的優(yōu)勢[4]。

      綜上所述,本文采用三者中擴(kuò)展性較強(qiáng)且支持多個(gè)應(yīng)用程序自動(dòng)化辦公的Python語言進(jìn)行開發(fā)設(shè)計(jì)。因?yàn)楸疚淖詣?dòng)繪圖的實(shí)現(xiàn)涉及對Excel文件、AutoCAD軟件的讀寫訪問等相關(guān)操作,需要引用Python語言的XLRD、XLWT和PYAUTOCAD庫來實(shí)現(xiàn)讀取表格自動(dòng)繪圖的相關(guān)功能。引用的庫模塊及用途如圖3所示。

      3? ? 功能實(shí)現(xiàn)

      3.1? ? 信息輸入

      除隧道地理位置及長度等信息因隧道而異之外,不同項(xiàng)目需要布置設(shè)備的種類、位置亦不相同。為使軟件適用于不同類型的隧道,也為便于根據(jù)不同項(xiàng)目的特點(diǎn)更改布設(shè)原則,可以采用業(yè)務(wù)數(shù)據(jù)與程序邏輯剝離的數(shù)據(jù)驅(qū)動(dòng)方式[5],將隧道基本信息與布設(shè)方案分別單獨(dú)寫入表格而非程序中,通過讀取文件中隧道的基本信息及各設(shè)備布設(shè)間距,與隧道洞口、人、車行橫洞相對距離等數(shù)據(jù),向程序中各變量賦值并執(zhí)行樁號的計(jì)算與校驗(yàn)指令。CF17BD0E-6054-4481-9117-7A94CABA9EEB

      如表1所示,隧道的基本信息包括隧道左右洞的出入口、人行橫洞、車行橫洞的數(shù)量及樁號,上述路段同時(shí)也是監(jiān)控的重點(diǎn)對象,很多監(jiān)控設(shè)備如云臺攝像機(jī)、車道指示器等都與其樁號相關(guān)聯(lián)。所以在布設(shè)方案信息表中除了需要填寫設(shè)備的布設(shè)間距之外,還要對設(shè)備在出入口、橫通道處的布設(shè)情況進(jìn)行注明,如表2所示。

      3.2? ? 樁號計(jì)算

      設(shè)備樁號的計(jì)算主要是根據(jù)輸入的隧道基本信息和布設(shè)方案,在隧道長度范圍內(nèi)按布設(shè)間距通過累加的方式計(jì)算;對于僅在出入口、車行橫洞或者人行橫洞處設(shè)置的設(shè)備,則在上述路段的樁號的基礎(chǔ)上與設(shè)備到其的位移求和計(jì)算。對于每一個(gè)設(shè)備都要根據(jù)其布設(shè)方案重復(fù)上述計(jì)算過程。

      由于隧道內(nèi)監(jiān)控設(shè)備數(shù)量較多,且不同設(shè)備的布設(shè)間距、關(guān)聯(lián)的監(jiān)控對象、與關(guān)聯(lián)的監(jiān)控對象之間的位移不同,因此可能存在不同設(shè)備設(shè)置在同一樁號的情況,結(jié)果可能導(dǎo)致在與隧道主體專業(yè)提預(yù)留預(yù)埋管道及硐室的時(shí)候出現(xiàn)缺漏等問題。因此,需要執(zhí)行遍歷樁號查重的操作,并將重復(fù)的樁號進(jìn)行顏色標(biāo)記,最終將得出的所有設(shè)備樁號以表格的形式輸出,由人工對布設(shè)表中的重復(fù)樁號進(jìn)行調(diào)整。樁號計(jì)算過程具體如圖4所示。

      3.3? ? AutoCAD自動(dòng)繪圖

      自動(dòng)繪圖模塊的工作流程在圖5中已經(jīng)有了總體的描述,因此接下來本文主要對實(shí)際樁號與繪圖坐標(biāo)的轉(zhuǎn)化和操控AutoCAD這兩部分主要內(nèi)容進(jìn)行補(bǔ)充說明。

      (1)繪圖坐標(biāo)的轉(zhuǎn)化:由于最終打印出版的圖紙通常是A3尺寸,需要根據(jù)樁號將設(shè)備在隧道內(nèi)的相對位置轉(zhuǎn)化為繪圖坐標(biāo),對于長隧道的外場設(shè)備布置圖,需要打印數(shù)張圖紙且要為每張圖的圖框預(yù)留一定空間,因此在計(jì)算繪圖坐標(biāo)的過程中,除了按固定比例縮小到適合A3圖紙之外,還需要判斷當(dāng)前設(shè)備點(diǎn)位所在的圖紙的頁數(shù),并加上之前圖紙累計(jì)的間隙之和,實(shí)現(xiàn)樁號到圖紙中設(shè)備布設(shè)位置的轉(zhuǎn)化。

      (2)操控AutoCAD:調(diào)用Python語言的PYAUTOCAD庫提供的基本繪圖指令,分別執(zhí)行連接、創(chuàng)建AutoCAD圖形文件、創(chuàng)建圖層、添加表示隧道左右洞長度的線段、添加表示設(shè)備在隧道內(nèi)相對位置的線段、添加表示設(shè)備樁號及編號信息的文本,按照繪圖坐標(biāo)的大小順序,將不同類型的設(shè)備的編號及樁號標(biāo)注在圖紙上。關(guān)于設(shè)備圖例的添加,PYAUTOCAD庫提供了一種將外部CAD圖形文件以塊參照的形式復(fù)制到當(dāng)前圖形文件的方法,因此可將布設(shè)圖中需要用到的不同設(shè)備的圖例單獨(dú)保存成一個(gè)個(gè)獨(dú)立的圖形文件,組成一個(gè)圖例庫,讀表執(zhí)行程序時(shí)按設(shè)備選取對應(yīng)圖例同樁號、名稱信息一并插入即可實(shí)現(xiàn)。最后重命名、保存圖形文件,完成繪圖。

      4? ? 軟件的實(shí)際應(yīng)用與驗(yàn)證

      以1 400 m左右長度的中隧道為例,將隧道基本信息和布設(shè)方案編寫成表格之后,運(yùn)行程序生成布設(shè)一覽表,其格式及部分內(nèi)容如表3所示。

      程序輸出的AutoCAD圖形文件的一段內(nèi)容如圖6所示,圖中橫軸代表此隧道右洞的路側(cè)邊線,在刻線所指示的位置需要設(shè)置相應(yīng)的隧道監(jiān)控設(shè)備,刻線兩側(cè)的文本即設(shè)備的名稱編號和樁號信息,刻線端頭為表示設(shè)備類型的各種圖例,以便于識別。圖中各設(shè)備的種類、位置均一目了然,能夠滿足設(shè)計(jì)出圖的要求。

      5? ? 結(jié)語

      綜上所述,通過本文設(shè)計(jì)的軟件可以實(shí)現(xiàn)自動(dòng)繪圖和隧道監(jiān)控外場設(shè)備一覽表的自動(dòng)生成,極大地節(jié)省了設(shè)計(jì)人員的時(shí)間,減少了工作量,且能夠避免如遺漏、重復(fù)等許多人為差錯(cuò),其在擁有數(shù)條中長隧道的大型項(xiàng)目中應(yīng)用成效尤為明顯。

      [參考文獻(xiàn)]

      [1] 申健康,吳育紅.AutoLISP在公路施工測量中的應(yīng)用[J].北京測繪,2016(3):140-143.

      [2] 王小娟,楊玲玲.AutoCAD二次開發(fā)工具及技術(shù)應(yīng)用[J].山西煤炭管理干部學(xué)院學(xué)報(bào),2010,23(1):88-89.

      [3] 敖翔.基于AutoCAD_VBA的無縫線路一體化設(shè)計(jì)系統(tǒng)開發(fā)[J].鐵道標(biāo)準(zhǔn)設(shè)計(jì),2016,60(1):19-23.

      [4] HETLAND M L.Python基礎(chǔ)教程[M].3版.袁國忠,譯.北京:人民郵電出版社,2018.

      [5] 王君,朱美正,李欣.關(guān)鍵字驅(qū)動(dòng)測試框架的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(10):2246-2248.

      收稿日期:2022-03-30

      作者簡介:王嗣策(1994—),男,遼寧沈陽人,技術(shù)員,從事高速公路監(jiān)控系統(tǒng)設(shè)計(jì)工作。CF17BD0E-6054-4481-9117-7A94CABA9EEB

      莫力| 乐东| 黔江区| 宜良县| 铜陵市| 界首市| 清原| 旺苍县| 大城县| 徐汇区| 凯里市| 洮南市| 崇左市| 出国| 黑龙江省| 万宁市| 翁源县| 马尔康县| 鄂托克前旗| 西畴县| 凌海市| 枞阳县| 西华县| 鄢陵县| 丰城市| 英德市| 通州市| 五常市| 桑日县| 瑞丽市| 杂多县| 东乌| 罗城| 丹东市| 休宁县| 东源县| 兴隆县| 通州区| 治多县| 句容市| 正定县|