熟女人妻水多爽中文字幕,国产精品鲁鲁鲁,隔壁的少妇2做爰韩国电影,亚洲最大中文字幕无码网站

技術頻道

娓娓工業
您現在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于LabVIEW平臺的ADT850四軸運動控制卡的應用

基于LabVIEW平臺的ADT850四軸運動控制卡的應用

時間:2008-11-13 14:09:00來源:ronggang

導語:?介紹在LabVIEW編程環境下,通過調用動態鏈接庫,進行非配套四軸運動控制卡ADT850的驅動和控制,實現了LabVIEW與普通運動控制卡的結合,快速開發多軸運動控制程序的方法
摘 要:介紹在LabVIEW編程環境下,通過調用動態鏈接庫,進行非配套四軸運動控制卡ADT850的驅動和控制,實現了LabVIEW與普通運動控制卡的結合,快速開發多軸運動控制程序的方法。文章給出了設計的方法和步驟,現實應用證明,該方法不僅可以很好地發揮運動控制卡的性能,而且可以借助LabVIEW強大的界面編輯功能,縮短程序開發周期,美化人機界面。 1 引言   1.1 LabVIEW簡介   LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是實驗室虛擬儀器開發平臺的簡稱。它是美國NI公司(National Instrument Company, 美國國家儀器公司)80年代推出的一種基于G語言(Graphics Language,圖形化編程語言)的虛擬儀器軟件開發平臺。LabVIEW是專門用于虛擬儀器開發的圖形化軟件編程平臺,目前最新版本為8.5。圖形化的表示方式是比文本代碼更為自然的設計表示法,在這個平臺上,用戶通過定義和連接代表各種功能模塊的圖標來方便迅速地建立起自己的應用程序。   LabVIEW在運動控制方面有專門的運動控制模塊,并且NI公司為其所有的運動控制卡配備相應的驅動程序,可以方便實現即插即用功能,但是價格昂貴。如果用戶所使用的板卡不是NI公司的產品,又沒有提供與LabVIEW兼容的驅動程序,就不能為LabVIEW所用。但是作為一個開放式開發平臺,LabVIEW提供了DLL接口,用戶在LabVIEW平臺上能調用其他軟件平臺編譯的模塊,并提供對對象鏈接和嵌入技術(簡稱OLE)的支持。這樣LabVIEW能夠通過調用Windows32動態連接庫(Dynamic Link Library,簡稱DLL)來編寫與LabVIEW兼容的驅動程序,實現該運動控制卡在LabVIEW環境下二次開發。同時,利用此軟件平臺可大大降低成本,縮短項目開發時間。 2 開發背景   根據某玻璃加工企業要求,我們設計了其加工機械包含四軸運動控制要求的電氣控制系統。在設計過程中,本著節約成本,實現功能的態度,我們采用了眾為興深圳市眾為興數控技術有限公司生產的ADT850四軸運動控制卡,ADT850運動控制卡的動態鏈接庫是標準的Windows32位動態鏈接庫,選用的開發工具應支持Windows標準的32位DLL調用。我們在VC編譯環境中編譯出運動控制所需要的動態鏈接庫文件,(即DLL格式),將編寫好的動態鏈接庫文件按照功能塊區分,封裝成靜態鏈接庫即(LIB格式)。如果使用DLL方式,則編譯后的程序不但要包括EXE程序,還要包括DLL文件。而如果采用靜態鏈接庫方式,分發程序時只需要一個EXE文件就可以了,分發時簡單,可以更方便打包發布。在LabVIEW將環境中編寫程序主界面時,調用封裝好的LIB文件來編寫所需的運動控制程序。其主要過程如圖1所示。 [align=center] 圖1[/align] 3 程序設計   3.1 編寫動態鏈接庫   自從微軟推出第一個版本的Windows操作系統以來,動態鏈接庫(DLL)一直是Windows操作系統的基礎。動態鏈接庫通常都不能直接運行,也不能接收消息。它們是一些獨立的文件,其中包含能被可執行程序或其它DLL調用來完成某項工作的函數。只有在其它模塊調用動態鏈接庫中的函數時,它才發揮作用。Windows API中的所有函數都包含在DLL中。DLL的編制與具體的編程語言及編譯器無關,只要遵循約定的DLL接口規范和調用方式,用各種語言編寫的DLL都可以相互調用。   為了便于以后工程的維護與開發,我們將運動控制按照實現功能的不同,編寫出DLL,每個DLL中都包含ADT850運動控制庫中一個或多個函數,稱之為功能函數。主要的功能函數有板卡初始化,單軸點動,兩軸直線插補運動,兩軸圓弧插補運動,實現急停與緩停的停止函數,邏輯坐標清零函數,軸狀態檢測函數等,每個功能函數都有自己的獨立接口,可以方便調用。   在VC++6.0軟件環境中選擇File—>New,單擊Project標簽,從左側列表中選擇Windows 32 Dynamic Link Library,輸入項目名后,添加上ADT850相應運動控制卡的運動控制函數庫文件,按功能編譯成需要的DLL文件。   3.2 動態鏈接庫的調用   我在開發中使用LabVIEW8.2中文版本,較8.0有很大的改進。首先在LabVIEW的后面板中選擇互連接口中的庫與可執行程序,然后選擇調用庫函數,將其拖到適當的位置。在新建的空庫函數中選擇配置,正確配置DLL參數。本文以continue_move函數為例做一下詳細介紹,如圖2所示: [align=center] 圖2[/align]   在庫名或路徑中,選擇DLL的存放路徑C:\WINDOWS\system32\adt850.dll,在函數名下選擇封裝好的功能函數continue_move,在右側菜單線程選項中選擇“在UI線程中運行”,在調用規范中選擇應與用C++語言編寫的動態庫的編譯模式相一致。如果C++的調用方式為extern"C"declspec(dllexport), 那么Calling Conventions的選項為“C”,如果調用方式為extern declspec (dllexport) stdcall,則Conventions的選項為默認值“stdcall(WINAPI)”,此處一定要設定正確,否則會出現不可預知的錯誤。在第二項參數選項中,設置好對應的參數值,此函數有4個參數,speed1,speed2,acc,value,在參數選項中設置完成后,可以在函數原型下顯示出來。最后在回調中選擇需要的回調函數。   為了這樣經過編譯后的ADT850功能函數就可以被LabVIEW調用了。為了分發時簡單,可以更方便打包發布,我們將DLL文件封裝成靜態鏈接庫方式,這樣分發程序時只需要一個EXE文件就可以了。封裝好的LIB文件如圖3所示。 [align=center] 圖3[/align]   3.3 程序實現   將功能函數配置好,打包封裝成靜態鏈接庫后,我們可以像使用基本函數一樣調用這些函數了。針對自動控制的要求,需要對兩軸順序實現單軸點動,兩軸直線插補的運動要求。同時要實現急停,各軸運動狀態檢測等功能。   整個LabVIEW程序的結構以順序結構和條件結構為主,每一框架對應固定的邏輯功能。圖4為整個運動控制前兩個框圖。最左面是板卡的初始化函數,通過封裝好的上電脈沖函數在程序最初運行時僅調用一次。第二個框為工藝參數的控制,由條件語句嵌套13個條目的選擇語句構成,在加減速控制中嵌入運動狀態檢測,一個條件分支動作完成后,自動傳送狀態值至運動階段,進入下一分支程序,直到結束,完成工藝加工要求。設置一個等待時間100ms,增加緩沖時間。右側的XY兩軸插補函數,Y2軸定量運動函數已經在上一節中封裝完畢。 [align=center] 圖4[/align]   圖5為接下來的兩個框圖,主要實現運動暫停功能和繼續運動功能。在左側的順序圖中,一個條件結構嵌套兩個條件結構組成。觸發條件為單位脈沖觸發,在真條件中實現運動暫停,同時存儲坐標的當前值,在假狀態中實現繼續運動。右側順序圖主要通過局部變量實現運動參數的實時傳遞。 [align=center] 圖5[/align]   圖6為存儲框圖的一部分,主要實現數據硬盤存儲功能。封裝的子VI為數據存讀功能。首先將改變數值傳至硬盤存儲區,數據的讀出使用真值觸發,實現常讀。因為參數比較多,采用數組格式傳遞數值,,使程序更簡潔,易于維護。 [align=center] 圖6[/align]   圖7為運動控制程序的前面板,按照實際控制要求可以選擇相應界面。主要實現的功能有工藝參數設定、機床參數設定、自動控制界面、兩軸運動軌跡的圖形化實時顯示、手動控制各軸運動。在運動控制界面中實現兩軸直線插補功能、暫停功能、急停功能、機械坐標和工作坐標的實時顯示以及通過狀態燈來顯示各個電磁閥的運動狀態。 [align=center] 圖7[/align] 4 結束語   一般情況下,現在工程師仍然多采用VB、VC或者C++等編譯語言對運動控制卡進行二次開發,很多時候圖形界面的編寫就耗費很多的程序編寫工作時間,效率相對不是很高。本文采用的這種新方法的主要優點是采用了LabVIEW圖形化編程語言,強大的界面編輯功能可以節省大量的開發時間,同時利用了LabVIEW支持動態鏈接庫調用等功能,實現了不是NI公司提供的運動控制卡也可以在LabVIEW平臺下進行二次開發。這種方法可以有效降低成本,減少程序編程時間。本文中程序經過在工廠現場調試,現在已經可以穩定運行。

標簽:

點贊

分享到:

上一篇:基于DSP的平網印花機現場總線...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業自動化與智能制造的全媒體“互聯網+”創新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業執照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 衡东县| 陆河县| 克东县| 广饶县| 四川省| 宜良县| 禄丰县| 洞头县| 轮台县| 平凉市| 易门县| 抚远县| 兴国县| 新津县| 衡阳市| 湘乡市| 孟州市| 包头市| 潞城市| 台中市| 紫阳县| 定南县| 岐山县| 五常市| 庄河市| 当雄县| 夏津县| 来宾市| 伽师县| 久治县| 泾源县| 鄂托克前旗| 紫云| 山东省| 天镇县| 南部县| 天长市| 汾阳市| 海丰县| 保亭| 睢宁县|