




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 基于VC+的運(yùn)動(dòng)控制卡軟件系統(tǒng)設(shè)計(jì)在自動(dòng)控制領(lǐng)域,基于PC和運(yùn)動(dòng)控制卡的伺服系統(tǒng)正演繹著一場工業(yè)自動(dòng)化的革命。目前,常用的多軸控制系統(tǒng)主要分為3大塊:基于PLC的多軸定位控制系統(tǒng),基于PC_based的多軸控制系統(tǒng)和基于總線的多軸控制系統(tǒng)。由于PC機(jī)在各種工業(yè)現(xiàn)場的廣泛運(yùn)動(dòng),先進(jìn)控制理論和DSP技術(shù)實(shí)現(xiàn)手段的并行發(fā)展,各種工業(yè)設(shè)備的研制和改造中急需一個(gè)運(yùn)動(dòng)控制模塊的硬件平臺(tái),以及為了滿足新型數(shù)控系統(tǒng)的標(biāo)準(zhǔn)化、柔性化、開放性等要求,使得基于PC和運(yùn)動(dòng)控制卡的伺服系統(tǒng)備受青睞。本文主要是利用VC+6.0提供的MFC應(yīng)用程序開發(fā)平臺(tái)探索研究平面2-DOF四分之過驅(qū)動(dòng)并聯(lián)機(jī)
2、構(gòu)的運(yùn)動(dòng)控制系統(tǒng)的軟件開發(fā)。平面2-DOF四分之過驅(qū)動(dòng)并聯(lián)機(jī)構(gòu)的控制系統(tǒng)組成并聯(lián)機(jī)構(gòu)的本體如圖1,該機(jī)構(gòu)由4個(gè)分支鏈組成,每條支鏈的一段與驅(qū)動(dòng)電動(dòng)機(jī)相連,而另一端相交于同一點(diǎn)。該并聯(lián)機(jī)構(gòu)的操作末端有2個(gè)自由度(即X方向和Y方向的平動(dòng)),驅(qū)動(dòng)輸入數(shù)目為4,從而組成過驅(qū)動(dòng)并聯(lián)機(jī)構(gòu)。控制系統(tǒng)的硬件主要有4部分組成:PC機(jī),四軸運(yùn)動(dòng)控制卡,伺服驅(qū)動(dòng)器和直流電動(dòng)機(jī)。系統(tǒng)選用的是普通PC機(jī),固高公司的GT-400-SV-PCI運(yùn)動(dòng)控制卡,瑞士Maxon公司的四象限直流伺服驅(qū)動(dòng)器及直流永磁電動(dòng)機(jī)。伺服驅(qū)動(dòng)器型號(hào)為4-Q-DCADS50/5,與驅(qū)動(dòng)器適配直流電動(dòng)機(jī)型號(hào)為Maxon RE-35。運(yùn)動(dòng)控制系統(tǒng)的構(gòu)
3、成如圖2所示。上位控制單元由PC機(jī)和運(yùn)動(dòng)控制卡一起組成,板卡插在PC機(jī)主板上的PCI插槽內(nèi)。PC機(jī)主要負(fù)責(zé)信息流和數(shù)據(jù)流的管理,以及從運(yùn)動(dòng)控制卡讀取位置數(shù)據(jù),并經(jīng)過計(jì)算后將控制指令發(fā)給運(yùn)動(dòng)控制卡。驅(qū)動(dòng)器控制模式采用編碼器速度控制,驅(qū)動(dòng)器接受到運(yùn)動(dòng)控制卡發(fā)出的模擬電壓,通過內(nèi)部的PWM電路控制直流電動(dòng)機(jī)RE-35的運(yùn)轉(zhuǎn),并接受直流電動(dòng)機(jī)RE-35上的編碼器反饋信號(hào)調(diào)整對(duì)電動(dòng)機(jī)的控制,如此構(gòu)成一個(gè)半閉環(huán)的直流伺服控制系統(tǒng)。1.1 GT-400-SV控制卡介紹固高公司生產(chǎn)的GT系列運(yùn)動(dòng)控制卡GT-400-SV-PCI可以同步控制4個(gè)軸,實(shí)現(xiàn)多軸協(xié)調(diào)運(yùn)動(dòng)。其核心由ADSP2181數(shù)字信號(hào)處理器和FPG
4、A組成,能實(shí)現(xiàn)高性能的控制計(jì)算。控制卡同時(shí)提供了C語言函數(shù)庫和Windows下的動(dòng)態(tài)鏈接庫,可實(shí)現(xiàn)復(fù)雜的控制功能。主要功能如下:(1) PCI總線,即插即用;(2) 可編程伺服采樣周期,4軸最小插補(bǔ)周期為200us,單軸點(diǎn)位運(yùn)動(dòng)最小控制周期為25us;(3) 4路16位分辨率模擬電壓輸出信號(hào)或脈沖輸出信號(hào)模擬量輸出范圍:-10V-+10V,每路課獨(dú)立控制,互不影響;(4) 4路四倍頻增量編碼器輸入,作為各軸反饋信號(hào)輸入,最高頻率8MHz;(5) 四軸協(xié)調(diào)運(yùn)動(dòng);(6) 每軸2路限位開關(guān)信號(hào)、一路原點(diǎn)信號(hào)及一路驅(qū)動(dòng)報(bào)警信號(hào)輸入;(7) 每軸1路驅(qū)動(dòng)使能信號(hào)、1路驅(qū)動(dòng)復(fù)位信號(hào)輸出;(8) 運(yùn)動(dòng)方式:
5、單軸點(diǎn)位運(yùn)動(dòng)、直線插補(bǔ)、圓弧插補(bǔ)、速度控制模式、電子齒輪模式;(9) PID(比例-積分-微分)數(shù)字濾波器,帶速度和加速度前饋,帶積分限值、偏差補(bǔ)償和低通濾波器;(10) 支持DOS、WindowsNT/2000/XP等操作系統(tǒng),提供底層庫函數(shù),可用DOS、VC、VB等進(jìn)行軟件開發(fā)??刂瓶ńY(jié)構(gòu)及端子板的接口如圖3所示。1.2 直流永磁電動(dòng)機(jī)PWM驅(qū)動(dòng)基本原理圖4為利用開關(guān)管實(shí)現(xiàn)直流電動(dòng)機(jī)PWM調(diào)速控制的原理圖和輸入輸出電壓波形。當(dāng)開關(guān)MOSFET的柵極輸入高電平時(shí),開關(guān)管導(dǎo)通,直流電動(dòng)機(jī)電樞繞組兩端有電壓Us。T1時(shí)間后,柵極輸入變?yōu)榈碗娖?,開關(guān)管截止,電動(dòng)機(jī)電樞兩端電壓為零。T2時(shí)間后,柵極
6、輸入重新變?yōu)楦唠娖?,開關(guān)管重復(fù)前面的動(dòng)作過程。這樣,對(duì)應(yīng)著輸入的點(diǎn)評(píng)高低,直流伺服電動(dòng)機(jī)電樞繞組兩端的電壓波形如圖4b所示。占空比a表示了在一個(gè)周期T里,開關(guān)管導(dǎo)通的時(shí)間與周期的比值。a的變化范圍為0<a<1。由此式可知,當(dāng)電源電壓Us不變的情況下,電樞繞組兩端的電壓平均值Uo取決于占空比a的大小,改變a的值就可以改變端電壓的平均值,從而達(dá)到調(diào)速的目的。2 基于GT-400-SV-PCI卡的軟件設(shè)計(jì)GT-400-SV控制卡具有良好的開放性,用戶可以再DOS、VC、VB、Delphi環(huán)境下進(jìn)行軟件開發(fā)。文中是在Windows2000系統(tǒng)下利用Visual C+6.0的MFC以面向?qū)ο?/p>
7、方式進(jìn)行編程??刂瓶ㄔ赪indows下開發(fā)的底層動(dòng)態(tài)庫包括頭文件GT400.h,GT400.lib和GT400.dll。在VC+環(huán)境中使用時(shí),選擇ProjectSettingLink,在Object/Library modules中輸入GT400.lib,然后就可以在程序中調(diào)用動(dòng)態(tài)鏈接庫中的函數(shù)。2.1 Windows程序內(nèi)部運(yùn)行原理因?yàn)閂isual C+6.0是Windows開發(fā)語言,所以用Visual C+6.0開發(fā)程序之前首先需要弄清楚Windows程序內(nèi)部運(yùn)行機(jī)制。在Windows環(huán)境下的軟件開發(fā)是完全不同于DOS下的,它是一種事件驅(qū)動(dòng)方式的程序設(shè)計(jì)模式,主要是基于消息的。當(dāng)用戶需要完
8、成某種功能時(shí),會(huì)調(diào)用操作系統(tǒng)的某種支持,然后操作系統(tǒng)將用戶的需要包裝成消息并投遞到消息隊(duì)列當(dāng)中,最后應(yīng)用程序從消息隊(duì)列中取走消息并進(jìn)行響應(yīng)。2.2 程序設(shè)計(jì)運(yùn)動(dòng)控制卡接受PC機(jī)上發(fā)出的操作命令和運(yùn)動(dòng)控制系統(tǒng)反饋回的信息,并據(jù)其進(jìn)行實(shí)時(shí)的運(yùn)動(dòng)操作,直接控制伺服驅(qū)動(dòng)器??刂瓶刂浦绷麟妱?dòng)機(jī)的過程可分為:打開控制卡并初始化,設(shè)置運(yùn)動(dòng)參數(shù),執(zhí)行運(yùn)動(dòng)程序,關(guān)閉卡??刂葡到y(tǒng)流程圖如圖5所示。2.2.1 卡的初始化卡的初始化應(yīng)在程序開始時(shí)就執(zhí)行,主要用到的控制函數(shù)見表1。 表1 函數(shù)名稱及功能 名稱 功能GT_Open() 打開運(yùn)動(dòng)控制器設(shè)備GT_Reset() 復(fù)位運(yùn)動(dòng)控制器GT_SetSmplTm()
9、設(shè)置控制周期GT_LmtSns() 設(shè)置限位開關(guān)的有效電平GT_EncSns() 設(shè)置編碼器的記數(shù)方向GT_CloseLp() 設(shè)置為閉環(huán)控制GT_CtrlMode() 設(shè)置輸出模擬量/脈沖量以上參數(shù)應(yīng)根據(jù)具體的硬件平臺(tái)來設(shè)置,一般只在程序初始化時(shí)設(shè)置一次,以后不應(yīng)再設(shè)置。另外,控制周期的設(shè)定GT_SetSmplTm(double Timer),參數(shù)Timer的單位是us。因?yàn)檫\(yùn)動(dòng)控制卡要在控制周期內(nèi)完成必要的控制計(jì)算,控制周期不能太小,因此設(shè)定的范圍為48-1966.08us。運(yùn)動(dòng)控制卡默認(rèn)的控制周期為200us,這個(gè)控制周期對(duì)于普通的用戶能夠安全可靠地工作。一般情況下,在程序中不應(yīng)改變控制
10、周期值,否則會(huì)出現(xiàn)不可預(yù)期的后果。2.2.2 運(yùn)動(dòng)控制模塊 該運(yùn)動(dòng)控制卡可以實(shí)現(xiàn)單軸及多軸協(xié)調(diào)運(yùn)動(dòng)。 對(duì)于單軸所執(zhí)行的運(yùn)動(dòng)操作有絕對(duì)運(yùn)動(dòng)、連續(xù)點(diǎn)動(dòng)、急停緩?fù)?、回零等;?duì)于多軸協(xié)調(diào)運(yùn)動(dòng)有直線插補(bǔ)和圓弧插補(bǔ)。單軸運(yùn)動(dòng)控制主要用來調(diào)試直流電動(dòng)機(jī)運(yùn)動(dòng)性能。采用梯形曲線運(yùn)動(dòng)模式,設(shè)置速度、加速度、目標(biāo)位置3個(gè)參數(shù),通過設(shè)置合適的PIDP控制參數(shù),使電動(dòng)機(jī)運(yùn)動(dòng)達(dá)到系統(tǒng)設(shè)計(jì)要求。4軸協(xié)調(diào)運(yùn)動(dòng)采用直線插補(bǔ)法,正確的設(shè)置坐標(biāo)映射,合成速度、加速度,再加軌跡設(shè)置命令及目標(biāo)位置,即可實(shí)現(xiàn)四軸協(xié)調(diào)運(yùn)動(dòng)。運(yùn)動(dòng)控制卡通過坐標(biāo)映射函數(shù)GT_MapAxis(short Axis_Num,double * map_count)
11、將控制軸由單軸運(yùn)動(dòng)控制模式轉(zhuǎn)換為坐標(biāo)系運(yùn)動(dòng)控制模式。同時(shí)運(yùn)動(dòng)控制卡開辟了底層運(yùn)動(dòng)數(shù)據(jù)緩沖區(qū),在坐標(biāo)系運(yùn)動(dòng)控制模式下,可以實(shí)現(xiàn)多段軌跡快速、穩(wěn)定的連續(xù)運(yùn)動(dòng)。這些運(yùn)動(dòng)操作都是相互獨(dú)立的,在控制面板中每個(gè)操作按鍵對(duì)應(yīng)一個(gè)獨(dú)立的事件。2.2.3 運(yùn)動(dòng)狀態(tài)顯示模塊通過調(diào)用GT_GetAltPos(long * Apos)和GT_GetPrfPnt(double * Pnt)分別獲得當(dāng)前軸的實(shí)際位置和坐標(biāo)系各軸的坐標(biāo)位置,參數(shù)*Apos返回實(shí)際位置,雙精度參數(shù)*Pnt指向一個(gè)長度為4的數(shù)組。然后轉(zhuǎn)換成各電動(dòng)機(jī)的實(shí)際角度,并在控制面板上顯示。2 編程開發(fā)實(shí)例現(xiàn)以單軸調(diào)試與4軸協(xié)調(diào)運(yùn)動(dòng)實(shí)現(xiàn)直線和圓軌跡為例具體
12、介紹開發(fā)過程:打開Visual C+6.0,利用MFC AppWizardexe創(chuàng)建一個(gè)基于對(duì)話框的Robot2008工程,將GT400.h,GT400.lib添加進(jìn)工程,編程時(shí)要在頭文件里包含頭文件GT400.h。在對(duì)話框中添加按鈕和編輯框等操作見圖6。單軸控制模塊,先在OnInitDialog()中添加如下代碼,進(jìn)行初始化工作:GT_Open();GT_Reset();GT_LmtsOff();GT_AlarmOff();GT_CtrlMode(0);GT_CloseLp(); 在CRobot2008Dlg中添加成員變量m_Kp,m_Ki,m_Kd,m_Pos,m_Vel,m_Acc并作原
13、型說明。然后在“單軸運(yùn)動(dòng)”按鈕添加BN_CLICKED消息響應(yīng)的函數(shù)OnButtonSrtMov(),并在函數(shù)中添加如下代碼:GT_Axis();GT_AxisOn();GT_ZeroPos();GT_PrflT();GT_SetKp(m_Kp);GT_SetKi(m_Ki);GT_SetKd(m_Kd);GT_SetPos(m_Pos);GT_SetVel(m_Vel);GT_SetAcc(m_Acc);GT_Update();最后在“單軸停止”按鈕BN_CLICKED響應(yīng)函數(shù)OnButtonStop()中添加代碼:GT_AxisOff();GT_Close();四軸協(xié)調(diào)運(yùn)動(dòng)的初始化與單軸情況基本相同,但要加入坐標(biāo)映射函數(shù)GT_MapAxis(short Axis_Num,double *map_count)。double cnt15=1,0,0,0,0;double cnt25=0,1,0,0,0;double cnt35=0,0,1,0,0;double cnt45=0,0,0,1,0;GT_MapAxis(1,cnt1);GT_MapAxis(2,cnt2)GT_MapAxis(3,cnt3);GT_MapAxis(4,cnt4);GT_MvXYZA(0,0,0,0,1,0.01);前文已提到,運(yùn)動(dòng)顯示模塊經(jīng)編譯無誤后生成可執(zhí)行文件,執(zhí)行后如圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 水庫設(shè)計(jì)合同范本
- 汽車氣囊采購合同范本
- 各種工程材料合同范本
- 合作傭金協(xié)議合同范例
- 吊籃租賃安全合同范本
- 勞務(wù)兼職合同范本
- 合同藥品采購合同范本
- 制作相框合同范本
- 影視演員聘用合同范本
- 供貨商供貨合同范本
- 2025年黑龍江職業(yè)學(xué)院單招職業(yè)技能測試題庫完整
- 2025中鐵集裝箱運(yùn)輸有限責(zé)任公司招聘46人(京外地區(qū)崗位)筆試參考題庫附帶答案詳解
- 《英語史》課程教學(xué)大綱
- 中國農(nóng)業(yè)大學(xué)人文與發(fā)展學(xué)院管理服務(wù)崗位招聘筆試真題2023
- 2023-2024 中國滑雪產(chǎn)業(yè)白皮書
- 2024年湖南大眾傳媒職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 風(fēng)電場觸電急救培訓(xùn)課件
- 銀行案件風(fēng)險(xiǎn)排查實(shí)施細(xì)則
- 亞馬遜品牌授權(quán)書(英文模板)
- 10級(jí)空乘《形體訓(xùn)練3》課程標(biāo)準(zhǔn)(共14頁)
- 100以內(nèi)不進(jìn)位不退位加減法練習(xí)習(xí)題(直接打印)
評(píng)論
0/150
提交評(píng)論