電機控制的小結
4 人贊了文章
有些東西初看時覺得理解了,再看時卻又發現了另一片天地。
進入研究生階段兩年,跟隨導師做項目也做了兩個,一橫一縱,並且基本都是作為技術骨幹去做,自己負責其中一部分的所有工作,對自己的能力提高還是大有裨益的。這幾天處在中期檢查的階段,自己突然一時興起想總結一下自己兩年的所學,既算是自己兩年的小結,也希望留作一份記錄,希望以後再看時能有更深的理解。
電機控制的結構框圖如圖1所示。一個電機系統包括四個大部分:被控對象、控制器、執行器、反饋,硬體上分別對應電機、MCU、驅動電路、信號調理電路,這樣就構成了一套反饋控制系統。
一套電機系統的完成主要包括以下兩個方面:硬體電路的搭建以及控制演算法的實現。硬體電路組成如圖2所示,一套電機系統硬體主要包括:MCU、功率器件(MOSFET/IGBT)、驅動電路、信號調理電路、保護電路。控制理論的組成如圖3所示,主要是電機理論與控制演算法,其中電機理論的學習讓我們知道控制對象的外特性,而控制演算法主要實現怎麼控制好電機這個被控對象。
下面分別講一下自己對於硬體電路選型和控制演算法的理解。
硬體電路器件選型
- MCU
MCU就是微控制器,是電機系統實現自動控制的「中樞大腦」,大腦里其中包含了最精華的控制演算法的實現。目前控制器大概分四大類:單片機、ARM、DSP、FPGA。
1.1 單片機
單片機適用的場合私以為是一些演算法簡單、成本低廉或者某些專用場合。比如4位的用於鐘錶之類。以前由於微機課程的原因,對單片機的了解僅僅局限於8051,現在才知道8位的或者16位的單片機依舊市場廣泛。以項目中用到的STM8和S12ZVM為例,一個ST公司8位的或者16位的單片機足夠滿足汽車某一方面的電機控制需求,甚至能夠將晶元電源、微控制器、MOSFET預驅動、LIN/CAN/PWM通信集於一身,功能足夠滿足項目要求。
1.2 ARM
ARM目前沒用過做主控晶元,只聽說過ST公司的STM32F103和F407,對於ARM和DSP的區別我還是認同網上以為DSP培訓工程師的說法:ARM介面資源多一些,方便做一些展示型的東西,比如顯示屏之類的,如果要做控制,還是DSP專業一些。
1.3 DSP
DSP得益於TI公司強大的實力以及各種針對中國的大學計劃、培訓課程之類,是電機控制器的首要之選。各種常式、教學資源網上都可以找得到,在此不多贅述。
1.4 FPGA
FPGA並行運算、硬體實現,具有進行大規模矩陣運算的優勢。不過根據自己的經驗,用FPGA寫演算法還是比較難做,因為沒有那麼多的庫可以用,寫到最後連最基礎的功能都需要自己去寫,著實難寫,不過也可能是自己水平有限,沒有找到合適的途徑。
對於目前FPGA的發展,我覺得DSP+FPGA是一條不錯的道路,DSP做主控晶元,FPGA做協處理器,將FPGA掛在DSP匯流排上,適合FPGA的運算交給它去處理,然後讀回來進行處理。目前XILINX和Intera(Altera)公司好像都在按照這個思路去做。當然還有一些比如SOPC、高級語言編程、MATLAB轉化HDL的思路。目前覺得FPGA還是不太適合作為主控晶元,需要看兩大公司發展思路。
1.5 選型
在進行MCU選型的時候,我覺得主要要考慮以下幾個因素:主頻、內部資源、成本、實際項目需求等。
主頻決定了MCU能夠以多快的速度運行,是非常重要的一點;
內部資源要保證功能能夠實現;
成本問題也要注意,這是做了橫向項目之後才有的感受。以前做縱向,作為學生雖然知道成本問題,但是還是不敏感,花錢難免大手大腳,留的裕量沒有5倍也有3倍,總覺得MCU有什麼可選的,DSP都可以解決,但是DSP一片28335裸片90塊,可能佔掉了絕大部分成本要求,屬於浪費。
實際項目需求上,選型時要考慮不同器件的特點。比如,DSP屬於通用器件,資源多,功能強大。但是這也說明一件事:資源多歸多,可是對哪一方面也可能不是最精的,如果需要某一方面還是要去找一些專用晶元,不能上來就是DSP,汽車級晶元還是NXP、Infineon更專業。
2. MOSFET
MOSFET主要就兩類IGBT和MOSFET,選型網上有很多資料,我覺得最主要的參數就是:耐壓、耐受電路、開關頻率。
關於IGBT和MOSFET的區別我還是想再敲一遍,加深自己的印象:
IGBT耐壓高於MOSFET;MOSFET耐流高於IGBT;IGBT功率大於MOSFET,電壓電流都可以,一個缺點就是開關頻率不如MOSFET,100KHz就不錯了,而MOSFET可以做到上百MHz。
所以一般的選型低壓、高速電機、成本低時用MOSFET,高壓、大功率用IGBT。
3、驅動電路
驅動電路的功率我始終記得杭州飛仕得工程師洪磊說的:驅動的核心功能就是隔離+放大+保護。驅動隔離方案主要分三種:光耦/光纖、脈衝變壓器、磁耦,如圖4所示。目前我使用的主要是脈衝變壓器式,主要是SCALE公司的2SD106以及315還有0108系列,好用是好用,就是一塊300起,燒一塊心疼。驅動電路的設計主要考慮驅動電流和驅動功率能否將功率器件驅動起來,這要看驅動晶元手冊和功率器件手冊中的Qg、Vgs等關鍵參數。
1.4 信號調理電路(Signal Conditioning Circuit)
信號調理電路(signal conditioning circuit)是指把敏感元件檢測到的各種模擬信號變換為用於數據採集、控制過程、執行計算顯示讀出或其他目的的數字信號的電路。其實這是我第一次去注意信號調理的英文名是怎麼翻譯的,還挺有意思的。數字量輸入通道中的信號調理主要包括:消抖、濾波、保護、電平轉換、隔離等。
電機伺服控制主要需要兩種信號,三相電流和轉子位置信號。三相電流需要採用電流感測器或者採樣電阻采採集,然後通過調理電路將輸出至AD的信號調理成0-3.3V(DSP和FPGA的電平)或者0-5V(部分單片機的要求)進行處理。轉子位置信號可以計算出轉子位置和電機轉速,一般通過對電機編碼器信號處理得到。常用的光電碼盤得到的是ABZ信號或者他們的差分,屬於TTL電平信號,直接可以輸給DSP或者差分轉單端電路處理。如果是旋轉變壓器、正餘弦編碼器則需要一塊轉接板來將信號在處理時轉化,轉成TTL電平。轉接板價值不菲,便宜的1000左右,貴的5000-10000左右。
1.5 保護電路
強電側的保護電路:過壓、過流、短路、故障。
以為一會就總結完了,沒想到總結起來如此的費勁,先寫到這裡吧,也基本總結完了硬體的選型。有人看或者自己還想寫,以後就再多寫點。
推薦閱讀: