久久久国产精品视频袁燕,99re久久精品国产,亚洲欧美日韩国产综合v,天天躁夜夜躁狠狠久久,激情五月婷婷激情五月婷婷

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

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

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

STM8實(shí)現(xiàn)SPWM.txt

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

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

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

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

目前這么設(shè)計(jì)的 SPWM1 2和它們的反向直接驅(qū)動(dòng)全橋

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

Shutdown Logic懸空時(shí) Shutdown被拉地時(shí)鎖定SPWMx的輸出

Shutdown Logic接地后 Shutdown被拉低時(shí)關(guān)閉輸出 當(dāng)取消下拉時(shí)恢復(fù)輸出

FrequencyDetermine 懸空時(shí) 輸出50Hz正弦波 接地后輸出60Hz正弦波 

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

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

 

未來的:

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

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

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

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

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

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

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

成績確實(shí)受了點(diǎn)影響 不過依舊可以接受

再補(bǔ)充一個(gè) 今天寫的 帶PID的SPWM (2).zip 應(yīng)該能穩(wěn)壓了

 

下面的復(fù)制下來存為Htm就是正弦表計(jì)算軟件!

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

 步數(shù) 

 value="10"> 峰值  

 type="button" size="5" value=" 計(jì)算 "> 結(jié)果 

 

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

SPWM (3).zip

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

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

 

0
回復(fù)
a7702842
LV.1
12
2013-12-23 10:37
單片機(jī)的5v和mos管12v驅(qū)動(dòng)是怎樣轉(zhuǎn)化的?
0
回復(fù)
尤小翠
LV.7
13
2013-12-23 11:08
@a7702842
單片機(jī)的5v和mos管12v驅(qū)動(dòng)是怎樣轉(zhuǎn)化的?

SPWM1 SPWM2等通過光藕隔離驅(qū)動(dòng)全橋 光藕另一側(cè)是15V的mos驅(qū)動(dòng)電壓

單片機(jī)是3.3V的

最新的程序SPWM (4).zip

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

現(xiàn)在程序功能應(yīng)該完善了 可以試試驅(qū)動(dòng)全橋了 這次爭取來個(gè)12V300W逆變 帶短路保護(hù)

 

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

尤老師辛苦了,我們這些菜鳥才有機(jī)會(huì)學(xué)習(xí)軟件

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

不錯(cuò)啊,加精鼓勵(lì)下。

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

程序看過了,提點(diǎn)建議

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

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

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

4、需要加上軟啟動(dòng)部分否則還是挺危險(xiǎn)的。

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

再補(bǔ)充一點(diǎn),建議增加電流采樣通道,硬件驅(qū)動(dòng)剎車的用于保護(hù)危險(xiǎn)的過流信號,比如負(fù)載短路,軟件檢測的電流信號用于控制過載,最好是有幾秒甚至幾分鐘的過載允許范圍

典型設(shè)計(jì)一般是

額定1000w

允許1200到1500w的120秒過載

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

超過1500或者2000w的話立即保護(hù)

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

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

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

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

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

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

PID 部分求指導(dǎo) 這部分窩也覺得程序可能會(huì)有一點(diǎn)問題...

ADC的部分應(yīng)該沒有問題的說

0
回復(fù)
wangshujun
LV.8
27
2014-04-10 13:40
@尤小翠
PID部分求指導(dǎo)這部分窩也覺得程序可能會(huì)有一點(diǎn)問題...ADC的部分應(yīng)該沒有問題的說

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

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

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