熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2017-5-6 20:54
正文摘要:求大師指點(diǎn),為什么我這個(gè)電路和程序,燈泡只能在110V--220V直間調(diào)壓(半波),怎么調(diào)試,都不能在0--220V之間調(diào),首先我沒有用MOC3021等元件,我想實(shí)現(xiàn)我現(xiàn)在的電路的功能。是不是單片機(jī)檢測過零的時(shí)候,丟掉了一個(gè) ... |
17年的帖子又挖出來了,這種過零我用過啊,當(dāng)然要用上升沿下降沿都能中斷的芯片才行吧,兩個(gè)電阻串聯(lián),很省錢的。電源是阻容降壓的。 |
就是第二個(gè)半波失控了,才無法調(diào)整到110V以下。 |
這個(gè)帖子很強(qiáng)大,我也受用了。謝謝! |
zl2168 發(fā)表于 2017-5-15 14:00 過零檢測 是不是裝個(gè)光耦可以代替 |
這個(gè)帖子好列害 吸收了很多知識(shí),最近一直在尋找控制交流電機(jī)調(diào)速問題 終于有了頭緒,謝謝 |
zl2168 發(fā)表于 2017-5-15 14:00 你好,能請(qǐng)教你一下嗎,用單片機(jī)IO口,檢測判斷全波與半波的思路? 電路中用的一個(gè)開關(guān)控制,開關(guān)接通時(shí)是全波整流輸出,開關(guān)斷開時(shí)就變?yōu)榘氩ㄕ鬏敵觯鬏敵鼋?jīng)電阻降壓給一個(gè)三極管倒像后再給單片機(jī)端口,請(qǐng)問是否是用過零檢測思路來判斷?那么具體是什么思路呢?因?yàn)檫^零檢測程序我也還沒做過 謝謝能幫忙回復(fù),或者加我Q964565079,如果回復(fù)麻煩的話,麻煩你留個(gè)電話,我打你電話溝通也可以,謝謝 |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
lyf898 發(fā)表于 2017-5-15 08:39 好的!謝謝以上所有的提醒! |
必須有過零檢測 |
周鵬 發(fā)表于 2017-5-13 21:41 問題還是在時(shí)序上,如果可控硅觸發(fā)時(shí)點(diǎn)超前在過零時(shí)就會(huì)斷開,相當(dāng)于此次觸發(fā)失效,自然就會(huì)閃爍,電壓也自然就不達(dá)標(biāo)。要徹底解決問題還得在程序上動(dòng)腦筋 |
lyf898 發(fā)表于 2017-5-13 13:17 #include <STC12C2052AD.H> //用的是STC12系列單片機(jī) #define uchar unsigned char #define uint unsigned int uchar num=0,num1=100; sbit pwm=P1^7; //觸發(fā)三極管控制腳 sbit k1=P3^7; unsigned char i; bit trigger=0; void delay(uint xms) { uint i,j; for(i=xms;i>0;i--) for(j=110;j>0;j--); } void main() { TMOD=0x01; TH0=0xFF;//定時(shí)0.1ms TL0=0x9C; EA=1; //開總中斷 EX0=1; //開外部0中斷 ET0=1; //開定時(shí)器中斷 pwm=0; //初始輸出0,三極管截止,可控硅不導(dǎo)通. k1=1; // TR0=1; // IT0=1;//INT0下降沿觸發(fā) while(1); } void timer0() interrupt 1 { TH0=0xFF; //定時(shí)0.1ms TL0=0x9C; num++; if(num==50) { pwm=1; for(i=0;i<5;i++);//延時(shí)2us pwm=0; } if(num>99) { num=0; } } void ext0() interrupt 0 //過零檢測、外部中斷 { IE0=0; //清楚中斷標(biāo)志位 num=0; TR0=1; } 嗯 原理基本了解,我現(xiàn)在的情況是沒有使用下降沿觸發(fā),燈泡的端電壓只有100V,還有微弱的閃爍感,也能從0-22V調(diào),但是總感覺怪怪的,不像我用TLP521做過零檢測電路,端電壓正好110V,而且還不閃,這是什么原因呢? |
小白路過,幫你頂 |
lyf898 發(fā)表于 2017-5-13 13:42 要是想過零時(shí)刻就觸發(fā)可控硅,就只有改造硬件了,需要增加一個(gè)過零反相脈沖輸出電路,增加一個(gè)三極管反相是最簡單的,不過還是軟件延時(shí)觸發(fā)成本要低一些,電路也更簡潔。 |
前面說的三次也可以改為兩次觸發(fā),只是這樣就應(yīng)該在過零后分別在10MS+移相時(shí)間和20MS+移相時(shí)間觸發(fā)可控硅 |
總體說來,問題是出在過零檢測時(shí)刻并未觸發(fā)可控硅,而是在過零后5MS才觸發(fā)可控硅,而在兩個(gè)過零時(shí)刻可控硅恰好是斷開的,這就造成只能控制一半的原因。修改程序時(shí)序方可解決此問題。 |
周鵬 發(fā)表于 2017-5-8 16:33 串聯(lián)5個(gè)電阻應(yīng)該是電阻的功率太小,串聯(lián)多個(gè)是為了電阻功率過小而過載燒壞,要是功率夠的話一個(gè)電阻即可。只是阻值應(yīng)為串聯(lián)的總阻值而已。 |
周鵬 發(fā)表于 2017-5-8 09:10 根據(jù)你的程序和電路聯(lián)合分析,你的程序根本不是過零觸發(fā),而是正半波峰轉(zhuǎn)谷時(shí)觸發(fā)的,到正半波轉(zhuǎn)負(fù)半波過零時(shí)可控硅是關(guān)斷的,而根據(jù)時(shí)序,10MS時(shí)觸發(fā)是在谷轉(zhuǎn)峰時(shí)第二次觸發(fā),到負(fù)轉(zhuǎn)正時(shí)可控硅又是斷開了的,這就是為什么你的程序只能控制半波的原因。所以,程序的時(shí)序不對(duì)。應(yīng)該改為在第一次觸發(fā)后的5MS時(shí)第二次觸發(fā),15MS時(shí)進(jìn)行第三次觸發(fā),才能得到完整的全波(220V)輸出。 |
參與人數(shù) 1 | 黑幣 +50 | 收起 理由 |
---|---|---|
![]() | + 50 | 回帖助人的獎(jiǎng)勵(lì)! |
周鵬 發(fā)表于 2017-5-8 15:23 其實(shí)在簡單控制方面,不用隔離也是可以的,批量生產(chǎn)可以節(jié)約成本,只是在高壓電連通的時(shí)候調(diào)測時(shí)需要格外小心。 |
周鵬 發(fā)表于 2017-5-8 09:03 既然你這個(gè)電路是成品抄板而來,那電路是肯定沒問題,問題就應(yīng)該出現(xiàn)在程序里了 |
周鵬 發(fā)表于 2017-5-8 16:33 進(jìn)入的是全波,但是單片機(jī)外部觸發(fā)只能是下降沿觸發(fā),正半周才有下降沿,負(fù)半周只有上升沿,而上升沿是不能過零觸發(fā)的,所以就只有正半波下降時(shí)MCU才被觸發(fā),所以你的程序需要作與電路匹配的修改才能實(shí)現(xiàn)你要的結(jié)果。 |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
lyf898 發(fā)表于 2017-5-7 08:20 我那個(gè)過零檢測電路在交流電上串了5個(gè)電阻接在單片機(jī)的INT0口,為什么是半波流進(jìn)單片機(jī),而不是全波,難道單片機(jī)的INT0口內(nèi)部也是個(gè)單向?qū)ǖ亩䴓O管? |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
zl2168 發(fā)表于 2017-5-8 10:00 嗯嗯 你那個(gè)圖我知道 我用過 可以的,沒事,我很小心的在做我現(xiàn)在的這個(gè)實(shí)驗(yàn) --非隔離的~ |
周鵬 發(fā)表于 2017-5-8 09:15 你看我那個(gè)圖10-10 ,就是單片機(jī)移相觸發(fā)控制可控硅。 還有,你那個(gè)非隔離然后穩(wěn)壓是很危險(xiǎn)的呵,不能這樣用的。 |
正弦波過零檢測后延時(shí)觸發(fā)就是移相觸發(fā)。 |
暈,看了你的程序才知道你的異相思路,市電的周期是20MS,而你只在前10MS進(jìn)行了控制,也就是只控制了正半周,負(fù)半周是失控的,所以就滅不了燈 |
參與人數(shù) 1 | 黑幣 +50 | 收起 理由 |
---|---|---|
![]() | + 50 | 回帖助人的獎(jiǎng)勵(lì)! |
上圖修正: |
20170507083550.png (20.4 KB, 下載次數(shù): 159)
本帖最后由 zl2168 于 2017-5-7 15:42 編輯 過零觸發(fā)電路 ![]() ![]() MOC3041能自動(dòng)過零觸發(fā) ![]() 以上摘自張志良編著 《模擬電子技術(shù)基礎(chǔ)》(ISBN 7-111-19362-8)機(jī)械工業(yè)出版社 |
參考電路: |
20170507083550.png (23.51 KB, 下載次數(shù): 163)
過零檢測電路問題,只有半波觸發(fā),因?yàn)镸CU只有正半波峰轉(zhuǎn)谷時(shí)才觸發(fā),而負(fù)半周根本就不能觸發(fā),并且這個(gè)電路根本不是過零觸發(fā),而是只有二象限才能觸發(fā),也就是只有1/4的時(shí)間可以觸發(fā),要是接了負(fù)載,怕是輸出連110伏都沒有,要解決這個(gè)問題,必須要講負(fù)半周反相,并且正負(fù)半周都要在過零時(shí)產(chǎn)生下降沿脈沖,才能實(shí)現(xiàn)全波觸發(fā)。可采用全波整流電路來解決負(fù)半周過零反相,然后再加上反相器才能實(shí)現(xiàn)真正的過零觸發(fā)。 |
參與人數(shù) 1 | 黑幣 +70 | 收起 理由 |
---|---|---|
![]() | + 70 | 回帖助人的獎(jiǎng)勵(lì)! |
Powered by 單片機(jī)教程網(wǎng)