基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)_第1頁(yè)
基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)_第2頁(yè)
基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)_第3頁(yè)
基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)_第4頁(yè)
基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩86頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

-PAGEII--PAGEI-基于PCI和USB總線的開放式運(yùn)動(dòng)控制器開發(fā)摘要開放式數(shù)控系統(tǒng)已成為當(dāng)今數(shù)控技術(shù)的發(fā)展方向,目前的開放式數(shù)控系統(tǒng)多以PC機(jī)為基礎(chǔ),配上各種開放式運(yùn)動(dòng)控制器。運(yùn)動(dòng)控制器的應(yīng)用已走出機(jī)械加工行業(yè),越來(lái)越多地應(yīng)用于其它工業(yè)自動(dòng)化設(shè)備控制,如機(jī)器人控制、電子機(jī)械、木工機(jī)械、紡織機(jī)械、印刷機(jī)械等諸多行業(yè)?;赑C總線的以DSP和CPLD/FPGA作為核心處理器的開放式運(yùn)動(dòng)控制器將PC機(jī)的信息處理能力和開放式的特點(diǎn)與運(yùn)動(dòng)控制器的運(yùn)動(dòng)軌跡控制能力有機(jī)地結(jié)合在一起,具有信息處理能力強(qiáng)、開放程度高、運(yùn)動(dòng)軌跡控制準(zhǔn)確、通用性好等優(yōu)點(diǎn),因此發(fā)展迅速。今后基于計(jì)算機(jī)標(biāo)準(zhǔn)總線的開放式運(yùn)動(dòng)控制器仍然是市場(chǎng)發(fā)展的主流.PCI總線解決了ISA總線的響應(yīng)速度較慢的瓶頸,近幾年,基于USB總線的設(shè)備也因其優(yōu)點(diǎn)而得以迅速發(fā)展.針對(duì)國(guó)內(nèi)外開放式運(yùn)動(dòng)控制器存在的一些缺點(diǎn),諸如國(guó)外產(chǎn)品價(jià)格太高、技術(shù)支持相對(duì)較差,國(guó)內(nèi)產(chǎn)品不支持USB總線、存在一些技術(shù)上的不足等,本文以DSP芯片TMS320LF2407作為處理器,分別基于PCI和USB總線開發(fā)了多軸開放式運(yùn)動(dòng)控制器,并采用PCI9052和ISP—1581作為接口芯片構(gòu)建PC—DSP通訊電路,利用CPLD器件EPM7128構(gòu)建兩路QEP信號(hào)處理電路并輔助完成譯碼等功能,同時(shí)開發(fā)了接口卡負(fù)責(zé)完成控制卡與外部器件的互聯(lián)并進(jìn)行光電隔離和電平轉(zhuǎn)換.DSP除了完成與上位機(jī)的通訊,內(nèi)部還嵌入了許多控制算法,包括基于前饋補(bǔ)償?shù)腜ID控制算法、參數(shù)曲線的自適應(yīng)時(shí)間分割插補(bǔ)算法、直線/圓弧/NURBS插補(bǔ)算法等。同時(shí),提供了豐富的動(dòng)態(tài)鏈接庫(kù)函數(shù)供用戶調(diào)用,并在此基礎(chǔ)上開發(fā)了測(cè)試軟件.實(shí)驗(yàn)和仿真結(jié)果表明,系統(tǒng)設(shè)計(jì)合理,具有實(shí)時(shí)性好,跟隨誤差小,加工精確度高等優(yōu)點(diǎn).關(guān)鍵詞開放式運(yùn)動(dòng)控制器;USB2。0協(xié)議;PCI總線;NURBS插補(bǔ);DSPDevelopmentofOpen—TypeMotionControllerBasedonPCIandUSBBusAbstractTheopen—typenumericalcontrolsystemhasbecomethedevelopmenttrendofNCtechnologynowadays,andthepresentNCsystemsaremainlybasedonPCs(personalcomputers)withvariousmotioncontrollers。Theapplicationofmotioncontrollershasextendedoutofthemachine-processingfield;moreandmoreareappliedincontrolofotherindustrialautomationdevices,suchasrobotcontrol,electronicmachinery,woodworkingmachinery,textilemachinery,printingmechanism,andsoon.Theopen—typemotioncontrollerhasdevelopedrapidly,whichusesDSPandCPLD/FPGAascoreprocessorsandcombinestheinformation—handlingcapacityandtheopen—typecharacteristicofPCwiththecontroller’smotionpathcontrolability,havingmanyadvantagessuchasstronginformation-handlingcapacity,goodopen-typecharacteristic,precisemotionpath,goodversatility。Fromnowon,thedevelopmentofopen—typemotioncontrollersbasedoncomputerstandardbusisstillthemarketmainstream。ThePCIbussolvestheproblemoflowresponsevelocityofISAbus,andinrecentyears,equipmentsbasedonUSBbushavealsodevelopedrapidlybecauseofthemeritsofUSB.Aimingattheshortcomingsofdomesticandforeignopen—typemotioncontrollers,forexample,theoverseasproductpriceishigh,thetechnicalsupportisrelativelyweak,andthedomesticproductdoesnotsupportUSBbus,existingsometechnicalflaws。thisthesisdevelopsmulti-axismotioncontrollersbasedonPCIbusandUSBbusrespectivelywithTMS320LF2407astheirprocessors.PCI9052andISP-1581chipsareadoptedtoconstructthePC-DSPcommunicationchannel;CPLDcomponentEMP7128isusedtoachievethefunctionsoftwogroupsofQEPsignalprocessingandaddressdecoding;atthesametime,theauxiliaryI/Ocardisalsodevelopedtoconnectthecontrollerandexternalcomponentsafterphoto-electricityisolationandleveltransformation。BesidesthecommunicatingwithPCs,theDSPhasalsobeenembeddedmanycontrolalgorithms,includingthePIDcontrolalgorithmwithfeed—forwardcompensation,theparametercurveauto—adaptedtime—divisioninterpolationalgorithm,theline/circle/NURBSinterpolationalgorithm,etc。Alotofdynamiclinklibraryfunctionsarealsoprovidedfortheusers,andtestsoftwareisdevelopedwiththefunctions。Experimentandsimulationresultindicatesthatthesystemisdesignedreasonably,withmanyadvantagessuchasgoodreal—timeperformance,littlefollowingerrorandhighprocessingprecision.Keywordsopen—typemotioncontroller;USB2。0protocol;PCIbus;NURBSinterpolation;DSPPAGEII--目錄TOC\o”1—3”\h\z\u_Toc129157602"Abstract II第1章緒論 11。1開放式運(yùn)動(dòng)控制技術(shù)概述 1_Toc129157606"1.1。2基于PC機(jī)的開放式運(yùn)動(dòng)控制器 2HYPERLINK\l”_Toc129157607"1.2開放式運(yùn)動(dòng)控制器研究現(xiàn)狀、不足及發(fā)展趨勢(shì) 4HYPERLINK\l”_Toc129157608"1。2。1運(yùn)動(dòng)控制器的分類 4_Toc129157610"1.2。3目前基于PC的運(yùn)動(dòng)控制器存在的不足 6HYPERLINK\l”_Toc129157611”1。2。4基于PC的開放式運(yùn)動(dòng)控制器的發(fā)展趨勢(shì) 7_Toc129157613”第2章伺服系統(tǒng)控制關(guān)鍵技術(shù)研究 9HYPERLINK\l”_Toc129157614”2。1運(yùn)動(dòng)系統(tǒng)的控制技術(shù)概述 9HYPERLINK\l”_Toc129157615”2。2伺服電機(jī)控制原理 9HYPERLINK\l”_Toc129157616”2.2。1交流伺服電機(jī)介紹 9HYPERLINK\l”_Toc129157617"2.2.2交流伺服電機(jī)的控制模式 10HYPERLINK\l”_Toc129157618"2。2.3伺服電機(jī)的PID調(diào)節(jié)方案 112.3參數(shù)曲線的時(shí)間分割插補(bǔ)算法 142。3.1時(shí)間分割插補(bǔ)原理 14HYPERLINK\l”_Toc129157621”2.3。2參數(shù)曲線自適應(yīng)插補(bǔ)算法 142。4NURBS插補(bǔ)原理 17HYPERLINK\l”_Toc129157623”2.4。1NURBS插補(bǔ)介紹 172。4。2三次NURBS曲線的數(shù)學(xué)描述 17_Toc129157627”第3章PCI和USB總線規(guī)范與操作 22HYPERLINK\l”_Toc129157628”3。1PCI總線 223。1.1PCI總線的基本概念 22HYPERLINK\l”_Toc129157630”3。1。2PCI總線的特點(diǎn) 223.2USB總線 27HYPERLINK\l”_Toc129157634"3.2。1USB的優(yōu)點(diǎn) 27HYPERLINK\l”_Toc129157635"3.2。2USB系統(tǒng)的分層結(jié)構(gòu) 27_Toc129157637”3。2.4USB的控制傳輸與中斷傳輸 30HYPERLINK\l”_Toc129157638”3.2。5USB軟件編程基礎(chǔ) 33HYPERLINK\l”_Toc129157639"3。3本章小結(jié) 34HYPERLINK\l”_Toc129157640”第4章PC機(jī)與DSP通訊電路設(shè)計(jì) 35HYPERLINK\l”_Toc129157641"4.1運(yùn)動(dòng)控制器硬件電路總體設(shè)計(jì)方案 35HYPERLINK\l”_Toc129157642”4。2DSP芯片TMS320LF2407介紹 36_Toc129157644"4。3.1PCI總線接口電路實(shí)現(xiàn)方法 37HYPERLINK\l”_Toc129157645"4.3。2PCI總線接口芯片選擇 38HYPERLINK\l”_Toc129157646”4。3.3PCI9052的主要特點(diǎn) 38HYPERLINK\l”_Toc129157647”4。3.4PCI9052的工作原理 39_Toc129157649"4。3.6PCI-DSP通訊電路 414。4USB總線與DSP通訊電路設(shè)計(jì) 43HYPERLINK\l”_Toc129157651”4。4。1USB接口芯片選擇 434。4.2ISP-1581的特性 434。4。3ISP—1581的引腳介紹 44_Toc129157655”4。4。5USB—DSP通訊電路設(shè)計(jì) 474.5本章小結(jié) 485。1DSP輔助電路 49HYPERLINK\l”_Toc129157659”5.1。1JTAG測(cè)試接口電路 49HYPERLINK\l”_Toc129157660”5.1.2供電電路 505。1.3時(shí)鐘電路 505.3控制電壓轉(zhuǎn)換電路 515。4。1地址譯碼 53HYPERLINK\l”_Toc129157666"5。4.2正交編碼脈沖處理及計(jì)數(shù) 535.5接口卡電路分析 56HYPERLINK\l”_Toc129157669"5.5。1差分信號(hào)處理電路 56HYPERLINK\l”_Toc129157670”5.5。2輸入輸出信號(hào)處理電路 57HYPERLINK\l”_Toc129157671”5.6運(yùn)動(dòng)控制器硬件開放性的實(shí)現(xiàn) 59_Toc129157673"第6章運(yùn)動(dòng)控制器軟件開發(fā)及調(diào)試 606。1控制器軟件開發(fā)概述 60_Toc129157676”6.2。1USB控制器的固件(Firmware)編程 61HYPERLINK\l”_Toc129157677"6.2.2DSP核心程序 646。3設(shè)備驅(qū)動(dòng)程序開發(fā) 69HYPERLINK\l”_Toc129157679"6。4動(dòng)態(tài)鏈接庫(kù)函數(shù)開發(fā) 70HYPERLINK\l”_Toc129157680”6。4。1動(dòng)態(tài)鏈接庫(kù)函數(shù)及其優(yōu)點(diǎn) 706。4。3用DLL實(shí)現(xiàn)運(yùn)動(dòng)控制器的開放式功能 72HYPERLINK\l”_Toc129157683”6。5測(cè)試軟件開發(fā) 73HYPERLINK\l”_Toc129157684”6.6本章小結(jié) 76結(jié)論 77參考文獻(xiàn) 78HYPERLINK\l”_Toc129157687”攻讀學(xué)位期間發(fā)表的學(xué)術(shù)論文 81是可選的,如果沒(méi)有數(shù)據(jù)需要發(fā)送該步驟省略。后兩個(gè)步驟都是進(jìn)行數(shù)據(jù)的傳輸,其原理與中斷傳輸類似,下面重點(diǎn)介紹初始設(shè)置步驟,其結(jié)構(gòu)如圖3-6所示。令牌包階段:主機(jī)發(fā)送SETUP令牌包。數(shù)據(jù)包階段:主機(jī)發(fā)送固定為8個(gè)字節(jié)的DATA0包,并且有確定的結(jié)構(gòu).通過(guò)這些命令信息,主機(jī)就能夠通知設(shè)備提供哪些數(shù)據(jù),依次來(lái)進(jìn)行配置。這些命令有些是要發(fā)送給設(shè)備數(shù)據(jù)的,比如設(shè)置地址信息;有些是要從設(shè)備讀取數(shù)據(jù),比如讀取設(shè)備的提取電流屬性;有些則不需要讀取讀/寫數(shù)據(jù),而這些讀/寫的數(shù)據(jù)都是要在接下來(lái)的“可選數(shù)據(jù)步驟”中來(lái)交換的。控制讀/寫控制讀/寫令牌包階段數(shù)據(jù)包階段握手包階段DATA0ACK空閑空閑由主機(jī)發(fā)送由設(shè)備發(fā)送SETUP圖3-6控制傳輸?shù)摹俺跏荚O(shè)置步驟”結(jié)構(gòu)Fig.3-6“Initialsetupstep”structureofcontroltransfer握手包階段:設(shè)備在接受到主機(jī)的命令信息后,返回ACK.此后,總線進(jìn)入空閑狀態(tài),并準(zhǔn)備“可選數(shù)據(jù)步驟”的開始.USB軟件編程基礎(chǔ)標(biāo)準(zhǔn)USB設(shè)備請(qǐng)求命令控制傳輸?shù)摹俺跏荚O(shè)置步驟"中包含了1個(gè)8字節(jié)的DATA0數(shù)據(jù)包,這個(gè)數(shù)據(jù)包是主機(jī)用來(lái)發(fā)送控制階段中的請(qǐng)求命令的,這些請(qǐng)求命令是主機(jī)配置USB設(shè)備的關(guān)鍵。將這8個(gè)字節(jié)分配給5種命令信息,即1個(gè)字節(jié)的請(qǐng)求命令類型bmRequestType、1字節(jié)的請(qǐng)求命令代碼bRequest、2字節(jié)的命令信息wValue、2字節(jié)的索引信息wIndex和2字節(jié)的傳輸數(shù)據(jù)大小信息wLength.標(biāo)準(zhǔn)USB設(shè)備請(qǐng)求命令共有表3—2所示的11種.表3-2標(biāo)準(zhǔn)USB設(shè)備請(qǐng)求命令及其意義Table3—2StandardUSBdevicerequestcommandsandtheirmeaning請(qǐng)求命令名稱bRequest值命令意義GET_STATUS0返回特定接收者如端點(diǎn)、接口等的狀態(tài)信息CLEAR_FEATURE1清除或禁用端點(diǎn)、接口等接受者的特定信息SET_FEATURE3啟用或激活命令接受者的的某些特性SET_ADDRESS5主機(jī)給設(shè)備分配地址GET_DESCRIPTOR6主機(jī)獲取設(shè)備的特定描述符SET_DESCRIPTOR7主機(jī)修改設(shè)備中的描述符或增加新的描述符GET_CONFIGURATION8主機(jī)獲取設(shè)備當(dāng)前的配置值SET_CONFIGURATION9主機(jī)指示設(shè)備采用要求的配置GET_INTERFACE10主機(jī)獲取當(dāng)前某個(gè)接口的描述符編號(hào)SET_INTERFACE11主機(jī)要求設(shè)備用某個(gè)接口描述符描述接口SYNCH_FRAME12用于設(shè)備設(shè)置和報(bào)告一個(gè)端點(diǎn)的同步楨標(biāo)準(zhǔn)USB描述符描述符是描述USB設(shè)備的格式化的信息塊,被保存在設(shè)備的某一存儲(chǔ)區(qū)域里。USB設(shè)備有多種標(biāo)準(zhǔn)描述符:設(shè)備、配置、接口、端點(diǎn)和字符串描述符等。在設(shè)備的枚舉過(guò)程中,主機(jī)要用Get_Descriptor命令請(qǐng)求這些描述符,根據(jù)這些描述符中的信息對(duì)設(shè)備進(jìn)行配置[28]。所有的USB設(shè)備必須響應(yīng)主機(jī)對(duì)標(biāo)準(zhǔn)描述符的請(qǐng)求。USB設(shè)備只有一個(gè)設(shè)備描述符。設(shè)備描述符從總體上描述設(shè)備的基本信息,它是設(shè)備連接上后主機(jī)讀取的第一個(gè)描述符。設(shè)備描述符包括設(shè)備描述符本身的信息(描述符長(zhǎng)度和類型)、設(shè)備信息(USB版本號(hào)、銷售商ID、產(chǎn)品ID、設(shè)備發(fā)布號(hào)、設(shè)備序列號(hào)等)、配置信息(支持的配置數(shù)、終端0的最大包大小)、類信息(設(shè)備類、設(shè)備子類、協(xié)議號(hào))等.一個(gè)設(shè)備可使用多個(gè)配置,每個(gè)配置有一個(gè)配置描述符。主機(jī)可以用Set_Configuration請(qǐng)求來(lái)選擇一個(gè)配置,用Get_Configuration讀取當(dāng)前使用的配置.配置描述符包括配置信息、電源使用信息等。接口是一組端點(diǎn)的集合。每個(gè)配置必須至少支持一個(gè)接口主機(jī)用Set_Interface請(qǐng)求來(lái)申請(qǐng)一個(gè)新接口,并用Get_Interface來(lái)讀取當(dāng)前接口值。除了端點(diǎn)0,每個(gè)在接口描述符中指定的端點(diǎn)都有一個(gè)端點(diǎn)描述符(設(shè)備描述符中已經(jīng)包含了端點(diǎn)0的全部信息)。端點(diǎn)描述符包含端點(diǎn)地址、傳輸類型、最大包大小、查詢間隔等端點(diǎn)信息。字符串描述符包含了文本信息。本章小結(jié)本章介紹了PCI總線和USB總線的規(guī)范與操作,其中PCI總線部分主要包括PCI的基本概念、特點(diǎn)、信號(hào)定義和讀寫操作的協(xié)議基礎(chǔ);USB總線部分介紹了USB的優(yōu)點(diǎn)、分層結(jié)構(gòu)、通訊結(jié)構(gòu)、控制傳輸與中斷傳輸原理以及標(biāo)準(zhǔn)USB設(shè)備請(qǐng)求命令和描述符,為以后的系統(tǒng)設(shè)計(jì)做了很好的知識(shí)儲(chǔ)備。PC機(jī)與DSP通訊電路設(shè)計(jì)運(yùn)動(dòng)控制器硬件電路總體設(shè)計(jì)方案運(yùn)動(dòng)控制器由基卡和接口卡組成,如圖4—1所示。單卡可以同時(shí)控制1-4軸伺服電機(jī)的運(yùn)動(dòng)。基卡集成了PC機(jī)與DSP通信電路,DSP輔助電路,存儲(chǔ)器擴(kuò)展電路,CPLD譯碼、中斷、正交編碼處理電路,控制電壓轉(zhuǎn)換電路等。接口卡通過(guò)62針接頭與基卡相連。伺服使能、報(bào)警清除等輸出信號(hào)經(jīng)過(guò)光電隔離后通過(guò)25針接頭對(duì)電機(jī)進(jìn)行控制或者連到I/O端子排進(jìn)行輸出;伺服電機(jī)編碼器反饋信號(hào)經(jīng)過(guò)差分處理和光電隔離后輸入基卡,伺服使能、伺服報(bào)警信號(hào),回零信號(hào)、限位信號(hào)和通用I/O信號(hào)等也通過(guò)光隔進(jìn)行輸入輸出。運(yùn)行過(guò)程中,PC機(jī)把粗插補(bǔ)的數(shù)據(jù)通過(guò)PC機(jī)與DSP通訊電路傳遞給DSP進(jìn)行時(shí)間分割精插補(bǔ)。在每一個(gè)伺服周期中,CPLD器件EPM7128和DSP各處理兩路反饋的正交編碼信號(hào)進(jìn)以獲取實(shí)時(shí)位置和速度,DSP進(jìn)行參數(shù)曲線的自適應(yīng)插補(bǔ)計(jì)算出理論插補(bǔ)位置,并與實(shí)際位置進(jìn)行比較獲取偏差值,以此作為輸入基于速度和加速度前饋進(jìn)行PID調(diào)節(jié),計(jì)算獲得速度控制量,產(chǎn)生的輸出信號(hào)經(jīng)DAC7625進(jìn)行數(shù)模轉(zhuǎn)換及放大電路放大后將模擬電壓量送伺服驅(qū)動(dòng)器以控制電機(jī)。外部的伺服報(bào)警信號(hào)、通用輸入信號(hào)、回零信號(hào)、限位輸入信號(hào)在CPLD中進(jìn)行邏輯運(yùn)算后輸入DSP的XINT1,只要有一個(gè)信號(hào)輸入就引起中斷,由中斷處理程序進(jìn)一步判斷后做出相應(yīng)處理。DSPDSPTMS320LF2407核心處理芯片擴(kuò)展RAM伺服電機(jī)×4CPLD譯碼、中斷編碼器處理電路JTAG下載口電源管理/時(shí)鐘圖4-1控制器原理框圖Fig.4-1PrincipleblockdiagramofcontrollerPC-DSP通訊電路控制器基卡差分信號(hào)處理光電隔離電平轉(zhuǎn)換電源輸入控制電壓轉(zhuǎn)換62針接頭62針接頭25針接頭×4I/O端子排通用I/O限位信號(hào)回零信號(hào)外部電源接口卡DSP芯片TMS320LF2407介紹隨著微處理器、微控制器和數(shù)字信號(hào)處理器(DSP)的性價(jià)比的提高,它們?cè)絹?lái)越多地在運(yùn)動(dòng)控制系統(tǒng)中得到應(yīng)用。現(xiàn)在,工程師們可以利用不斷發(fā)展的控制技術(shù)和高性能的處理器設(shè)計(jì)數(shù)字控制系統(tǒng),這種控制理論和實(shí)現(xiàn)手段的并行發(fā)展使得許多復(fù)雜而有效的控制算法能迅速地用到實(shí)際生產(chǎn)過(guò)程中。尤其是DSP器件的優(yōu)越性能,以及各DSP廠商不斷推出針對(duì)運(yùn)動(dòng)控制的DSP芯片,使得DSP成為復(fù)雜運(yùn)動(dòng)控制系統(tǒng)和高性能運(yùn)動(dòng)控制器中的首選器件。TMS320LF2407器件是美國(guó)TI公司開發(fā)的面向電機(jī)控制的低成本、高性能的DSP器件,是本運(yùn)動(dòng)控制器的核心。其指令周期只有33ns,可以很好地滿足系統(tǒng)的實(shí)時(shí)性要求,能夠?qū)崿F(xiàn)復(fù)雜的控制算法[29]。它在單片處理器中集成了高性能的TMS320CxLPDSP內(nèi)核(運(yùn)算能力為30MIPS)、為電機(jī)控制而優(yōu)化的事件管理器及PWM輸出接口、可同時(shí)完成采樣的雙工A/D轉(zhuǎn)換器、并行的電機(jī)電流讀數(shù)轉(zhuǎn)換與通訊、Flash存儲(chǔ)器或ROM程序存儲(chǔ)器,還包括同步、異步串行外設(shè)接口、比較單元、通用定時(shí)器及與光電編碼器接口的編碼單元等資源.這種高度集成的單片數(shù)字控制方案比現(xiàn)存的多片方案具有更高的電機(jī)驅(qū)動(dòng)能力及更低的系統(tǒng)費(fèi)用[30].與本運(yùn)動(dòng)控制器相關(guān)的的TMS320LF2407資源介紹如下[31][32]:1.采用高靜態(tài)CMOS技術(shù),使得供電電壓降為3。3V,減小了控制器的功耗;30MIPS的執(zhí)行速度使得指令周期縮短到33ns(30MHz),從而提高了控制器的實(shí)時(shí)控制能力。2.基于TMS320C2xxDSP的CPU核保證了TMS320LF240X系列DSP代碼和TMS320系列DSP代碼兼容。3.片內(nèi)高達(dá)32K字的FLASH程序存儲(chǔ)器,高達(dá)1.5K字的數(shù)據(jù)/程序RAM,544字雙口RAM(DARAM)和2K字的單口RAM(SARAM)。4.兩個(gè)事件管理器EVA和EVB,每個(gè)包括:兩個(gè)16位通用定時(shí)器;8個(gè)16位的脈沖調(diào)制(PWM)通道。它們能夠?qū)崿F(xiàn):三相反相控制;PWM的對(duì)稱和非對(duì)稱波形;當(dāng)外部引腳PDPINTx出現(xiàn)低電平時(shí)快速關(guān)閉PWM通道;可編程的PWM死區(qū)控制以防止上下橋臂同時(shí)輸出觸發(fā)脈沖;3個(gè)捕獲單元;片內(nèi)光電編碼器接口電路;16通道A/D轉(zhuǎn)換器。事件管理器模塊適用于控制交流感應(yīng)電機(jī)、無(wú)刷直流電機(jī)、開關(guān)磁阻電機(jī)、步進(jìn)電機(jī)、多級(jí)電機(jī)和逆變器。5.?dāng)U展的外部存儲(chǔ)器(LF2407)總共192K字:64K字程序存儲(chǔ)器;64K字?jǐn)?shù)據(jù)存儲(chǔ)器;64K字I/O尋址空間.6.看門狗定時(shí)器模塊(WDT)。7.基于鎖相環(huán)的時(shí)鐘發(fā)生器.8.高達(dá)40個(gè)可單獨(dú)編程或復(fù)用的通用輸入/輸出引腳(GPIO).9.5個(gè)外部中斷(電機(jī)驅(qū)動(dòng)保護(hù)、復(fù)位和兩個(gè)可屏蔽中斷)。電源管理器包括3種低功耗模式,并且能獨(dú)立將外設(shè)器件轉(zhuǎn)入低功耗模式。PCI總線與DSP通訊電路設(shè)計(jì)PCI總線接口電路實(shí)現(xiàn)方法PCI總線接口電路大體有兩種實(shí)現(xiàn)方法。1.用可編程邏輯器件CPLD或FPGA實(shí)現(xiàn)通用PCI接口。這樣做也有兩種選擇。一個(gè)是買IP宏,并根據(jù)應(yīng)用的需要來(lái)裁剪IP宏并與相關(guān)應(yīng)用電路燒入CPLD或FPGA中。另一種是采用類似于QuickLogic公司的一次性可編程芯片來(lái)處理,每片可編程芯片內(nèi)都內(nèi)嵌PCI接口電路,也可根據(jù)應(yīng)用的需要來(lái)裁剪燒寫,但只能燒寫一次。采用可編程邏輯器件的優(yōu)點(diǎn)主要有:PCI接口可以根據(jù)插卡功能進(jìn)行最優(yōu)化的電路設(shè)計(jì),而不必實(shí)現(xiàn)所有的PCI總線的功能,節(jié)約系統(tǒng)的邏輯資源;可以將PCI插卡上的其它用戶邏輯與PCI接口邏輯集成在一塊芯片上,實(shí)現(xiàn)緊湊的系統(tǒng)設(shè)計(jì);當(dāng)系統(tǒng)升級(jí)時(shí),只需對(duì)可編程邏輯器件重新進(jìn)行邏輯設(shè)計(jì),而無(wú)須更改PCB板。但是,采用可編程邏輯器件由于要買IP宏,而一個(gè)IP宏少則幾千美元多則更貴,并且一般的小規(guī)模的CPLD的免費(fèi)開發(fā)軟件不支持對(duì)IP宏的開發(fā)所以用戶有可能還要花幾萬(wàn)元買大規(guī)模的CPLD或FPGA設(shè)計(jì)軟件,因此用戶的開發(fā)前期投入很大;同時(shí)用戶需具備一定可編程邏輯設(shè)計(jì)的功底以及扎實(shí)電路設(shè)計(jì)基礎(chǔ),要有一定深度的VHDL的開發(fā)能力,開發(fā)周期較長(zhǎng).2.采用專用芯片實(shí)現(xiàn)PCI總線接口。專用芯片可以實(shí)現(xiàn)完整的PCI主控模塊和目標(biāo)模塊的接口功能,將復(fù)雜PCI總線接口轉(zhuǎn)換為相對(duì)簡(jiǎn)單的用戶接口。廠商對(duì)PCI總線接口進(jìn)行了嚴(yán)格的測(cè)試,用戶只要設(shè)計(jì)轉(zhuǎn)換后的總線接口即可。這樣,用戶可以集中精力于應(yīng)用設(shè)計(jì),而不是調(diào)試PCI總線接口,明顯的縮短了開發(fā)周期。它的缺點(diǎn)是用戶實(shí)際只用到了部分的PCI接口功能,這樣造成一定的邏輯資源浪費(fèi),對(duì)于大批量生產(chǎn)的產(chǎn)品不易降低成本。為了縮短開發(fā)周期,本運(yùn)動(dòng)控制器采用第二種實(shí)現(xiàn)方法,即選用專用PCI總線接口芯片來(lái)設(shè)計(jì)PCI總線接口電路。PCI總線接口芯片選擇目前市場(chǎng)上提供的專用芯片主要是AMCC、PLX和CYPRESS等公司的系列產(chǎn)品。各個(gè)型號(hào)的PCI接口芯片的比較如表4-1所示.表4—1各公司PCI接口芯片比較Table4-1ComparationofPCIinterfacechipsmadebydifferentcorporations生產(chǎn)公司主要特點(diǎn)驅(qū)動(dòng)開發(fā)價(jià)格技術(shù)資料AMCC內(nèi)置FIFO接口,適于設(shè)計(jì)數(shù)據(jù)采集卡,使用簡(jiǎn)單,性能好有DOS下的驅(qū)動(dòng)程序范例較昂貴較為全面,提供評(píng)估板板圖CYPRESS內(nèi)置DRAM,可以替代外部緩存,有效降低性能成本有VXD范例便宜技術(shù)文檔比較全面PLX有較多型號(hào)可供選擇提供SDK,降低工作量多種選擇有價(jià)值的資料在RDK中出售從市場(chǎng)情況來(lái)看,PLX是PCI接口芯片的行業(yè)巨頭,該公司提供多個(gè)系列的產(chǎn)品,例如主設(shè)備接口芯片9060、9080、9054等,從設(shè)備接口芯片9030、9050、9052等,分別支持“主控”和“從控"兩種模式。所謂“主控"就是PCI接口芯片可以讓用戶電路控制PC機(jī)資源,即主動(dòng)對(duì)目標(biāo)設(shè)備發(fā)讀寫信號(hào)?!皬目?就只能讓PC機(jī)來(lái)控制用戶電路工作,而用戶電路只能被動(dòng)接受,像ISA總線一樣。支持該模式的芯片中,9030為嵌入式專門設(shè)計(jì),支持CompactPCI;9050專門為ISA設(shè)備轉(zhuǎn)PCI總線接口而設(shè)計(jì);9052是9050的升級(jí)版本。這些芯片價(jià)格低廉,不支持DMA,適合于設(shè)計(jì)基于PCI總線的以中斷、查詢方式與主機(jī)交互的系統(tǒng)。經(jīng)過(guò)比較,PLX公司的9052技術(shù)成熟,價(jià)格適中,能夠滿足系統(tǒng)要求,所以決定采用該芯片作為PCI接口的運(yùn)動(dòng)控制卡的接口芯片.PCI9052的主要特點(diǎn)PCI9052是PLX公司繼PCI9050之后推出的低成本PCI總線目標(biāo)接口芯片,符合PCI2.1規(guī)范,采用CMOS工藝,低功耗,PQFP160pins封裝。其主要特點(diǎn)如下[33]:1.包括一個(gè)64Byte的寫FIFO存儲(chǔ)器和一個(gè)32Byte的讀FIFO存儲(chǔ)器,可實(shí)現(xiàn)高性能的突發(fā)式數(shù)據(jù)傳輸;2.ISA模式下支持PCI總線到ISA總線的單周期存儲(chǔ)器(8位或16位)讀寫和I/O訪問(wèn),實(shí)現(xiàn)ISA總線到PCI總線的平滑過(guò)渡;3.支持兩個(gè)來(lái)自局部總線的中斷,可生成一個(gè)PCI中斷,利用軟件寫內(nèi)部寄存器位也可以達(dá)到同樣的目的;4.PCI9052的局部總線與PCI總線的時(shí)鐘相互獨(dú)立運(yùn)行,局部總線的時(shí)鐘頻率范圍為0~40MHz,TTL電平,PCI的時(shí)鐘頻率范圍為0~33MHz,兩種總線的異步運(yùn)行方便了高低速設(shè)備的兼容;5.可編程的局部總線配置,支持復(fù)用或非復(fù)用模式的8、16或32位的局部總線;6.串行E2PROM提供PCI總線和局部總線的部分重要配置信息;7.4個(gè)局部設(shè)備片選信號(hào),各設(shè)備的基址和地址范圍及其映射可由串行E2PROM或主機(jī)編程實(shí)現(xiàn);8.5個(gè)局部地址空間,基址和地址范圍及其映射可由串行E2PROM或主機(jī)編程實(shí)現(xiàn);9.可對(duì)局部總線的預(yù)取計(jì)數(shù)器編程為0(非預(yù)取)、4、8、16或連續(xù)(預(yù)取計(jì)數(shù)器關(guān)閉)預(yù)取模式;10.PCI鎖定機(jī)制,PCI主控設(shè)備可以通過(guò)鎖定信號(hào)獨(dú)占對(duì)PCI9052的訪問(wèn)。PCI9052的工作原理PCI9052包含了四個(gè)接口部分:PCI總線接口、串行EEPROM接口、局部總線接口和ISA總線接口。其中局部總線接口與ISA總線接口的引腳是復(fù)用的。PCI9052就相當(dāng)于一個(gè)橋,連接PCI控制的局部總線芯片到PCI總線上,將PCI指令(如讀寫某個(gè)寄存、內(nèi)存、I/O)翻譯到局部總線。PCI9052內(nèi)部提供了兩種配置寄存器:PCI配置寄存器(PCIConfigurationRegisters)和局部配置寄存器(LocalConfigurationRegisters),為總線接口的實(shí)現(xiàn)提供了較大的靈活性.PCI配置寄存器提供了6個(gè)基地址寄存器(BASE0—BASE5),這些基地址都是在系統(tǒng)中的物理地址,其中BASE1和BASE2都是用來(lái)訪問(wèn)局部配置寄存器的基地址,BASE1是映射到內(nèi)存的基地址,BASE2是映射到I/O的基地址,所以可以通過(guò)內(nèi)存和I/O來(lái)訪問(wèn)局部配置寄存器。BASE2—BASE5四個(gè)空間提供了訪問(wèn)局部端所接的4個(gè)芯片,它們將局部端的芯片通過(guò)局部端地址(在局部配置寄存器中設(shè)置)翻譯成PCI總線的地址,也就是將本地的芯片影射到系統(tǒng)的內(nèi)存或I/O口。這樣使用程序操作這一段內(nèi)存(或I/O)實(shí)際上就是對(duì)本地的芯片操作了。這些寄存器的內(nèi)容必須在芯片復(fù)位時(shí)通過(guò)串行E2PROM進(jìn)行加載,正確配置E2PROM的內(nèi)容是使用PCI9052的關(guān)鍵。上電時(shí),PCI9052的內(nèi)部寄存器由PCI總線的RST#信號(hào)復(fù)位,在局部總線上輸出LRESET#信號(hào).復(fù)位后,PCI9052嘗試去讀串行EEPROM來(lái)判斷其是否存在。如果E2PROM的第一個(gè)字不是0FFFFH,則PCI9052假定設(shè)備非空并且繼續(xù)讀.PCI總線上的主控設(shè)備也可以應(yīng)用軟件通過(guò)置CNTRL[30]=1,使PCI9052的寄存器復(fù)位,但是主設(shè)備只能訪問(wèn)配置寄存器,而不能訪問(wèn)局部總線。當(dāng)CNTRL[30]=0時(shí),清除PCI9052的復(fù)位狀態(tài)。提供PCI總線到ISA總線之間的簡(jiǎn)單轉(zhuǎn)換模式也是PCI9052的特色之一,只要設(shè)置相應(yīng)的使能位并進(jìn)行必要的配置即可,雖然只能用于單次數(shù)據(jù)傳輸,卻為基于ISA總線的產(chǎn)品向PCI總線轉(zhuǎn)移提供了極大的方便.ISA模式的配置既可以通過(guò)編程器對(duì)串行E2PROM預(yù)先編程來(lái)實(shí)現(xiàn),也可以通過(guò)PCI總線在線配置。E2PROM的配置實(shí)驗(yàn)室已經(jīng)開發(fā)了基于ISA總線和DSP的四軸伺服運(yùn)動(dòng)控制器。為了從ISA總線的接口電路順利而平穩(wěn)過(guò)渡到PCI總線的接口卡上去,減少軟硬件開發(fā)的工作量,新開發(fā)的運(yùn)動(dòng)控制器基于PCI轉(zhuǎn)ISA總線模式,采取I/O寄存器映射方式。PCI的即插即用(PnP)方式是由于每塊支持PnP的板卡上都有一組成為配置空間的寄存器,在這些寄存器中保存有自己對(duì)系統(tǒng)資源的需求參數(shù),當(dāng)系統(tǒng)啟動(dòng)時(shí),其BIOS引導(dǎo)程序首先讀出這些參數(shù),然后綜合每塊板卡對(duì)資源的需求,統(tǒng)一對(duì)整個(gè)系統(tǒng)的資源進(jìn)行分配,從而避免用戶的干預(yù)。為了BIOS引導(dǎo)程序能正確地對(duì)板卡所需的資源進(jìn)行動(dòng)態(tài)配置,其配置空間寄存器中存儲(chǔ)的是物理空間大小等相對(duì)信息,而不是絕對(duì)的物理地址[34]。PCI設(shè)備在計(jì)算機(jī)中的硬件資源是系統(tǒng)動(dòng)態(tài)分配的,PCI9052寄存器的初始值由串行E2PROM提供,在PCI9052加電后讀取E2PROM必須采用支持連讀功能的芯片,本系統(tǒng)采用PLX公司推薦的93LC46B。E2PROM各個(gè)寄存器的意義再文獻(xiàn)[33]中有詳細(xì)描述。下面控制器中用到的一些關(guān)鍵寄存器值的確定。1.00H:設(shè)備ID為0x9050,制造商ID為0x10B5,寄存器值為0x9050105B,如果設(shè)置錯(cuò)誤,則PCI9052不能工作。2.04H:級(jí)聯(lián)號(hào)碼器存器,PCI9052數(shù)據(jù)手冊(cè)推薦分別設(shè)置為0x06800000。要,.子系統(tǒng)ID、制造商ID3.08H:子系統(tǒng)ID和制作商ID,由用戶自己任意定義,以此標(biāo)識(shí)PCI板卡的制造商,也設(shè)定為0x9050105B.4.0CH:中斷控制狀態(tài)寄存器,設(shè)定為0x00001000,表示不使用中斷,其中位12為1表示I/O映射使能.5.14H:LAS1范圍寄存器,設(shè)定為0x0FFFFFFF1,表示映射16個(gè)字節(jié)的I/O空間。因?yàn)樵瓉?lái)的ISA總線控制器只用了16個(gè)字節(jié)的地址空間,可以通過(guò)撥碼開關(guān)選擇基地址,默認(rèn)的地址空間為0x220—0x23F。6.3CH:LAS1特性進(jìn)存器,設(shè)定為0x00400022,其中位[23:22]為00表示LAS1的數(shù)據(jù)總線寬度為8位。第1位和第5位為1分別表示LDRYi#輸入使能和預(yù)取的字?jǐn)?shù)使能。7.50H:CS1配置寄存器,與LAS1對(duì)應(yīng),設(shè)置為0x00000009,最后一位為1表示使能CS1,第3位為1表示地址位于0x220-0x23F之間時(shí),片選信號(hào)CS1有效。8.60H:控制寄存器,設(shè)定值為0x00454492。PCI—DSP通訊電路PC機(jī)通過(guò)PCI總線與DSP與的通訊電路如圖4—2所示。由于DSP與PC機(jī)之間需要高速地傳送大量的數(shù)據(jù),為了提高兩者之間的通訊速度,在PCI9052與DSP之間加入了雙口RAM。雙口RAM作為一種特殊的RAM芯片,在高速數(shù)據(jù)采集處理系統(tǒng)中得到廣泛的應(yīng)用。它具有兩個(gè)獨(dú)立的端口,各自均有一套獨(dú)立的數(shù)據(jù)總線、地址總線和控制總線,允許兩個(gè)端口獨(dú)立地對(duì)存儲(chǔ)器中的任何單元進(jìn)行存取操作。當(dāng)兩個(gè)端口同時(shí)對(duì)存儲(chǔ)器中的同一單元進(jìn)行存取操作時(shí),可由其內(nèi)部仲裁邏輯決定優(yōu)先權(quán)。雙口RAM芯片的型號(hào)為美國(guó)IDT公司生產(chǎn)的IDT7132[35],它是2K×8bit高速靜態(tài)雙口RAM,存取速度35ns,在數(shù)字信號(hào)處理領(lǐng)域應(yīng)用已經(jīng)比較普遍.它的時(shí)序與DSP的時(shí)序相配合,特別適用于DSP與PC機(jī)之間的大量數(shù)據(jù)高速雙向傳送.該芯片均提供兩個(gè)帶有自身的控制、地址和I/O引腳的獨(dú)立端口,它允許獨(dú)立地讀寫存儲(chǔ)器中的任何單元。IDT7132帶有片內(nèi)硬件端口仲裁電路,可以允許雙機(jī)同步地讀或?qū)懘鎯?chǔ)器中的任何單元,同時(shí)保證數(shù)據(jù)的完整性。它的競(jìng)爭(zhēng)原則是:左右兩端口的地址信號(hào)同時(shí)到達(dá),首先處理CE片選信號(hào)先到的一端,慢的一方BUSY線下拉,直到快的一方訪問(wèn)完畢;左右兩端口的片選信號(hào)同時(shí)到達(dá),首先處理訪問(wèn)地址信號(hào)先到的一端,慢的一方BUSY線下拉,直到快的一方訪問(wèn)完畢。采用雙口RAM作為TMS320LF2407與PC主機(jī)之間的通訊接口不但可以簡(jiǎn)化通訊接口電路的設(shè)計(jì),而且提高了數(shù)據(jù)交換的速度,增強(qiáng)了控制卡的實(shí)時(shí)性。由于只用到了雙口RAM的16個(gè)地址,DSP的地址線A[10:4]與IS#信號(hào)進(jìn)入CPLD進(jìn)行譯碼對(duì)雙口RAM片選。LRDYi信號(hào)和兩側(cè)的BUSY#信號(hào)也進(jìn)入雙口CPLD進(jìn)行相應(yīng)的邏輯判斷.由于雙口RAM的數(shù)據(jù)信號(hào)電平為5V,在與3.3V的DSP之間進(jìn)行數(shù)據(jù)傳輸時(shí)需要74LVTH245進(jìn)行電平轉(zhuǎn)換。AD[31:0]AD[31:0]C/BE[3:0]#FRAME#PAREESKISAA[1:0]CLKIRDY#TRDY#STOP#DEVSEL#PERR#SERR#RST#INTA#LOCK#PCI9052PCI總線IDT7132DRAMTMS320LF2407DSPIDSELCPLD芯片EPM7128地址譯碼R/W#LLA[10:2]LAD[7:0]CS1#IORD#IOWR#LRDYiOE#LCE#LI/OL[7:0]ALALCE#ROE#RR/W#RI/OR[7:0]AR[10:0]EEDOEECSEEDI96LC46BE2PROMSKDOCSDIBUSY#LBUSY#RA[10:0]D[7:0]74LVTH245A[10:4]IS#RD#R/W#圖4-2PCI-DSP通訊電路圖Fig.4-2CommunicationdiagrambetweenPCIbusandDSPUSB總線與DSP通訊電路設(shè)計(jì)USB接口芯片選擇按芯片的構(gòu)架來(lái)劃分,市面上的USB控制器芯片可以分為不需要外接微處理器的和需要外接微處理器的兩類芯片.內(nèi)嵌通用微控制器的USB控制芯片,一般是在通用微控制器的基礎(chǔ)上擴(kuò)展了USB功能,其優(yōu)點(diǎn)是開發(fā)者熟悉這些通用微控制器的結(jié)構(gòu)和指令集,相關(guān)資料豐富,易于進(jìn)行開發(fā).如Cypress基于8051的EZ-USB系列,Microchip基于PIC的16C7x5,Motorola基于68HC08系列的68HC08JB8,Atmel基于AVR的AT76C711等USB控制芯片。需要外接微控制器的芯片,只處理與USB相關(guān)的通信工作,而且必須由外部微控制器對(duì)其控制才能正常工作,這些芯片必須提供一個(gè)串行或并行的數(shù)據(jù)總線與微控制器進(jìn)行連接。其優(yōu)點(diǎn)是芯片價(jià)格便宜,而且便于用戶使用自己熟悉的微控制器進(jìn)行開發(fā).如Philiphs公司的PDIUSBD12和ISP-1581。按傳輸速度高低,可分為支持USB1。1協(xié)議的低速系列、全速系列和支持USB2。0協(xié)議的高速系列.PDIUSBD12屬于前者,而ISP—1581屬于后者。由于運(yùn)動(dòng)控制器選用高性能的DSP處理器作為核心,對(duì)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性和傳輸速度有較高的要求,因此選用Philiphs公司的ISP—1581接口芯片。ISP-1581的特性ISP—1581是Philiphs公司在原有PDIUSBD12芯片的基礎(chǔ)上開發(fā)的又一款高速USB接口芯片[36]。其64引腳封裝的芯片功能模塊如圖4-3所示。運(yùn)動(dòng)控制器主要涉及的ISP-1581芯片的特性如下:1.高性能的USB接口器件,集成了串行接口引擎(SIE、PIE、FIFO存儲(chǔ)器、數(shù)據(jù)收發(fā)器和3.3V的電壓調(diào)整器;2.支持USB2。0的自檢工作模式和USB1.1的返回工作模式;3.7個(gè)IN端點(diǎn),7個(gè)OUT端點(diǎn)和1個(gè)固定的控制IN/OUT端點(diǎn);4.集成8K字節(jié)的多結(jié)構(gòu)FIFO存儲(chǔ)器;5.端點(diǎn)的雙緩沖配置增加了數(shù)據(jù)吞吐量并輕松實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)傳輸;6.同大部分的微控制器/微處理器有單獨(dú)的總線接口;7.集成了PLL的12MHZ晶體震蕩器,有著良好的EMI特性;圖4-3ISP圖4-3ISP—1581芯片的功能模塊Fig。4-3FunctionmoduleofchipISP—15818.集成了5V到3V的內(nèi)置電壓調(diào)整器;9.可通過(guò)軟件控制與USB總線的連接(Softconnect);10.符合ACPI,OnNOW和USB電源管理的要求;11.可通過(guò)內(nèi)部上電復(fù)位和低電壓復(fù)位電路復(fù)位,也可通過(guò)軟件復(fù)位。ISP—1581的引腳介紹ISP-1581芯片的64個(gè)引腳按照功能分為電源供給引腳、擴(kuò)展總線引腳、系統(tǒng)相關(guān)引腳、系統(tǒng)時(shí)鐘引腳、外擴(kuò)總線控制信號(hào)和外中斷輸入引腳等6類。1.電源供給引腳:ISP-1581電源共占用13引腳,其中Vcc(5.0)為外部供電;VCCA,及VCC(3。3)為內(nèi)部供電,不能用來(lái)驅(qū)動(dòng)外部器件;DGND為數(shù)字地;AGND為模擬地,.在所有的供電引腳上增加一個(gè)去耦電容(0.1uF),同時(shí)并聯(lián)一個(gè)0.01uF的電容以得到得到良好的EMI性能。2.?dāng)U展總線引腳:AD[7:0]在通用處理器模式下用作地址總線,在斷開總線模式下用作復(fù)用地址/數(shù)據(jù)總線,微控制器利用它來(lái)控制ISP—1581。DATA[15:0]在通用處理器模式下用作DMA總線和系統(tǒng)總線,通過(guò)它來(lái)控制ISP-1581.但是,在斷開總線模式下DATA[15:0]僅用作DMA總線。3.系統(tǒng)相關(guān)引腳:這些是與系統(tǒng)配置和調(diào)試相關(guān)的其他引腳。包括系統(tǒng)復(fù)位引腳RESET、系統(tǒng)出廠時(shí)測(cè)試引腳TEST。4.系統(tǒng)時(shí)鐘引腳:晶體振蕩器輸入XTAL1,連接一個(gè)基本的并聯(lián)振蕩電路或一個(gè)外部時(shí)鐘源(此時(shí)XTAL2懸空);晶體振蕩輸出XTAL2,連接一個(gè)基本的并聯(lián)振蕩電路,當(dāng)XTAL1連接一個(gè)外部時(shí)鐘源時(shí)該管腳懸空。5.外擴(kuò)總線控制信號(hào)和外中斷輸入引腳:包括選擇總線結(jié)構(gòu)引腳BUS-CONF/DA0、ALE/A0功能選擇引腳MODE1、讀/寫功能選擇引腳MODE0/DA1、外部中斷輸入引腳INT、讀選通引腳(R/W)/RD、寫選通引腳DS/WR。6.其它引腳:D-、D+數(shù)據(jù)線連接外部數(shù)據(jù)通信,INTRQ為ATA/ATAPI外設(shè)的中斷請(qǐng)求,CS0、CS1為ATA/ATAPI設(shè)備的輸出片選,CS為片選輸入,WAKEUP喚醒輸入。ISP—1581相關(guān)寄存器簡(jiǎn)介ISP-1581擁有地址寄存器、方式寄存器、中斷配置寄存器等諸多寄存器,對(duì)這些寄存器的理解與操作對(duì)于軟件開發(fā)中建立USB與DSP的通訊具有重要的意義。下面對(duì)其中一些比較重要的寄存器進(jìn)行簡(jiǎn)要介紹.1.地址寄存器(地址:00H)這個(gè)寄存器用來(lái)設(shè)置USB的分配地址并激活USB設(shè)備。它的各位分配如表4-2所示。只要出現(xiàn)總線復(fù)位、上電復(fù)位和軟件復(fù)位三者之一,DEVEN和DEVADDR清零.為響應(yīng)標(biāo)準(zhǔn)USB的SET_ADDRESS請(qǐng)求,固件必須先將設(shè)備地址寫入地址寄存器,再發(fā)送一個(gè)空包給主機(jī)。當(dāng)主機(jī)識(shí)別空包后,這個(gè)新設(shè)備被激活。表4-2地址寄存器的位分配Table4-2Bitallocationofaddressregister位76543210符號(hào)DEVENDEVAADDR[6:0]復(fù)位000H表4—3方式寄存器的位分配Table4—3Bitallocationofmoderegister位76543210符號(hào)CLKONSNDRSUGOSUSSFRSTGLNTNWKPCSRSRVDSFTCT復(fù)位000000002.方式寄存器(地址:0CH)這是一個(gè)單字節(jié)的寄存器,其位分配見表4-3。在16位總線模式下對(duì)其進(jìn)行訪問(wèn)時(shí)忽略高字節(jié)。方式寄存器控制著重新開始、掛起和喚醒行為、中斷活動(dòng)、軟件復(fù)位、時(shí)鐘信號(hào)和軟件連接操作。3.中斷配置寄存器(地址:10H)這是單字節(jié)寄存器,決定了INT輸出的動(dòng)作和極性。位分配見表4-4.當(dāng)USB的SIE接受或產(chǎn)生一個(gè)ACK、NAK或STALL,就根據(jù)以下三種調(diào)試方式位域來(lái)產(chǎn)生中斷:CDBGMOD[1:0]:控制端點(diǎn)0中斷。DDBGMODIN[1:0]:端點(diǎn)1到7的DATAIN中斷。DDBGMODOUT[1:0]:端點(diǎn)1到7的DATAOUT中斷。CDBGMOD、DDBGMODIN和DDBGMODOUT的調(diào)試方式允許用戶分別進(jìn)行設(shè)置,操作時(shí)ISP—1581將向外部微處理器發(fā)送一個(gè)中斷請(qǐng)求。寄存器的INTPOL位控制INT輸出的信號(hào)極性(高/低電平有效,上升沿/下降沿)。若選擇電平觸發(fā)方式,INTLVL必須為0。若INTLVL設(shè)置為1將產(chǎn)生一個(gè)60ns的脈沖(邊沿觸發(fā))觸發(fā)產(chǎn)生中斷。表4—4:中斷配置寄存器的位分配Table4-4Bitallocationofinterruptconfigurationregister位76543210符號(hào)CDBGMOD[1:0]DDBGMODI[1:0]DDBGMODO[1:0]INTLVLINTPOL復(fù)位03H03H03H004.中斷使能寄存器(地址:14H)這個(gè)寄存器用來(lái)激活/禁止單個(gè)中斷源。寄存器中的IEPnRX或IEPnTX位可以屏蔽所有的中斷.當(dāng)USBSIE在USB總線上接收或產(chǎn)生一個(gè)ACK或NAK,就產(chǎn)生一次中斷.中斷的產(chǎn)生還依賴于位域CDBGMOD、DDBGMODIN和DDBGMODOUT調(diào)試方式設(shè)置。所有數(shù)據(jù)的IN處理通過(guò)位DDBGMODIN控制的發(fā)送緩沖區(qū)(IX)來(lái)實(shí)現(xiàn)。所有數(shù)據(jù)的OUT處理則是通過(guò)位DDBGMODOUT控制的接收緩沖區(qū)來(lái)實(shí)現(xiàn)。而位CDBGMOD用于控制端點(diǎn)0的傳輸(IN、OUT和SETUP)。由USB總線上的事件(SOF,假SOF,掛起,重新開始,總線復(fù)位,Setup和高速狀態(tài))所產(chǎn)生的中斷也能被分別控制。除位IEBRST(總線復(fù)位)控制的中斷之處,總線復(fù)位信號(hào)可以將所有激活的中斷禁止??偩€復(fù)位時(shí)IEBRST的值不變。中斷使能寄存器包含4個(gè)字節(jié)5.端點(diǎn)索引寄存器(地址:2CH)端點(diǎn)寄存器是一個(gè)字節(jié)的寄存器,它為微控制器對(duì)寄存器的訪問(wèn)提供了目標(biāo)端點(diǎn)。位分配如表4—5所示。以下是被編入了索引的寄存器:端點(diǎn)MaxPacketsize,端點(diǎn)類型,緩沖區(qū)長(zhǎng)度,數(shù)據(jù)端口,短包,控制功能。例如,向端點(diǎn)索引寄存器引入了02H,就可通過(guò)數(shù)據(jù)端口寄存器對(duì)端點(diǎn)1的OUT數(shù)據(jù)緩沖區(qū)進(jìn)行訪問(wèn)。表4—5:端點(diǎn)索引寄存器的位分配Table4-5Bitallocationofendpoingindexregister位76543210符號(hào)保留EP0SETUPENDPIDX[3:0]DIR復(fù)位--000H06.端點(diǎn)類型寄存器(地址:08H)該寄存器用于設(shè)置索引端點(diǎn)的端點(diǎn)類型:同步,批量或中斷。它還可以使能端點(diǎn)和設(shè)置雙緩沖區(qū),并可通過(guò)位NOEMPKT使一個(gè)長(zhǎng)度為0的TX緩沖器空包的自動(dòng)產(chǎn)生禁止。該寄存器包含2個(gè)字節(jié),它的位分配如表4—6所示。表4-6端點(diǎn)類型寄存器的位分配Table4-6Bitallocationofendpoingtyperegister位15141312111098符號(hào)保留保留保留保留保留復(fù)位--——-———位76543210符號(hào)保留NOEMPKTENABLEDBLBUFENDPTYP[1:0]復(fù)位—-—00000HUSB—DSP通訊電路設(shè)計(jì)USB—DSP通訊電路示意圖如圖4-4所示。圖圖4-4USB-DSP通信電路示意圖Fig。4-4SketchmapforUSB—DSPcommunication由于TMS320LF2407DSP具有單獨(dú)的數(shù)據(jù)總線和地址總線,將BUS_CONF接高電平,使ISP-1581工作于通用處理器模式,在該模式下,AD[7:0]為單獨(dú)的8位地址總線,DATA[15:0]為16位數(shù)據(jù)線.MODE0/DA1和MODE1引腳也接高電平,此時(shí)ISP—1581工作8051類型,其和信號(hào)分別為寫有效和讀有效。ISP—1581的寄存器映射到DSP的外部數(shù)據(jù)存儲(chǔ)器空間,地址為8000H~80FFH,CPLD器件EPM7128進(jìn)行地址譯碼后通過(guò)USB_CS信號(hào)對(duì)其進(jìn)行選通。將中斷信號(hào)INT接到DSP的XINT2端用于啟動(dòng)中斷進(jìn)行輸入輸出傳輸處理。RREF引腳通過(guò)12。0K的精密電阻接地,提供精確的鏡電流。RPU引腳與D+相連,1.5K的電阻對(duì)其上拉。本章小結(jié)本章提出了4軸伺服運(yùn)動(dòng)控制卡的硬件總體設(shè)計(jì)方案,概述了DSP芯片TMS320LF2407A在電機(jī)控制方面的特點(diǎn)和功能,然后分別對(duì)PCI總線和USB總線的接口芯片進(jìn)行選擇,并在此基礎(chǔ)上設(shè)計(jì)了兩種總線與DSP的通訊電路,建立了PC機(jī)與DSP的通訊。運(yùn)動(dòng)控制器硬件電路設(shè)計(jì)論文的第4章介紹了運(yùn)動(dòng)控制器的總體設(shè)計(jì)方案,并分別設(shè)計(jì)了PC機(jī)通過(guò)PCI總線USB總線與運(yùn)動(dòng)控制器中DSP芯片進(jìn)行通訊的電路。在本章中,將對(duì)控制器基卡其余部分及接口卡的硬件電路設(shè)計(jì)進(jìn)行詳細(xì)分析介紹。DSP輔助電路JTAG測(cè)試接口電路在TMS320LF2407A上設(shè)置有符合IEEEll49標(biāo)準(zhǔn)的JTAG(JointTestActionGroup)標(biāo)準(zhǔn)測(cè)試接口及相應(yīng)的控制器。不但能控制和觀察多處理器系統(tǒng)中的每個(gè)處理器的運(yùn)行、測(cè)試每塊芯片,還可以通過(guò)這個(gè)接口來(lái)載入程序.控制卡上設(shè)置了一個(gè)14針的JTAG接口。在運(yùn)動(dòng)控制器的硬件調(diào)試及軟件開發(fā)過(guò)程中,聞亭公司提供的XDS510-USB仿真器接通JTAG接口,在PC上編譯軟件并下載到DSP中進(jìn)行控制,開發(fā)好的程序也可以通過(guò)該接口燒錄到DSP的Flash程序存儲(chǔ)器中。和JTAG測(cè)試口同時(shí)工作的還有一個(gè)分析模塊,它支持?jǐn)帱c(diǎn)設(shè)置和程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、程序的單步運(yùn)行和跟蹤以及外部中斷計(jì)數(shù)等。JTAG與TMS320LF2407的接口電路圖如圖5-1所示,EMU0和EMU1信號(hào)加上拉電阻的目的是為了保證信號(hào)上升時(shí)間小于10us[37]。圖5圖5-1JTAG接口電路圖Fig.5-1DiagramofJTAGinterfacecircuitry供電電路TMS320LF2407是低功耗芯片,必須采用3.3V供電,采用美國(guó)TI公司生產(chǎn)的電源管理芯片的TPS7333將5V電壓轉(zhuǎn)換為3.3V為DSP和CPLD器件EPM7128等需要3.3V電壓的元件供電,電源管理電路如圖5-2所示.IN端是電壓輸入端,輸入電壓可以是4.3V-10V之間,OUT端是電壓輸出端,在25℃時(shí)的典型值是3。3V,在-40℃~125℃之間,輸出電壓最小為3.23V,最大為3.37V.TPS7333具有極低的靜態(tài)電流,典型值為285微安,輸出電流可達(dá)500mA,具有PowerGood(電源好)指示功能[3圖圖5-2電源管理電路Fig.5—2Powermanagementcircuitry時(shí)鐘電路TMS320LF2407A上集成有PLL(鎖相環(huán))時(shí)鐘模塊,可以為DSP芯片及外設(shè)提供所需的時(shí)鐘信號(hào).PLL可提供4種時(shí)鐘信號(hào):供CPU內(nèi)核、片內(nèi)寄存器、片內(nèi)設(shè)備使用的CPUCLK;系統(tǒng)時(shí)鐘SYSCLK,一般為CPUCLK的1/2或1/4;供模擬模塊使用的ACLK,一般為1MHZ;,供WATCHDOG計(jì)數(shù)/實(shí)時(shí)中斷模塊使用的WDCLK,一般為16KHZ。PLL模塊可以按照4、2、1.33、1、0.8、0.66、0。57、0。5的倍率進(jìn)行倍頻或分頻[39].這里的時(shí)鐘信號(hào)由外部提供,由于TMS320LF2407A的速度達(dá)到30MIPS,所以選擇15MHZ的晶振,從XTALI/CLXIN輸入,經(jīng)PLL和PLL22倍頻成30MHZ信號(hào),供DSP使用,管腳XTAL2懸空。存儲(chǔ)器擴(kuò)展電路對(duì)于運(yùn)動(dòng)控制器的存儲(chǔ)器擴(kuò)展電路,選擇具有較高存取速度的外部存儲(chǔ)器非常重要.如果不考慮速度問(wèn)題,可使用READY信號(hào)和片內(nèi)等待狀態(tài)發(fā)生器來(lái)產(chǎn)生等待狀態(tài),滿足DSP與慢速器件之間的通訊問(wèn)題。而對(duì)于本系統(tǒng),終端部分的數(shù)據(jù)處理量比較大,數(shù)據(jù)處理速度要求快,因此需要高速的存儲(chǔ)器接口。因此,我們選用CYPRESS公司生產(chǎn)的CY7C102x—12ZC[40]是高速靜態(tài)RAM,它的特點(diǎn):高速的存取速度TAA=12us、低功耗、高字節(jié)和低字節(jié)的存取獨(dú)立控制等,3。3v供電,VCC接3.3v,其和接地,接TMS320LF2407A的信號(hào),接TMS320LF2407A的信號(hào)。TMS320LF2407有1.5K字的數(shù)據(jù)/程序RAM,544字雙口RAM(DARAM)和2K字的單口RAM(SARAM)。但是考慮到控制器的程序量比較大,相關(guān)的數(shù)據(jù)較多,需要的數(shù)據(jù)儲(chǔ)存空間較大,因此在外部用一片CY7C1020V擴(kuò)展了32Kx16位的數(shù)據(jù)存儲(chǔ)器,地址空間為8000H~0FFFFH。數(shù)據(jù)存儲(chǔ)空間用來(lái)保存采集的實(shí)時(shí)數(shù)據(jù)、處理過(guò)的數(shù)據(jù)和運(yùn)算過(guò)程中的許多中間變量,當(dāng)TMS320LF2407A訪問(wèn)片內(nèi)數(shù)據(jù)存儲(chǔ)器時(shí),外部存儲(chǔ)器信號(hào)和處于高阻狀態(tài),在EPM7128內(nèi),地址線的最高位取非后與信號(hào)相或,其輸出與外部數(shù)據(jù)存儲(chǔ)器的連接進(jìn)行片選,當(dāng)TMS320LF2407A訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),一個(gè)有效的信號(hào)表明外部總線正被數(shù)據(jù)存儲(chǔ)器占用,處于低電平。在基于USB總線的控制器中,外部數(shù)據(jù)空間的8000H-80FFH被映射到ISP—1581的寄存器,因此需要對(duì)數(shù)據(jù)存儲(chǔ)器的A14地址線進(jìn)行相應(yīng)的譯碼處理,使數(shù)據(jù)空間映射到0C000H~0FFFFH。TMS320LF2407還提供了32K字節(jié)的Flash程序存儲(chǔ)器,可以將編譯好的程序燒錄進(jìn)去運(yùn)行。但是,程序在ROM中運(yùn)行速度較慢,最好是在DSP上電復(fù)位后將程序搬運(yùn)到RAM中運(yùn)行以提高執(zhí)行速度.同時(shí),在進(jìn)行程序調(diào)試時(shí),也是通過(guò)跳線將引腳置為高電平,使程序在外部存儲(chǔ)器中執(zhí)行。因此利用CY7C1021芯片擴(kuò)展了64K×16bit的片外程序存儲(chǔ)器。當(dāng)訪問(wèn)片內(nèi)程序存儲(chǔ)器時(shí),外部存儲(chǔ)器信號(hào)和處于高阻態(tài),信號(hào)直接和外部RAM的連接,一個(gè)有效的信號(hào)表明外部總線正被程序存儲(chǔ)器占用.控制電壓轉(zhuǎn)換電路要實(shí)現(xiàn)對(duì)電機(jī)轉(zhuǎn)速的控制,需要將DSP中計(jì)算所的的數(shù)字量轉(zhuǎn)化為-10V~+10V的控制電壓??刂破髦胁捎昧薆URR—BROWN公司生產(chǎn)的12位4路D/A轉(zhuǎn)換芯片DAC7625將數(shù)字量轉(zhuǎn)化為模擬量送到電機(jī)驅(qū)動(dòng)器.它接收12位并行的輸入數(shù)據(jù),有雙緩沖的DAC輸入邏輯,并提供一個(gè)內(nèi)部輸入寄存器的反饋模式,它有低功耗12mW.DAC7625能在單極電源+5V或雙極電源下工作。每個(gè)DAC的低功耗、小體積使DAC7625特別適合于閉環(huán)伺服控制系統(tǒng)。采用MC1403作為基準(zhǔn)電源,它提供了一個(gè)+2.5V的基準(zhǔn)電壓作為供給DAC7625的參考電壓。電路原理圖與文獻(xiàn)[41]中的類似。采用單極電源方式,DAC7625的Vrefh接+2。5V,Vrefl接地,Vdd接+5V,Vss接地,輸入范圍0~+2.5V,DAC76525四個(gè)通道在DSP中的IO地址為:0000H,0001H,0002H,0003H,DAC更新的地址為0004H,其片選信號(hào)由CPLD器件進(jìn)行邏輯運(yùn)算后獲得。由于DAC7625是5V供電,DAC7625與DSP之間通過(guò)74LVTH245的電壓轉(zhuǎn)換芯片傳輸數(shù)據(jù)。DAC7625的四個(gè)通道輸出信號(hào)的電壓范圍為0~+2。5V,需要將其進(jìn)行處理,將其轉(zhuǎn)化為-10V~+10V。圖5—3是放大電路原理圖。經(jīng)過(guò)運(yùn)算放大器的第一級(jí)運(yùn)放后得到的電壓范圍是—2。5~0V,然后經(jīng)過(guò)運(yùn)算放大器的第二級(jí)運(yùn)放后得到的電壓范圍是-10V~+10V,與數(shù)字量0x000H~0x0FFF相對(duì)應(yīng)。圖圖5-3電壓放大電路Fig。5-3VoltageamplifyingcircuitryCPLD處理電路CPLD部分主要完成以下三方面的功能:地址譯碼;QEP(正交編碼脈沖)處理及計(jì)數(shù),對(duì)兩個(gè)電機(jī)的正交編碼輸入四倍頻后進(jìn)行計(jì)數(shù),反饋給DSP,為這兩個(gè)電機(jī)的速度和位置測(cè)量提供數(shù)據(jù);外部中斷邏輯判斷,即對(duì)限16位計(jì)數(shù)器鎖存器譯碼處理、16位計(jì)數(shù)器鎖存器譯碼處理、邏輯判斷正交編碼輸入DSP地址、控制信號(hào)中斷信號(hào)通道選擇三態(tài)緩沖使能、清零信號(hào)通道選擇輸出使能D/A通道選擇片選信號(hào)限位、回零等輸入QEP處理電路圖5-4CPLD器件功能框圖Fig.5-4FunctionalblockdiagramofCPLDAltera公司的EPM7128是基于先進(jìn)的MAX架構(gòu)的CPLD器件,傳播最小延時(shí)為3.5ns,可以實(shí)現(xiàn)速度高于200MHz的計(jì)數(shù),支持在系統(tǒng)編程[42]。假設(shè)電機(jī)的最大轉(zhuǎn)速為3000r/min,對(duì)于2500P/r增量式編碼器,經(jīng)四倍頻后每個(gè)脈沖的周期為2000ns。我們采用的CPLD器件型號(hào)為EPM7128SLC84-15,SpeedGrade為15ns,完全可以滿足系統(tǒng)的實(shí)時(shí)性要求.地址譯碼這一部分的功能主要包括對(duì)DAC7625的片選,即D/A轉(zhuǎn)換通道的選擇;在USB—PC通訊電路中實(shí)現(xiàn)對(duì)ISP-1581的片選或者在PCI—PC通訊電路中對(duì)雙口RAM的兩側(cè)進(jìn)行讀寫使能;產(chǎn)生定時(shí)、鎖存、清零和讀寫信號(hào)對(duì)CPLD內(nèi)部構(gòu)建的QEP電路計(jì)數(shù)器進(jìn)行操作。具體功能在各相關(guān)部分進(jìn)行介紹。正交編碼脈沖處理及計(jì)數(shù)正交編碼脈沖電路的功能是把兩路正交編碼脈沖產(chǎn)生一路方向信號(hào)和一路四倍頻后的脈沖信號(hào)。這些信號(hào)進(jìn)入計(jì)數(shù)器進(jìn)行增減計(jì)數(shù),以確定電機(jī)轉(zhuǎn)過(guò)的脈沖數(shù)。最后將電機(jī)的方向信號(hào)和計(jì)數(shù)器計(jì)數(shù)值反饋到DSP芯片進(jìn)行處理。正交編碼脈沖電路圖5—5是正交編碼脈沖處理電路功能框圖。ref—clk是參考時(shí)鐘,QEP1和QEP2經(jīng)異或后從器件qep_encode的QEP_IN輸入,輸出為QEP_CLK,完成了四倍頻。器件DIR_CONFIRM為方向檢測(cè)邏輯部分,送給CPLD內(nèi)部的計(jì)數(shù)器,QEP_DIR則是電機(jī)的轉(zhuǎn)向信號(hào)。圖5-6是它的仿真波形圖。圖5—圖5—5QEP處理電路功能框圖Fig。5-5FunctionalblockdiagramofQEPcircuitry圖5—圖5—6QEP電路仿真波形圖Fig.5-6SimulationwavediagramofQEPcircuitry方向檢測(cè)器件DIR_CONFIRM用VHDL編寫。檢測(cè)的原則為:當(dāng)QEP1為低電平而QEP2為上升沿時(shí)電機(jī)正轉(zhuǎn),當(dāng)QEP2為下降沿時(shí)則電機(jī)反轉(zhuǎn)。由于電機(jī)轉(zhuǎn)速的不確定性導(dǎo)致編碼器的脈沖寬度的不可預(yù)知性,所以要實(shí)現(xiàn)占空比為1:1的QEP_CLK是很困難的,并且QEP1和QEP2經(jīng)異或后相當(dāng)于二倍頻輸入到QEP_IN端,因此最好是在QEP1和QEP2的每個(gè)跳變沿產(chǎn)生一個(gè)上升沿信號(hào),保證計(jì)數(shù)器能夠計(jì)數(shù),即在每個(gè)跳變沿,QEP_CLK輸出高電平,保持一定的時(shí)間然后變?yōu)榈碗娖剑谙乱粋€(gè)跳變沿再變?yōu)楦唠娖?。這樣,既解決了脈沖寬度的一致性問(wèn)題,同時(shí)和異或電路一起完成了四倍頻.圖5—7是qep_encode電路框圖.圖5—圖5—7qep_encode電路圖Fig。5—7Diagramofqep_encodecircuitry電路中的short_timer是一個(gè)一位的計(jì)數(shù)器,也可以設(shè)定為兩位或者更多位以保證足夠的脈沖寬度;ref_clk作為short_timer的時(shí)鐘;cnt_en是計(jì)數(shù)器的計(jì)數(shù)允許信號(hào);aclr是異步清零信號(hào),由TFF夠成型觸發(fā)器.此電路保證在輸入方波信號(hào)qep_in的跳變沿產(chǎn)生上升沿信號(hào),由qep_out輸出.計(jì)數(shù)器電路此部分包括兩個(gè)16位的增/減計(jì)數(shù)器,分別對(duì)兩個(gè)電機(jī)四倍頻后的正交編碼脈沖進(jìn)行增減計(jì)數(shù),增減控制由DSP_DIR來(lái)控制,輸出計(jì)數(shù)器的值的同時(shí),輸出計(jì)數(shù)器溢出信號(hào)。DSP對(duì)兩個(gè)計(jì)數(shù)器進(jìn)行使能控制,由DSP地址譯碼部分產(chǎn)生定時(shí)、鎖存、清零和讀信號(hào),分別讀取兩個(gè)計(jì)數(shù)器的值,進(jìn)行速度和位置的測(cè)量。此部分的原理框圖如圖5—8所示。其中,dir_con是計(jì)數(shù)器的增減控制信號(hào),qep_clk是四倍頻后的正交脈沖,這兩個(gè)個(gè)信號(hào)都來(lái)自正交編碼脈沖邏輯電路。cnt_en是計(jì)數(shù)器的使能信號(hào);cnt_aclr是計(jì)數(shù)器的異步清零信號(hào),此信號(hào)為低電平時(shí)將計(jì)數(shù)器清零;load是計(jì)數(shù)器的異步置數(shù)信,此信號(hào)為低電平時(shí)將reload常量的值加載到計(jì)數(shù)器的計(jì)數(shù)寄存器中;latch是計(jì)數(shù)器的鎖存信號(hào),上升沿時(shí)將計(jì)數(shù)器的值鎖存到相應(yīng)的鎖存器中;rd讀信號(hào),cnt_rd_sel是對(duì)計(jì)數(shù)器的選擇信號(hào),這兩個(gè)信號(hào)控制對(duì)兩個(gè)不同計(jì)數(shù)器值的讀取。這幾個(gè)信號(hào)都來(lái)自DSP的地址譯碼電路部分。兩個(gè)個(gè)計(jì)數(shù)器的溢出信號(hào)和16位計(jì)數(shù)器數(shù)據(jù)輸出分別送給DSP的外部中斷引腳和16位數(shù)據(jù)線。圖5-圖5-8計(jì)數(shù)器電路原理框圖Fig。5—8Theoryblockdiagramofcounter中斷邏輯每個(gè)軸都有正負(fù)限位信號(hào)、回零信號(hào)和報(bào)警信號(hào),四軸共計(jì)16個(gè)信號(hào),對(duì)它們的處理要求很高的實(shí)時(shí)性,如果DSP采用查詢方式不斷掃描這些信號(hào)的狀態(tài),將占用大量的時(shí)間。因此,將它們輸入到EPM7128,相或后產(chǎn)生中斷邏輯接入DSP的XINT1引腳,任一個(gè)輸入都將引起中斷,再由中斷函數(shù)確定引起中斷的具體信號(hào)并進(jìn)行相應(yīng)處理.接口卡電路分析為提高運(yùn)動(dòng)控制器的擴(kuò)展性,增強(qiáng)其在硬件上的地開放性,開發(fā)了通用的接口卡,輔助完成基卡與外部的通訊。除了進(jìn)行反饋信號(hào)等的傳輸外,還提供了電機(jī)的限位、回零、伺服報(bào)警、伺服使能等信號(hào)和8路通用I/O的接口。差分信號(hào)處理電路交流伺服電機(jī)的編碼器信號(hào)直接接入到電機(jī)驅(qū)動(dòng)器中,驅(qū)動(dòng)器提供三對(duì)差分信號(hào)C+、C-、A+、A-、B+、B—作為反饋。這三對(duì)信號(hào)由于受到驅(qū)動(dòng)器內(nèi)部大電源的干擾,在電機(jī)旋轉(zhuǎn)時(shí),所發(fā)出的信號(hào)會(huì)出現(xiàn)許多毛刺,直接接到DSP中會(huì)引起誤判斷,所以三對(duì)信號(hào)經(jīng)過(guò)差分電路轉(zhuǎn)化為單路信號(hào)C、A、B。差分電路由DS公司的AM26LS32構(gòu)成,該電路的功能是將輸入的一對(duì)極性相反的編碼器反饋信號(hào)轉(zhuǎn)化為單極性的無(wú)毛刺的方波信號(hào).布板時(shí)保證差分信號(hào)線平行進(jìn)入AM26LS32芯片,取得了較好的反饋效果,為了提高精度,碼盤上安裝了四對(duì)同樣的透光裝置,所以碼盤的輸出信號(hào)是實(shí)際信號(hào)的四倍。A、B兩路為正交編碼脈沖,C路每轉(zhuǎn)產(chǎn)生一個(gè)低電平脈沖,用于回零時(shí)的精確定位.各路信號(hào)經(jīng)HP公司的高速光電藕合器件6N137進(jìn)行光電隔離,對(duì)應(yīng)的輸出信號(hào)AA,BB,CC接入控制卡,通過(guò)74LVTH245將電平由5V轉(zhuǎn)化為3.3V后接入DSP或CPLD。6N137的平均輸入驅(qū)動(dòng)電流為50mA,平均輸出驅(qū)動(dòng)電流為5mA,可直接驅(qū)動(dòng)TTL電路;耐受3000V高壓和5KV/us的瞬時(shí)高壓.第一軸電機(jī)的差分信號(hào)處理及光電隔離電路如圖5-9所示。圖5-圖5-9差分信號(hào)處理電路Fig.5—9Circuitryfordisposintdifferentialsignals輸入輸出信號(hào)處理電路為防止外界信號(hào)干擾,保證控制器的可靠性和安全性,輸入輸出信號(hào)都經(jīng)由TLP521進(jìn)行光電隔離.輸入信號(hào)主要包括限位開關(guān)信號(hào)、回零信號(hào)和伺服報(bào)警信號(hào)。每個(gè)控制軸有正反方向的兩個(gè)限位開關(guān),各產(chǎn)生兩個(gè)限位信號(hào),4個(gè)軸共8個(gè)限位信號(hào):limit1+、limit1-、limit2+、limit2—、limit3+、limit3—、limit4+、limit4-,其中“+”表示正限位,“-”表示負(fù)限位.報(bào)警信號(hào)為ALARM1~ALARM4,回零信號(hào)為HOME1~HOME4.它們進(jìn)入DSP的信號(hào)經(jīng)過(guò)光電合理后電平由12V變?yōu)?。3V,信號(hào)名稱分別為L(zhǎng)IM1+~LIM4-,ALM1~ALM4,HM1~HM4,進(jìn)入DSP的PB、PE和PF通用I/O口。當(dāng)EPM7128檢測(cè)到這些輸入并引起DSP的中斷后,DSP確定具體觸發(fā)的信號(hào),限位信號(hào)觸發(fā)則立即停止對(duì)應(yīng)電機(jī)該方向的運(yùn)動(dòng),直到限位消除電機(jī)才能在該方向繼續(xù)運(yùn)動(dòng);回零信號(hào)觸發(fā)則電機(jī)等待Index信號(hào)的輸入后立即讓電機(jī)反向運(yùn)行用戶設(shè)定的回零距離作為機(jī)械零點(diǎn);伺服報(bào)警信號(hào)輸入時(shí),程序立即停止該電機(jī)的運(yùn)動(dòng),直到用戶將報(bào)警清除。輸入光電隔離電路圖如圖5—10所示.同時(shí),還提供四路通用輸入信號(hào).輸出信號(hào)主要包括伺服電機(jī)的伺服使能信號(hào)、報(bào)警清除信號(hào)和4路通用輸出信號(hào),分別由PA、PB、PE等口輸出.與上述的輸入輸出對(duì)應(yīng),在程序中,需要將DSP的通用輸入/輸出口進(jìn)行配置,在初始化程序中的配置主要為:MCRA=0X001C,MCRB=0X0FE03,MCRC=0X0180,PADATDIR=0X0C3C3,PBDATDIR=0X0000,PCDATDIR=0X3C3C,PEDATDIR=0X0000,PFDATDIR=0X圖圖5-10輸入信號(hào)光電隔離電路圖Fig.5—10Photoelectricityisolationcircuitryofinputsignal圖5—圖5—11輸出信號(hào)光電隔離電路圖Fig。5—11Photoelectricityisolationcircuitryofoutputsignal運(yùn)動(dòng)控制器硬件開放性的實(shí)現(xiàn)接口卡的設(shè)計(jì)采用了模塊化思想,每一個(gè)電機(jī)都通

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論