摘 è¦:é—¡è¿°ä½¿ç”¨ä½Žæˆæœ¬çš„ARM7 LPC2101微處ç†å™¨è¨(shè)計(jì)ç„¡(wú)刷直æµé›»æ©Ÿ(jÄ«)的控制方案; 詳細(xì)地介紹微處ç†å™¨ã€MOSFETé©…(qÅ«)å‹•(dòng)å’ŒMOSFET的原ç†è¨(shè)計(jì)å’Œç¨‹åºæµç¨‹ï¼Œä»¥åŠèˆ‡é›»æ©Ÿ(jÄ«)ä¿è·(hù)相關(guÄn)的技術(shù)åŠè™•ç†æ–¹æ³•,如電機(jÄ«)ç©©(wÄ›n)定é‹(yùn)行狀態(tà i)機(jÄ«),é™ä½Žé›»æ©Ÿ(jÄ«)噪è²ï¼Œè»Ÿä»¶é˜²æ¢é›»æ©Ÿ(jÄ«)陡轉(zhuÇŽn)ç‰ã€‚該方案å¯ä»¥æ‡‰(yÄ«ng)ç”¨åœ¨æ‰“å°æ©Ÿ(jÄ«)ã€é›»å‹•(dòng)è‡ªè¡Œè»Šã€æ½”牙機(jÄ«)ç‰é›»æ©Ÿ(jÄ«)控制產(chÇŽn)å“上。
é—œ(guÄn)éµè©ž:LPC2101 ARM7 ç„¡(wú)刷直æµé›»æ©Ÿ(jÄ«)控制 å電動(dòng)å‹¢(shì) 狀態(tà i)機(jÄ«)
  LPC2101是基于16/32ä½ ARM7 CPU嵌入高速Flashé–ƒå˜çš„微控制器,具備高性能,å°é«”ç©å°è£ï¼Œä½ŽåŠŸè€—ï¼Œç‰‡ä¸Šå¯é¸æ“‡å¤šç¨®å¤–è¨(shè)ç‰å„ª(yÅu)點(diÇŽn),應(yÄ«ng)用范åœå¾ˆå»£ã€‚其具備的多種32ä½å’Œ16ä½å®šæ™‚(shÃ)器ã€10ä½A/D轉(zhuÇŽn)æ›å™¨å’Œæ¯å€‹(gè)定時(shÃ)器上PWM匹é…輸出特性,尤其é©ç”¨äºŽå·¥æ¥(yè)控制。
  無(wú)刷直æµé›»æ©Ÿ(jÄ«)是一種易驅(qÅ«)å‹•(dòng)電機(jÄ«),é©ç”¨äºŽè®Šé€Ÿå’Œå•Ÿå‹•(dòng)轉(zhuÇŽn)矩很高的應(yÄ«ng)用,它的使用范åœå¾žå¤§è¦(guÄ«)模的工æ¥(yè)模具到調(dià o)光控制的å°åž‹é›»æ©Ÿ(jÄ«)(12 Vç›´æµé›»æ©Ÿ(jÄ«)),外形和尺寸也是å„ç¨®å„æ¨£ã€‚
1 ç„¡(wú)刷直æµé›»æ©Ÿ(jÄ«)的基本原ç†
圖1 ç„¡(wú)刷電機(jÄ«)組æˆ
  無(wú)刷直æµé›»æ©Ÿ(jÄ«)一般由定åã€è½‰(zhuÇŽn)å和金屬殼體ç‰çµ„æˆï¼Œå¦‚圖1所示,通éŽ(guò)å呿¥µæ€§çš„å¸å¼•產(chÇŽn)生æ‰çŸ©ä½¿é›»æ©Ÿ(jÄ«)é‹(yùn)轉(zhuÇŽn)。一旦轉(zhuÇŽn)åé–‹å§‹é‹(yùn)轉(zhuÇŽn),固定的刷å和轉(zhuÇŽn)åéƒ¨åˆ†å°‡ä¸æ–·å復(fù)åœ°é€£æŽ¥ã€æ–·é–‹ï¼Œé›»å‹•(dòng)å‹¢(shì)å’Œå電動(dòng)å‹¢(shì)在轉(zhuÇŽn)åæ—‹è½‰(zhuÇŽn)éŽ(guò)程ä¸ç”¢(chÇŽn)ç”Ÿï¼Œæ–°çš„é›»æ¥µç¸½æ˜¯å’Œå®šåæ¥µæ€§ç›¸åã€‚ç”±äºŽé€™ç¨®è®Šæ›æ˜¯å›ºå®šçš„ï¼Œå› æ¤è½‰(zhuÇŽn)å以一種固定的形å¼é‹(yùn)å‹•(dòng)。通éŽ(guò)給電機(jÄ«)æ–½åŠ åå‘電壓和åå‘的轉(zhuÇŽn)å線圈電æµï¼Œä½¿å—北極性翻轉(zhuÇŽn),電機(jÄ«)改變其é‹(yùn)å‹•(dòng)旋轉(zhuÇŽn)æ–¹å‘。
  速度和電機(jÄ«)çš„æ‰çŸ©å¤§å°æ˜¯ä¾æ“š(jù)電機(jÄ«)旋轉(zhuÇŽn)產(chÇŽn)生的ç£å ´(chÇŽng)å¼·(qiáng)度來(lái)控制的,而電機(jÄ«)的旋轉(zhuÇŽn)èƒ½é‡æ˜¯ä¾è³´äºŽé€šéŽ(guò)é›»æµå¤§å°ä¾†(lái)æŽ§åˆ¶çš„ï¼Œå› æ¤èª¿(dià o)整電機(jÄ«)轉(zhuÇŽn)å的電壓和電æµå¯ä»¥æ”¹è®Šé›»æ©Ÿ(jÄ«)的速度。本電機(jÄ«)é€Ÿåº¦çš„æŽ§åˆ¶æ˜¯æ ¹æ“š(jù)LPC2101微控制器的PWM信號(hà o)的變化而產(chÇŽn)生的。
2 ç„¡(wú)刷直æµé›»æ©Ÿ(jÄ«)的控制
  2.1 雙呿—‹è½‰(zhuÇŽn)
圖2 ä½¿ç”¨å…¨æ©‹é›»è·¯é›™å‘æ—‹è½‰(zhuÇŽn)
  驅(qÅ«)å‹•(dòng)有刷直æµé›»æ©Ÿ(jÄ«)çš„é›™å‘æ—‹è½‰(zhuÇŽn),å¯é€šéŽ(guò)全橋驅(qÅ«)å‹•(dòng)電路改變電æµä¾†(lái)實(shÃ)ç¾(xià n)完æˆï¼Œå¦‚圖2所示。這個(gè)全橋驅(qÅ«)å‹•(dòng)電路由N通é“çš„MOSFET管組æˆï¼Œç•¶(dÄng)Q2å’ŒQ3é—œ(guÄn)閉的時(shÃ)候,Q1å’ŒQ4å°Ž(dÇŽo)通電機(jÄ«)æ£ç›¸æ—‹è½‰(zhuÇŽn);ç•¶(dÄng)Q1å’ŒQ4é—œ(guÄn)閉時(shÃ),Q2å’ŒQ3å°Ž(dÇŽo)通電機(jÄ«)å相旋轉(zhuÇŽn)。
  2.2 速度控制部分
  無(wú)è² (fù)載的電機(jÄ«)é€Ÿåº¦èˆ‡åŠ åˆ°é›»æ©Ÿ(jÄ«)上的電壓有一定的比例關(guÄn)ç³»ï¼Œå› æ¤é€šéŽ(guò)é‡‡æ¨£åŠ è¼‰åˆ°é›»æ©Ÿ(jÄ«)上的電壓,å¯ä»¥æŽ§åˆ¶é›»æ©Ÿ(jÄ«)的速度。脈寬調(dià o)制解調(dià o)用于產(chÇŽn)生這種電壓的變化,如圖3所示。脈寬調(dià o)制是基于å ç©ºæ¯”çš„å›ºå®šé »çŽ‡è„ˆå¯¬æ³¢å½¢ã€‚åŠ è¼‰åˆ°é›»æ©Ÿ(jÄ«)上的平å‡é›»å£“與PWMå ç©ºæ¯”æˆæ£æ¯”é—œ(guÄn)系。
圖3 PWM速度控制
  PWM信號(hà o)(Q1å’ŒQ2ï¼‰æ ¹æ“š(jù)LPC2101微控制器定時(shÃ)器2çš„3個(gè)匹é…寄å˜å™¨æ±ºå®šä¿¡è™Ÿ(hà o)的時(shÃ)åŸºé »çŽ‡ã€‚é›»æ©Ÿ(jÄ«)速度(å 空比)和方å‘通éŽ(guò)調(dià o)æ•´é›»ä½å™¨è¼¸å…¥åŠæ”¹è®ŠLPC2101 ADC的輸入數(shù)值來(lái)控制,如圖4所示。
圖4 系統(tÇ’ng)é…ç½®
  2.3 電機(jÄ«)å饋部分
  低功耗電機(jÄ«)é›»æµæ¸¬(cè)釿˜¯åœ¨MOSFET和地之間使用電æµå‚³æ„Ÿå™¨ï¼ˆåƒè¦‹åœ–4)。通éŽ(guò)é›»æµå‚³æ„Ÿå™¨çš„采樣電阻檢測(cè)å¾®å°é›»å£“;通éŽ(guò)在微控制器的å‰ç«¯é€²(jìn)行濾波和放大,電æµé‡‡é›†ç¸½æ˜¯åœ¨æœ€é«˜ç´š(jÃ)別,在PWM產(chÇŽn)生之å‰ã€‚這個(gè)æ“作通éŽ(guò)外部定時(shÃ)器匹é…䏿–·ï¼Œä¸æ–·åŽå…ˆé–‹å§‹A/D轉(zhuÇŽn)æ›ã€‚轉(zhuÇŽn)æ›æ•¸(shù)值代表了電機(jÄ«)的電æµã€‚
  低功耗無(wú)傳感器電機(jÄ«)旋轉(zhuÇŽn)速度å饋是通éŽ(guò)å饋的EMF電壓測(cè)é‡ï¼ˆåƒè¦‹åœ–4)。å電動(dòng)å‹¢(shì)是通éŽ(guò)電機(jÄ«)轉(zhuÇŽn)åæ—‹è½‰(zhuÇŽn)ç£å ´(chÇŽng)和外部電ç£å ´(chÇŽng)產(chÇŽn)生的。æ›å¥è©±èªª(shuÅ),電機(jÄ«)表ç¾(xià n)å¾—åƒä¸€å€‹(gè)發(fÄ)電機(jÄ«)。RPMå’Œå電動(dòng)å‹¢(shì)電壓是æˆç›´æŽ¥æ£æ¯”é—œ(guÄn)系的,å電動(dòng)å‹¢(shì)測(cè)釿˜¯é€šéŽ(guò)MOSFET切æ›å®Œæˆçš„(剎車模å¼ï¼‰ã€‚本文ä¸ï¼ŒBEMF測(cè)é‡ç”¨äºŽæª¢æ¸¬(cè)電機(jÄ«)是å¦å®Œå…¨åœæ¢ã€‚電壓分壓是用于滿足å電動(dòng)å‹¢(shì)電壓(最高為12 V)在0~3.3 V間的。
3 ç„¡(wú)刷直æµé›»æ©Ÿ(jÄ«)的應(yÄ«ng)用
  3.1 é¸ç”¨LPC2102
  LPC2102(采用LQFP48å°è£ï¼‰æ˜¯ç›®å‰LPC2000系列ARM7å®¶æ—䏿œ€å°ã€æœ€ä¾¿å®œçš„ä¸€æ¬¾ç¸½ç·šé »çŽ‡é«˜é”(dá)70 MHzçš„32ä½CPU處ç†å™¨;有2 KBçš„éœæ…‹(tà i)RAMå’Œ8 KB的片上Flashå˜å„²(chÇ”)å€(qÅ«)。å°(duì)于使用USBã€CAN總線ã€Ethernet以太網(wÇŽng)總線,å¯ä»¥é¸ç”¨LPC2000ç³»åˆ—ä¸æ›´é«˜ç´š(jÃ)別的處ç†å™¨ã€‚æœ¬æ–‡ä¸ LPC2101,其CPU使用代碼空間為3 KB,CPUè² (fù)載å°äºŽ5%。沒(méi)有使用內(nèi)部外è¨(shè)資æºå¦‚下:UARTã€I2Cã€SPI/SSPã€RTCã€2個(gè)定時(shÃ)器和4個(gè)A/D輸入,20個(gè)未用的I/Oå£å¯ä¾›ç”¨æˆ¶æ“´(kuò)展使用。
  3.2 電機(jÄ«)鏿“‡
  è¨(shè)計(jì)é¸ç”¨150 W MAXON RE40電機(jÄ«)。在12 V輸入下,無(wú)è² (fù)載的速度是6 920 r/s。最大連續(xù)é›»æµæ˜¯6 A。PWM時(shÃ)基信號(hà o)å°(duì)電機(jÄ«)å™ªè²æœ‰å¾ˆå¤§çš„å½±éŸ¿ï¼ˆå› ?yà n)槿硕è¯éš³è‹ˆç‰é™ç©†æš¡Ç–念lçŽ‡èŒƒåœæ˜¯20 Hz~20 kHzï¼‰ï¼ŒåŒæ™‚(shÃ)影響電機(jÄ«)的表ç¾(xià n)性能。è¦é˜²æ¢æ•´å€‹(gè)周期ä¸é›»æµéŽ(guò)零(就是通常所說(shuÅ)çš„ä¸é€£çºŒ(xù)的電æµç‹€æ…‹(tà i),當(dÄng)電機(jÄ«)輕載時(shÃ)),如圖5(b)所示。這種ä¸é€£çºŒ(xù)é›»æµæœƒ(huì)å°Ž(dÇŽo)致æ‰çŸ©è½‰(zhuÇŽn)速曲線éžå¸¸é™¡ï¼Œåœ¨é›»æ©Ÿ(jÄ«)ä¸å°‡ç”¢(chÇŽn)生æŸç¨®è„ˆæ²–,使電機(jÄ«)轉(zhuÇŽn)å產(chÇŽn)生更大的噪è²ï¼Œæœ¬é›»è·¯ä½¿ç”¨MAXON電機(jÄ«),就是為了ç²å¾—連續(xù)çš„é›»æµæ¨¡å¼ï¼Œæ‰€é¸æ“‡çš„PWMè„ˆæ²–é »çŽ‡æ˜¯8 kHz。

圖5 PWM時(shÃ)åŸºé »çŽ‡çš„å½±éŸ¿
  3.3 MOSFET鏿“‡
  在系統(tÇ’ng)ä¸ä½¿ç”¨NXPåŠå°Ž(dÇŽo)é«”PH1875L Næºé“MOSFET,相關(guÄn)的電機(jÄ«)電壓是12 V,電機(jÄ«)啟動(dòng)çš„æœ€å¤§é›»æµæ˜¯103 A。作為12 V的電機(jÄ«),MOSFET的電壓Vds至少為40 V。需è¦è¶³å¤ çš„çŒé›»æµä¾†(lái)啟動(dòng)電機(jÄ«),å¯ä»¥é€šéŽ(guò)軟件控制在系統(tÇ’ng)é‹(yùn)行éŽ(guò)ç¨‹ä¸æ¸›å°é›»æµã€‚PH1875L需è¦ä½¿ç”¨çš„æœ€å¤§çŒé›»æµæ˜¯45.8 A,æ¼é›»æµæ˜¯183 A。PH1875Lçš„SMD貼片å°è£å¦‚圖6所示。
圖6 SO669(LFPAK)å°è£
  3.4 MOSFETé©…(qÅ«)å‹•(dòng)鏿“‡
  MOSFETé©…(qÅ«)å‹•(dòng)æå‡äº†æŽ§åˆ¶å™¨è¼¸å‡ºä¿¡è™Ÿ(hà o)é©…(qÅ«)å‹•(dòng)電機(jÄ«)的能力。本è¨(shè)計(jì)鏿“‡NXP芯片PMD2001Då’ŒPMGD280UN,如圖7所示。
圖7 ç°¡(jiÇŽn)化的MOSFETMOSFETå…¨æ©‹å’ŒåŠæ©‹é©…(qÅ«)å‹•(dòng)電路
  3.5 é€Ÿåº¦æŽ§åˆ¶å’Œæ–¹å‘æŽ§åˆ¶
  為了控制方å‘和電機(jÄ«)速度,用10 kΩ的電ä½å™¨ï¼Œé€£æŽ¥åˆ°LPC2101 ADC輸入端(åƒè¦‹åœ–4)。由于是10ä½A/D,實(shÃ)際上åªéœ€è¦8ä½å°±å¯ä»¥é‡‡ç”¨256個(gè)æ¥é€²(jìn)數(shù)值,如圖8所示。采用10ä½A/Då¯ä»¥é”(dá)到1 024個(gè)æ¥é€²(jìn)數(shù)值。
圖8 é›»ä½å™¨æ¨¡æ“¬é€Ÿåº¦è¼¸å…¥å’Œæ–¹å‘
4 硬件與軟件è¨(shè)計(jì)
  4.1 硬件è¨(shè)計(jì)
  控制部分的電路原ç†å¦‚圖9所示。電æºå’Œé›»æ©Ÿ(jÄ«)部分的電路原ç†å¦‚圖10所示。
圖9 控制部分電路原ç†
圖10 é›»æºå’Œé›»æ©Ÿ(jÄ«)部分電路原ç†
  4.2 軟件è¨(shè)計(jì)
  軟件部分采用C語(yÇ”)言編寫,使用Keil μVision(ARM7 RealView V3.0)開發(fÄ)ç’°(huán)境。主函數(shù)實(shÃ)ç¾(xià n)如下功能:讀å–é›»ä½å™¨æ•¸(shù)值來(lái)調(dià o)整速度和電機(jÄ«)æ–¹å‘;讀å–電機(jÄ«)å電動(dòng)å‹¢(shì)é›»æµ;è¨(shè)定PWMå 空比和控制Q1~Q4 MOSFET輸出;執(zhÃ)行RS232通信。圖11表示控制系統(tÇ’ng)æµç¨‹ã€‚使用RS232æŽ¥å£æ¯200 ms給PC端計(jì)算機(jÄ«)發(fÄ)é€é›»æ©Ÿ(jÄ«)速度和電æµã€é›»å£“ä¿¡æ¯ã€‚電機(jÄ«)控制軟件部分狀態(tà i)機(jÄ«)如圖12所示。狀態(tà i)è™•ç†æ˜¯åœ¨ä¸»ç¨‹åºå¾ªç’°(huán)ä¸è™•ç†çš„,LPC2101的定時(shÃ)器2用于產(chÇŽn)生PWM信號(hà o)。在æ¯å€‹(gè)PWM信號(hà o)䏿–·å程åºé€²(jìn)å…¥åŽï¼Œå¯ä»¥é€šéŽ(guò)改變å 空比來(lái)調(dià o)整既定電機(jÄ«)速度并è¨(shè)ç½®MOSFET輸出控制Q1~Q4。定時(shÃ)器0用于10 ms的系統(tÇ’ng)定時(shÃ)。

圖11 ä¸»ç¨‹åºæµç¨‹
圖12 狀態(tà i)æµç¨‹
  LPC2101é…置使用Keil ARM開發(fÄ)ç’°(huán)å¢ƒä¸æ¨™(biÄo)準(zhÇ”n)的啟動(dòng)代碼,è¨(shè)定CCLK時(shÃ)é˜ç‚º60 MHz,PCLK時(shÃ)é˜ç‚º15 MHz。相關(guÄn)測(cè)試代碼包括main.c,adc.c,timer0.c,motor.c,uart.c,bcd.hç‰ã€‚
5 總çµ(jié)
  使用LPC2101 ARM7å…§(nèi)æ ¸é–‹ç™¼(fÄ)ç„¡(wú)刷電機(jÄ«)控制系統(tÇ’ng),代碼精簡(jiÇŽn),控制系統(tÇ’ng)å¯é 。經(jÄ«ng)éŽ(guò)é•·(zhÇŽng)時(shÃ)間實(shÃ)際測(cè)é‡è‰æ˜Žï¼Œç³»çµ±(tÇ’ng)相關(guÄn)器件的é¸åž‹è¨(shè)計(jì)是穩(wÄ›n)定的。å¦å¤–,目å‰å¢žå¼·(qiáng)åž‹51系列微處ç†å™¨çš„價(jià )æ ¼ã€æ€§èƒ½èˆ‡LPC21系列相比較,LPC21系列功耗低,價(jià )æ ¼èˆ‡æ™®é€š8使©Ÿ(jÄ«)價(jià )æ ¼å·®ä¸å¤šï¼Œä½†æ˜¯æ€§èƒ½å»æ¯”增強(qiáng)åž‹51系列好。比如,帶Modem的雙串å£ï¼Œé›™I2C接å£ï¼Œå¸¶å¤§å®¹é‡çš„Flashå’ŒRAMå˜å„²(chÇ”)å€(qÅ«)ï¼Œå¤šé€šé“ PWM,多個(gè)32ä½å®šæ™‚(shÃ)器,高精度10ä½A/D轉(zhuÇŽn)æ›å™¨ç‰ã€‚å› æ¤ï¼Œå¾žèŠ¯ç‰‡è¨(shè)計(jì)和系統(tÇ’ng)è¨(shè)計(jì)上,該無(wú)刷電機(jÄ«)產(chÇŽn)哿œ‰ä¸€å®šçš„æŽ¨å»£åƒ¹(jià )值。