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

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

STM8S103F制作正弦波逆變器的研究

本人今天才接觸STM8單片機 不過之前有別的單片機開發(fā)經(jīng)驗 因此上手比較快 現(xiàn)在寫出了正弦波發(fā)生程序 明天搞了AD和PI算法就能做逆變了 慢慢搞

STM8實現(xiàn)SPWM.txt

1和20輸出SPWM波 11輸出50Hz方波

全部回復(49)
正序查看
倒序查看
2013-12-20 09:34

STM8S這個片子,PWM自帶死區(qū)和互補輸出,還能生成中心對稱的PWM。不使用的話,有點暴殄天物喲。

0
回復
a7702842
LV.1
3
2013-12-20 12:58
最好使用內部rc震蕩。不要使用外部晶振。外部晶振受干擾容易復位
0
回復
尤小翠
LV.7
4
2013-12-20 17:58
@a7702842
最好使用內部rc震蕩。不要使用外部晶振。外部晶振受干擾容易復位

目前這么設計的 SPWM1 2和它們的反向直接驅動全橋

Shutdown腳用于實現(xiàn)過流保護超功率保護等功能

Shutdown Logic懸空時 Shutdown被拉地時鎖定SPWMx的輸出

Shutdown Logic接地后 Shutdown被拉低時關閉輸出 當取消下拉時恢復輸出

FrequencyDetermine 懸空時 輸出50Hz正弦波 接地后輸出60Hz正弦波 

這次修改為TIM1產(chǎn)生SPWM波形 而且一次4個單極性波形都產(chǎn)生 帶死區(qū) 直接驅動全橋無壓力

但是為了方便使用還是保留了50Hz Sync即同步方波

 

未來的:

Beep用于連接蜂鳴器 在逆變器發(fā)生故障時(被從Shutdown腳關機或者電池電壓過低等)出聲

OutputFeedback用于反饋輸出電壓 穩(wěn)定輸出電壓

Battert Low用于反饋蓄電池電壓 外部需要電阻分壓 來檢測電瓶欠電 當這個腳電壓低于1V時亮低電壓燈 當?shù)陀?.8V時鎖定逆變器 SPWM.zip

0
回復
2013-12-20 19:26
@尤小翠
目前這么設計的SPWM12和它們的反向直接驅動全橋Shutdown腳用于實現(xiàn)過流保護超功率保護等功能ShutdownLogic懸空時Shutdown被拉地時鎖定SPWMx的輸出ShutdownLogic接地后 Shutdown被拉低時關閉輸出當取消下拉時恢復輸出FrequencyDetermine懸空時輸出50Hz正弦波接地后輸出60Hz正弦波 這次修改為TIM1產(chǎn)生SPWM波形而且一次4個單極性波形都產(chǎn)生帶死區(qū)直接驅動全橋無壓力但是為了方便使用還是保留了50HzSync即同步方波 未來的:Beep用于連接蜂鳴器在逆變器發(fā)生故障時(被從Shutdown腳關機或者電池電壓過低等)出聲OutputFeedback用于反饋輸出電壓穩(wěn)定輸出電壓BattertLow用于反饋蓄電池電壓外部需要電阻分壓來檢測電瓶欠電當這個腳電壓低于1V時亮低電壓燈當?shù)陀?.8V時鎖定逆變器 [圖片]SPWM.zip
不錯,贊一個!這動手能力都趕上許多研究生,翠師傅上大學幾年級了?想我本科時都去體驗生活了,浪費時間??!
0
回復
2013-12-20 19:30
@尤小翠
目前這么設計的SPWM12和它們的反向直接驅動全橋Shutdown腳用于實現(xiàn)過流保護超功率保護等功能ShutdownLogic懸空時Shutdown被拉地時鎖定SPWMx的輸出ShutdownLogic接地后 Shutdown被拉低時關閉輸出當取消下拉時恢復輸出FrequencyDetermine懸空時輸出50Hz正弦波接地后輸出60Hz正弦波 這次修改為TIM1產(chǎn)生SPWM波形而且一次4個單極性波形都產(chǎn)生帶死區(qū)直接驅動全橋無壓力但是為了方便使用還是保留了50HzSync即同步方波 未來的:Beep用于連接蜂鳴器在逆變器發(fā)生故障時(被從Shutdown腳關機或者電池電壓過低等)出聲OutputFeedback用于反饋輸出電壓穩(wěn)定輸出電壓BattertLow用于反饋蓄電池電壓外部需要電阻分壓來檢測電瓶欠電當這個腳電壓低于1V時亮低電壓燈當?shù)陀?.8V時鎖定逆變器 [圖片]SPWM.zip
樓主水平很高!可以加大一點難度,一是嘗試著使用單極性倍頻的調制方式,這可為你單片機處理指令省下不少時間。二是控制可以弄復雜些,最好能弄成電壓電流瞬時雙環(huán)的。
0
回復
尤小翠
LV.7
7
2013-12-20 20:08
@a529096768
不錯,贊一個!這動手能力都趕上許多研究生,翠師傅上大學幾年級了?想我本科時都去體驗生活了,浪費時間??!
窩沒上大學呢 明年才上
0
回復
尤小翠
LV.7
8
2013-12-20 20:10
@a529096768
樓主水平很高!可以加大一點難度,一是嘗試著使用單極性倍頻的調制方式,這可為你單片機處理指令省下不少時間。二是控制可以弄復雜些,最好能弄成電壓電流瞬時雙環(huán)的。

瞬時雙環(huán) 就怕AD速度不夠啊

單極性倍頻那種考慮過 也可以做的

0
回復
2013-12-20 20:31
@尤小翠
窩沒上大學呢明年才上
哦哦,那就更了不得啦,理解力達到了本科水平!我高中時時間用在做題上面了,樓主把時間花在這些地方,對考大學有很大的影響喲!
0
回復
尤小翠
LV.7
10
2013-12-22 18:07
@a529096768
哦哦,那就更了不得啦,理解力達到了本科水平!我高中時時間用在做題上面了,樓主把時間花在這些地方,對考大學有很大的影響喲!

成績確實受了點影響 不過依舊可以接受

再補充一個 今天寫的 帶PID的SPWM (2).zip 應該能穩(wěn)壓了

 

下面的復制下來存為Htm就是正弦表計算軟件!

半波正弦表發(fā)生器

 步數(shù) 

 value="10"> 峰值  

 type="button" size="5" value=" 計算 "> 結果 

 

1
回復
尤小翠
LV.7
11
2013-12-22 21:32
@尤小翠
瞬時雙環(huán)就怕AD速度不夠啊單極性倍頻那種考慮過也可以做的

SPWM (3).zip

又更新了 增加了保護和電池低電壓智能鎖定功能

現(xiàn)在還有兩個IO口空余 不知道增加什么功能好呢

 

0
回復
a7702842
LV.1
12
2013-12-23 10:37
單片機的5v和mos管12v驅動是怎樣轉化的?
0
回復
尤小翠
LV.7
13
2013-12-23 11:08
@a7702842
單片機的5v和mos管12v驅動是怎樣轉化的?

SPWM1 SPWM2等通過光藕隔離驅動全橋 光藕另一側是15V的mos驅動電壓

單片機是3.3V的

最新的程序SPWM (4).zip

增加1個Disable PID腳 接地時輸出的正弦波的峰值從0-100%隨著Output Feedback(0-單片機供電電壓 通常3.3V) 變化 用于內部PID穩(wěn)壓無法滿足需求時 外接運放實現(xiàn)穩(wěn)壓

現(xiàn)在程序功能應該完善了 可以試試驅動全橋了 這次爭取來個12V300W逆變 帶短路保護

 

0
回復
zhangjunhai
LV.6
14
2013-12-23 21:43
@尤小翠
SPWM1SPWM2等通過光藕隔離驅動全橋光藕另一側是15V的mos驅動電壓單片機是3.3V的最新的程序SPWM(4).zip[圖片]增加1個DisablePID腳接地時輸出的正弦波的峰值從0-100%隨著OutputFeedback(0-單片機供電電壓通常3.3V)變化用于內部PID穩(wěn)壓無法滿足需求時外接運放實現(xiàn)穩(wěn)壓現(xiàn)在程序功能應該完善了可以試試驅動全橋了這次爭取來個12V300W逆變帶短路保護 

尤老師辛苦了,我們這些菜鳥才有機會學習軟件

0
回復
2014-03-05 12:50
我最近也想用STM8做款300-500W的SPWM逆變器嗎,STM8的抗干擾怎么樣?
0
回復
2014-03-05 20:56

不錯啊,加精鼓勵下。

0
回復
shinesz
LV.4
17
2014-03-07 11:01
@尤小翠
SPWM1SPWM2等通過光藕隔離驅動全橋光藕另一側是15V的mos驅動電壓單片機是3.3V的最新的程序SPWM(4).zip[圖片]增加1個DisablePID腳接地時輸出的正弦波的峰值從0-100%隨著OutputFeedback(0-單片機供電電壓通常3.3V)變化用于內部PID穩(wěn)壓無法滿足需求時外接運放實現(xiàn)穩(wěn)壓現(xiàn)在程序功能應該完善了可以試試驅動全橋了這次爭取來個12V300W逆變帶短路保護 
一個高中生有如此能力,佩服。STM8我也在用,性價比很高。
0
回復
wwpwwp20088
LV.5
18
2014-03-10 13:53
最近也在學STM8,請教下COSMIC里添加頭文件不能用怎么回事,而且你的程序在IAR里不兼容,初學菜鳥,請教!
0
回復
2014-03-11 21:31
@wwpwwp20088
最近也在學STM8,請教下COSMIC里添加頭文件不能用怎么回事,而且你的程序在IAR里不兼容,初學菜鳥,請教!
這是電源網(wǎng)水平最高的SPWM帖子,特來頂一個,不過使用內部RC時鐘據(jù)說不穩(wěn)定,建議還是外接晶振
0
回復
尤小翠
LV.7
20
2014-04-04 15:18
@wwpwwp20088
最近也在學STM8,請教下COSMIC里添加頭文件不能用怎么回事,而且你的程序在IAR里不兼容,初學菜鳥,請教!
窩用STVD寫的程序 和IAR確實不兼容....而且窩沒使用STM8的庫函數(shù)...
0
回復
wangshujun
LV.8
21
2014-04-05 08:55
@世紀逆變
這是電源網(wǎng)水平最高的SPWM帖子,特來頂一個,不過使用內部RC時鐘據(jù)說不穩(wěn)定,建議還是外接晶振
內部rc誤差1%左右,用作一般的逆變足夠了
0
回復
wwpwwp20088
LV.5
22
2014-04-07 12:57
@尤小翠
窩用STVD寫的程序和IAR確實不兼容....而且窩沒使用STM8的庫函數(shù)...
我用STVD來寫,老是提示頭文件錯誤,編譯不了,感覺STVD不能像keil C51一樣頭文件可以隨意添加。。。不過程序我也在IAR里完成了,帶死區(qū)就是好,省了好些電路,但又怕單片機受干擾跑飛讓后級MOS直通。。。糾結好多天后還是感覺硬件加死區(qū)最安全,STM8的死區(qū)功能做前級開環(huán)驅動信號。
0
回復
wangshujun
LV.8
23
2014-04-08 13:54
@尤小翠
SPWM1SPWM2等通過光藕隔離驅動全橋光藕另一側是15V的mos驅動電壓單片機是3.3V的最新的程序SPWM(4).zip[圖片]增加1個DisablePID腳接地時輸出的正弦波的峰值從0-100%隨著OutputFeedback(0-單片機供電電壓通常3.3V)變化用于內部PID穩(wěn)壓無法滿足需求時外接運放實現(xiàn)穩(wěn)壓現(xiàn)在程序功能應該完善了可以試試驅動全橋了這次爭取來個12V300W逆變帶短路保護 

程序看過了,提點建議

1、系統(tǒng)開啟了至少2個定時器中斷,使用了3個定時器,在這樣的系統(tǒng)中中斷沖突導致的延遲必須考慮,建議改成只使用tim1中斷,每次中斷更新下一個占空比,spwm表可以更細一些,比如用20k的載頻,直接用400的spwm表,這個對于stm8來說沒有問題。

2、只用一個定時器的情況下,50hz可以使用軟件計數(shù)來輸出的,不是問題,沒有必要單獨搞一個定時器來做更新

3、你的剎車信號使用了,但是沒看到相應的中斷服務,也就是說剎車中斷只是硬關閉,不恢復的,這個在產(chǎn)品中是有問題的。剎車的恢復一般是延時一段時間后重新啟動。

4、需要加上軟啟動部分否則還是挺危險的。

0
回復
wangshujun
LV.8
24
2014-04-08 14:02
@wangshujun
程序看過了,提點建議1、系統(tǒng)開啟了至少2個定時器中斷,使用了3個定時器,在這樣的系統(tǒng)中中斷沖突導致的延遲必須考慮,建議改成只使用tim1中斷,每次中斷更新下一個占空比,spwm表可以更細一些,比如用20k的載頻,直接用400的spwm表,這個對于stm8來說沒有問題。2、只用一個定時器的情況下,50hz可以使用軟件計數(shù)來輸出的,不是問題,沒有必要單獨搞一個定時器來做更新3、你的剎車信號使用了,但是沒看到相應的中斷服務,也就是說剎車中斷只是硬關閉,不恢復的,這個在產(chǎn)品中是有問題的。剎車的恢復一般是延時一段時間后重新啟動。4、需要加上軟啟動部分否則還是挺危險的。

再補充一點,建議增加電流采樣通道,硬件驅動剎車的用于保護危險的過流信號,比如負載短路,軟件檢測的電流信號用于控制過載,最好是有幾秒甚至幾分鐘的過載允許范圍

典型設計一般是

額定1000w

允許1200到1500w的120秒過載

允許1500w到2000w的3-5秒過載

超過1500或者2000w的話立即保護

一般商用的選前一組參數(shù),工業(yè)的選后一種

一般來說選擇的功率管都能短時間承受100%的過載的,但是散熱系統(tǒng)通常不能容忍持續(xù)過載,否則體積和成本難以接受。所以實用的角度來看加上軟件電流檢測是有必要的,而且用于顯示的話有電流采樣就能顯示功率(視在功率)信息了,對于應用價值相對較大

0
回復
wangshujun
LV.8
25
2014-04-08 14:15
@wangshujun
再補充一點,建議增加電流采樣通道,硬件驅動剎車的用于保護危險的過流信號,比如負載短路,軟件檢測的電流信號用于控制過載,最好是有幾秒甚至幾分鐘的過載允許范圍典型設計一般是額定1000w允許1200到1500w的120秒過載允許1500w到2000w的3-5秒過載超過1500或者2000w的話立即保護一般商用的選前一組參數(shù),工業(yè)的選后一種一般來說選擇的功率管都能短時間承受100%的過載的,但是散熱系統(tǒng)通常不能容忍持續(xù)過載,否則體積和成本難以接受。所以實用的角度來看加上軟件電流檢測是有必要的,而且用于顯示的話有電流采樣就能顯示功率(視在功率)信息了,對于應用價值相對較大

adc采樣結果的反饋和pid計算的系數(shù)都存在問題,另外積分項的最大值也沒有意義,不可能那么大,另外你這個計算出來的pid結果有可能是負數(shù),會導致失控的情況出現(xiàn)。

一般說pid的計算結果是用來進行調整的,也是對調制度進行加操作,并且對調制度上下都要做限制,你當前的調制度出現(xiàn)負數(shù)是不能工作的

0
回復
尤小翠
LV.7
26
2014-04-10 12:21
@wangshujun
adc采樣結果的反饋和pid計算的系數(shù)都存在問題,另外積分項的最大值也沒有意義,不可能那么大,另外你這個計算出來的pid結果有可能是負數(shù),會導致失控的情況出現(xiàn)。一般說pid的計算結果是用來進行調整的,也是對調制度進行加操作,并且對調制度上下都要做限制,你當前的調制度出現(xiàn)負數(shù)是不能工作的

PID 部分求指導 這部分窩也覺得程序可能會有一點問題...

ADC的部分應該沒有問題的說

0
回復
wangshujun
LV.8
27
2014-04-10 13:40
@尤小翠
PID部分求指導這部分窩也覺得程序可能會有一點問題...ADC的部分應該沒有問題的說

你要先換算adc的采樣值到你目標值相同的比例上再做pid,pid要考慮輸入,計算過程,和輸出來制定相關系數(shù)

對于逆變器來說一般做pi就好了

0
回復
2014-04-11 13:32
@wwpwwp20088
我用STVD來寫,老是提示頭文件錯誤,編譯不了,感覺STVD不能像keilC51一樣頭文件可以隨意添加。。。不過程序我也在IAR里完成了,帶死區(qū)就是好,省了好些電路,但又怕單片機受干擾跑飛讓后級MOS直通。。。糾結好多天后還是感覺硬件加死區(qū)最安全,STM8的死區(qū)功能做前級開環(huán)驅動信號。
IRA比較好用,
0
回復
尤小翠
LV.7
29
2014-04-11 17:59
@wangshujun
你要先換算adc的采樣值到你目標值相同的比例上再做pid,pid要考慮輸入,計算過程,和輸出來制定相關系數(shù)對于逆變器來說一般做pi就好了
明白咯 謝咯
0
回復
zwcyqxzcx
LV.6
30
2014-12-06 11:48
@尤小翠
窩沒上大學呢明年才上
樓主目前在哪兒上大學?對你好像有所耳聞。
0
回復
aninstone
LV.4
31
2014-12-30 02:40
@尤小翠
成績確實受了點影響不過依舊可以接受再補充一個今天寫的帶PID的SPWM(2).zip應該能穩(wěn)壓了 下面的復制下來存為Htm就是正弦表計算軟件!半波正弦表發(fā)生器 步數(shù)  峰值   結果 functioncalculate(){ varstep=document.form1.step.value; varpeak=document.form1.peak.value; document.form1.result.value="0" for(vart=1;t
有木有實際波形?
0
回復
發(fā)