在線客服
銷售-譚小姐13672863149
銷售-陳小姐13536007805
銷售-黃小姐13426882603
銷售:張先生13822460808
(微信同號)
|
SM7391微差壓傳感器應用于呼吸機的調試經驗
專欄:技術支持
發(fā)布日期:2023-11-22
閱讀量:2049
作者:
收藏:
SM7391微差壓傳感器是一款內部集成16位MCU的,其量程為±500pa,典型輸出精度為±0.1%FS ,出廠時已經做了溫度補償和壓力校準,溫度補償范圍為-5℃至65℃,支持I2C和模擬輸出。TWI_SendByte(0x30);
SM7391微差壓傳感器是一款內部集成16位MCU的,其量程為±500pa,典型輸出精度為±0.1%FS ,出廠時已經做了溫度補償和壓力校準,溫度補償范圍為-5℃至65℃,支持I2C和模擬輸出。目前已經成功應用在于國內呼吸機產品中,主要通過差壓傳感器實現呼吸流量的計量。 很多工程師在使用SM7391時候,可能會遇到不同的技術問題,下面是基于某客戶實際調試SM7391壓力傳感器的過程,希望給其他工程師給予借鑒 首先,差壓傳感器SM7391可以工作在3V或者5V系統(tǒng)中 其次 圖1、差壓傳感器SM7391的I2C通信校準曲線 第三,差壓傳感器SM7391內部集成低通濾波器,通過外置MCU可以設置三種不同的濾波參數: 1、截止頻率fc=10hz 時,設置Part numbers 11, 12, 13; 2、截止頻率fc=20hz 時,設置Part numbers 21, 22, 23 3、截止頻率fc=50hz 時 第四 圖2 第五 圖3 第六,差壓傳感器SM7391的測量結果存放在一個2字節(jié)的結果寄存器中 注意:差壓傳感器SM7391默認是低字節(jié)在前,高字節(jié)再后 Pcounts=256*byte2+ byte1 如果工程師使用差壓傳感器SM7391為模擬輸出,比如在3V系統(tǒng)中 設計工程師可以參考下面的代碼,將其移植到MCU中 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); //數據地址 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; } 希望以上經驗可以幫助到每一位工程師 |