中文字幕视频在线免费_日韩在线精品_日韩视频免费看_中文字幕在线三区_午夜免费视频_日韩在线大片

基于LabVIEW平臺的數控軟件系統的實現

來源:互聯網

點擊:1656

A+ A-

所屬頻道:新聞中心

關鍵詞:LabVIEW 數控軟件

      在系統地闡述了數控系統的構成、模塊和任務的劃分、功能的確定、加工控制的數據流程、數控軟件結構的基礎上,介紹了一種基于LabVIEw平臺的上、下位機形式的數控系統的實現方法和途徑。

      近年來,隨著PC機技術的迅速發展,與之原理及結構幾近相同的工業Pc機的性能得到了快速的發展,這使得工業PC的軟、硬件資源迅速豐富起來,而價格卻大幅度降低,開發基于工業Pc機的數控系統,已成為機床控制領域研究的熱點。

      本課題研究一種基于PC和windows平臺的,用于任意形狀的二維零件加工的數控系統。數控系統硬件平臺采用Pc+運動驅動卡,軟件采用Windows98/NT平臺,開發平臺采用LabVIEW。本系統的研制成功,將全面提升該類數控系統的整機性能,提高性能價格比,是較為先進的數控系統。

    1 系統的組成

      系統的組成如圖1所示,系統由上下位機兩部分構成,上、下位機通過PCI或USB實現連接。這種方式下PC機只負責常規的系統管理和維護,而具體的數控系統的核心功能,則由運動控制卡直接實現。運動控制卡硬件直接控制電機的動作,從而解決了WINDOWS平臺下計算機控制中經常碰到的實時控制問題所帶來的困擾。本文簡單介紹了基于這種思想和LabVIEW軟件平臺而開發的切割機數控軟件系統。

    圖1控制系統的組成

    2 LabVIEW簡介

      LabVIEW是NI公司的主打產品之一,是一種用圖標代碼來代替編程語言創建應用程序的開發工具,它使用數據流的編程方法來描述程序的執行,用圖標和連線代替文本的形式編寫程序。它具有較豐富的面板工具,可以快速開發出精美的控制界面,具有豐富的數據處理子模塊,可以方便地進行多種數據處理進程,它還可與Visual C++進行交互,充分利用在C語言基礎上開發的已有的軟件資源。由于其語言上的特性,所以對編程者的要求沒有傳統計算機語言那樣高,易于學習和使用。對于本系統而言,LabVIEW最為先進的技術是它具有多任務并行處理機制,使得系統開發人員可以輕松地實現在傳統編程中難度較大的多任務并行處理。

      其多任務并行處理實現的機理是:LabVIEW中存在一個任務隊列,系統將要執行的一系列任務都在隊列中存儲,并根據所存在的任務的優先級決定下一時間片將要執行哪一項任務,直到所有任務被完成為止。在LabVIEw中可以通過VI設置對話框進行優先級設置,也可以通過調用wait()函數放棄cPu占用來實現。較傳統的多任務實現而言,用LabVIEw的實現則更加簡單和靈活。

      另外,LabVIEw可以輕松實現系統編程的模塊化,將系統的各個任務劃分成多個子VI,由各個子VI實現各個模塊的劃分和開發,是較為理想的開發平臺。

    3 數控系統任務的劃分

      本數控系統的任務分為實時任務及非實時任務兩種。由于系統的譯碼、刀具半徑補償等工作是在加工開始前完成的,并且系統所需要的當前零件的加工數據將會在加工運動之前一次或分次成塊地寫入到下位機的兩塊存儲量較大的內存區域當中,所以,系統的任務劃分與一般的系統是不同的。上位機的非實時任務有:參數輸入任務、命令輸人任務、程序解釋及刀具半徑補償任務、程序預處理任務、文件服務任務、系統幫助任務、故障診斷任務及輸人事件處理任務。這些任務的產生及處理是非實時的,也是隨機的。上位機的實時任務有:控制參數顯示任務、系統設置任務、加工動態顯示任務、加工參數顯示任務、加工程序顯示任務及加工數據送人任務。這些任務主要是由系統定義一系列的不同任務優先級實現,對訪問有次序的任務采取制約機制,限制運行次序及訪問權限。

    4 系統模塊的劃分

      上位機的控制系統共分為系統控制、界面、譯碼、刀補、仿真、系統設置、故障診斷、上下位機通訊、幫助等幾個模塊。模塊是以系統模塊總體的透明性、獨立性、可維護性、可擴展性為原則設計和開發的。

      系統控制模塊的主要功能是協調各模塊的運行次序和運行的優先級別,它是系統上位機控制的核心。在該系統中實現了主界面、手工移動界面、定程移動界面、極限移動界面、程序編輯界面、多件加工界面、自動加工界面、系統設置界面及診斷界面。實現了各界面內部切換功能、相應工具條的顯示隱藏及對應功能的調用。

      譯碼模塊是對加工數據進行處理的第一個模塊,處理的是標準的G代碼,該模塊中集成了對數控代碼的讀入、錯誤檢查、加工軌跡參數的讀取與規范、控制參數的讀取與存儲等功能。該模塊中的加工及控制信息均存在于一個全局的模板中,便于后繼的處理及訪問。該模塊主要是借用原有的c語言實現的譯碼功能,通過LabVIEw與Vc的動態調用功能,將數據傳送給已有的程序,程序分析和數據分離后將所產生的數據傳遞給系統。

      刀補模塊采用c功能的刀具半徑補償算法,c刀補是基于矢量的計算原理的,所以能夠很好地解決工件輪廓加工過程中的兩程序段間的轉接過渡問題。這種補償技術是通過計算和判斷轉接類型(伸長型、插入型、縮短型)、曲線連接形式及刀補狀態,再加上譯碼的數據來實現數據的處理的。刀具半徑補償模塊同樣是由已有的Vc程序實現的。

      仿真模塊是在不啟動電機的情況下而實現加工過程模擬的繪圖模塊。該模塊是由具體繪圖函數、尺寸計算函數以及插補運算函數組成的。

      系統設置中實現對系統一些全局參數的設置,其中包括系統運行需要的參數和系統調試需要的參數兩類,這兩類參數的正確設置是保證系統的正常運行的條件。

      監控診斷包含了對系統全部硬件端口、傳感器和電機的檢測功能,另外還具有一些系統維護的必要軟件工具,如殺毒程序等。

    5 系統功能的確定

      在已有數控系統的設計方案的基礎上,該數控系統設定了手動控制、程序編輯、自動加工、零件選項、套料、系統設置、監控診斷機系統幫助等功能。手動控制中實現了點動、連續移動、定長移動、回零等功能,用于系統定位及實現簡單加工。程序編輯中實現了加工程序的打開、新建、編輯、存儲及圖形預顯等功能用于對G代碼文件的編輯處理。

      自動加工功能是對由程序編輯處理后的G代碼文件實現加工,它也包含了一些對主軸的控制,如停止加工、暫停加工、斷點記憶功能等。

      零件選項主要是針對經程序編輯處理后文件的圖形進行排列和轉動,并可以形成新的G代碼文件。套料功能中實現了不同零件問的組合、拆分、相對轉動、排列和切割順序的定義等。

      系統設置及監控診斷功能在上面已有論述,在這里將不再重復。

    6 數據流程分析

      本數控系統和一般的數控系統一樣,必須完成譯碼(加工代碼解釋)、代碼預處理(刀補等)、插補準備、插補等幾個基本過程來實現加工。由于該系統的插補功能由運動控制卡的硬件電路來完成,所以上位機軟件系統只需要為下位機提供相應的加工數據即可。

      下面簡要說明一下其數據的流程:零件的加工程序在經過了NC程序準備后,以ISO標準格式放入了NC程序緩沖區中,首先經過Nc程序的譯碼操作,將代碼中的加工及控制信息提取出來,以約定的格式存放于預刀補緩沖存儲區Bs中;刀補后的數據放入刀補工作緩沖區AS中,然后將As的內容置為可直接用于下位機讀取的數據后放入刀補輸出緩沖區OS中,下位機會循環檢測該區域的數據是否準備好,準備好后讀取數據控制電機及相關設備運行。在沒有刀補的情況下,將BS區中的軌跡信息經過簡單處理后直接放入刀補工作緩沖區AS中。

      由于系統采用了C型刀具半徑補償算法,所以在有刀補處理的情況下,只用一個BS緩沖區不能夠滿足實際刀具中、心軌跡計算的需要,因此在BS區和AS區之間設立刀補緩沖區CS,由三個數據緩存共同實現刀補的計算。

    7 數控軟件結構分析

      上位機的控制系統共分為系統控制模塊、人機界面、手動控制模塊、程序編輯模塊、自動加工、零件選項、系統設置、診斷、圖形庫、譯碼、刀補、仿真幾個模塊。系統模塊的構架如圖2所示。

    圖2系統的軟件結構

      系統控制模塊是系統的調度核心模塊,該模塊每循環一次就對其循環次數進行查詢,根據循環次序所反映的信息,輪流調用其所控制的各個子任務;而不受它控制的非實時任務則作為并行的子任務運行。其實現是利用了LabVIEw中的事件和事件等待函數來控制任務的激活和掛起。系統每次遇到等待函數將是當前的子任務放棄目前的CPU的占用,從而實現任務的輪流調用。

      譯碼模塊處理的是標準的G代碼,該模塊中集成了對數控代碼的讀入、錯誤檢查、加工軌跡參數的讀取與規范、控制參數的讀取與存儲等功能。該模塊中的加工及控制信息均存在于一個全局的模板中,便于后繼的處理及訪問。

      刀補模塊采用c功能的刀具半徑補償算法,c刀補是基于矢量的計算原理的,所以能夠很好地解決工件輪廓加工過程中的兩程序段間的轉接過渡問題。仿真模塊主要由LabVIEw編程系統中的繪圖函數實現,由于實現二維繪圖并不是十分困難,所以該編程環境的圖形處理功能不強的缺點對于本系統的開發沒有太多的妨礙。

    8 上、下位機的通訊

      本系統采用雙CPU控制的方式,上位機采用工業控制微機、下位機采用深圳摩信公司的McT8000S4控制器。上、下位機通訊是實現加工控制的重要環節。上位機通過摩信公司所提供的軟件包和動態庫中的相應函數實現加工數據和標示信息的互傳,再由下位機調用相應的軌跡控制函數控制電機運動實現實時控制。下位機采用c語言和摩信公司提供的編程開發環境實現。

      8.1標志位的定義

      為了表明上位機對下位機的控制要求和體現上位機的控制時序,需要系統定義標志位。標志位實際上是單個單位或連續的多單位的下位機內存空間,這些內存空間中所動態寫入的值和加工數據代表了不同的控制內容,下位機實時檢測這些內存空間中重要的幾個。再根據被檢測內存中的內容或直接控制硬件動作或讀取另外一些內存空間中的數據,根據數據進行運動控制。

      這些標志位主要有:主循環標志位、參數塊首地址存儲位、位置塊首地址存儲位、程序塊1首地址存儲位、程序塊2首地址存儲位、預熱標志位、加減速標志位、移動方式標志位、切割速度標志位、開始加工標志位等標志位。

      這里需要單獨說明的是兩個程序緩存的設定。下位機的內存空間有限,能容納的加工數據也是有限的,為了突破這個限制系統定義了兩個大小相同的內存空間用于存儲加工數據。如果加工程序很長,系統首先會把兩個程序緩存多寫滿數據,當第一個程序緩存讀取完畢時,上位機將繼續在第一個程序緩存中寫入余下的加工數據,當第二個程序緩存讀取完畢時,上位機將繼續在第二個程序緩存中寫入余下的加工數據,如此往復直到所有的加工數據都被寫完。這樣,系統就不會受到內存大小的限制,可加工任意長度的零件加工程序了。

      8.2上位機控制的實現

      上位機能夠實現對下位機的控制主要解決以下幾個問題:

      (1)對下位機這個非標準硬件的內存的驅動和訪問;

      (2)對下位機一些內存的實時檢測;

      (3)從下位機內存中寫入和讀出數據。對于第(1)和第(3)項,由于采用的控制卡是摩信公司開發的智能化較高的板卡,該公司已經提供了對該硬件驅動的必要技術和資料,同時也提供了可以對板卡進行各種控制和訪問的動態庫,動態庫中具有豐富的控制和訪問函數,在許多編程環境中可以隨意調用;可以說實現上還是很容易的。檢測任務的功能主要是在進入相應的控制功能后檢測下位機的狀態,然后根據這些狀態來判斷當前的功能是否需要退出。如果沒有這個任務的存在,系統的交互狀態很容易混亂,造成嚴重錯誤。

      下位機的控制實現是通過一個上電后的不間斷的while循環,連續監測其內存空間中的標志位的狀態,并根據這些狀態進入相應的子函數實現系統的控制。

      8.3 系統的下載以及初始化表

      當系統啟動時上位機必須保證下位機的驅動程序下載到下位機,這就需要系統啟動時上位機調用摩信提供的動態庫函數將相應的程序下載。

      系統啟動時還有另一項很重要的任務,就是將上次加工或調節的參數設置恢復,這就需要系統建立一個數據備份文件即初始化表;每當系統啟動時都會從該文件中讀取系統的參數設置,完成初始化上位機和下位機的工作。

    9 結束語

      本系統在原有的功能模塊的基礎上,采用LabVIEw平臺實現了系統界面和并行任務處理的快速開發,是較為方便快捷的一種開發思路。

    (審核編輯: 智匯胡妮)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 久久99精品国产麻豆婷婷洗澡 | 91久久国产综合久久91精品网站 | 欧美在线亚洲 | 亚洲一区二区在线免费观看 | 欧美久久综合 | 在线视频一区二区三区 | 国产在线一区二区三区 | 成人av电影在线 | 四虎成人免费电影 | 亚洲综合在线网 | 久久久婷婷 | 午夜视频播放 | 欧美福利一区 | 久久精品久久久 | 午夜影院在线观看 | 亚州精品国产 | 久久九九99 | 午夜精品视频在线观看 | 久久精品电影 | 午夜免费福利视频 | 黄色免费网站在线观看 | 日韩免费视频一区二区 | 亚洲成人av在线 | 色九九 | 国产黄色在线播放 | 久久精品国产亚洲一区二区三区 | 欧洲一级毛片 | 99热国产精品 | 久草在线新视觉 | 一区亚洲 | 亚洲久久久久 | 99精品久久久久久久免费 | 我要看a级毛片 | 欧美精品区 | 国产精品视频 | 91av在线视频播放 | 国内精品视频 | 亚洲成人一区二区三区 | 国产精品无码久久久久 | 久久99蜜桃综合影院免费观看 | 99福利视频 |