<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 解密消費電器變速控制絕招——數(shù)字電源管理

          解密消費電器變速控制絕招——數(shù)字電源管理

          作者: 時間:2012-08-27 來源:網絡 收藏

          很多廚房和車庫電器、電動工具以及其他小家電中所用的傳統(tǒng)通用型電動機一般都不能精確地控制速度。電動機基本上只有關和開兩種狀態(tài),這對于某些應用來說確實是足夠了。但通過系統(tǒng)來進行精確可以實現(xiàn)很多巨大的優(yōu)勢,包括:

          -更低的功耗

          -更高的安全性

          -更長的工具壽命

          -更便于使用

          -更先進的操作控制。

          -將電器開啟時產生電涌從而導致電路斷開的風險最小化

          成本曾經是在各種消費類電器中實現(xiàn)智能電機控制的主要障礙。本文將介紹一種由ZiLOG公司設計開發(fā)的新型高效低成本變速通用電機控制方案,以及這一方案是如何利用新型片上集成數(shù)字模塊和先進的模擬硬件模塊,以最少的外部組件和固件實現(xiàn)速度控制和故障停機功能的。

          解決成本與復雜性問題

          電子行業(yè)流行這么一個“傳統(tǒng)”觀點:能進行直接準確的系統(tǒng)所需的組件實在太貴了,根本無法用于價格敏感型中。這種觀點認為,與其開發(fā)并執(zhí)行這樣的控制系統(tǒng),提高最終產品零售價格并因此而使之對人們失去吸引力,還不如保持電器的低成本,放棄智能電機控制的優(yōu)勢。另外,由于快速過電流檢測、故障控制、系統(tǒng)可靠性和效率等問題,電機控制應用還帶來了棘手的工程難題。

          由于對快速準確回路控制的需求,以及通過執(zhí)行智能電機控制所需要組件的數(shù)量和成本,這些控制器應用給MCU樹立了標準,要求它必須提供一流的性能和豐富的綜合型先進功能,以簡化閉合回路控制設計在通用電機控制領域的執(zhí)行。

          近幾年專門用于電機控制的微控制器(MCU)已經問世,集成了8 位計算引擎、模數(shù)轉換器(ADC)、比較器、計數(shù)器、定時器以及其它電路來控制電機速度,以滿足負載的功率要求。由于快速而精確的閉環(huán)控制以及所需支持組件的數(shù)量和成本,這種控制器在對 MCU 的預期方面樹立了新標桿。目前MCU生產商所面臨的問題是如何在確保集成恰當?shù)耐獠拷M件和功能的同時還能保持產品價格對消費者的吸引力。

          一種最佳方法

          圖1展示了一個面向先進電機控制尤其是通用電機控制應用的低成本高效型數(shù)字功率管理方案。其中的片上模擬外圍設備都是由ZiLOG開發(fā)并集成到它的一款8位MCU上的。


          圖1 ZiLOG 8位MCU框架圖

          在這個例子中,MCU的10位ADC能夠提供多達四個單端/差分通道和一個可選的 1X 差分輸入緩沖區(qū)。另外,ADC 模塊中還集成了一個片上低功率運算放大器,從而不再需要另外的外部組件就能夠獲得高精度電流測量。結合這個多通道 ADC,MCU 的兩個具有脈寬調制(PWM )以及采集與比較功能的增強型16 位定時器模塊可以同時操作兩個負載(即電機),同時,直接 LED 驅動輸出可用來在出現(xiàn)預設事件時觸發(fā) LED,而不需要額外的硬件。該方案還由其它特征,包括一個模擬比較器、一套用于確??煽啃缘摹胺拦收稀闭袷幤鳈C制、一個片上集成溫度傳感器和高達128B 的非易失性數(shù)據存儲空間(NVDS)。圖 2 是款使用了ZiLOG MCU 的通用電機的結構圖。


          圖2 通用電機控制系統(tǒng)框架圖

          電機控制的主要功能

          這個特別的數(shù)字公里發(fā)管理方案提供了通用電機所需的主要控制功能:“軟啟動”、過電流故障保護和使用片上比較器測定交流電路過零點以確保 MCU 輸出信號同步的能力。我們來逐條分析一下,并看看該方案是如何滿足這些要求的:

          (1)軟啟動

          “軟啟動”功能確保在電機打開時功率逐漸地而不是突然輸出到電機。通過使用 MCU 的單 I/O 輸出控制 TRIAC 的觸發(fā)/點火角來實現(xiàn)可調控制。這種功能最大程度地減少了啟動時轉子的過沖和不平穩(wěn)運動,從而減少電機磨損,并防止需量的突變,避免電路斷開以致剛開啟的和正在運行的電器都被關斷的情況。

          ZiLOG的軟啟動實現(xiàn)方法采用了一個定時器和重新載入定時器高低字節(jié)時使用的一個查找表。在交流信號的一個半周期內可以實現(xiàn)二十個均勻分布的觸發(fā)角。通過這種方法可以調節(jié) TRIAC 觸發(fā)角(如圖3),以調整輸送給電機的功率。這種軟啟動方案使用一個10 微秒輸出脈沖寬度觸發(fā)TRIAC,在此期間觸發(fā)角從 18°上升至162° (一個半周期的 10% 至 90%),此時電機過渡到正常滿速運轉。

          (2)過電流故障保護

          大多數(shù)電機控制都需要過電流故障保護。過電流故障的原因有很多,例如電機繞組短路、電機引線短路、機械驅動與連接裝置故障、功率器件損壞、接線錯誤等,會導致電器損毀。在出現(xiàn)過電流故障時,不管原因是什么,都必須立即停止電機轉動以防止損壞。雖然保護電路必須動作迅速,但是最好逐周期地關掉 PWM 輸出,并且在不能繼續(xù)發(fā)現(xiàn)故障條件時恢復正常運轉,而不要一下子完全關斷整個系統(tǒng)。如果這種方法不能解決問題,那么再關斷系統(tǒng)。

          這個電機控制器方案以一個感應電阻來測量電機電流(圖 2),并把信號傳輸?shù)狡霞?ADC。過電流門限值是可以設置的,而一旦電流達到這個門限值,系統(tǒng)就會啟動一個中斷服務程序,然后終止輸送到TRIAC 的觸發(fā)脈沖,并最終關閉系統(tǒng)。

          (3)過零點

          要控制電機速度,TRIAC 的觸發(fā)角必須與交流電路電壓同步,因此,必須測定這種信號的過零時刻。iLOG 的電機控制方案使用了一個片上集成的模擬比較器,不再需要外部組件,因此有助于降低成本和系統(tǒng)復雜性。圖 3 展示了用來實現(xiàn)的不同的TRIAC 觸發(fā)角。在圖中所示的應用中,TRIAC 的觸發(fā)角被設為 9° 。


          圖3 電機電壓:18°、90°和162°TRAC觸發(fā)角

          結論

          由于成本和系統(tǒng)復雜性的原因,各種家電和便攜式工具中使用的傳統(tǒng)通用電機一般都缺乏精確電機控制,而要解決這一問題,可以使用一個來實現(xiàn)變速控制,以提供各種明顯的優(yōu)勢,并防止啟動電器時可能出現(xiàn)的煩人又危險的會導致電路斷開的電涌。上面提到的這一方案使用了ZiLOG的 Z8 Encore! XP Flash MCU,采用了片上集成數(shù)字模塊和先進的模擬硬件模塊,提供了一種通用電機控制方案,能克服阻礙在各種價格敏感型電器上執(zhí)行智能控制的成本與復雜性問題。

          預了解ZiLOG電機控制方案的更多信息請登陸www.zilog.com。

          作者介紹:

          Ken Johnston是ZiLOG公司數(shù)字電源管理營銷總監(jiān),有14年的MCU工作經驗,熟悉工廠自動化、航天工業(yè)、測量、數(shù)碼相機、微膠片掃描器、電機控制、MCU應用工程和MCU產品管理等多個領域。他擁有華盛頓州立大學BSEE學位和菲尼克斯大學技術管理MBA學位。

          Rex Allison是ZiLOG公司電機控制微處理器高級應用工程師,在設計和開發(fā)用于電動車、工業(yè)機器人和消費品的交流驅動器上有12年的經驗,擁有加州太平洋大學BSEE學位,并正在攻讀圣何塞州立大學MSEE學位。



          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();