久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 13981|回復: 13
打印 上一主題 下一主題
收起左側

STM32直流電機電流、速度雙閉環調速控制系統(vb上位機,單片機源碼,視頻)

  [復制鏈接]
跳轉到指定樓層
樓主
這是我大三做的運動控制系統課程設計,對直流電機速度、電流雙閉環pid控制,有程序源碼,還有自己做的上位機,也包括源碼,上位機可顯示速度和電流曲線,并且可以設置速度,里面也有自己的設計文檔,里面也有演示視頻

制作出來的實物圖如下:


拖動系統課程設計報告書

題目: 直流電機速度電流雙閉環控制器設計


任務書
課題名稱

閉環控制的PWM直流調速系統設計與實現

主要任務與
測評要求
隨著社會的發展,各種智能化的產品日益走入尋常百姓家。為了實現產品的便攜性、低成品以及對電源的限制,小型直流電機應用相當廣泛。對直流電機的速度調節,可分為勵磁控制法與電樞電壓控制法兩類。隨著電力電子技術的進步,發展了許多新的電樞電壓控制方法。其中,PWM斬波器進斬波調壓的驅動裝置與傳統晶閘管驅動裝置比較,具有下列優點:需用的大功率可控器件少,線路簡單;調速范圍寬:電流波形系數好,附加損耗。还β室驍蹈。可以廣泛應用于現代直流電機伺服系統中。為抑制負載擾動,同時提高啟動制動性能,閉環控制的PWM直流調速系統成為研究熱點。

一、該同學的主要任務
1、查找文獻,掌握直流電動機PWM調速的基本工作原理;
2、設計直流電動機雙閉環調速系統,建立系統模型并進行仿真試驗;
3、設計并調試基于51單片機的H橋驅動控制電路;
4、設計速度調節器算法,對閉環系統進行負載試驗;

二、功能測評要求
1、能獨立設置電機速度(按鍵設置或滑動變阻器設置或上位機設置);
2、能顯示當前電機的實際速度(單位為:r/min);
3、能控制電機啟動、停止、正反轉、軟啟動和軟制動;
4、給電機加載后,速度能迅速調節回給定值;
5、對電流能進行截止負反饋控制,抑制電流沖擊。

三、提供波形數據:
1、不同速度下的PWM波形;
2、加載后的速度波形;

主要內容

本課題主要研究直流電動機的閉環控制的調壓調速系統,采用PWM調壓控制方案,該同學主要工作是雙閉環調速系統建模與仿真,實際速度閉環PWM調速系統的設計與實現。

基本內容:
1、設計直流電動機雙閉環調速系統總體方案;
2、建立系統數學模型,并設計電流調節器和轉速調節器算法;
3、直流電機的控制電路、驅動電路、保護電路及其檢測電路設計
4、 基于單片機的閉環調速系統軟件程序設計;
5、分別對空載、負載和變給定工況進行調速系統實驗與分析;
6、記錄波形分析數據。


主要參
考資料

一、主要參考文獻
1、電機原理與設計的matlab分析,戴文進,電子工業出版社;
2、電氣傳動的脈寬調制控制技術,吳守,機械工業出版社;
3、電力電子技術,浣喜明,高等教育出版社;
4、電動機的單片機控制,王曉明,北京航空航天出版社;
5、電機與拖動基礎,李發海,清華大學出版社;


計劃進度:

序號
內容
1
任務布置與介紹
2
系統總體方案設計
3
雙閉環直流PWM調速系統建模
4
仿真調試與分析
5
硬件電路設計
6
硬件平臺搭建與調試
7
軟件程序設計
8
軟件硬件聯合調試
9
撰寫課程設計報告
10
答辯
實習地點

15-212

指導教師
簽    名


年   月   日



一、       雙閉環調速系統1.1雙閉環調速系統概述

在許多場合,為了充分發揮生產機械的效能,提高生產率,速度控制系統經常處于起動、制動、反轉以及突加負載等過渡過程中,所以要求速度控制系統有較好的動態性能。

對高性能、靜態的速度控制系統的要求是具有快速跟隨特性(起制性)、較好的抗干擾性和高可可靠性(可瞬態過載但不過流)。因此引入了轉速、電流雙閉環調速系統。

轉速負反饋和比例積分調節器的單閉環調速系統能夠保證系統在穩定的條件下實現轉速無靜差調節。但是該控制系統也有自身的缺點,比如要求快速啟動、突加負載動態速降等。

這種單閉環系統就難以滿足要求,這是因為在單閉環調速系統中尚不能按要求來控制動態過程的電流和轉速。為解決這一矛盾,電流截止負反饋環節,它與轉速負反饋調速系統結合在一起,可以專門用來控制電流,從工作原理上分析,它只能是在超過臨界電流值以后,才能靠強烈的負反饋作用限制電流的沖擊,由于電流截止負反饋只能限制最大電流,電機轉矩也隨著電流減小而下降,使啟動加速過程變慢,啟動的時間也比較長,帶電流截止負反饋單閉環調速系統。為了能夠實現在允許條件下最快啟動,依照反饋控制規律,驗證與實踐,采用轉速、電流雙閉環調速系統就能達到上述要求。

1.2雙閉環調速系統電路原理

如下圖為轉速、電流的雙閉環調速系統的原理圖。圖中兩個調節器ASR和ACR分別為轉速調節器和電流調節器,二者串級連接,即把轉速調節器的輸出作為電流調節器的輸入,在用電流調節器的輸出去控制晶閘管整流器的觸發裝置。電流環在內,稱之為內環;轉速環在外,稱之為外環。

兩個調節器輸出都帶有限幅,ASR的輸出限幅Uim決定了電流調節器ACR的給定電壓最大值Uim,對就電機的最大電流,電流調節器ACR輸出限幅電壓Ucm限制了整流器輸出最大電壓值,限最小觸發角a。

雙閉環調速系統電路原理圖

1.3雙閉環調速系統動態結構圖

雙閉環調速系統的動態結構如下圖所示,電流采樣模塊采用2歐姆的碳膜電阻,根據驅動的設計我們把碳膜電阻加在MOS管和GND相連的地方,因為電流不管換向與否碳膜電阻采樣到的電流方向不變,所以給ADC采樣帶來了極大的方便,而且碳膜電阻功率比較大,當電機堵轉導致電流比較大的時候不至于燒壞。

由編碼器得到電機的轉速,,通過編碼器反饋脈沖信號,本次采用的編碼器精度為344,電機轉一圈產生344個脈沖。

雙閉環調速系統的動態結構圖

1.4雙閉環算法結構實現

本次課程設計算法的實現分為如下幾個部分ADC采樣實現,中斷脈沖計數,定時器計算速度,定時器產生兩路PWM,通過這兩路PWM占空比的差值調節電機的轉速,一個串級PI調節器。

ADC采樣開了一路采樣,設置ARM采樣轉化時間為1微秒,設置PWM周期為5ms為了減小電流波動帶來的采樣誤差我采集到10000個數字電壓然后計算平均電壓,采集到10000個點正好是兩個PWM周期,計算值有效而且響應快速。中斷系統配置成上升沿觸發,當來一次脈沖count會加1,開啟另外一個定時器50ms獲取一次count的值,然后求的這50ms電機的轉速,及時與設定速度調節,計算速度誤差通過PI調節器調節速度和電流雙閉環,PI調節器采用位置式寫法,位置式PI需要注意的地方是一個積分飽和,如果不設定積分限制PI調節器會跑飛,帶來很大的問題,外環PI調節器的積分限制我采用分級控制的方式,當速度誤差大于500時設定積分限制為電機堵轉時能夠達到的最大電流積分限制設置為8000,根據pi參數計算的得出,當速度誤差大于300時設定積分限制為5000,當速度誤差小于300時,設定積分限制為2000最小,計算得到PID值為速度穩定是的ADC的值,這樣設計的好處就是不但能減小系統的超調量而且能夠加速系統的響應時間。


二、轉速、電流雙閉環調速系統電氣設計2.1驅動電路設計

驅動電路的設計采用雙路PWM,采用MOS管搭建H橋,采用2104芯片,芯片的IN端輸入高電平時HO輸出端輸出高端平,左上角的MOS管導通,LO端輸出低電平左下角MOS管關斷,上下MOS管導通和關斷夠成互補,當芯片IN端輸入低電平輸出電平相反MOS管的導通關斷相反。

驅動電路

2.2過流保護電路設計

過流保護的電路設計如下圖所示,過流保護電路的功能當電機兩端短路時繼電器斷開,電路斷開不供電。當電機堵轉時繼電器也斷開。過流保護電路設計如下:本電路設計的主要核心元件是比較器、555定時器、繼電器。比較器的正向輸入端設置一個比較電壓,反向輸入端輸入采樣電阻得到的電壓,如果電機堵轉或者電機兩端短路會導致采樣電阻的電壓值變得很大,反向輸入電壓大于正向輸入電壓比較器輸出低電平,555定時輸出高電平,繼電器采用常閉型當為高電平時繼電器斷開。通過電阻和電容的值設定555定時器的輸出高電平時間。

2.3上位機控制系統設計

上位機的設計主要是為了顯示速度和電流的變化曲線,藍色線為實時速度的顯示,紅色線是設定速度的曲線顯示,黑色線是電流變化的曲線,本次電流的值用ADC的值統一表示,本上位機的功能涵蓋了所有電機控制的功能,可以通過上位機控制電機的正轉、反轉、和停止。基本的功能,同時還可以加速減速,每次按鍵加速或者減速10r,設定速度標度窗口輸入所要標定的速度然后點擊設置按鈕,紅色曲線便可按照設置的數值顯示曲線,上面還有兩個顯示速度和電流具體數值的窗口。


stm32單片機源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "key.h"
  4. #include "sys.h"
  5. #include "usart.h"
  6. #include "timer.h"
  7. #include "UserConfiguration.h"
  8. #include "UserFunction.h"
  9. #include "lcd.h"
  10. #include "exti.h"
  11. #include "adc.h"
  12. #include "PID_Current.h"
  13. //PWM輸出實驗  
  14.         
  15. u32 spd_now=0;
  16. u32 set_spd=3300,set_vol=300,PwmOne_Set,adcx;
  17. float av;

  18. enum
  19. {
  20.         flag_add,flag_minus,flag
  21. }FLAG_SPEED;
  22. enum
  23. {
  24.         flag_zheng,flag_fan,flag_stop
  25. }FLAG_DIR;

  26. int main(void)
  27. {               
  28. //        u8 i=0,key;
  29.          
  30.         delay_init();                     //延時函數初始化         
  31.         KEY_Init();
  32.         NVIC_Configuration();          //設置NVIC中斷分組2:2位搶占優先級,2位響應優先級
  33.         uart_init(9600);         //串口初始化為9600
  34.          LED_Init();                             //LED端口初始化
  35.         Adc_Init();                                  //ADC初始化            
  36.          TIM1_PWM_Init(4999,71);         
  37.         
  38.         EXTIX_Init();
  39.         LCD_Init();
  40.          
  41.         POINT_COLOR=RED;
  42.         TIM3_Int_Init(9999,719);
  43.                         
  44.         FLAG_DIR=flag_zheng;   //開始是正轉
  45.         FLAG_SPEED=flag;
  46.         while(1)
  47.   {   
  48.                  
  49.         
  50.         
  51.                        
  52.           //  UserPIDCurrentControl(set_vol) ;
  53.                 av=adcx*3.3/4096;
  54.                 LCD_ShowxNum(130,100,spd_now,8,16,0);    //nowspd;時時速度
  55.                 LCD_ShowxNum(130,130,set_spd,8,16,0);    //設定速度
  56.                 LCD_ShowxNum(130,160,3600,8,16,0);    //電機最大速度
  57.                 LCD_ShowxNum(130,190,adcx,8,16,0);           
  58.                 LCD_ShowxNum(130,230,av*1000,8,16,0);
  59.                 LCD_ShowxNum(130,250,PwmOne_Set,8,16,0);
  60.                 LCD_ShowString(50,160,100,12,16,"Max_Speed:");         
  61.                 LCD_ShowString(50,100,100,12,16,"Now_Speed:");
  62.                 LCD_ShowString(50,130,100,12,16,"Set_Speed:");        
  63.                 LCD_ShowString(50,190,100,12,16,"ADC:");        
  64.                 LCD_ShowString(50,230,100,12,16,"Voltage:");        
  65.                 adcx=Get_Adc_Average(ADC_Channel_2,10000);
  66.                  //按鍵設置標量速度
  67.                  
  68.                  if(FLAG_SPEED==flag_add)
  69.                         {
  70.                                 FLAG_SPEED=flag;
  71.                                 set_spd+=10;    //加速
  72.                         }
  73.                         else if(FLAG_SPEED==flag_minus)
  74.                         {
  75.                                 FLAG_SPEED=flag;
  76.                                 set_spd-=10;    //減速
  77.                         }
  78.                         if(set_spd>=3600)
  79.                         {
  80.                                 set_spd=3600;
  81.                         }
  82.                         if(set_spd<=0)
  83.                         {
  84.                                 set_spd=0;
  85.                         }
  86.                

  87.         }

  88. }

復制代碼
vb上位機源碼如下:

所有資料51hei提供下載:
直流電機雙閉環控制-.rar (11 MB, 下載次數: 360)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏11 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:104779 發表于 2018-8-26 12:26 | 只看該作者
為何下載后解壓不了????提示無壓縮文件
回復

使用道具 舉報

板凳
ID:337376 發表于 2018-8-26 19:39 | 只看該作者
謝謝分享&#128516;
回復

使用道具 舉報

地板
ID:236898 發表于 2018-10-20 14:23 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:424022 發表于 2018-11-10 12:53 | 只看該作者
學習學習
回復

使用道具 舉報

6#
ID:242969 發表于 2018-12-18 11:58 | 只看該作者

學習學習
回復

使用道具 舉報

7#
ID:478002 發表于 2019-2-19 10:22 | 只看該作者
感謝大神,學習一波
回復

使用道具 舉報

8#
ID:383300 發表于 2019-4-3 14:12 | 只看該作者
謝謝分享
回復

使用道具 舉報

9#
ID:502029 發表于 2019-4-3 22:35 | 只看該作者
為什么下載后只要一個vb文件
回復

使用道具 舉報

10#
ID:383300 發表于 2019-4-18 15:02 | 只看該作者

可以分享一下嗎
回復

使用道具 舉報

11#
ID:371737 發表于 2019-6-30 12:12 | 只看該作者
學習學習
回復

使用道具 舉報

12#
ID:282095 發表于 2019-6-30 13:39 | 只看該作者
資源不錯
回復

使用道具 舉報

13#
ID:482316 發表于 2019-9-25 11:40 | 只看該作者
感謝樓主分享
回復

使用道具 舉報

14#
ID:366517 發表于 2020-3-23 20:34 | 只看該作者
我想問一下用的是哪一款驅動芯片啊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩欧美在线视频观看 | 久久香蕉精品视频 | 久久精品国产99国产精品 | 国产成人久久精品一区二区三区 | 久久国产一区二区 | 久久久久se | 五月天婷婷丁香 | 中文字幕乱码一区二区三区 | 国产在线一区二区三区 | 久久久久无码国产精品一区 | 欧美中文字幕一区二区三区亚洲 | 日韩精品一区二区三区中文字幕 | 一级黄色片日本 | 国产精品国产a | 中文字幕亚洲一区二区三区 | 欧美日一区| 91新视频| 高清一区二区三区 | 免费观看色 | 97色在线视频 | 91精品国产91 | 人人澡视频 | a级片在线观看 | 国产精品久久久久久影视 | 在线电影日韩 | 欧美区日韩区 | 欧美日韩在线视频一区二区 | 做a视频| 久久久久精| 青青草综合| 欧美在线二区 | 国产一区二区黑人欧美xxxx | 亚洲福利在线观看 | 精品亚洲一区二区三区 | 日韩高清国产一区在线 | 精品日韩一区二区 | 最近中文字幕在线视频1 | 亚洲国产精品一区在线观看 | 国产精品久久久久一区二区三区 | 色一级片| 亚洲视频www |