基于matlab的步進電機仿真(一)

這里寫目錄標題

  • 環境準備
  • 基礎準備
  • 模型參數
    • 輸入和輸出
  • 仿真原理圖
  • 仿真資源

環境準備

  • MatLab2021b

基礎準備

打開Matlab,在幫助文檔里面搜索step motor,我們這里選擇如下模型
step motor
該模型實現了一個通用的步進電機模型:

  • 可變磁阻步進電機
  • 永磁或混合步進電機

下面我們看下永磁步進電機,其余介紹參考matlab的help文檔
永磁步進電機模型
上圖顯示了永磁 (PM) 或混合步進電機中一相的等效電路:
在該模型中,Ra 和 La 分別代表 A 相繞組的電阻和電感。 由于磁體引入的氣隙值較大,PM 或混合式步進電機的繞組電感可以被認為與轉子位置無關。 電壓源 ea(θ) 表示電機反電動勢 (EMF),它是轉子位置的正弦函數:
ea(θ)=?pψmsin(pθ)dθdte_a(\theta) = -p\psi_msin(p\theta){d\theta\over dt} ea?(θ)=?pψm?sin(pθ)dtdθ?

p 是極對數。 極對數 p 由 p = Nr/2 給出。
ψm 是電機最大磁通量。
注意,在參考位置 (θ = 0),轉子上的北極與 A 軸極完全對齊,以實現 A 相反電動勢的零值。

兩相 PM 或混合式步進電機產生的電磁轉矩等于相電流和磁鐵產生的磁通量相互作用產生的轉矩與轉子凸極產生的制動轉矩的總和.

模型參數

這里以永磁/混合為例進行說明:

參數說明
電機類型選擇永磁/混合(默認)以實現 PM 或混合步進電機
相數選擇 2(默認)或 4 相
繞組電感每相繞組的電感 La,以 H 為單位。默認值為 10e-3。
繞組電阻每相繞組的電阻 Ra,單位為歐姆。默認值為 1.2。
步距角轉子運動的步距角,以度為單位。默認值為 30。
最大磁鏈由磁鐵產生的最大磁鏈 ψm,以 V.s 為單位。默認值為 0.04。
最大定位扭矩最大制動扭矩,Tdm,以 N.m 為單位,由轉子的凸極產生。默認值為 0.02。
總慣量電機和負載的總慣性動量 J,以 kg.m2 為單位。默認值為 1e-4/5。
總粘性摩擦系數電機和負載的總粘性摩擦系數 B,單位為 N.m.s。默認值為 1e-3。
初速度初始旋轉速度,ω0,以 rad/s 為單位。默認值為 0。
初始位置初始轉子位置,Θ0,以度為單位。默認值為 0。
采樣時間(-1 表示繼承)指定步進電機采樣時間,以 s 為單位。指定 –1 以繼承模型中 powergui 模塊的采樣時間。默認值為 –1。

輸入和輸出

TL:機械負載扭矩,單位 N.m TL 在電動機運行時為正,在發電機運行時為負。

SignalDefinitionUnitsSymbol
1PhasevoltageV
2Phasecurrent AIph
3ElectromagnetictorqueN.m
4Rotor speedrad/sw
5Rotor positionradTheta

模塊的 Simulink? 輸出是一個包含五個信號的向量。 您可以使用 Simulink 庫中提供的 Bus Selector 模塊對這些信號進行解復用。

仿真原理圖

在這里插入圖片描述
負載為0時進行仿真:
在這里插入圖片描述
在這里插入圖片描述
增加負載扭矩到8T.m,再次觀察波形:
在這里插入圖片描述

仿真資源

  • 兩線步進電機matlab仿真圖

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/531329.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/531329.shtml
英文地址,請注明出處:http://en.pswp.cn/news/531329.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java自定義類加載器

前言 java反射,最常用的Class.forName()方法。做畢設的時候,接收到代碼字符串,通過 JavaCompiler將代碼字符串生成A.class文件(存放在classpath下,也就是eclipse項目中的bin目錄里),然后通過jav…

常用網址

MDN : 一個不錯的前端學習網站 https://developer.mozilla.org/zh-CN/  https://developer.mozilla.org/en-US/ CodePen 是一個網站前端設計開發平臺,是一個針對網站前端代碼設計的開發工具。 RunJS - 在線編輯、展示、分享、交流你的 JavaScript 代碼 : http://r…

repo介紹(一)

repo簡介 Repo 是我們以 Git 為基礎構建的代碼庫管理工具,可以組織多個倉庫的上傳和下載。它是由一系列的Python腳本組成,封裝了一系列的Git命令,用來統一管理多個Git倉庫 一個大型的項目可能由很多小的倉庫組合而成的,為了方便統一管理各個…

hash長度擴展攻擊

作為一個信息安全的人,打各個學校的CTF比賽是比較重要的! 最近一個朋友發了道題目過來,發現有道題目比較有意思,這里跟大家分享下 這串代碼的大致意思是: 這段代碼首先引入了一個名為"flag.php"的文件&am…

repo介紹(二)

這篇文章來實例操作 安裝repo,參考repo介紹這一節創建repo存放default.xml 的git倉庫 初始化repo,repo init -u https://gitee.com/angerial/repo-test.git 這個時候會在當前目錄生成如下文件 參考repo組成,修改.repo/manifest.xml,這里我的…

springmvc環境搭建以及常見問題解決

1.新建maven工程 a) 打開eclipse,file->new->project->Maven->Maven Project b) 下一步 c) 選擇創建的工程為webapp,下一步 d) 填寫項目的group id和artifact id。一般情況下,group id寫域名的倒序,artifact id…

eclipse build workspace太慢或者 js出錯問題解決

1.js文件錯誤解決辦法 右鍵項目->properties->Builders(注:JavaScript Validator也會引起 build workspace太慢) 2.Eclipse 一直不停 building workspace完美解決總結(來自: http://blog.163.com/shadow_wolf/blog/static/18346909720145279519222…

HttpUrlConnection發送url請求(后臺springmvc)

1.HttpURLConnection發送url請求 public class JavaRequest {private static final String BASE_URL "http://localhost:8080/dsdemo/";public static String userToken null;public static String problemName null;public static String sendPost(String sufUrl…

springmvc+jpa實現分頁的兩種方式

1.工具類 public final class QueryTool {public static PageRequest buildPageRequest(int pageNumber, int pageSize, String sortType){Sort sort null;if("auto".equals(sortType)) {sort new Sort(Direction.DESC, "ctime");} else {sort new Sort…

不使用session,借助redis實現驗證碼

1.首先看一下基本的流程 2.看一下代碼 注:其中用到的一些工具類,可以到我的github上去下載 https://github.com/hjzgg/usually_util/tree/master/utils windows 下的 redis下載 https://github.com/hjzgg/redis 獲取驗證碼的tooken RequestMapping(value…

PS批處理的使用

一、 前言 做開發的時候,最多的時候就是圖片的使用了。有時候圖片的處理都按照同樣的步驟,比如說統一將圖片的大小調整為固定大小,或者統一在所有的圖片的的某個位置上加入文字或者小圖片等等,這時候PS的批處理可以幫你完成這些重…

exe4j的使用

下載:http://download.cnet.com/exe4j/3000-2070_4-144405.html 參考:http://blog.chinaunix.net/uid-25749806-id-4380850.html 注:打包成jar包的一般就是src目錄,其他目錄放到目標文件夾中,目錄結構如下 如何解決exe…

c語言指針和數組的聯系

c語言指針與數組**一、指針與一維數組**1.一維數組的存儲方式2. 對一維數組名的理解3. 數組下標和指針的關系4.一位數組名與取數組首地址的區別**二、指針與二維數組**1.二維數組的存儲方式2.二維數組下標和指針的對應關系例題:懷著忐忑的心情寫了人生第一篇博客......誠惶誠恐…

android模擬器默認位置的修改

1.創建ANDROID_SDK_HOME環境變量,如ANDROID_SDK_HOMED:\eclipse_android\android-sdk 2.在ANDROID_SDK_HOME目錄下,建立.android目錄 3.默認的avd路徑是C:\Users\Administrator\.android, 將里面的內容放入到ANDROID_SDK_HOME中的.android目錄下 4.windo…

python 求出4行5列的二維數組周邊元素之和

題目:求出4行5列的二維數組周邊元素之和 代碼: import random x [[random.randint(1,10)for j in range(5)]for i in range(4)] for item in x:print(item) y [x[0][0],x[0][1],x[0][2],x[0][3],x[0][4],x[1][0],x[1][4],x[2][0],x[2][4],x[3][0],x[3][4]] prin…

android表白app

一、前言 馬上就要520和521了,是不是還有像我一樣的單身狗啊。我就知道有,所以這兩天簡單寫了這個小程序(其實是替別人寫的),雖然我并不會用去騙女孩子(因為最近太忙了,實習完之后要搞畢設&…

c語言:malloc函數的簡介

文章目錄一、為什么需要malloc函數?二、如何使用malloc函數?三、用malloc函數自定義數組長度一、為什么需要malloc函數? 用于解決傳統數組以下缺點。 ①傳統數組的長度必須要事先指定。 ②傳統數組的內存無法手動釋放。 ③傳統數組的長度定義…

webpack+react+es6開發模式

一、前言 實習了兩個月,把在公司用到的前端開發模式做個簡單的整理。公司里前端開發模式webpackreactreduxes6,這里去掉了redux。 webpack, react, redux等學習網址:http://www.cnblogs.com/hujunzheng/p/5405780.html 二、簡單的步驟條組件 …

c語言輸入字符時控制符%c前加空格的原因解釋

文章目錄一、前景知識1、緩沖區2、標準輸入流二、scanf語句的執行1、scanf對于整形%d的輸入2、scanf對于字符%c的輸入在編一個代碼時偶然間發現一個知識盲點…用scanf語句輸入字符時需要在控制符%c前加空格。在解釋相關這個原因前我們需要了解幾個相關知識點。 一、前景知識 1…

git命令分類圖

轉載于:https://www.cnblogs.com/hujunzheng/p/5560826.html