新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 用PIC16F84實現的自然風發生器

        用PIC16F84實現的自然風發生器

        作者: 時間:2014-01-09 來源:網絡 收藏
        普通電風扇的是不變的,不如陣陣吹拂的自然風那樣舒適宜人。這里,我們用單片機制作一個,當其和電風扇串接時,即可使電風扇送出時強時弱的仿自然風。
        一、硬件電路及原理
        要使電風扇送出仿自然風,就需要改變電風扇送風的強弱,即需要改變風扇電機的電壓和電流,從而改變其轉速。如圖1所示,風扇插座與晶閘管TREAC相串聯,改變晶閘管控制角α,即控制晶閘管導通的時間,就能使風扇電機的電壓、電流發生變化。圖2展示了α角和電機負載電壓的關系。
        Α角的變化又可通過電容C1的充放電時間的改變來實現。單片機按一定規律選擇電阻Rx,即可改變電容C1的充放電時間,從而改變2N2646的導通時間。改變了TREAC的導通角,達到改變電風扇送風強弱的目的。控制角α和強弱風的關系如圖3所示。
        市電頻率f=50Hz,則可得下式 α/360°=t/0.02 ……………(1)
          根據圖1所示RxC1充電回路,可推知
          α=t·360°/0.02 ={RxC1ln1[1/(1-n)]}·360°/0.02 ……………(2)
          其中,η=VP/VBB,Vp為C1充電后的電壓值,VBB為充電電源電壓,一般取η=0.63。若電容C為0.047μF,根據(2)式的值,求得對應于不同的α設定值的Rx值表:
        R0=1kΩ,R1=33kΩ,R2=62kΩ,R3=89kΩ,R4=120kΩ,R5=150kΩ,R6=180kΩ,R7=220kΩ。
        Rx接于單片機的RB0~RB7口;RA0口為啟動信號輸入口,當A鍵按下時,開始工作;RA1口為停止信號輸入口,當B鍵按下時,停止運行;RA3口為交流電相位檢測口。用于確定交流電的起始相位。
        程序清單:
             LSIT P=PIC16F84
            #INCLUDE P16F84INC
           FC EQU0CH
            FD EQU0DH
            ORG 0
        MAIN:CLRW
            TRIS RB
           MOVWFRB;置RB口為輸出口,
                 ;且置其初值為0
            MOVLW0FH
           TRIS RA  ;置A口為輸入口
        KEYA:BTFSCRA,0 ;A鍵是否按下
           GOTO KEYA ;A鍵未按下轉
                  KEYA,等待
        START:MOVLW80H  ;A鍵按下,
                    ;80H→F8
           MOVWFF8
            BTFSSRA,1  ;B鍵按下否
           GOTO MAIN  ;B鍵按下
        PHASE:BTFSCRA3
            GOTO PHASE ;等待交流電
                    零相位
             MOVF8,W
            MOVWFRB   ;F8→RB口
            CALL DELAY;延時10秒
            CLRC      ;清C
            RRF F8   ;F8右移
            BTFSS3,0
            GOTO PHASE
            GOTO START
        DELAY:MOVLW 150
            MOVWF F9
             MOVLW 7  ;給RTCC預
                   設倍數1∶256
           OPTION
        LOOP:MOVLW 255
            SUBWF RTCC
           BTFSS 32
            DECFSZ F9
           GOTO LOOP
            RETLW 0
           END      ;程序結束


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 富锦市| 荣昌县| 乌什县| 苍山县| 大宁县| 青阳县| 四子王旗| 黄平县| 镇巴县| 塔河县| 峡江县| 金华市| 瑞昌市| 永和县| 若尔盖县| 饶平县| 滕州市| 三原县| 灵宝市| 馆陶县| 祁阳县| 大宁县| 固始县| 龙陵县| 杭锦后旗| 平凉市| 罗源县| 泸州市| 紫阳县| 富阳市| 平果县| 玛纳斯县| 永年县| 静乐县| 巴彦县| 富阳市| 汽车| 德钦县| 兴安县| 尉氏县| 法库县|