吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何使用GreenPAK為PC風扇構建PWM控制器

科技觀察員 ? 來源:allaboutcircuits ? 作者:David Riedell,Dialo ? 2022-05-07 16:38 ? 次閱讀

本文介紹了如何使用DialogGreenPAK可配置混合信號IC構建12VPC風扇PWM控制器。該項目涉及旋轉編碼、PWM控制、PCB設計C#應用程序編程

該設計最多可控制16個3針電腦風扇,使用一對DialogGreenPAK可配置混合信號IC來控制每個風扇的占空比,并包括兩種改變風扇速度的方法:

帶有正交/旋轉編碼器

使用Windows應用程序—內置于C#中,通過I2C與GreenPAK進行通信

系統框圖

poYBAGJ2MAeAFnrLAABhr16jYr0464.jpg

圖1.系統框圖

SLG46108旋轉解碼器設計

為了手動增加或減少風扇的占空比,我們使用了旋轉編碼器。該設備在相隔90°的通道A和通道B輸出上輸出脈沖。有關旋轉編碼器工作原理的更多信息,請參見AN-1101:非時鐘正交解碼器。

pYYBAGJ2MAiAIQXLAAA9TX_v_mc464.jpg

圖2.旋轉編碼器框圖

然后,我們使用DialogGreenPAKSLG46108創建了一個時鐘旋轉解碼器來處理通道A和通道B信號并將它們輸出為逆時針(CCW)和順時針(CW)脈沖。

當通道A領先于通道B時,設計會在CW上輸出一個短脈沖。當通道B超前通道A時,它在CCW上輸出一個短脈沖。

poYBAGJ2MAmAEEzNAABaTfdH3gA962.jpg

圖3.GreenPAKSLG46108旋轉解碼器設計

我們使用3個DFF將通道A輸入與時鐘同步。同樣,我們使用管道延遲,將OUT0設置為2個DFF,將OUT1設置為3個DFF,為通道B創建相同的功能。

然后,我們使用一些LUT來創建CW和CCW輸出。有關此標準旋轉解碼器設計的更多信息,請訪問此網站。

最后,GreenPAKRotaryDecoder將接收到下圖中的輸入脈沖A和B,并輸出如圖所示的CW和CCW脈沖。

poYBAGJ2MAqAE95nAAAnxCpO__o103.jpg

圖4.旋轉信號時序圖

異或門之后的電路確保不會同時出現CW脈沖和CCW脈沖,以防旋轉編碼器出現錯誤。CW和CCW信號上的8ms下降沿延遲迫使它們在8ms加1個時鐘周期內保持高電平,這對于下游SLG46826GreenPAK是必需的。

SLG46826風扇控制器設計

pYYBAGJ2MAuAVEIrAACdXz_XDwA460.jpg

圖5.GreenPAKSLG46826風扇控制器設計

使用偏移計數器生成PWM

為了生成PWM信號,我們使用了一對具有相同周期的偏移計數器。第一個計數器設置DFF,第二個計數器將其重置,從而創建一致的占空比PWM信號,如下所示。

poYBAGJ2MAyAH9EKAAAekrKRuX0972.jpg

圖6.PWM生成時序圖

pYYBAGJ2MA2AGaWRAABDK985Ovs513.jpg

圖7.使用偏移計數器生成PWM

CNT6設置DFF10,CNT1的反相輸出復位DFF10。引腳18和19用于將PWM信號輸出到外部電路。

具有時鐘注入和時鐘跳躍的占空比控制

風扇控制器接收來自旋轉解碼器的CW和CCW信號作為輸入,并使用它們來增加或減少控制風扇速度的PWM信號。我們通過幾個數字邏輯組件實現了這一點。

我們需要做的是使占空比在我們接收到CW脈沖時增加。我們可以通過向CNT6模塊注入一個額外的時鐘脈沖來實現這一點,使其比其他方式早一個時鐘周期輸出。您可以在下面的時序圖中看到此過程。

poYBAGJ2MA2ARGHHAAA7ukutbTA013.jpg

圖8.時鐘脈沖注入

CNT1仍以恒定速率獲得時鐘,但CNT6注入了幾個額外的時鐘。每當計數器有一個額外的時鐘時,它就會將其輸出向左移動一個時鐘周期。

相反,如果我們想降低占空比,我們需要為CNT6跳過一個時鐘脈沖。您可以在下圖中看到該過程,其中CNT1仍然以恒定速率獲得時鐘,而CNT6有跳過的時鐘脈沖,其中計數器沒有按預期獲得時鐘。這樣我們就可以將CNT6的輸出一次向右推一個時鐘周期,從而縮短輸出PWM占空比。

pYYBAGJ2MA6ANd8hAABXYdC8q1I351.jpg

圖9.時鐘脈沖跳躍

我們使用GreenPAK中的一些數字邏輯元件實現了時鐘注入和時鐘跳躍功能。我們使用一對多功能塊來創建一對鎖存器/邊緣檢測器組合。4位LUT0用于在通用時鐘信號(CLK/8)和時鐘注入或時鐘跳躍信號之間進行復用。此功能將在第5.2.2節防止占空比翻轉中更詳細地描述。

按鈕輸入

BUTTON輸入去抖20ms,然后用于觸發一個鎖存器,該鎖存器將確定是否選擇了該特定芯片。如果選擇它,則4位LUT將傳遞時鐘跳躍或注入信號。如果未選擇芯片,則4位LUT將簡單地傳遞CLK/8信號。

poYBAGJ2MA-AVaD_AAB__c-gdU0148.jpg

圖10.時鐘跳躍和時鐘注入

防止占空比翻轉

RS鎖存器3位LUT5和3位LUT3用于確保您不能注入或跳過太多時鐘,以免偏移計數器翻轉。我們不想讓系統達到100%的占空比,然后如果它接收到另一個注入的時鐘,則翻轉到1%的占空比。

RS鎖存器通過在系統距離翻轉1個時鐘周期時鎖存多功能模塊的輸入來防止這種情況發生。我們使用一對DFF將PWM_SET和PWM_nRST信號延遲一個時鐘周期,如下圖所示。

pYYBAGJ2MBCAW9gwAAAwYSEtsro984.jpg

圖11.BLOCK_CW和BLOCK_CCW

然后,我們使用一對LUT來創建必要的邏輯。如果我們的占空比太低以至于延遲的PWM_SET信號與PWM_nRST信號同時出現,我們不想進一步降低占空比,否則我們將翻轉。

poYBAGJ2MBGAcGupAAAqiW9MRgw842.jpg

圖12.最小占空比翻轉情況

同樣,如果我們正在接近最大占空比,從而延遲的PWM_nRST信號與PWM_SET信號同時出現,我們不想進一步增加占空比。在這種情況下,我們需要將nRST信號延遲2個時鐘周期,以確保系統不會從99%翻轉到1%。

poYBAGJ2MBKAOjI5AAAriP2-BX0518.jpg

圖13.最大占空比翻轉情況

具有I2C的占空比控制

該設計采用了另一種控制占空比的方法,而不是時鐘跳躍/時鐘注入。我們可以使用外部微控制器向GreenPAK寫入I2C命令,以編程方式設置占空比。

poYBAGJ2MBOAFoNtAACUiDgTv_M628.jpg

圖14.I2C占空比控制

如上圖中的紅色標簽所示,控制I2C上的占空比需要控制器執行特定的命令序列。這些命令在下表中按順序顯示。“x”表示用戶不應更改的位,“[”表示START位,“]”表示STOP位。

表1.I2C命令

pYYBAGJ2MBSAUIr-AAC2pQqLGhg680.jpg

PDLY模塊在CLK/8信號的下降沿產生一個短的高電平有效脈沖,我們稱之為!CLK/8。該信號用于以穩定頻率為DFF14提供時鐘。當I2C_SET異步變高時,!CLK/8的下一個上升沿將導致DFF14輸出HIGH,這將觸發CNT5OneShot。OneShot將運行上表中“寫入CNT5”I2C命令中指定的用戶寫入的時鐘周期數。在這種情況下,它是10個時鐘周期。OneShot允許25MHz振蕩器準確運行其持續時間,并且不再讓3位LUT0接收用戶寫入CNT5的時鐘周期數。

下圖顯示了這些信號,其中紅色時鐘是發送到3位LUT0的信號,LUT0將它們傳遞到CNT6(PWM_SET計數器),從而為占空比生成創建偏移量。

poYBAGJ2MBWAZ-HWAAAug4ZlQ4A306.jpg

圖15.使用I2C加載占空比(頻率不按比例)

轉速表讀數

如果需要,用戶可以讀取I2C上的轉速計值,通過讀取CNT2值來跟蹤風扇轉動的速度。CNT2將在每次ACMP0H出現上升沿時遞增,并且可以通過I2C命令異步復位。(請注意,這是一個可選功能,ACMP0H的閾值需要根據正在使用的特定風扇的規格進行調整。)

poYBAGJ2MBaAcpruAAAvJKlh1G0434.jpg

圖16.轉速計部分

表2.I2C命令

pYYBAGJ2MBeAU0TuAABbHHVlFl8856.jpg

外部電路設計

poYBAGJ2MBeADVqNAABfQI4RJV0818.jpg

圖17.風扇控制器框圖

外部電路相當簡單。有一個按鈕連接到GreenPAK的Pin6以切換是否選擇此特定設備進行旋轉控制,以及連接到Pin12和Pin13的LED以指示何時選擇設備。

由于風扇的電壓為12伏,因此我們需要一對FET來控制其開關。GreenPAK的Pin18和Pin19驅動一個nFET。當nFET開啟時,它將pFET的柵極拉低,將風扇連接到+12V。當nFET關閉時,PFET的柵極被1k電阻上拉,從而斷開風扇從+12v。

PCD設計

我們將幾塊PCB放在一起來對我們的設計進行原型設計。左側的PCB是“風扇控制器”,其中包含旋轉編碼器、12v插孔、SLG46108GreenPAK和FT232HUSB到I2C分線板的連接器。右側的兩個PCB是“風扇板”,其中包含SLG46826GreenPAK、按鈕、開關、LED和風扇接頭。

pYYBAGJ2MBiAbx9UAACVPkDBQeg094.jpg

圖18.PCB和連接器

每個風扇板的左側都有一個帶罩的公頭,右側有一個母頭,因此它們可以菊花鏈式連接在一起。每個風扇板都可以填充資源以獨立控制2個風扇。

C#應用程序

我們編寫了一個C#應用程序來通過FT232HUSB-I2C橋接我們的風扇板。此應用程序可用于通過應用程序生成的I2C命令調整每個風扇的頻率。

poYBAGJ2MBqAONZSAAA01oXYa98464.jpg

圖19.C#應用程序GUI

應用程序將每秒對所有16個I2C地址執行一次ping操作,并使用存在的從地址填充GUI。在這種情況下,我們將風扇1(從地址0001)和風扇3(從地址0011)連接到電路板。用戶可以通過移動滑塊或在滑塊下方的文本框中輸入0-256的值來單獨調整每個風扇的占空比。

項目結論

在本文中,我們使用一些DialogGreenPAK可配置混合信號IC創建了一個功能齊全的12vPC風扇PWM控制器。通過我們的設計,我們能夠使用旋轉編碼器或C#應用程序獨立控制多達16個風扇(因為有16個可能的I2C從地址)。我們演示了如何使用一對偏移計數器生成PWM信號,以及如何在不翻轉的情況下增加和減少該信號的占空比。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • IC
    IC
    +關注

    關注

    36

    文章

    5979

    瀏覽量

    176210
  • PWM
    PWM
    +關注

    關注

    114

    文章

    5198

    瀏覽量

    214874
  • PWM控制器
    +關注

    關注

    18

    文章

    470

    瀏覽量

    36239
收藏 人收藏

    評論

    相關推薦

    MTD6505三相BLDC無傳感風扇控制器

    ADM00345,MTD6505三相BLDC無傳感風扇控制器演示板允許使用通過USB連接連接到電路板的PC軟件控制和監控MTD6505器件
    發表于 08-24 09:36

    PWM風扇控制器(具有溫度感應和按鈕超控功能)資料(原理圖+源代碼)

    `帶溫度感應和最大速度按鈕的風扇PWM控制器服務室和車庫配備風扇。要使用大型風管
    發表于 10-12 09:48

    抗電磁干擾的PWM風扇控制器,不看肯定后悔

    求大佬詳細介紹一下抗電磁干擾的PWM風扇控制器
    發表于 04-20 06:31

    使用LM35溫度傳感和ATTiny13微控制器控制風扇的教程

    和 ATTiny13 微控制器控制大多數標準風扇(25KHz PWM)。規格電源電壓:12VDC(見正文)負載過溫保護:有(60度以上)PWM
    發表于 07-21 06:19

    兩通道溫度監視PWM自動風扇速度控制器和五GPIO集成器

    兩通道溫度監視PWM自動風扇速度控制器和五GPIO集成器件
    發表于 11-11 16:32 ?22次下載

    采用FanSense TM技術的PWM風扇速度控制器

    TC642 是一款開關模式風扇速度控制器,用于控制直流無刷風扇的速度。器件采用脈寬調制技術(PWM) 實現
    發表于 11-20 18:26 ?49次下載

    風扇自動控制器

    風扇自動控制器
    發表于 12-14 08:06 ?1060次閱讀
    電<b class='flag-5'>風扇</b>自動<b class='flag-5'>控制器</b>

    多功能電風扇控制器

    多功能電風扇控制器
    發表于 12-14 08:13 ?763次閱讀
    多功能電<b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>

    風扇控制器電路-Fan control

    風扇控制器電路-Fan control This is
    發表于 01-13 21:12 ?4317次閱讀
    <b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>電路-Fan control

    抗電磁干擾的PWM風扇控制器原理及應用

    抗電磁干擾的PWM風扇控制器原理及應用 微芯科技(Microchip )公司提供一種工作于PWM模式的風扇制冷速度
    發表于 03-12 15:42 ?4179次閱讀
    抗電磁干擾的<b class='flag-5'>PWM</b><b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>原理及應用

    PWM控制器,PWM控制器是什么意思

    PWM控制器,PWM控制器是什么意思 脈寬調制的基本原理及其應用實例 脈寬調制(PWM)是利用微處理
    發表于 03-23 13:35 ?8084次閱讀

    溫度感應和按鈕超控的PWM風扇控制器工程文件和原理圖免費下載

    具有基于溫度的控制PWM控制器,但找不到價格合理的東西,并且可以在沒有穩壓的情況下使用相同的電源供電。于是找到了一個項目并將其用作創建我的PWM
    發表于 10-12 08:00 ?2次下載
    溫度感應和按鈕超控的<b class='flag-5'>PWM</b><b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>工程文件和原理圖免費下載

    無葉風扇控制器怎么調 無葉風扇控制器怎么接線

    無葉風扇控制器是一種新型的風扇控制設備,以其獨特的設計和革新的風扇技術而備受關注。無葉風扇
    的頭像 發表于 01-24 16:51 ?1925次閱讀

    AMC6821-Q1智能溫度監測和PWM風扇控制器數據表

    電子發燒友網站提供《AMC6821-Q1智能溫度監測和PWM風扇控制器數據表.pdf》資料免費下載
    發表于 08-09 09:54 ?0次下載
    AMC6821-Q1智能溫度監測和<b class='flag-5'>PWM</b><b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>數據表

    AMC6821智能溫度監測儀和PWM風扇控制器數據表

    電子發燒友網站提供《AMC6821智能溫度監測儀和PWM風扇控制器數據表.pdf》資料免費下載
    發表于 08-13 10:13 ?0次下載
    AMC6821智能溫度監測儀和<b class='flag-5'>PWM</b><b class='flag-5'>風扇</b><b class='flag-5'>控制器</b>數據表
    球探网即时比分| 百家乐视频游戏世界| 常山县| 牛牛现金棋牌| 皇家金堡娱乐城| 沾化县| 百家乐官网隔一数打法| 百家乐官网专业赌徒| 百家乐官网5式直缆打法| 网络百家乐官网破解器| 博彩百家乐官网最新优惠| 罗盘24山度数| 奔驰百家乐可信吗| 风水8闰24山| 帝王百家乐新足球平台| 金城百家乐买卖路| 中山水果机定位器| 罗马百家乐官网的玩法技巧和规则| 托克托县| 百家乐官网庄家抽水的秘密| 太阳百家乐官网开户| 娱网百家乐补丁| 威尼斯人娱乐城官方地址| 百乐坊娱乐城噢门| 百家乐官网赢法口诀| 百家乐官网智能投注系统| 做生意如何风水| 自贡百家乐赌| 明升备用地址| 鸿博娱乐| 百家乐官网币| 百家乐游戏机分析仪| 玩百家乐都是什么人| 博彩资讯| 百家乐官网隔一数打投注法| 做生意摆放什么财神爷| 百家乐和的打法| 渝北区| 玩百家乐官网怎么能赢呢| 至尊百家乐20| 百家乐官网如何看面|