用 simulink 模擬電機,電機的原理已經了解,但是之前沒用過 simulink 有什麼好的推薦快速上手 simulink 的?


電機的特性方程一般包括:電壓方程、磁鏈方程、轉矩方程和運動方程。若要利用Simulink對電機進行建模,需首先由上述四個特性方程建立電機的數學模型,然後根據數學模型在Simulink平台中搭建電機的模擬模型。

==========================以三相感應電動機為例============================

========================三相感應電動機數學模型============================

三相感應電動機在d-q坐標下的電壓方程如下:

三相感應電動機在d-q坐標下的磁鏈方程如下:

三相感應電動機在d-q坐標下的電磁轉矩方程如下:

三相感應電動機在d-q坐標下的運動方程如下:

由定子電壓方程可得:

上式構成三相感應電動機的定子模型

由轉子電壓方程可得:

上式構成三相感應電動機的轉子模型

由磁鏈方程可得:

上式構成三相感應電動機的磁鏈模型

轉矩方程構成三相感應電動機的轉矩模型

========================三相感應電動機模擬模型============================

在Simulink環境下, 分別建立三相感應電動機的定子模型、轉子模型、磁鏈模型和轉矩模型,然後將四個模型組合起來構成三相感應電動機的模擬模型。

定子模擬模型:

轉子模擬模型:

磁鏈模擬模型:

轉矩模擬模型:

三相感應電動機模擬模型及其封裝:

========================三相感應電動機模型驗證============================

===================================參考文獻============================

屈魯, 謝衛, 張貽旭, 等. 基於 d—q 模型的感應電動機制動模擬及分析[J]. 上海大中型電機, 2012 (2): 35-39.


可以先從看simulink自帶的demo開始,裡面有一些很不錯的例子,可以根據自己的需要看一看有沒有對應的demo可以學習。

同時,也要注意simulink中自帶的一些電機模型在某些特定的情況下是不適用的,比如同步電機模型是傳統的dq模型,內在被建立成了一個電壓控制的電流源模型,這樣就要求外在網路是電壓源性質的。如果你的模擬是一個電流型網路,比如電流型變換器等,這個時候matlab就會出錯。舉這個例子意思是很多內置的模型是有自己的局限的,樓主在模擬過程中應該多多注意。

樓上推薦的教材也不錯,樓主可以研究研究。


我覺得這本書非常管用,把這本書的模型搭一遍,模擬一遍基本就可以了,電機的各種狀態方程都推導一遍,總的來說有電壓,磁鏈,轉矩方程。選取不同的狀態變數搭建不同的電機模型,在不同的坐標系下搭建不同的模型。或者用matlab內部自帶的電機模型,具體表示的量可以參考help文件。而且也許書上是錯的,可以按照自己的想法搭建,收穫更多。特別要注意的可能是電機參數問題,同一套電機參數在matlab模型中和數學建模中所用不同。這個這本書里也寫得很詳細。

總之,不要怕麻煩,全部都推導模擬一遍,慢就是快~


最好的開端應該是Simulink自帶的demo,各種電機的模擬都有。另外有一本書不錯,Dynamic Simulations of Electric Machinery: Using MATLAB/SIMULINK


能用m-file,用公式寫的就盡量別用simulink搭,線太多搭出來自己都看不懂,還特別容易錯。


simulink 裡面的模塊包含了電機本體,svpwm,坐標變換,都有

可以根據電氣小混混的來自己建模,但我覺得既然給好了模塊,就直接用吧

畢竟搭建一個最簡單FOC僅僅是開始的前提,

PID標定,演算法復現,前路還遠著呢,好風憑藉力啊


Simulink 要簡潔, 否則工作量太大。 只留輸入量和輸出量, 中間的狀態方程用MATLAB 函數寫。


可以讀讀孫忠瀟的《simulink模擬及代碼生成技術》或者擼一遍matlab自帶demo


Dynamic Simulations of Electric Machinery: Using MATLAB/SIMULINK ,這本書哪位大神有?可以分享下嗎?謝謝


內面的demo相當不錯,我運動控制系統的課程設計就是直接拿的內面的矢量控制系統的模擬,我老師應該不看知乎吧。


推薦閱讀:

使用simulink代碼生成,硬體底層函數自己寫更好,還是應該直接生成到目標晶元中?
怎樣提高simulink建模能力?
Interpreted matlab function與matlab function兩個模塊區別?

TAG:MATLAB | 電機模擬 | 電機 | simulink | 電機拖動 |