基于TMS32OF2812的振動(dòng)主動(dòng)控制系統設計
1.4 RS232接口
F2812內部有兩個(gè)異步串行接口(SCI),每個(gè)都有收發(fā)緩沖寄存器、收發(fā)移位寄存器和用于接受發(fā)送的16級深度FIFO。接收和發(fā)送的波特率可以編程設定,最高可達64K。系統中F2812需要通過(guò)SCI與主機通信,而F2812外圍接口是3.3VCMOS色平,計算機串口是RS-232電平,故兩者之間需進(jìn)行電平轉換。MAX3232是一款常用的RS-232電平轉換芯片,接口電路如圖5所示。本文引用地址:http://dyxdggzs.com/article/163208.htm
2 軟件設計
DSP控制算法由主程序和中斷服務(wù)子程序兩部分組成,程序流程圖如圖所示。在主程序中,主要是初始化系統控制寄存器、看門(mén)狗、系統時(shí)鐘、GPIO口、中斷向量表和一些外設等,設置ADC的采樣序列、SCI的通信波特率和外部存儲器接口的訪(fǎng)問(wèn)時(shí)序,然后設置計時(shí)器的計時(shí)周期、計數模式和計時(shí)中斷等,進(jìn)入等待計時(shí)中斷狀態(tài)。中斷服務(wù)子程序主要完成以下功能:首先關(guān)中斷,初始化計算變量;接著(zhù)對ADC相應通道的輸入信號進(jìn)行A/D轉換,取出采樣值預處理,運行控制算法計算出控制量,通過(guò)寫(xiě)D/A的通道地址輸出控制量進(jìn)行D/A轉換,最終輸出控制模擬信號驅動(dòng)作動(dòng)器減振;通過(guò)SCI與主機通信,上傳振動(dòng)信號和控制量;最后則對ADC、SCI和計時(shí)器中斷進(jìn)行相關(guān)設置,開(kāi)全局中斷,為下次運行中斷服務(wù)子程序做準備。中斷服務(wù)子程序運行完畢則返回主程序,進(jìn)入等待中斷狀態(tài),等待下一次的計時(shí)中斷,如此循環(huán)往復。
3 總結
本文設計的以TMS320F2812為控制核心的嵌入式振動(dòng)主動(dòng)控制系統,利用F2812內置的A/D模塊可以同時(shí)采集多路振動(dòng)信號,利用MAX547實(shí)現的D/A轉換電路可以輸出8路控制信號,能夠實(shí)現多輸入多輸出的振動(dòng)主動(dòng)控制,貼近工程實(shí)用。利用本系統已經(jīng)對一個(gè)艦船浮筏成功地進(jìn)行了多輸入多輸出振動(dòng)主動(dòng)控制。
評論