引言
在大型旋轉(zhuÇŽn)機(jÄ«)æ¢°ã€æ©‹æ¢ã€åœ°ä¸‹éµè·¯ã€åŠ å·¥æ©Ÿ(jÄ«)床ç‰é ˜(lÇng)åŸŸï¼Œå°æŒ¯å‹•信號進(jìn)行采集和分æžï¼Œå¯ä»¥å¯¦ç¾(xià n)å±éšªé (yù)å ±ã€æ•…éšœè¨ºæ–·ã€æ€§èƒ½æŒ‡æ¨™(biÄo)分æžç‰å¤šé …功能。傳統(tÇ’ng)çš„ä¾¿æ”œå¼æŒ¯å‹•測é‡åˆ†æžå„€å¤§å¤šç”¨å–®ç‰‡æ©Ÿ(jÄ«)或RISC CPUä½œç‚ºæ ¸å¿ƒè™•ç†å™¨ï¼Œä¸€èˆ¬æ˜¯8使ˆ–16ä½çš„,內(nèi)å˜åªæœ‰å¹¾Kb,外部å˜å„²å™¨çš„容é‡ä¹Ÿåªæœ‰1~2 Mb,å†åŠ ä¸ŠCPUçš„ä¸»é »ä¸é«˜ï¼Œé€²(jìn)è¡Œå¤§é‡æ•¸(shù)據(jù)é‹(yùn)算(如FFTç‰ï¼‰ï¼Œéœ€è¦å¾ˆé•·æ™‚間,圖åƒé¡¯ç¤ºåŸºæœ¬ä¸Šä¾é 黑白液晶å±ï¼Œå¯ä»¥é¡¯ç¤ºçš„å…§(nèi)å®¹å°‘ï¼Œå› æ¤å°å‚³çµ±(tÇ’ng)çš„ä¾¿æ”œå¼æŒ¯å‹•測試分æžå„€é€²(jìn)行性能的改進(jìn)很有必è¦ã€‚
æœ¬é …ç›®é‡‡ç”¨ARM9çš„S3C2410處ç†å™¨ï¼Œå¯ä»¥é€£çºŒ(xù)監(jiÄn)測8個通é“,æä¾›è½‰(zhuÇŽn)é€Ÿã€æ£’åœ–ã€æŒ¯å‹•é€šé »å€¼ã€æ•¸(shù)據(jù)åˆ—è¡¨ã€æ™‚域波形ã€é »èœåœ–ã€ä¼¯å¾·åœ–ç‰æŒ¯å‹•監(jiÄn)測ã€åˆ†æžåœ–表。采用640×480çš„TFT彩色顯示å±ï¼Œç•Œé¢ç¾Žè§€ï¼Œå¯ä»¥é¡¯ç¤ºçš„å…§(nèi)容è±å¯Œï¼Œé‡‡ç”¨64Mbå…§(nèi)å˜ï¼Œå¯ä»¥æš«å˜é•·æ™‚間的采樣數(shù)據(jù)ã€é‹(yùn)ç®—çµ(jié)果數(shù)據(jù),采用64Mb NAND FLASH,å¯ä»¥ä¿å˜å¤šçµ„æ¸¬é‡æ·å²æ•¸(shù)據(jù)。體ç©å°,22cm×18cm×10cm,攜帶方便,較以å‰ç”¢(chÇŽn)å“,性能有了大幅度的æé«˜ã€‚
硬件部分介紹
硬件主è¦ç”±3部分組æˆï¼Œæ ¸å¿ƒæ¿ã€åº•æ¿åŠä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿å…±3塊電路æ¿çµ„æˆï¼Œä¸‹é¢åˆ†åˆ¥ä»‹ç´¹ã€‚
æ ¸å¿ƒæ¿
æ ¸å¿ƒæ¿ä¸»è¦ç”±S3C2410處ç†å™¨ã€64Mb NAND FLASH(K9F1208)ã€64Mbå…§(nèi)å˜ï¼ˆ2片HY57V561620 )組æˆã€‚底æ¿çš„æŽ¥å£é‡‡ç”¨144引腳的內(nèi)å˜æ’槽,引出了16ä½çš„æ•¸(shù)據(jù)總線ã€16ä½çš„地å€ç¸½ç·šã€IIC接å£ã€SPI接å£ã€IIS接å£ã€JTAG接å£ã€USB接å£ã€LCD接å£ã€è§¸æ‘¸å±æŽ¥å£ç‰CPU的輸入輸出å£ç·šã€‚
S3C2410處ç†å™¨æ˜¯Samsungå…¬å¸åŸºäºŽARMå…¬å¸çš„ARM920T處ç†å™¨æ ¸ï¼Œé‡‡ç”¨0.18μmåˆ¶é€ å·¥è—çš„32ä½å¾®æŽ§åˆ¶å™¨ã€‚該處ç†å™¨æ“有:ç¨ç«‹çš„16KB指令Cacheå’Œ16KB數(shù)據(jù)Cacheã€MMUã€æ”¯æŒTFTçš„LCD控制器ã€NANDé–ƒå˜æŽ§åˆ¶å™¨ã€3è·¯UARTã€4è·¯DMAã€4路帶PWMçš„Timer ã€I/Oå£ã€RTCã€8è·¯10ä½ADCã€Touch Screen接å£ã€IIC-BUS 接å£ã€IIS-BUS接å£ã€2個USB主機(jÄ«)ã€1個USBè¨(shè)å‚™ã€SD主機(jÄ«)å’ŒMMC接å£ã€2è·¯SPI。S3C2410處ç†å™¨æœ€é«˜å¯é‹(yùn)行在203MHz。æ¯ç§’é˜çš„é‹(yùn)算能力為203×1.1MIPS,所以å°FFT的計算éžå¸¸çš„快。
電路原ç†åœ–è¨(shè)計åƒè€ƒäº†ä¸‰æ˜Ÿå…¬å¸æä¾›çš„è©•ä¼°æ¿çš„ORCADæ ¼å¼çš„電路原ç†åœ–。å°ç¶“(jÄ«ng)驗:國內(nèi)的硬件工程師普é熟悉PROTEL軟件,å°ORCAD䏿˜¯å¾ˆç†Ÿæ‚‰ï¼Œç”¨PROTEL 2004å¯ä»¥ç›´æŽ¥æ‰“é–‹ORCADæ ¼å¼çš„三星公å¸çš„S3C2410è©•ä¼°æ¿çš„電路原ç†åœ–,é©ç•¶(dÄng)?shù)男薷木涂梢å•纬勺约旱男枰腜ROTELæ ¼å¼çš„電路原ç†åœ–,而且ä¸å®¹æ˜“å‡ºéŒ¯ï¼Œæ‰€ä»¥æœ¬æ ¸å¿ƒæ¿çš„原ç†åœ–è¨(shè)計éžå¸¸é †åˆ©ã€‚
PCBçš„è¨(shè)計由于S3C2410采用272引腳的BGAå°è£ï¼Œæ‰€ä»¥é›»è·¯æ¿çš„制作采用了6層電路æ¿ï¼Œå¾žé ‚å±¤åˆ°åº•å±¤ä¾æ¬¡ç‚ºå…ƒä»¶å±¤ã€åœ°ã€å¸ƒç·šå±¤1ã€å¸ƒç·šå±¤2ã€åœ°ã€åº•å±¤ã€‚å¸ƒç·šé–“è·æœ€å°ç‚º5mil,最å°ç·šå¯¬5mil, éŽå”大å°8/16milï¼Œæ ¸å¿ƒæ¿å…¨éƒ¨é‡‡ç”¨æ‰‹å·¥å¸ƒç·šå®Œæˆã€‚
底æ¿çš„è¨(shè)計
底æ¿ä¸»è¦ç”±A/D電路ã€TFTå½©è‰²å±æŽ¥å£ã€ç¶²(wÇŽng)絡(luò)接å£é›»è·¯ã€è§¸æ‘¸å±æŽ¥å£é›»è·¯çµ„æˆï¼Œå„éƒ¨åˆ†çš„é›»è·¯å¦‚ä¸‹é¢æ‰€è¿°ã€‚
A/D芯片與CPU的接å£
A/D芯片采用AD7864,AD7864是一種高速ã€ä½ŽåŠŸè€—ã€å¯ä»¥4通é“åŒæ™‚采樣的A/D轉(zhuÇŽn)æ›å™¨ã€‚它的主è¦ç‰¹æ€§æœ‰ï¼šé«˜é€Ÿ12ä½A/D轉(zhuÇŽn)æ›å™¨ï¼›åŒæ™‚采樣4個輸入通é“,并具有4個采樣ã€ä¿æŒæ”¾å¤§å™¨ï¼›0.35μsé‡‡æ¨£ä¿æŒç²å–時間,æ¯ä¸€å€‹é€šé“轉(zhuÇŽn)æ›æ™‚é–“1.65μsï¼›å¯ä»¥é€šéŽè»Ÿä»¶æˆ–者硬件的方法é¸å–用于采樣的通é“;單電æºä¾›é›»ï¼ˆ+5V);多個轉(zhuÇŽn)æ›é›»å£“范åœï¼›å…·æœ‰é«˜é€Ÿå¹¶è¡ŒæŽ¥å£ï¼Œå¯ä»¥èˆ‡è™•ç†å™¨ç›´æŽ¥é€£æŽ¥ï¼›ä½ŽåŠŸè€—ï¼Œæ¯é€šé“功耗90mWï¼›å°äºŽæ¯ä¸€å€‹æ¨¡æ“¬è¼¸å…¥é€šé“凿œ‰éŽå£“ä¿è·(hù)電路。AD7864 4通é“åŒæ™‚工作時,最大采樣率å¯ä»¥é«˜é”(dá)130kHz。用了2片AD7864,å¯ä»¥åŒæ™‚采樣8è·¯ä¿¡è™Ÿï¼ŒåŒæ™‚監(jiÄn)測8個通é“。
通常的機(jÄ«)械的轉(zhuÇŽn)速的范åœåœ¨100~30000轉(zhuÇŽn)/åˆ†ï¼Œå³æœ€é«˜é »çŽ‡ç‚º500Hzï¼Œæ ¹æ“š(jù)振動分æžå„€çš„采樣需è¦ï¼Œæ¯å€‹å‘¨æœŸé‡‡128å€‹é»žè¨ˆç®—ï¼Œé‡‡æ¨£é »çŽ‡ä¸è¶…éŽ64kHz, é€™æ¨£çš„é‡‡æ¨£é »çŽ‡èˆ‡S3C2410çš„CPUæ ¸å¿ƒé »çŽ‡200MHzã€å¤–部數(shù)據(jù)ç¸½ç·šé »çŽ‡çš„100MHz相比還是很低的。
å› æ¤é‡‡ç”¨AD7864çš„A/D轉(zhuÇŽn)æ›çµ(jié)æŸä¿¡è™ŸBUSYçš„ä¸‹é™æ²¿ä¸æ–·CPU,然åŽç”±S3C2410直接讀å–A/D轉(zhuÇŽn)æ›åŽçš„æ•¸(shù)據(jù)到內(nèi)å˜ä¸åŽ»ã€‚æ²’æœ‰é‡‡ç”¨å¤–éƒ¨RAMç·©å˜A/D轉(zhuÇŽn)æ›åŽçš„æ•¸(shù)據(jù)或用FIFO來尿•¸(shù)據(jù)進(jìn)行緩å˜ï¼Œç„¶åŽå†ç”±CPU讀å–ç·©å˜é‡Œæ•¸(shù)據(jù)的方法。電路的實際測試çµ(jié)æžœæ˜¯é‡‡æ¨£é »çŽ‡å°äºŽ100kHz時,完全å¯ä»¥æ£ç¢ºç„¡èª¤çš„讀å–到采樣åŽçš„æ•¸(shù)據(jù),大大的簡化了A/D采樣部分的電路è¨(shè)計åŠç¯€(jié)çœäº†é›»è·¯æˆæœ¬ã€‚與CPU的接å£é›»è·¯çš„è¨(shè)計如圖1所示。


å…¶ä¸AIN1-AIN8是模擬信號的輸入,DATA0-DATA11是S3C2410的數(shù)據(jù)總線的低12ä½ï¼ŒEINT0接S3C2410çš„å¤–éƒ¨ä¸æ–·ç·šçš„0號線,nOE是S3C2410的讀使能信號,AD7864的片é¸ç›´æŽ¥æŽ¥S3C2410çš„NGCS1ã€NGCS2,å°AD7864進(jìn)行讀æ“作用BANK1ã€BANK2的首地å€ï¼Œå³0x08000000,0x10000000。CONV_STARTæ˜¯é‡‡æ¨£é »çŽ‡ä¿¡è™Ÿï¼Œå¯ä»¥æ˜¯å¤–éƒ¨çš„åŒæ¥é‡‡æ¨£ä¿¡è™Ÿï¼Œæ¯å‘¨æœŸé‡‡128個點,也å¯ä»¥æ˜¯å…§(nèi)部PWM電路產(chÇŽn)生的內(nèi)部éžåŒæ¥é‡‡æ¨£ä¿¡è™Ÿã€‚
é¡¯ç¤ºå±æŽ¥å£é›»è·¯
S3C2410自帶LCDé©…(qÅ«)動器,所以顯示接å£çš„è¨(shè)計比較簡單,使用的TFT顯示å±ç‚ºè‡ºç£å…ƒå¤ªçš„PD064VT4å±ï¼ŒPD064VT4屿˜¯ä¸€æ¬¾640×480的高亮TFT彩å±ï¼Œå…¶äº®åº¦ç‚º400Cd/m2,éžå¸¸é©åˆå·¥æ¥(yè)å ´åˆçš„æ‡‰(yÄ«ng)用,信號接å£ï¼šå¹¶è¡Œ 18ä½ RGB,æ¯ç¨®é¡è‰²ç”¨6ä½ä¿¡è™Ÿè¡¨ç¤ºã€‚TFT顯示å±èˆ‡CPU的數(shù)嗿ޥå£éƒ¨åˆ†å¦‚圖2所示。
圖2 PD064VT4顯示å±èˆ‡S3C2410的數(shù)嗿ޥå£éƒ¨åˆ†
S3C2410çš„LCDé©…(qÅ«)å‹•å™¨æŽ¥å£æ˜¯24ä½çš„RGB接å£ï¼Œå…¶è¼¸å‡ºä¿¡è™Ÿç‚ºVD0-VD7ã€VD8-VD15ã€VD16-VD24,æ¯ç¨®é¡è‰²ç”¨8使•¸(shù)å—信號表示; PD064VT4 TFTå±çš„æŽ¥å£æ˜¯18ä½çš„RGB接å£ï¼Œæ¯ç¨®é¡è‰²ç”¨6為數(shù)å—信號表示,å³R0-R5ã€G0-G5ã€B0-B5。連接時VD2-VD7å’ŒB0-B5相連,VD10-VD15å’ŒG0-G5相連,VD18-VD23å’ŒR0-R5相連。VD0ã€VD1ã€VD8ã€VD9ã€VD16ã€VD17ä¸ä½¿ç”¨ã€‚
è§¸æ‘¸å±æŽ¥å£é›»è·¯
本振動測試分æžå„€çš„人機(jÄ«)接å£ç•Œé¢é‡‡ç”¨äº†é›»é˜»å¼è§¸æ‘¸å±ï¼ŒåŠ ä¸Šé‡‡ç”¨äº†640×480的高亮TFT彩色液晶å±ï¼Œä½¿å¾—人機(jÄ«)界é¢å¾ˆå‹å–„,æ“作éžå¸¸æ–¹ä¾¿ã€‚S3C2410自帶了觸摸å±çš„æŽ¥å£é›»è·¯ï¼Œè§¸æ‘¸å±æŽ¥å£çš„è¨(shè)è¨ˆæ¯”è¼ƒç°¡å–®ã€‚è§¸æ‘¸å±æŽ¥å£é›»è·¯å¦‚圖3,其ä¸YUã€YLã€XRã€XL表示4線電阻å¼è§¸æ‘¸å±çš„çš„4個接å£ä¿¡è™Ÿã€‚
ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿
ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿å¯ä»¥æŽ¥æ¸¦æµå‚³æ„Ÿå™¨æˆ–ç£é›»å‚³æ„Ÿå™¨ï¼Œæ¯å€‹é€šé“æ ¹æ“š(jù)接入的傳感器類型ä¸åŒï¼Œè™•ç†é›»è·¯æœ‰æ‰€å€(qÅ«)別,電路主è¦ç”±ä½Žé€šã€é«˜é€šæ¿¾æ³¢é›»è·¯ï¼Œæœ‰æ•ˆå€¼è½‰(zhuÇŽn)æ›é›»è·¯ç‰çµ„æˆï¼Œè¼¸å‡ºäº¤æµçš„æ³¢å½¢ä¿¡è™Ÿæˆ–ç›´æµä¿¡è™Ÿï¼ˆé–“隙電壓或振動烈度), ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿é‚„包括一個鎖相環(huán)電路,使AD7864çš„é‡‡æ¨£é »çŽ‡æ˜¯è½‰(zhuÇŽn)速的128å€ï¼Œå³æ¯å€‹å‘¨æœŸé‡‡æ¨£128點。
ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿å’Œåº•æ¿çš„連接關(guÄn)系如圖4所示。

IO1-IO7是S3C2410çš„8個IOå£ç·šï¼Œä¸»è¦ç”¨ä¾†å°ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿çš„輸出信號進(jìn)è¡Œé¸æ“‡ï¼Œé¦–先控制是按照渦æµå‚³æ„Ÿå™¨è™•ç†é‚„是按照ç£é›»å‚³æ„Ÿå™¨è™•ç†ï¼Œç„¶åŽæŽ§åˆ¶æ˜¯è¼¸å‡ºäº¤æµçš„æ³¢å½¢ä¿¡è™Ÿé‚„是輸出直æµä¿¡è™Ÿï¼ˆé–“隙電壓或振動烈度)。
Ch01-ch08æ˜¯ä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿è¼¸å‡ºçµ¦AD7864去進(jìn)è¡Œé‡‡æ¨£çš„äº¤æµæˆ–ç›´æµä¿¡è™Ÿã€‚KPH信號是轉(zhuÇŽn)速信號,é€åˆ°S3C2410的定時器去測é‡è½‰(zhuÇŽn)速。CLKçš„é »çŽ‡æ˜¯KPHé »çŽ‡çš„128å€ï¼Œä¹Ÿå³å¤–éƒ¨åŒæ¥é‡‡æ¨£é »çŽ‡ä¿¡è™Ÿï¼Œé€šéŽä¿¡è™Ÿè¼¸å…¥æŽ¥å£æ¿ä¸Šçš„一個鎖相環(huán)電路產(chÇŽn)生,COUT是由S3C2410的定時器å°è¼¸å…¥çš„CLK信號進(jìn)行128åˆ†é »ç”¢(chÇŽn)生,是å饋給鎖相環(huán)é›»è·¯çš„ç›¸ä½æ¯”較信號。
軟件è¨(shè)計
考慮到軟件åªéœ€è¦ç”¨å–®ä»»å‹™(wù)å°±å¯ä»¥å®Œæˆæ‰€æœ‰çš„功能,沒有必è¦ä½¿ç”¨åµŒå…¥å¼å¯¦æ™‚æ“作系統(tÇ’ng),å¦å¤–考慮到商用嵌入å¼å¯¦æ™‚æ“作系統(tÇ’ng)(如VxWORKSï¼‰çš„åƒ¹æ ¼è¼ƒè²´ï¼Œé–‹æºçš„åµŒå…¥å¼æ“作系統(tÇ’ng)如Linuxå°é–‹ç™¼(fÄ)äººå“¡çš„è¦æ±‚較高,å¦å¤–ä¹Ÿä¸æ˜¯ç¡¬å¯¦æ™‚çš„æ“作系統(tÇ’ng),所以沒有采用嵌入å¼å¯¦æ™‚æ“作系統(tÇ’ng)。
本振動測試分æžå„€é‡‡ç”¨äº†640×480çš„TFT真彩å±ï¼Œç‚ºäº†é”(dá)到比較好的顯示效果,首先編寫好基本的畫圖函數(shù)(畫點ã€ç·šã€åœ“ã€å¼§ç·šã€æ©¢åœ“ã€çŸ©å½¢ã€å¡«å……),然åŽåœ¨æ¤åŸºç¤Ž(chÇ”)上編寫了顯示圖片ã€ç°¡å–®çª—å£ã€ä¸‹æ‹‰å¼èœå–®çš„函數(shù)。由于儀表的顯示界é¢é‚„æ˜¯ç›¸å°æ¯”較簡單,并ä¸éœ€è¦åšæˆåƒWindows視窗那樣的復(fù)雜界é¢ï¼Œæ‰€ä»¥ç•Œé¢é¡¯ç¤ºæ•ˆæžœé‚„是很漂亮的,é”(dá)到了é (yù)æœŸçš„è¦æ±‚。
æ•´é«”æµç¨‹åœ–如圖5圖6所示。
圖5 整體軟件æµç¨‹åœ–
圖6 信號的A/D采集æµç¨‹åœ–
çµ(jié)æŸèªž
本文詳細(xì)的說明了基于S3C2410的振動測試分æžå„€çš„硬件電路è¨(shè)計åŠè»Ÿä»¶è¨(shè)計éŽç¨‹ï¼Œé‡‡ç”¨äº†ARM9çš„S3C2410處ç†å™¨ï¼Œè¼ƒä»¥å¾€ç”¢(chÇŽn)å“的性能有大幅度的æé«˜ã€‚由于S3C2410的內(nèi)æ ¸é »çŽ‡åŠå¤–éƒ¨ç¸½ç·šçš„é »çŽ‡å¾ˆé«˜ï¼Œè‡ªå¸¶å½©è‰²LCDé©…(qÅ«)動器åŠè§¸æ‘¸å±æŽ¥å£ï¼Œæ‰€ä»¥å¤§å¤§æé«˜äº†FFTé‹(yùn)算的能力,å¯ä»¥ç”¨äºŽå¯¦æ™‚監(jiÄn)測,并簡化了A/D數(shù)據(jù)采集部分的電路è¨(shè)è¨ˆå’Œæˆæœ¬ï¼Œå¦å¤–人機(jÄ«)接å£éžå¸¸çš„å‹å¥½ï¼Œç•Œé¢æ¼‚亮。