關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 智能傳感器的CAN總線接口設計

        智能傳感器的CAN總線接口設計

        作者: 時間:2011-08-19 來源:網絡 收藏

        2.1 信號的濾波處理
        考慮到日益惡劣的電磁干擾環境,對信號的濾波分兩級實現:終級為利用SoC中的高速MCU對采集的信號進行數字濾波(不在此討論);初級則是由信號預處理電路中R1、R2、C1、C2、C3,組成抗射頻干擾濾波器來實現,如圖2所示。當不考慮C3時,R1、C1和R2、C2就構成了兩輸出端至儀用放大器兩輸入端之間的兩低通濾波器,時間常數t1=R1·C1;t2=R2·C2。由于無論是傳感器至AD623之間的自然連線等效形成的t1和t2,還是人為的低通濾波器的t1和t2,都不能使RC完全匹配相等,即t1≠t2;△t=t1-t2≠0。這樣耦合到兩根連線上的干擾電磁波,即使是同頻、同相位、同幅值的共模信號,進入AD623進行放大時也必然出現相位差,并由此導致兩輸入端之間的幅值差。當干擾信號頻率較低時,由于△t相對干擾信號的周期較小,造成的兩輸入端之間的幅值差,相對共模部分很小,利用AD623的共模抑制能力,能對干擾信號進行較好地抑制(共模部分被抑制,差分部分影響較小);但當干擾信號頻率較高時,則△t相對干擾信號的周期較大,極端情況如兩路信號相位差180°時,則同頻、同相位、同幅值的共模干擾信號,進入AD623時被合成為兩倍幅值的同頻差分信號,該差分信號不僅不能被抑制,還被放大器放大,即被混疊到有效信號中,難以消除。為此,在兩低通濾波器之間跨接了電容C3,這樣該濾波器的差分帶寬為:
        c.jpg
        其中:R=R1=R2,C=C1=C2。
        比較(1)(2)兩式可以看出,當不接入C3時,濾波器的差分帶寬等于共模帶寬。因此,在帶寬范圍內的共模信號,因RC不完全匹配(△t≠ 0)引起的幅值差,在帶寬范圍內,濾波器不能將其濾除。當接入C3后,如果使C3=10C,則差分帶寬比共模帶寬降低了20余倍,因此可大量濾除因RC不匹配引起的差分信號。
        2.2 傳感器信號的放大
        對傳感器信號采用兩級放大。第一級用信號預處理電路中的儀用放大器AD623,進行固定增益的信號放大,增益G=100 kΩ/R3+1。可根據傳感器信號大小,選擇增益(通過選取R3阻值獲得),使通過一級放大后的傳感器額定輸出信號達到200 mV左右。第二級放大,用SOC中的程控放大器(PGA)實現;其可編程增益為0.5、1、2、4、8、16。理論上使一級放大后的傳感器額定輸出信號Vg1×16(二級放大最大增益)近似等于ADC的參考電壓(實際應用中一般為2/3~3/4參考電壓),從而最有效地利用ADC的分辨率。
        2.3 傳感器信號零點的補償與校準
        2.3.1 根據傳感器特性的補償
        傳感器在工況條件發生變化時,輸出信號會有相應的變化,該輸出信號的變化與被測物理量無關,即為漂移信號。當傳感器給出相應的特性值時,應檢測該工況條件的傳感器,實時監測傳感器的工況條件,利用MCU求得補償量,進行補償。導致傳感器零點漂移最常見的特性之一,是溫度特性,為補償因溫度變化引起的漂移,特選用了內含溫度傳感器的SoC——C8051F041。由于該嵌入傳感器中,因此其檢測到的溫度變化△t就是傳感器的溫度變化,若已知傳感器的溫度系數為aT(1/℃),則補償量VTR為:
        d.jpg
        其中YFS為傳感器的額定輸出。將該補償量疊加到傳感器信號中,即可消除溫漂的影響。
        2.3.2 根據傳感器應用特征的補償
        傳感器零點信號的漂移,變化是非常緩慢的,在一段時間內的漂移量很小。當傳感器工作于間歇方式且被測物理量的閾值遠大于傳感器一個工作周期內的漂移量時,則當傳感器輸出信號小于該閾值時,該輸出值即為補償量,與傳感器信號疊加后使輸出信號為零。
        為使傳感器信號與補償量疊加,利用SOC中的12位DAC(如圖2所示)輸出一補償電壓VB接一級放大器AD623的參考端(引腳5),則一級放大器輸出電壓Vout:
        e.jpg
        其中Vc為傳感器輸出的差分電壓信號’b1為一級放大器增益。
        當需進行溫度補償時,使VB=VB0+VTB×b1,其中VBO為當前(補償前)的VB。將(3)式代入則有:
        f.jpg
        從(6)式中的第2項可見,含有溫度漂移的傳感器輸出信號Vc被修正,溫漂被補償,零點被校準。
        當傳感器工作于間歇方式,溫度補償后二級放大后輸出為V=Vout×b2。當V小于被測物理量的閾值時,V即為補償量-V,使
        g.jpg
        其中b2為二級放大器選擇的增益,顯然再經二級放大后的輸出將為0,即零漂被補償了,零點被自動校準了。
        當傳感器工作于非間歇方式,或被測物理量的閾值很小,與一個工作周期內的漂移量相當時,則需采用人為的零點校準。即當傳感器處于零點時,發出校準指令,收到指令后,MCU立即將當前二級放大后的電壓值V,通過(7)式疊加到信號中,使輸出為零,零點被校準。

        3 信號的A/D變換及定標
        上傳送的信息為數字量,為此,選用SoC內部的具有12位分辨率、最高轉換速度達到100 ksps的SAR ADC0,將模擬量轉換為數字量(參見圖2)。該ADC的工作方式與啟動方式,將在傳感器接入系統后,由主機確定。
        定標系數可通過標定傳感器獲得,即將加載到傳感器上的已知被測物理量A,除以此時采集到的數字量N,即定標系數為A/N;也可通過傳感器的靈敏度、放大器的增益、ADC的分辨率及參考電壓計算獲得,但這樣得到的定標系數精度稍差。與定標系數所對應的物理量綱,則在傳感器接入時,通過向系統主機發送的電子數據表單(Transducer Electronic Data sheet,TEDs),告知系統主機;從而系統主機收到某傳感器發來的數字量,就是具有特定物理量綱的被測物理量實際數值。這樣做,第一可減少主機的運算工作量;第二也降低了TEDs的復雜度(只需約定物理量綱,而無需傳送定標系數等);第三使可靈活地根據傳感器信號幅度選擇適當的增益,提高小信號的分辨率,此時只需自行改變相應的定標系數即可,無需與主機交互變換定標系數。


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 金堂县| 古浪县| 宜州市| 高要市| 凯里市| 信阳市| 景谷| 大关县| 瑞金市| 湘阴县| 瓦房店市| 汉寿县| 漠河县| 剑川县| 平乡县| 汤阴县| 昌黎县| 南乐县| 阿拉善盟| 万盛区| 酒泉市| 济源市| 朝阳区| 微山县| 绥阳县| 凉山| 潞城市| 永安市| 永新县| 吉安县| 全椒县| 全南县| 新安县| 南京市| 建德市| 运城市| 漾濞| 孝感市| 左权县| 稻城县| 潜山县|