USB接口的多功能容柵傳感器測量係統
發布時間:2011-11-22
中心議題:
引言
容柵測量器具有測量可靠、體積小、功耗低、功能多等特點。隨著測量技術向精密化、高速化、多功能化發展,具有多種優良特性的容柵傳感器應用得越來越廣泛。由於容柵傳感器數據的傳輸多采用RS232/RS485總線方式,而USB總線方式方便、高效,並有取代串口通信方式的趨勢,因此設計一款帶USB接口的容柵傳感器測量係統具有實際應用價值。
1 容柵傳感器測量原理
容rong柵zha傳chuan感gan器qi的de工gong作zuo原yuan理li是shi根gen據ju平ping板ban電dian容rong理li論lun而er來lai。一yi般ban容rong柵zha傳chuan感gan器qi的de結jie構gou包bao括kuo動dong柵zha板ban和he定ding柵zha板ban。動dong柵zha板ban包bao含han發fa射she極ji和he接jie收shou極ji,定ding柵zha板ban包bao含han反fan射she極ji。反fan射she極ji分fen別bie和he發fa射she極ji、接收極形成平板電容器。通過在發射極上施加n相xiang激ji勵li信xin號hao,反fan射she極ji將jiang此ci信xin號hao反fan射she到dao接jie收shou極ji,隨sui著zhe動dong柵zha板ban的de移yi動dong,接jie收shou極ji的de感gan應ying信xin號hao的de幅fu度du變bian化hua不bu大da,而er相xiang位wei變bian化hua與yu位wei移yi量liang成cheng一yi定ding函han數shu關guan係xi:
θ(x)=arctan[(1-2x/w)/(1+√2)] (1)
其中,x為位移量,w為小發射極寬度。當位移發生一個w寬度變化時,接收極產生360°/n的相差。設激勵信號的周期為T,則有:
T=N·β (2)
式中:β為最小計時單位,N為常數。而每周期代表位移量為L(本係統為0.508 mm),在每周期中β代表一個小相位,則一個周期被分解為N個小相位,每個小相位代表位移量即最小分辨率:
△l=L/N (3)
本係統N為512,即最小分辨率約為0.001 mm。對於最大測量速度Vmax,因為在一個周期內最多能分辨N個相位,所以有:
Vmax=L/T (4)
2 係統硬件設計
2.1 C8051F321芯片介紹
C8051F321片內集成了數據采集和控製係統中常用的模擬部件和其他數字外設,采用交叉開關實現I/O端口的靈活配置,自帶USB2.0收發器、控製處理器和內部上拉電阻,可在全速(12MHz)或低速(1.5MHz)下運行,支持8個靈活通用的USB端點,內置1K的USB專用緩衝寄存器。
2.2 傳感器信號處理模塊設計
容柵傳感器接口為B531,信號線有4根:電源線(1.5 V)、地線(0 V)、時鍾線(CK)、串行數據線(DATA),並且通過控製CK、DATA信號線的電平可以實現容柵傳感器的不同功能比,如最大值跟蹤、最小值跟蹤、數據保持和清零等。
由於容柵傳感器內部的專用控製芯片輸出的信號電壓為1.5 V,而後續數據采集係統工作電壓為5 V,要進行數據交換則必須進行電平轉換,電平轉換原理圖如圖1所示。電路中采用LM393芯片轉換電壓,LM393芯片實質上為2個比較器,比較電壓為容柵傳感器工作電壓的一半左右,設為0.6V。通過比較電壓0.6V與CK和DATA信號線電平比較,即可將CK、DATA信號線的電壓轉換為0V或者5V。
[page]
2.3 硬件抗幹擾電路設計
youyuxitongjingchanggongzuozaigongyexianchangdenglingyu,gezhongdianciganraohenchangjian,weileshixitongnengwendinggongzuo,caiyongguangougelijishujiangchuanganqihedanpianjigeli。guangougeliyuanliturutu2所示。光耦器件采用HCPL2631高速光耦,輸出引腳OUT1和OUT2經過上拉電阻處理後,將CK2和DATA2信號傳輸給C8051F321單片機處理。
3 係統軟件設計
3.1 數據采集程序
容柵傳感器時序圖如圖3所示。其中包含3個CK信號說明和1個DATA信號說明。CK(a)表示要發送的完整數據間的時序關係;CK(b)表示一個完整數據內部各個數據組的時序關係;CK(c)和DATA表示一個數據組內的時序關係和對采樣點的說明。由圖可知數據每隔250 ms發送一次,在時鍾CK的上升沿數據有效。數據由LSB到MSB依次發送,總共24位二進製數據,分成6組,每組數據間隔820μs。其中前5組為數據位,第6組為控製位組(包含符號位和公英製位),控製位組的第0位的“0”表示正數,“1”表示負數,第3位“0”表示公製單位mm,最小單位0.01 mm,“1”表示英製單位inch,最小單位0.000 5 inch,x表示無效。為了能夠實時采集數據,采用中斷方式檢測CK信號,邊沿觸發。檢測CK信號的高電平持續超過820μs時,當出現下降沿時觸發中斷,進入中斷程序,再持續檢測低電平直到出現上升沿,讀取DATA信號電平並存儲,總共采集24位。返回主函數根據符號位和公英製位進行相應處理。相關程序代碼如下:
3.2 USB程序
因為C8051F321的USB模塊高度集成化,所以對USB接口的設計主要是USB固件程序的設計。其中最重要的是USB描述符和USB傳輸中斷的處理。當USB中斷到達時,C8051F321首先讀取3個中斷寄存器(CMINT、IN1INT和OUT1INT)來判斷中斷來源(USB複位中斷、端點0中斷、端點1輸入中斷、端點2輸出中斷),然後跳入相應的處理模塊進行處理。USB中斷程序流程如圖4所示。
[page]
端點0主要用於主機對USB設備的配置、狀態信息的獲取和設備錯誤的糾正等,它的中斷處理模塊由控製輸出和控製輸入2部分組成。每次傳輸由設置事務開始,然後根據設置事務數據包中的USB標準命令請求判斷該次傳輸是控製輸入還是控製輸出。USB複位中斷將相關USB變量、寄存器和各端點的狀態恢複為初始狀態。端點1輸入中斷和端點2shuchuzhongduanjunweipiliangchuanshuzhongduan,qizhuyaozuoyongshizaishoudaozhongduanshi,zaigeziyudingyihaodehuanchongquzhongxieruyaochuanshugeizhujideshujuhuoduquchuanshuguolaideshuju。
3.3 主程序
係統程序主要包括主程序、時鍾初始化子程序、端口初始化子程序、USB控製器配置初始化子程序、延時子程序、采集數據中斷子程序、USB中斷子程序和附加功能子程序。由於采集數據實時性要求比較高,所以將采集數據中斷設為高優先級。
附加功能子程序包括正常計數、數據保持、最大值跟蹤、最小值跟蹤和清零的功能。對附加功能的實現均是通過控製CK和DATA信號線完成,附加功能轉換流程如圖5所示。給CK信號線一個負脈衝,即可完成清零操作;在正常計數狀態下將DATA信號線置為高電平,容柵傳感器將進入保數功能;如果再將CK信號線置為低電平,容柵傳感器進入最大值跟蹤功能;內部專用芯片將用新測得的數據與上一個數據進行比較,如果新測得數據大,則替換掉,否則丟棄。可以在上位機上通過USB測ce試shi軟ruan件jian發fa送song相xiang關guan命ming令ling來lai控kong製zhi係xi統tong進jin行xing操cao作zuo。程cheng序xu中zhong設she定ding一yi個ge字zi節jie的de變bian量liang來lai存cun放fang從cong上shang位wei機ji接jie收shou到dao的de命ming令ling,當dang判pan斷duan是shi其qi中zhong的de一yi個ge命ming令ling時shi就jiu調tiao用yong相xiang應ying的de處chu理li程cheng序xu完wan成cheng操cao作zuo。
3.4 軟件抗幹擾
環境的幹擾使單片機程序很容易“跑飛”,為了控製程序正常運行,除了硬件上使用光耦隔離技術之外,軟件上可采用設置“軟件陷阱”的de辦ban法fa來lai將jiang跑pao飛fei的de程cheng序xu拉la入ru正zheng常chang軌gui道dao,即ji在zai程cheng序xu代dai碼ma空kong間jian使shi用yong跳tiao轉zhuan指zhi令ling將jiang跑pao飛fei的de程cheng序xu拉la到dao程cheng序xu執zhi行xing的de開kai始shi位wei置zhi,具ju體ti操cao作zuo方fang法fa是shi在zai所suo有you未wei被bei使shi用yong的de代dai碼ma空kong間jian處chu寫xie入ru“LJMP 0000H”指令。另外,可利用單片機自帶的“看門狗”功能看住程序,一旦程序跑飛,看門狗將強製單片機複位。也就是說,在程序代碼中每隔一定時間就設置一個“喂狗指令”,清除看門狗計時器值,不讓其達到最大值而發出複位信號。
結語
使(shi)用(yong)主(zhu)機(ji)上(shang)的(de)軟(ruan)件(jian)測(ce)試(shi)出(chu)該(gai)係(xi)統(tong)軟(ruan)硬(ying)件(jian)能(neng)夠(gou)穩(wen)定(ding)可(ke)靠(kao)地(di)運(yun)行(xing),點(dian)擊(ji)測(ce)試(shi)軟(ruan)件(jian)的(de)相(xiang)關(guan)功(gong)能(neng)按(an)鈕(niu),容(rong)柵(zha)傳(chuan)感(gan)器(qi)能(neng)夠(gou)完(wan)成(cheng)相(xiang)應(ying)的(de)功(gong)能(neng)操(cao)作(zuo)。與(yu)傳(chuan)統(tong)的(de)RS232/RS485tongxinfangshixiangbijiao,gaifanganjiejuelebudaichuanxingtongxinfangshideshangweijidetongxinxiannan,kangganraonengligengqiang,weixitongtigonggengwendingdedianyuan,shiyongyueliehuanjingxiadegongyexianchangdegaojingduceliang。
- USB接口的多功能容柵傳感器測量係統
- 將傳感器信號電平轉換為CMOS電平
- 采用光耦隔離技術等增強係統的抗幹擾能力
引言
容柵測量器具有測量可靠、體積小、功耗低、功能多等特點。隨著測量技術向精密化、高速化、多功能化發展,具有多種優良特性的容柵傳感器應用得越來越廣泛。由於容柵傳感器數據的傳輸多采用RS232/RS485總線方式,而USB總線方式方便、高效,並有取代串口通信方式的趨勢,因此設計一款帶USB接口的容柵傳感器測量係統具有實際應用價值。
1 容柵傳感器測量原理
容rong柵zha傳chuan感gan器qi的de工gong作zuo原yuan理li是shi根gen據ju平ping板ban電dian容rong理li論lun而er來lai。一yi般ban容rong柵zha傳chuan感gan器qi的de結jie構gou包bao括kuo動dong柵zha板ban和he定ding柵zha板ban。動dong柵zha板ban包bao含han發fa射she極ji和he接jie收shou極ji,定ding柵zha板ban包bao含han反fan射she極ji。反fan射she極ji分fen別bie和he發fa射she極ji、接收極形成平板電容器。通過在發射極上施加n相xiang激ji勵li信xin號hao,反fan射she極ji將jiang此ci信xin號hao反fan射she到dao接jie收shou極ji,隨sui著zhe動dong柵zha板ban的de移yi動dong,接jie收shou極ji的de感gan應ying信xin號hao的de幅fu度du變bian化hua不bu大da,而er相xiang位wei變bian化hua與yu位wei移yi量liang成cheng一yi定ding函han數shu關guan係xi:
θ(x)=arctan[(1-2x/w)/(1+√2)] (1)
其中,x為位移量,w為小發射極寬度。當位移發生一個w寬度變化時,接收極產生360°/n的相差。設激勵信號的周期為T,則有:
T=N·β (2)
式中:β為最小計時單位,N為常數。而每周期代表位移量為L(本係統為0.508 mm),在每周期中β代表一個小相位,則一個周期被分解為N個小相位,每個小相位代表位移量即最小分辨率:
△l=L/N (3)
本係統N為512,即最小分辨率約為0.001 mm。對於最大測量速度Vmax,因為在一個周期內最多能分辨N個相位,所以有:
Vmax=L/T (4)
2 係統硬件設計
2.1 C8051F321芯片介紹
C8051F321片內集成了數據采集和控製係統中常用的模擬部件和其他數字外設,采用交叉開關實現I/O端口的靈活配置,自帶USB2.0收發器、控製處理器和內部上拉電阻,可在全速(12MHz)或低速(1.5MHz)下運行,支持8個靈活通用的USB端點,內置1K的USB專用緩衝寄存器。
2.2 傳感器信號處理模塊設計
容柵傳感器接口為B531,信號線有4根:電源線(1.5 V)、地線(0 V)、時鍾線(CK)、串行數據線(DATA),並且通過控製CK、DATA信號線的電平可以實現容柵傳感器的不同功能比,如最大值跟蹤、最小值跟蹤、數據保持和清零等。
由於容柵傳感器內部的專用控製芯片輸出的信號電壓為1.5 V,而後續數據采集係統工作電壓為5 V,要進行數據交換則必須進行電平轉換,電平轉換原理圖如圖1所示。電路中采用LM393芯片轉換電壓,LM393芯片實質上為2個比較器,比較電壓為容柵傳感器工作電壓的一半左右,設為0.6V。通過比較電壓0.6V與CK和DATA信號線電平比較,即可將CK、DATA信號線的電壓轉換為0V或者5V。

[page]
2.3 硬件抗幹擾電路設計
youyuxitongjingchanggongzuozaigongyexianchangdenglingyu,gezhongdianciganraohenchangjian,weileshixitongnengwendinggongzuo,caiyongguangougelijishujiangchuanganqihedanpianjigeli。guangougeliyuanliturutu2所示。光耦器件采用HCPL2631高速光耦,輸出引腳OUT1和OUT2經過上拉電阻處理後,將CK2和DATA2信號傳輸給C8051F321單片機處理。

3 係統軟件設計
3.1 數據采集程序
容柵傳感器時序圖如圖3所示。其中包含3個CK信號說明和1個DATA信號說明。CK(a)表示要發送的完整數據間的時序關係;CK(b)表示一個完整數據內部各個數據組的時序關係;CK(c)和DATA表示一個數據組內的時序關係和對采樣點的說明。由圖可知數據每隔250 ms發送一次,在時鍾CK的上升沿數據有效。數據由LSB到MSB依次發送,總共24位二進製數據,分成6組,每組數據間隔820μs。其中前5組為數據位,第6組為控製位組(包含符號位和公英製位),控製位組的第0位的“0”表示正數,“1”表示負數,第3位“0”表示公製單位mm,最小單位0.01 mm,“1”表示英製單位inch,最小單位0.000 5 inch,x表示無效。為了能夠實時采集數據,采用中斷方式檢測CK信號,邊沿觸發。檢測CK信號的高電平持續超過820μs時,當出現下降沿時觸發中斷,進入中斷程序,再持續檢測低電平直到出現上升沿,讀取DATA信號電平並存儲,總共采集24位。返回主函數根據符號位和公英製位進行相應處理。相關程序代碼如下:

因為C8051F321的USB模塊高度集成化,所以對USB接口的設計主要是USB固件程序的設計。其中最重要的是USB描述符和USB傳輸中斷的處理。當USB中斷到達時,C8051F321首先讀取3個中斷寄存器(CMINT、IN1INT和OUT1INT)來判斷中斷來源(USB複位中斷、端點0中斷、端點1輸入中斷、端點2輸出中斷),然後跳入相應的處理模塊進行處理。USB中斷程序流程如圖4所示。

端點0主要用於主機對USB設備的配置、狀態信息的獲取和設備錯誤的糾正等,它的中斷處理模塊由控製輸出和控製輸入2部分組成。每次傳輸由設置事務開始,然後根據設置事務數據包中的USB標準命令請求判斷該次傳輸是控製輸入還是控製輸出。USB複位中斷將相關USB變量、寄存器和各端點的狀態恢複為初始狀態。端點1輸入中斷和端點2shuchuzhongduanjunweipiliangchuanshuzhongduan,qizhuyaozuoyongshizaishoudaozhongduanshi,zaigeziyudingyihaodehuanchongquzhongxieruyaochuanshugeizhujideshujuhuoduquchuanshuguolaideshuju。
3.3 主程序
係統程序主要包括主程序、時鍾初始化子程序、端口初始化子程序、USB控製器配置初始化子程序、延時子程序、采集數據中斷子程序、USB中斷子程序和附加功能子程序。由於采集數據實時性要求比較高,所以將采集數據中斷設為高優先級。
附加功能子程序包括正常計數、數據保持、最大值跟蹤、最小值跟蹤和清零的功能。對附加功能的實現均是通過控製CK和DATA信號線完成,附加功能轉換流程如圖5所示。給CK信號線一個負脈衝,即可完成清零操作;在正常計數狀態下將DATA信號線置為高電平,容柵傳感器將進入保數功能;如果再將CK信號線置為低電平,容柵傳感器進入最大值跟蹤功能;內部專用芯片將用新測得的數據與上一個數據進行比較,如果新測得數據大,則替換掉,否則丟棄。可以在上位機上通過USB測ce試shi軟ruan件jian發fa送song相xiang關guan命ming令ling來lai控kong製zhi係xi統tong進jin行xing操cao作zuo。程cheng序xu中zhong設she定ding一yi個ge字zi節jie的de變bian量liang來lai存cun放fang從cong上shang位wei機ji接jie收shou到dao的de命ming令ling,當dang判pan斷duan是shi其qi中zhong的de一yi個ge命ming令ling時shi就jiu調tiao用yong相xiang應ying的de處chu理li程cheng序xu完wan成cheng操cao作zuo。

環境的幹擾使單片機程序很容易“跑飛”,為了控製程序正常運行,除了硬件上使用光耦隔離技術之外,軟件上可采用設置“軟件陷阱”的de辦ban法fa來lai將jiang跑pao飛fei的de程cheng序xu拉la入ru正zheng常chang軌gui道dao,即ji在zai程cheng序xu代dai碼ma空kong間jian使shi用yong跳tiao轉zhuan指zhi令ling將jiang跑pao飛fei的de程cheng序xu拉la到dao程cheng序xu執zhi行xing的de開kai始shi位wei置zhi,具ju體ti操cao作zuo方fang法fa是shi在zai所suo有you未wei被bei使shi用yong的de代dai碼ma空kong間jian處chu寫xie入ru“LJMP 0000H”指令。另外,可利用單片機自帶的“看門狗”功能看住程序,一旦程序跑飛,看門狗將強製單片機複位。也就是說,在程序代碼中每隔一定時間就設置一個“喂狗指令”,清除看門狗計時器值,不讓其達到最大值而發出複位信號。
結語
使(shi)用(yong)主(zhu)機(ji)上(shang)的(de)軟(ruan)件(jian)測(ce)試(shi)出(chu)該(gai)係(xi)統(tong)軟(ruan)硬(ying)件(jian)能(neng)夠(gou)穩(wen)定(ding)可(ke)靠(kao)地(di)運(yun)行(xing),點(dian)擊(ji)測(ce)試(shi)軟(ruan)件(jian)的(de)相(xiang)關(guan)功(gong)能(neng)按(an)鈕(niu),容(rong)柵(zha)傳(chuan)感(gan)器(qi)能(neng)夠(gou)完(wan)成(cheng)相(xiang)應(ying)的(de)功(gong)能(neng)操(cao)作(zuo)。與(yu)傳(chuan)統(tong)的(de)RS232/RS485tongxinfangshixiangbijiao,gaifanganjiejuelebudaichuanxingtongxinfangshideshangweijidetongxinxiannan,kangganraonengligengqiang,weixitongtigonggengwendingdedianyuan,shiyongyueliehuanjingxiadegongyexianchangdegaojingduceliang。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- XZ1824:寬電壓輸入下的高效降壓型DC-DC控製器
- 上海通用重工AR係列:350A空冷機器人焊接套裝,解鎖高精度自動化焊接新效能
- 豆包和Gemini誰更“聰明”?2026年最新實測對比,看完不再糾結
- 2026藍牙亞洲大會暨展覽在深啟幕
- 新市場與新場景推動嵌入式係統研發走向統一開發平台
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
Tektronix
Thunderbolt
TI
TOREX
TTI
TVS
UPS電源
USB3.0
USB 3.0主控芯片
USB傳輸速度
usb存儲器
USB連接器
VGA連接器
Vishay
WCDMA功放
WCDMA基帶
Wi-Fi
Wi-Fi芯片
window8
WPG
XILINX
Zigbee
ZigBee Pro
安規電容
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智

