在線客服
銷售-譚小姐13672863149
銷售-陳小姐13536007805
銷售-黃小姐13426882603
銷售:張先生13822460808
(微信同號)
|
SM7391微差壓傳感器應(yīng)用于呼吸機(jī)的調(diào)試經(jīng)驗(yàn)
專欄:技術(shù)支持
發(fā)布日期:2023-11-22
閱讀量:2050
作者:
收藏:
SM7391微差壓傳感器是一款內(nèi)部集成16位MCU的 ,其量程為±500pa,典型輸出精度為±0.1%FS ,出廠時已經(jīng)做了溫度補(bǔ)償和壓力校準(zhǔn),溫度補(bǔ)償范圍為-5℃至65℃,支持I2C和模擬輸出。TWI_SendByte(0x30);
SM7391微差壓傳感器是一款內(nèi)部集成16位MCU的,其量程為±500pa,典型輸出精度為±0.1%FS ,出廠時已經(jīng)做了溫度補(bǔ)償和壓力校準(zhǔn),溫度補(bǔ)償范圍為-5℃至65℃,支持I2C和模擬輸出。目前已經(jīng)成功應(yīng)用在于國內(nèi)呼吸機(jī)產(chǎn)品中,主要通過差壓傳感器實(shí)現(xiàn)呼吸流量的計(jì)量。 很多工程師在使用SM7391時候,可能會遇到不同的技術(shù)問題,下面是基于某客戶實(shí)際調(diào)試SM7391壓力傳感器的過程,希望給其他工程師給予借鑒。 首先,差壓傳感器SM7391可以工作在3V或者5V系統(tǒng)中,支持標(biāo)準(zhǔn)I2C通信,工程師可以采用模擬I2C,也可以使用硬件I2C。很多工程師在詢問SM7391的I2C地址,原廠設(shè)置為0x36。 其次,差壓傳感器SM7391的I2C輸出值范圍為-26214至+26214,而模擬輸出對應(yīng)電壓范圍10%*VDD至90*VDD,兩種方式分別對應(yīng)量程為-500pa至500pa,所以通過此可以計(jì)算出線性直線斜率。 圖1、差壓傳感器SM7391的I2C通信校準(zhǔn)曲線 第三,差壓傳感器SM7391內(nèi)部集成低通濾波器 1、截止頻率fc=10hz 時 2、截止頻率fc=20hz 時 3、截止頻率fc=50hz 時 第四,差壓傳感器SM7391出廠時溫度補(bǔ)償范圍是-5℃至65℃ 圖2、差壓傳感器SM7391的出廠時的溫補(bǔ)曲線 第五,差壓傳感器SM7391的典型電路如下圖,很多工程師在詢問13腳的作用。此引腳是SMI原廠出廠調(diào)試使用的,客戶在使用差壓傳感器SM7391時只需要將該引腳接到GND上即可。 圖3、差壓傳感器SM7391的典型電路 第六,差壓傳感器SM7391的測量結(jié)果存放在一個2字節(jié)的結(jié)果寄存器中,溫度結(jié)果寄存器地址為0x2E,壓力結(jié)果寄存器地址為0x30,狀態(tài)結(jié)果寄存器地址為0x32。很多工程師只是需要壓力值,所以MCU只需要讀取0x30寄存器的值即可,然后通過與直線斜率計(jì)算出當(dāng)前的壓力值。 注意:差壓傳感器SM7391默認(rèn)是低字節(jié)在前,高字節(jié)再后。 Pcounts=256*byte2+ byte1 如果工程師使用差壓傳感器SM7391為模擬輸出 設(shè)計(jì)工程師可以參考下面的代碼 void SM16bit_sensor_read(void) { BYTE i; for(i=0;i<trycount;i++) { TWI_Start(); TWI_SendByte(slaveID|0x00); SDAinput(); if(!TWI_WaitAck()) { SDAoutput(); TWI_Stop(); continue; } SDAoutput(); TWI_SendByte(0x30); //數(shù)據(jù)地址 SDAinput(); if(!TWI_WaitAck()) { SDAoutput(); TWI_Stop(); continue; } SDAoutput(); TWI_Start(); TWI_SendByte(slaveID|0x01); SDAinput(); if(!TWI_WaitAck()) { SDAoutput(); TWI_Stop(); continue; } SDAoutput(); break; } if(i==trycount) return; SDAinput(); presslow = TWI_ReceiveByte(); SDAoutput(); TWI_Ack(); SDAinput(); presshigh=TWI_ReceiveByte(); SDAoutput(); TWI_NoAck(); TWI_Stop(); return; } 希望以上經(jīng)驗(yàn)可以幫助到每一位工程師 |