性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

【工程師6】+實踐類+電動自行車BLDC無刷電機控制保護的模擬仿真

感謝電源網(wǎng)給我們提供這樣一個平臺,下面介紹一下電動自行車BLDC無刷電機控制保護的模擬仿真系統(tǒng)主要設計要求

主要指標:

1.對于無刷直流電機進行實物仿真搭建并通過模擬控制器采集主要參數(shù)信息

2.模擬控制器能夠?qū)?shù)據(jù)傳輸出去并在主控面板上實時顯示

3.主控制器和模擬控制可以進行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸模式不限

4.主控制模塊實現(xiàn)對采樣數(shù)據(jù)的處理并顯示

5.當電動自行車電機失壓、負載過輕、超額定轉(zhuǎn)速后控制器執(zhí)行相應動作并讓模擬器執(zhí)行相應機構(gòu)

下附原理圖

AD

控制

全部回復(28)
正序查看
倒序查看
薄浩楠
LV.5
2
2019-08-27 23:54

本次設計在電動自行車bldc直流電機的控制的基礎上,主要利用BLDC無刷直流電機建立對電動自行車電機的仿真;通過各類傳感器、信號調(diào)理電路以及AD轉(zhuǎn)換電路等將采集量轉(zhuǎn)換成數(shù)字量并送至模擬控制器中;模擬控制器將采集量記錄并保存在EEPROM中并通過異步串口協(xié)議將采集量傳輸至終端控制器中;終端控制器處理模擬調(diào)節(jié)器發(fā)來的信息并下達保護控制信號,完成對發(fā)電機的控制檢測顯示和保護。

搭建模型如圖所示

1
回復
薄浩楠
LV.5
3
2019-08-27 23:55
@薄浩楠
本次設計在電動自行車bldc直流電機的控制的基礎上,主要利用BLDC無刷直流電機建立對電動自行車電機的仿真;通過各類傳感器、信號調(diào)理電路以及AD轉(zhuǎn)換電路等將采集量轉(zhuǎn)換成數(shù)字量并送至模擬控制器中;模擬控制器將采集量記錄并保存在EEPROM中并通過異步串口協(xié)議將采集量傳輸至終端控制器中;終端控制器處理模擬調(diào)節(jié)器發(fā)來的信息并下達保護控制信號,完成對發(fā)電機的控制檢測顯示和保護。搭建模型如圖所示[圖片]

為保障電動自行車電機性能的實時監(jiān)測與維護,因此搭建模擬電動自行車的BLDC電機,模擬電動自行車電機模型如下圖所示。

0
回復
薄浩楠
LV.5
4
2019-08-27 23:55
@薄浩楠
為保障電動自行車電機性能的實時監(jiān)測與維護,因此搭建模擬電動自行車的BLDC電機,模擬電動自行車電機模型如下圖所示。[圖片]
型號是A2212航模BLDC無刷電機
0
回復
薄浩楠
LV.5
5
2019-08-27 23:56
@薄浩楠
型號是A2212航模BLDC無刷電機

介紹一下電動自行車無刷直流電機仿真采樣的硬件電路和具體實施方案

1.本系統(tǒng)需要對汽車車載三相發(fā)電機的電壓、電流以及轉(zhuǎn)速進行實時在線采集。針對此系統(tǒng)三相交流電壓的采集,可通過DL-PT202G型電壓互感器將電壓變?yōu)榈蛪嚎蓽y的范圍之內(nèi),將電壓互感器二次側(cè)得到的電壓經(jīng)過整流橋以及電解電容的整流濾波之后輸出一個脈動較小的直流電壓,這個直流電壓由于在0~5V可被STC12C5A60S2單片機AD采樣模塊準確檢測到。

2.針對此系統(tǒng)電流的采樣,采用微電阻壓降放大的間接采樣法,主要原因是因為STC12C5A60S2單片機AD采樣模只識別電壓信號不識別電流等其他類型的信號。其具體做法是在系統(tǒng)主功率回路中串入一個阻值較小的康銅絲或者水泥電阻,在功率電流流向這個阻值較小的電阻時會產(chǎn)生一個微小的壓降,通過類似LM358之類的運算放大器將其電壓放大再送至STC12C5A60S2單片機AD采樣模塊,來實現(xiàn)對系統(tǒng)主回路電流的測量。

3.針對此系統(tǒng)汽車三相交流發(fā)電機的轉(zhuǎn)速測量,在考慮到安裝體積以及其他綜合因素情況之下,本次采集選用電機碼輪以及以LM393為核心的光電門檢測模塊作為檢測發(fā)電機轉(zhuǎn)速的傳感器,通過間接測量光電門測速模塊的下降沿頻率來進一步測出發(fā)電機的轉(zhuǎn)速。

下圖是電壓采樣電路

0
回復
薄浩楠
LV.5
6
2019-08-27 23:57
@薄浩楠
介紹一下電動自行車無刷直流電機仿真采樣的硬件電路和具體實施方案1.本系統(tǒng)需要對汽車車載三相發(fā)電機的電壓、電流以及轉(zhuǎn)速進行實時在線采集。針對此系統(tǒng)三相交流電壓的采集,可通過DL-PT202G型電壓互感器將電壓變?yōu)榈蛪嚎蓽y的范圍之內(nèi),將電壓互感器二次側(cè)得到的電壓經(jīng)過整流橋以及電解電容的整流濾波之后輸出一個脈動較小的直流電壓,這個直流電壓由于在0~5V可被STC12C5A60S2單片機AD采樣模塊準確檢測到。2.針對此系統(tǒng)電流的采樣,采用微電阻壓降放大的間接采樣法,主要原因是因為STC12C5A60S2單片機AD采樣模只識別電壓信號不識別電流等其他類型的信號。其具體做法是在系統(tǒng)主功率回路中串入一個阻值較小的康銅絲或者水泥電阻,在功率電流流向這個阻值較小的電阻時會產(chǎn)生一個微小的壓降,通過類似LM358之類的運算放大器將其電壓放大再送至STC12C5A60S2單片機AD采樣模塊,來實現(xiàn)對系統(tǒng)主回路電流的測量。3.針對此系統(tǒng)汽車三相交流發(fā)電機的轉(zhuǎn)速測量,在考慮到安裝體積以及其他綜合因素情況之下,本次采集選用電機碼輪以及以LM393為核心的光電門檢測模塊作為檢測發(fā)電機轉(zhuǎn)速的傳感器,通過間接測量光電門測速模塊的下降沿頻率來進一步測出發(fā)電機的轉(zhuǎn)速。下圖是電壓采樣電路[圖片]

下圖是電流采樣電路

有in282組成

0
回復
薄浩楠
LV.5
7
2019-08-27 23:59
@薄浩楠
下圖是電流采樣電路有in282組成[圖片]

下圖是測速模塊接線圖

下圖是測速電路

0
回復
薄浩楠
LV.5
8
2019-08-28 00:00
@薄浩楠
下圖是測速模塊接線圖[圖片]下圖是測速電路[圖片]

下圖是測量傳感電路實物

0
回復
薄浩楠
LV.5
9
2019-08-28 00:00
@薄浩楠
下圖是測量傳感電路實物[圖片]

此圖是當時測得電機的兩相波形

0
回復
薄浩楠
LV.5
10
2019-08-28 00:03
@薄浩楠
此圖是當時測得電機的兩相波形[圖片]

總體設計方案介紹

本系統(tǒng)利用DL-PT202G型電壓互感器作為電動自行車電機電壓采樣傳感器,采用碼盤和基于寬電壓比較器LM393的電機測速模塊來實現(xiàn)對電機速度的測量。保護電路采用JQC-3F(T73)5VDC型繼電器作為保護器件。顯示報警電路由液晶顯示屏LCD1604、LED發(fā)光二極管和有源蜂鳴器組成。模擬控制模塊擬采用STC12C5A60S2作為電壓調(diào)節(jié)電路的主控核心芯片并將采樣回來的電機、電壓、電流和速度參數(shù)進行數(shù)字化處理通過異步串口通信發(fā)送給主控制器。主控制電路核心控制芯片采用PIC18F2580單片機,通過PIC18F2580單片機將采樣值進行處理并發(fā)出相應執(zhí)行命令給相應被控元件。由于本系統(tǒng)需要模擬發(fā)電機以及要求負載三相相對對稱的特殊性,現(xiàn)采用A2212無刷直流電機模擬電動自行車電機,通過簡易電子負載電路實現(xiàn)負載的三相對稱要求。

電子負載電路通過三相全橋整流電路和濾波電路將三相交流電壓轉(zhuǎn)化為直流電壓,通過簡易負載電路調(diào)節(jié)一路負載便可實現(xiàn)三相電流的均衡調(diào)節(jié)。

模擬電子負載電路是下圖

下圖是簡易電子負載電路實物圖

0
回復
薄浩楠
LV.5
11
2019-08-28 00:09
@薄浩楠
總體設計方案介紹本系統(tǒng)利用DL-PT202G型電壓互感器作為電動自行車電機電壓采樣傳感器,采用碼盤和基于寬電壓比較器LM393的電機測速模塊來實現(xiàn)對電機速度的測量。保護電路采用JQC-3F(T73)5VDC型繼電器作為保護器件。顯示報警電路由液晶顯示屏LCD1604、LED發(fā)光二極管和有源蜂鳴器組成。模擬控制模塊擬采用STC12C5A60S2作為電壓調(diào)節(jié)電路的主控核心芯片并將采樣回來的電機、電壓、電流和速度參數(shù)進行數(shù)字化處理通過異步串口通信發(fā)送給主控制器。主控制電路核心控制芯片采用PIC18F2580單片機,通過PIC18F2580單片機將采樣值進行處理并發(fā)出相應執(zhí)行命令給相應被控元件。由于本系統(tǒng)需要模擬發(fā)電機以及要求負載三相相對對稱的特殊性,現(xiàn)采用A2212無刷直流電機模擬電動自行車電機,通過簡易電子負載電路實現(xiàn)負載的三相對稱要求。電子負載電路通過三相全橋整流電路和濾波電路將三相交流電壓轉(zhuǎn)化為直流電壓,通過簡易負載電路調(diào)節(jié)一路負載便可實現(xiàn)三相電流的均衡調(diào)節(jié)。模擬電子負載電路是下圖[圖片]下圖是簡易電子負載電路實物圖[圖片]

保護電路是由JQC-3F(T73)5VDC型繼電器作為主要器件構(gòu)成的,繼電器在高壓高功率場合下可起到對控制回路以及單片機之間的隔離和驅(qū)動保護,其在125V交流電壓條件下可承受10A的電流、在240V交流電壓條件下可承受7A的電流,可滿足本次畢業(yè)設計的需求。

下圖保護電路

0
回復
薄浩楠
LV.5
12
2019-08-28 00:09
@薄浩楠
保護電路是由JQC-3F(T73)5VDC型繼電器作為主要器件構(gòu)成的,繼電器在高壓高功率場合下可起到對控制回路以及單片機之間的隔離和驅(qū)動保護,其在125V交流電壓條件下可承受10A的電流、在240V交流電壓條件下可承受7A的電流,可滿足本次畢業(yè)設計的需求。下圖保護電路[圖片]

顯示模塊采用lcd1604,用法和1602類似但是比之前多了倆行

原理圖如下

0
回復
薄浩楠
LV.5
13
2019-08-28 00:10
@薄浩楠
顯示模塊采用lcd1604,用法和1602類似但是比之前多了倆行原理圖如下[圖片]

報警電路采用有源蜂鳴器來作為主要報警器件,有源蜂鳴器配合一個NPN型三極管實現(xiàn)了單片機控制電路與蜂鳴器電路的隔離,等效增大了單片機的驅(qū)動能力。值得一提是單片機I/O接口與三極管基極之間一般需要增設一個1K左右的電阻,否則基極電流過大會影響單片機的正常工作。這主要是由于單片機I/O輸出口灌電流比較弱的原因驅(qū)動不了較大負載,這也是在單片機和有源蜂鳴器之間需要三極管的主要原因。另外在此基礎上加了綠、藍、紅色三路指示燈,所選LED發(fā)光二極管由于通過電流較分別在電小可用單片機直接進行控制。報警電路如圖所示。

0
回復
薄浩楠
LV.5
14
2019-08-28 00:11
@薄浩楠
報警電路采用有源蜂鳴器來作為主要報警器件,有源蜂鳴器配合一個NPN型三極管實現(xiàn)了單片機控制電路與蜂鳴器電路的隔離,等效增大了單片機的驅(qū)動能力。值得一提是單片機I/O接口與三極管基極之間一般需要增設一個1K左右的電阻,否則基極電流過大會影響單片機的正常工作。這主要是由于單片機I/O輸出口灌電流比較弱的原因驅(qū)動不了較大負載,這也是在單片機和有源蜂鳴器之間需要三極管的主要原因。另外在此基礎上加了綠、藍、紅色三路指示燈,所選LED發(fā)光二極管由于通過電流較分別在電小可用單片機直接進行控制。報警電路如圖所示。[圖片]

顯示報警電路實物如下

0
回復
薄浩楠
LV.5
15
2019-08-28 00:12
@薄浩楠
顯示報警電路實物如下[圖片]

掉電儲存模塊

AT24C02作為掉電記憶8端口芯片,有2048bit的記憶容量。其可通過端口A0、A1、A2三個電平狀態(tài)檢測引腳組合成8種地址,可以讓模擬電壓調(diào)節(jié)模塊最大識別8個AT24C02芯片。AT24C02記憶芯片通過IIC總線通信協(xié)議與模擬電壓調(diào)節(jié)器進行同步通信,其供電電源可由系統(tǒng)輔助電源模塊的5V供電。AT24C02外圍電路電路如圖所示。

0
回復
薄浩楠
LV.5
16
2019-08-28 00:14
@薄浩楠
掉電儲存模塊AT24C02作為掉電記憶8端口芯片,有2048bit的記憶容量。其可通過端口A0、A1、A2三個電平狀態(tài)檢測引腳組合成8種地址,可以讓模擬電壓調(diào)節(jié)模塊最大識別8個AT24C02芯片。AT24C02記憶芯片通過IIC總線通信協(xié)議與模擬電壓調(diào)節(jié)器進行同步通信,其供電電源可由系統(tǒng)輔助電源模塊的5V供電。AT24C02外圍電路電路如圖所示。[圖片][圖片]

控制模塊的硬件電路主要是針對通信協(xié)議選定的

STC12C5A60S2采用11.0592mhz晶振。

PIC18F2580采用22.1184mhz晶振

下圖是硬件原理圖

下圖是實物

0
回復
薄浩楠
LV.5
17
2019-08-28 00:15
@薄浩楠
控制模塊的硬件電路主要是針對通信協(xié)議選定的STC12C5A60S2采用11.0592mhz晶振。PIC18F2580采用22.1184mhz晶振下圖是硬件原理圖[圖片][圖片]下圖是實物[圖片]

通信選擇選異步串口通信主要是由于異步串口通信建立過程簡便便于實施

核心:串口通信

串口通信的硬件聯(lián)調(diào),

介于對系統(tǒng)參數(shù)采樣穩(wěn)定的要求,本系統(tǒng)采用9600bps波特率的串口通信速率,最大可傳輸76米的直線距離。硬件需要外接11.0592MHz的外部無源晶振,由于無源晶振需要起振電容,故選30pF的瓷片電容作為起振電容。由于模擬電壓調(diào)節(jié)器內(nèi)部沒有專用波特率生成的寄存器,因此,需要通過軟件算法配置T1定時器和TMOD寄存器。

終端控制器主要是由PIC18F2580單片機組成,由于終端控制器僅有一個異步串口通信接口引腳,因此其終端控制器的工作僅負責對模擬電壓調(diào)節(jié)器的信號進行處理,并控制顯示和發(fā)出控制命令。終端控制器有內(nèi)部自帶的增強型USART模塊,增強型USART的操作主要由三個寄存器控制,分別是傳輸狀態(tài)和控制寄存器、接收狀態(tài)和控制寄存器、波特率控制寄存器。EUSART串口控件將根據(jù)需要自動將引腳從輸入端配置到輸出端。

0
回復
yujunice
LV.5
18
2019-08-28 11:28

對于無刷直流電機進行實物仿真搭建并通過模擬控制器采集主要參數(shù)信息,可提供下嗎?

0
回復
其樂518
LV.2
19
2019-08-28 19:13
我無法評論,只能崇拜,你太棒了
0
回復
薄浩楠
LV.5
20
2019-08-28 23:30
@yujunice
對于無刷直流電機進行實物仿真搭建并通過模擬控制器采集主要參數(shù)信息,可提供下嗎?
好的,等我整理一下馬上發(fā)
0
回復
薄浩楠
LV.5
21
2019-08-30 22:11
@其樂518
我無法評論,只能崇拜,你太棒了[圖片]
謝謝
0
回復
薄浩楠
LV.5
22
2019-08-30 22:15
@薄浩楠
謝謝

對于無刷直流電機進行實物仿真搭建并通過模擬控制器采集主要參數(shù)信息是電壓電流以及轉(zhuǎn)速

0
回復
薄浩楠
LV.5
23
2019-08-30 22:17
@薄浩楠
對于無刷直流電機進行實物仿真搭建并通過模擬控制器采集主要參數(shù)信息是電壓電流以及轉(zhuǎn)速

這是當時對串口數(shù)據(jù)傳輸?shù)恼{(diào)試照片

0
回復
薄浩楠
LV.5
24
2019-08-30 22:21
@薄浩楠
這是當時對串口數(shù)據(jù)傳輸?shù)恼{(diào)試照片[圖片][圖片]

接下來是介紹一下主要軟件設計,主要的軟件流程圖

ad采樣程序

0
回復
薄浩楠
LV.5
25
2019-08-30 22:22
@薄浩楠
接下來是介紹一下主要軟件設計,主要的軟件流程圖ad采樣程序[圖片]

按鍵程序

0
回復
薄浩楠
LV.5
26
2019-08-30 22:22
@薄浩楠
按鍵程序[圖片]

低速報警程序

0
回復
薄浩楠
LV.5
27
2019-08-30 22:23
@薄浩楠
低速報警程序[圖片]

輕載報警程序

0
回復
薄浩楠
LV.5
28
2019-08-30 22:23
@薄浩楠
輕載報警程序[圖片]

串口傳輸程序

0
回復
薄浩楠
LV.5
29
2019-08-30 22:24
@薄浩楠
串口傳輸程序[圖片][圖片]
這是數(shù)據(jù)采樣的程序
#include   
#include 
#include 
#define uint unsigned int
#define uchar unsigned char	  
#define ADC_FLAG      0X10

 #define VCC    220		
uchar code SMGduan[]= {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F,};		//數(shù)碼管位選碼
uchar code SMGwei[] = {0xfe, 0xfd, 0xfb};

unsigned char pdata bufRxd[64];  //接收字節(jié)緩沖區(qū)




/***********************延時函數(shù)*******************************/
void delay(uint z)
{
	uint x,y;
	for(x = z; x > 0; x--)
		for(y = 114; y > 0 ; y--); 		
} 



/************************采用器初始化******************************/
void InitADC(void) 
{
	
	P1M1=0xff;					//1^012開啟高阻態(tài)
	P1M0=0x00;					//其余端口當普通端口使用
	P1ASF=0Xff;					//P^1 DC_V
	ADC_RES=0;
	ADC_CONTR=0X80;	   	//1000 0000	  開電源,最低速
	delay(50);	
}
/**************************采樣函數(shù)******************************/
uint GetADC(uchar ch)
{
	uint result=0;
	ADC_CONTR=0x88|ch;	  		  			//選擇通道	開始AD轉(zhuǎn)換e8 ADC最快,88,ADC最慢
	_nop_();  _nop_();  
	_nop_();  _nop_(); 
	while(!(ADC_CONTR&ADC_FLAG)); 			//查詢ADC_FLOG是否置位1  轉(zhuǎn)換結(jié)束
    ADC_CONTR&=!ADC_FLAG; 		  			//清除ADC中斷標志
	result=ADC_RES;	 						//(ADC_RES<<2)+ADC_RESL		(<<2)+ADC_RESL;
	aa[ss++]=	ADC_RES;
	if(ss==6)ss=2;	
	return(result);
}

/**********************定時器0初始化****************************/
void timer0Init()
{
	EA = 1;	//打開總中斷
	ET0 = 1;//打開定時器0中斷
	TR0 = 1;	 //啟動定時器0
	REN = 1;//允許串口接收
	TMOD |= 0X01; //定時器工作模式1,16位定時模式
	TH0 = 0xED;
	TL0 = 0xFF; //定時5ms
}	



/***********************串口初始化*********************************/
void UARTInit()
{
	EA = 1;	//打開總中斷
	ES = 1; //打開串口中斷
	SM0 = 0;	SM1 = 1;//串口工作方式1,8位UART波特率可變
	
}








void main()//main函數(shù)自身會循環(huán)
{
	InitADC();	  //采樣初始化
	timer0Init();//定時器0初始化
	UARTInit();//串口初始化
	bb=0;
	while(mode)
	{	 
	
		
		}	
    }
	while(mode==0)
	{
		EA=0;	 //關(guān)總中斷
		bb=0;
		while(sw_up==1&sw_down==1&sw_mune0==1&sw_mune1==1&sw_mune2==1)if(mode)break;
		
		if(sw_mune1==0)			aa[9]=4;
		if(sw_mune2==0)			aa[9]=5;
		while(sw_up==0|sw_down==0|sw_mune0==0|sw_mune1==0|sw_mune2==0)if(mode)break;
		if(mode)break;
		else
			EA=1;     //開總中斷
		delay(300);
	}
} 





/****************************串口通信中斷*****************************/
void UART() interrupt 4
{	
	

   				 SBUF=0xff; 
	if(TI)//判斷是否發(fā)送完成
	{
		
		bb++;
	
		if(bb>=10&&aa[9]==0xff)	
		{	bb=0; 	 delay(1000);		   }
	}	
	if(RI==1)//判斷接收是否完成
	{
	  
	  	  int nu;
	 	nu =SBUF	;//讀SBUF,讀出串口接收到的數(shù)據(jù)
		   	   //第0號數(shù)據(jù)不是幀頭,跳過
		switch(nu)
			{
				case 1:{LED2=1;LED1=0;LED0=1;wmq=0;JDQ=0;}break;	 //過壓
				case 2:{LED2=1;LED1=0;LED0=1;wmq=0;JDQ=0;}break;	 //過流
				case 3:{LED2=0;LED1=1;LED0=1;wmq=1;JDQ=1;}break;	 //低速
				case 0:{LED2=1;LED1=1;LED0=0;wmq=1;JDQ=1;}break;	 //正常
			}
		RI = 0;//軟件清零接收標志位
		cc++;														
		if(cc==1)cc=0;
	}
}
0
回復
發(fā)