《基于FPGA的激光轉臺控制系統(tǒng)》由會員分享,可在線閱讀,更多相關《基于FPGA的激光轉臺控制系統(tǒng)(3頁珍藏版)》請在裝配圖網上搜索。
1、基于FPGA的激光轉臺控制系統(tǒng)
基于FPGA的激光轉臺控制系統(tǒng)
2014/08/14
《電子設計工程雜志》2014年第十一期
1硬件系統(tǒng)設計
根據(jù)功能要求,硬件系統(tǒng)包括以下幾個模塊:FPGA及配置電路模塊、電機驅動模塊、編碼器信號采集模塊、RS422通信模塊以及電源模塊。
1.1FPGA及配置電路模塊本系統(tǒng)中,F(xiàn)PGA作為控制芯片,其作用至關重要。首先,要給A3977提供控制信號用以驅動步進電機工作;其次,采集絕對值編碼器CMV22的角度數(shù)據(jù),實現(xiàn)閉環(huán)控制;最后,負
2、責和上位機通信,執(zhí)行上位機的控制命令,并反饋轉臺的運行狀態(tài)。FPGA選用APA600,APA600是ACTEL公司基于Flash工藝的FPGA器件,此系列的FPGA為ACTEL公司的第二代產品,憑借其宇航級品質,此系列FPGA一直應用在我國軍工、航天領域,并發(fā)揮重大作用,系統(tǒng)門數(shù)為60萬門,具有126K的內嵌RAM,可以滿足本系統(tǒng)的設計要求。FPGA需要I/O電源3.3V和內核電源1.5V,均由電源模塊提供。此外,本系統(tǒng)選用頻率為16MHz的外部有源晶振,為FPGA提供時鐘,MAX706提供硬件復位信號。
1.2電機驅動模塊轉臺的3個方向均采用兩相混合式步進電機[3],采用28V的電壓,用F
3、PGA通過Allegro公司的A3977驅動控制電機工作。A3977是一種用于雙極型步進電機的微步進電機驅動集成電路,其內部集成了步進和直接譯碼接口、正反轉控制電路、雙H橋驅動,電流輸出2.5A,最大輸出功率可接近90W。由于采用了內置譯碼器技術,A3977可以很容易的使用最少的控制線對步進電機實施微步進控制[4-5]。由FPGA提供的步進控制信號有步進輸入(STEP)、步進模式邏輯輸入(MS1,MS2)以及方向控制信號(DIR)以及電機運轉使能控制信號(EN),如圖4所示。圖中A+、A-和B+、B-分別接至步進電機的兩路線圈中,通過電流按一定規(guī)律變化,就會使電機做出相應的轉動。在工作時,EN
4、管腳處于低電平時有效,此時當STEP輸入的上升沿到來后,內置譯碼器將根據(jù)步進邏輯的輸入值(步進模式見表1)控制H橋的輸出,使電機在當前步進模式下產生1次步進。
1.3編碼器信號采集模塊本系統(tǒng)中,對于角度的精確度具有極高的要求,我們采用德國TR的多圈絕對值編碼器CMV22讀取角度信號,絕對編碼器具有斷電記憶的功能,此編碼器單圈分辨率4096,即最小分辨率約為0.0879,最多可以讀取256圈,再加上轉臺三個方向減速器機構傳動比(俯仰傳動比最小1:90,水平轉臺傳動比1:180,角位轉臺傳動比1:352),那么換算過來俯仰、水平、角位的最小分辨率分別為0.000977、0.000488和0.00
5、0250。絕對值編碼器輸出的脈沖信號采用同步串行接口(SynchronousSerialInterface,簡稱SSI接口),SSI接口是高精度絕對值角度編碼器中一種較常用的接口方式,基于RS422的通信技術,包含一對時鐘信號及一對數(shù)據(jù)輸出信號,采用主機主動式讀出方式,即在主控者發(fā)出的時鐘脈沖的控制下,從最高有效位(MSB)開始同步傳輸,如圖5所示。
1.4RS422通信模塊和電源模塊RS422通信模塊采用TEXASINSTRUMENTS公司生產的DS26LV31AT和DS26LV32AT,分別把FPGA發(fā)送、接收信號轉化成差分信號,通過TXEN和RXEN可以對發(fā)送接收使能控制,再將RS42
6、2通過轉換器轉為RS232協(xié)議與上位機通信。所需的時鐘、使能和輸出使能信號均由FPGA提供。系統(tǒng)電源部分,主要包括28V、3.3V和1.5V。其中28V為系統(tǒng)直流輸入電源,為外部的電機和編碼器供電;3.3V通過DC/DC轉化得到,為FPGA供電,并與28V電源完全隔離;1.5V由3.3V通過三端穩(wěn)壓芯片產生,為FPGA內核供電。為了防止前端大功率電路影響到后端的控制和信號傳輸部分,將28V電源隔離與后端隔離,28V采用一次地,3.3V和1.5V共用二次地,電路如圖7所示。
2FPGA邏輯設計
本系統(tǒng)的FPGA程序使用硬件描述語言VerilogHDL編寫,F(xiàn)PGA程序工作流程圖如下圖所示。轉
7、臺的3個方向依次運動到設定的位置,當達到指定位置時電機停止,然后轉動下一個方向的電機直到轉臺的3個方向設定完畢,然后就可控制發(fā)射激光打向預定的位置。當監(jiān)控實驗結束后,轉臺用相同的方法,回轉到初始位置。FPGA的功能模塊主要包括422串行通信和電機閉環(huán)控制。
2.1422串行通信RS422負責與上層工控機通信,接收上位機的控制指令,發(fā)送轉臺的狀態(tài)參數(shù)、工程參數(shù),實現(xiàn)信息互通。RS422異步串行接口的波特率為115.2kbps,其頻率由系統(tǒng)時鐘16.384MHz經過計數(shù)器分頻得到,數(shù)據(jù)幀格式由1位起始位、8位數(shù)據(jù)位、1位校驗位(奇校驗)和1位停止位構成。串行通信模塊可分為發(fā)送子模塊和接收子模塊,
8、均由狀態(tài)機實現(xiàn)。發(fā)送子模塊,F(xiàn)PGA按照軟件配置的數(shù)據(jù)包發(fā)送間隔,將內部寄存器按地址順序依次組包發(fā)送;接收子模塊,首先對輸入的數(shù)據(jù)進行3取2處理,處理后的串行數(shù)據(jù)按照RS422鏈路層協(xié)議進行串并轉換,解析出有效數(shù)據(jù)的同時完成數(shù)據(jù)的奇校驗,并寫入寄存器接口模塊。如果校驗結果不正確,則錯計數(shù)寄存器計數(shù),進行錯誤統(tǒng)計。
2.2電機閉環(huán)控制該模塊負責對3臺電機的分時控制,根據(jù)配置的參數(shù)選擇對應電機工作,產生控制電機運行的驅動信號,控制電機以一定速度運轉至預定位置。為了保證轉臺控制系統(tǒng)的功率不至于太高,控制的3臺電機使能信號互斥,通過使能信號依次選擇啟動某一個電機運轉,結束一次運行過程后,再切換至下一
9、個電機。通用驅動控制FPGA根據(jù)上位機設定的角度預先配置電機閉環(huán)行程設置寄存器,電機開始運行,當電機閉環(huán)行程輸出寄存器與閉環(huán)行程設置寄存器一致時,則表示本次設置的轉動結束,反饋電機運行狀態(tài)標志位。
3實驗結果
本系統(tǒng)硬件原理圖和PCB均采用Cadence軟件繪制,F(xiàn)PGA開發(fā)環(huán)境為Libero,綜合工具為SynplifyPro,仿真工具采用ModelSim。制板、程序調通后,并配合相應的上位機及通過網絡連接的遠端控制機,測試轉臺精度是否滿足設計要求。將激光打到距離激光發(fā)射器3m遠處的墻上,通過設定轉臺3個坐標值,并用坐標紙做標記,轉臺歸零重啟后,重新打到預先標記的點,定位點基本重合,誤差在
10、0.5mm以內,對于3m的距離,也就是4結論
文中設計了一種基于FPGA和A3977的精密激光轉臺控制系統(tǒng),能夠很好地滿足高海拔宇宙線觀測站的惡劣環(huán)境,具有非常高的轉臺定位精度,為觀測站多個探測器監(jiān)控大氣狀況實驗時,提供了非??煽俊⒅貜托哉`差極小的穩(wěn)定光源,為大氣監(jiān)控提供保障,從而大大提高了宇宙射線信息重建的準確性。
作者:葉蔚然孫志斌耿寶明單位:中國科學院空間科學與應用研究中心中國科學院大學
上一個文章: 機電設備備件需求預測下一個文章: HDLC協(xié)議IP核的設計