朱宏
(上海格納德薄膜開關(guān)有限公司,上海,201108)
隨著可穿戴電子、電子皮膚、監(jiān)測(cè)人體健康等領(lǐng)域的發(fā)展,傳感技術(shù)得到越來越廣泛應(yīng)用,已經(jīng)成為衡量一個(gè)國(guó)家電子信息化程度的重要標(biāo)志[2]。柔性壓力傳感器對(duì)于電子皮膚、智慧醫(yī)療、可穿戴設(shè)備、智能機(jī)器人等至關(guān)重要。
柔性壓力傳感器主要檢測(cè)電性能的變化,根據(jù)原理的不同主要分為三類電阻式、電容式和壓電式。電阻式柔性壓力傳感器主要有柔性電極和力敏材料組合而成,根據(jù)施加壓力的變化而引起阻值相應(yīng)的變化;電容式是利用平行板電容器原理,容值的大小和間距成反比,施加壓力會(huì)改變極板的間距從而引起電容值的變化;壓電式的原理是壓電效應(yīng),由壓電材料構(gòu)成,按壓后實(shí)現(xiàn)電能的轉(zhuǎn)換[3]。
三種類型的柔性壓力傳感器各有優(yōu)缺點(diǎn),其中的電容式壓力傳感器易收到外界干擾,有寄生電容影響;壓電式空間分辨率低,僅適用于動(dòng)態(tài)測(cè)量;電阻式也有其不足,但其具有檢測(cè)動(dòng)態(tài)范圍廣、過載承受能力強(qiáng)、結(jié)構(gòu)簡(jiǎn)單、抗干擾能力強(qiáng)等優(yōu)點(diǎn)。
本文基于絲網(wǎng)印刷工藝制作的電阻式柔性壓力傳感器具有工藝流程簡(jiǎn)單、結(jié)構(gòu)穩(wěn)定、低成本、適合大批量制作等優(yōu)勢(shì)[4]。并基于NodeMCU 和OLED 顯示器設(shè)計(jì)了壓力數(shù)顯平臺(tái)用于測(cè)量和調(diào)試。
本文的電阻式壓力傳感器主要有四個(gè)部分組成,自上而下結(jié)構(gòu):第一層是下表面印刷了高阻導(dǎo)電炭槳的PET(聚對(duì)苯二甲酸酯)膜;第二層是貼合上下導(dǎo)電層的雙面膠;第三層是印刷在納米銀電極上的具有微結(jié)構(gòu)的壓敏油墨,壓力的作用下會(huì)有微小形變從而改變上下電極的接觸面引起電阻值變化,壓力越大接觸面越大,阻值越?。坏谒膶邮窃赑ET 膜絲網(wǎng)印刷導(dǎo)電銀漿制作的叉型電極,主要是用來作輸出電極。該壓力傳感器的工作原理是在無壓力作用下電極是開路的,無電阻輸出;當(dāng)有按壓力作用在上層PET 膜時(shí),高阻炭會(huì)和叉型電極接觸形成具有阻值的導(dǎo)通回路,由于中間的壓力敏感油墨的微結(jié)構(gòu)作用使得上導(dǎo)電層和銀漿電極的接觸面會(huì)發(fā)生變化,因而輸出的阻值會(huì)發(fā)生相應(yīng)的變化。
圖1 壓力傳感器結(jié)構(gòu)
本系統(tǒng)主要有惠斯通電橋電路電壓數(shù)據(jù)采集、NodeMCU作為控制器的數(shù)據(jù)處理部分,OLED 顯示部分,超壓報(bào)警LED 燈。具體如圖2 所示。
圖2 系統(tǒng)總體設(shè)計(jì)框圖
電阻測(cè)量電路是利用惠斯通電橋原理制作的,惠斯通電橋電路是有四個(gè)電阻組成的電橋電路,其中的電阻稱為橋臂,利用電阻的變化測(cè)量物理量的變化,是一種測(cè)量精度很高的測(cè)量方式。其中的R1、R2、R3 是固定的,Rx 是可變電阻,本文中的電阻式壓力傳感器接入Rx 位置,Rx 發(fā)生變化時(shí),B、D 兩點(diǎn)之間的電壓值就會(huì)發(fā)生變化,NodeMCU通過采集電壓的變化就可以計(jì)算相應(yīng)的壓力變化。
圖3 電路原理圖
NodeMCU 開發(fā)板是一款運(yùn)行樂鑫ESP8266 的可編程固件,主控芯片是樂鑫的ESP8266[5],一個(gè)ADC 接口A0,D0-D10 十個(gè)均可服用為GPIO、PWM、I2C 的接口,USB供電,并可以提供3.3V 電壓輸出。本設(shè)計(jì)選用了A0 作為電壓的輸入接口;D1、D2、D6、D7、D8 作為輸出接口,其中D1,D2,D6,D7 分別設(shè)為SCK(串行時(shí)鐘)和SDA(串行數(shù)據(jù))通過I2C 通信控制OLED1 和OLED2 數(shù)值顯示,D8 作為GPIO 口進(jìn)行高低電平輸出控制報(bào)警LED 燈。
圖4 軟件設(shè)計(jì)流程圖
本設(shè)計(jì)方案使用NodeMCU 作為核心控制器,通過Arduino IDE 進(jìn)行程序編寫,并通過USB 串口將程序上傳至控制器,最終實(shí)現(xiàn)本設(shè)計(jì)的需要完成的功能。首先在Arduino IDE 配置好Esp8266 開發(fā)環(huán)境,安裝好Esp8266 Module 模塊,安裝好Adafruit SSD1306 庫(kù)文件和Arduino 自帶的用于I2C 通信的庫(kù)文件;其次在Arduino IDE 里定義好通信波特率用于程序傳輸用本設(shè)計(jì)設(shè)定波特率為9600,并定義好輸入輸出接口,本設(shè)計(jì)輸入口為A0 引腳,輸出口為D8 引腳,OLED1 的從機(jī)地址為0x3C,SCK、SDA 引腳為D1、D2,OLED2 的從機(jī)地址也為0x3C,SCK、SDA 引腳為D5、D6;第三步編寫相應(yīng)的數(shù)學(xué)運(yùn)算將輸入的電壓值映射為對(duì)應(yīng)的壓力數(shù)值;第四部通過分支結(jié)構(gòu)對(duì)壓力值進(jìn)行判斷,當(dāng)壓力值超過設(shè)定的值時(shí)引腳D8 輸出高電平通過電阻點(diǎn)亮白色LED 燈。
程序流程,NodeMCU 將采集到的電壓信號(hào)通過ADC 轉(zhuǎn)化映射為數(shù)值0-1023,根據(jù)實(shí)測(cè)壓力傳感器的值為0-560g,通過數(shù)學(xué)轉(zhuǎn)換將0-1023 映射為0-560,通過I2C 接口將數(shù)據(jù)顯示在OLED1 上,將變化的曲線圖顯示在OLED2 上。通電初始狀態(tài)下設(shè)置OLED1、OLED2 顯示字符,按壓時(shí)OLED 分別顯示變化的數(shù)值和曲線,并且在按壓的過程中對(duì)壓力的上限進(jìn)行判斷但壓力超過500g 時(shí)OLED 顯示HIGH?。?!”,切白色LED 點(diǎn)亮并閃爍2 次。
圖5 試驗(yàn)測(cè)試狀態(tài)圖
將壓力傳感器接在搭建的平臺(tái)上,用手開始按壓時(shí)OLED1 上有顯示數(shù)值隨壓力的變化而變化,變化的范圍是0-400g,同時(shí)OLED2 上的曲線隨壓力大小而變化。當(dāng)壓力超過設(shè)定的400g 時(shí),OLED1 和OLED2 上分別顯示“HIGH”“?。?!”,同時(shí)白色的LED 開始閃爍。
本文設(shè)計(jì)的柔性壓力傳感器可用于觸覺感測(cè),人機(jī)交互,智能機(jī)器人等領(lǐng)域,感測(cè)力的范圍為0-560g,響應(yīng)時(shí)間小于10ms,具有柔性防水,功耗低,結(jié)構(gòu)簡(jiǎn)單穩(wěn)定等優(yōu)點(diǎn)。搭建的數(shù)顯測(cè)試平臺(tái)能很好的將力的變化轉(zhuǎn)換為數(shù)值的變化,并顯示在OLED 上,并通過設(shè)定按壓力的上限提示超載,對(duì)實(shí)際應(yīng)用有一定的借鑒價(jià)值。