










摘" 要:針對柔性傳感器的信號采集檢測需求,基于STM32單片機和4×4陣列型柔性壓力傳感器,研究一種以單片機為核心單元、面向柔性傳感器壓力定位、壓力變化、壓力定量的實時數據采集檢測系統。該檢測系統采用單片機嵌入式程序結合快速行列掃描技術對采集的電信號數據進行分析、轉換及分類顯示,實現了精準的壓力感知定位、分辨與測定,研究結果將會極大地推進融合計算機掃描技術和柔性陣列傳感器新應用的推出。
關鍵詞:柔性壓力傳感器;快速掃描;STM32單片機;信號檢測
中圖分類號:TP212" 文獻標識碼:A" 文章編號:2096-4706(2024)12-0178-06
Research on Flexible Sensor Signal Detection System Based on STM32
YANG Kunyu1, GUO Weidong2, YIN Xixuan1, LIU Fengquan1, HU Zhengfa1, 3
(1.School of Physics and Optoelectronic Engineering, Guangdong University of Technology, Guangzhou" 510006, China; 2.Shantou Wanyuan Technology Co., Ltd., Shantou" 515000, China; 3.Shantou Collaborative Innovation Research Institute, Guangdong University of Technology, Shantou" 515000, China)
Abstract: Aiming at the signal acquisition and detection requirements of flexible sensors, a real-time data acquisition and detection system based on STM32 Single-Chip Microcomputer and 4×4 array flexible pressure sensor is studied, with the Single-Chip Microcontroller as the core unit and oriented towards pressure positioning, pressure change, and pressure quantification of flexible sensors. The detection system uses a single-chip embedded program combined with fast row and column scanning technology to analyze, convert, and classify the collected electrical signal data, achieving accurate pressure perception, positioning, resolution and measurement. The research results will greatly promote the launch of new applications that integrate computer scanning technology and flexible array sensors technology.
Keywords: flexible pressure sensor; fast scanning; STM32 Single-Chip Microcomputer; signal detection
0" 引" 言
隨著智能化技術及物聯網應用的不斷發展,柔性傳感器作為一種新型的智能傳感器[1],是可穿戴電子設備和各種智能終端的核心器件,是當前傳感器研究領域的熱點。柔性傳感器因具有輕便、可彎曲、可延展、高貼合度的特點[2]而在醫療健康[3]、機器人[4]、人機交互[5,6]等領域具有廣闊的應用前景,在智能制造領域實現了突飛猛進的技術進步。隨著柔性傳感技術的不斷發展和創新,也引出了對復雜和大規模信號數據獲取和分析、處理檢測系統[7]的課題研究。該論文的研究內容即采用柔性薄膜壓力傳感器、STM32最小核心系統板與單片機相結合的方法設計一種結構簡單、信號采集快捷、成本低、可視化的壓力分布信號檢測系統。
1" 檢測系統方案設計
柔性傳感器基于電阻、電壓、電容、電感等原理,將外部的物理量轉化為電信號,實現對信息的探測和處理。根據工作原理的不同,柔性傳感器可分為壓阻式傳感器、電容式傳感器、壓電傳感器、基于光傳導的傳感器、基于磁轉換的傳感器[8]。該研究選用壓阻式柔性傳感器陣列檢測壓力信號,當傳感器受到外部壓力的刺激時發生電阻值變化,從而引起電壓的變化[9],單片機STM32通過軟件控制程序進行傳感器行列信號的選通,實現掃描式采集,STM32內部的ADC控制器對壓力信號進行采集,A/D轉換完成后,通過串口通信USB數據傳輸線將數據傳輸到上位機,進行數據的處理、分析、顯示、記錄、保存。信號檢測系統方案如圖1所示。
2" 檢測系統的硬件設計
2.1" 傳感器
選用4×4壓阻式柔性傳感器(由16個傳感單元組成),該傳感器由壓敏薄膜材料制成,具有一定的導電性和壓阻特性。其工作原理為:當壓力作用于膜片時,膜片產生微小的形變,導致其上的電阻值發生變化,從而在電橋電路中產生與壓力成正比的電壓輸出信號。該傳感器具有結構簡單、測量范圍廣、靈敏度高等特點。傳感器電路圖如圖2所示。
2.2" 單片機
傳感器檢測的信號要達到實時顯示的效果,數據采集系統完成一次數據收集及處理的時間需小于100 ms。選用的單片機型號為STM32F103C8T6,一次模數轉換時間為21 μs,串口通信速率為4 Mbit/s。4×4柔性傳感器共有16個數據點,總數據量約為0.016 MB,掃描一次全部數據點所需掃描時間為336 μs,一次串口通信傳輸時間為4 ms,完成一次數據采集和處理的時間約為5 ms,能夠滿足實時處理傳感器數據的要求。
3" 檢測系統軟件設計
3.1" 選通電路
常見柔性傳感器的選通電路包含兩個多路模擬開關、一個運算放大電路和一個STM32單片機最小核心系統[10]。為該檢測系統設計的選通電路去除了多路模擬開關與運算放大電路,通過軟件設置STM32芯片的引腳,輸出行列選通信號,代替多路模擬開關對柔性傳感器進行行列掃描;通過控制STM32芯片引腳輸出的電壓大小,使柔性傳感器輸出端的電壓能夠直接被STM32芯片的采集數據信號模數轉換模塊接收,代替運算放大電路,對數據采集沒有影響。
3.2" 信號采集與檢測系統的行列選通程序設計
行列選通程序工作流程如圖3所示。在初始化后,第一步是對柔性傳感器的輸入電極輸入低電平信號,采集輸出電極的電壓信號。第二步是對柔性傳感器的第一行輸入電極輸入高電平信號,其余輸入電極輸入低電平信號,得到第一行四個傳感單元上的電壓信號。在完成第一行的檢測后,依次檢測第二、三、四行中各列傳感器的電壓信號,總共得到四行四列共16個傳感單元的信號。
3.3" A/D轉換程序設計
A/D轉換模塊采用STM32內部自帶的A/D轉換單元,A/D轉換程序工作流程的第一步是進行初始化,然后進行A/D轉換,轉換后的數據通過串口通信傳輸到上位機。A/D轉換程序核心代碼為:
void( PUTIN(uint16_t k){
{if(k=0){B0(1);B1(0);B5(0);B6(0);}if(k=1){B0(0);B1(1);B5(0);B6(0);}if(k=2){B0(0);B1(0);B5(1);B6(0);}if(k=3){B0(0);B1(0);B5(0);B6(1);} }/*設置為依次輸入高電平信號*/
adc_init();/*啟動ADC采集*/
for(k=0;klt;4;k++) { B0(0);B1(0);B5(0);B6(0);low=
adc_get_result(1);}/*傳感器輸入低電平信號并獲取低電平時的電壓信號*/
for(i=0;ilt;4;i++){PUTIN(i);high=adc_get_result(1);}/*傳感器依次輸入高電平信號并獲取高電平時的電壓信號*/
4" 實驗與測試結果
本研究采用M0404傳感器,尺寸為84 cm×84 cm,每個傳感單元的尺寸為1.2 cm×1.2 cm,結構組成如圖4所示。使用TK管形拉力計進行檢測系統壓力測試實驗。
4.1" 傳感單元壓力信號位置定位
為了測試上位機所采集的陣列數據與傳感器受力點相一致,分別對單點、橫向四點、縱向四點、斜線四點傳感單元進行壓力實驗,對柔性傳感器輸入高電平信號,隨機選取7、(5,6,7,8)、(3,7,11,15)、(1,6,11,16)傳感單元對其施加20 N壓力,將柔性傳感器4行4列共16個傳感單元用坐標(x,y)進行編號。受力傳感單元的示數如表1所示。
由表1數據可以看出,(3,2)的傳感單元示數為3 767,遠大于其他未施力傳感單元示數,橫向四點傳感單元示數分別為3 865、3 767、3 847、3 706,斜線四點傳感單元示數分別為3 999、4 004、4 102、3 967,均遠大于其他未施力傳感單元示數,但縱向四點傳感單元示數與其他未施力傳感單元示數沒有明顯的區別。隨機選取其他的單點、兩點、三點、橫向四點、縱向四點、斜線四點傳感單元進行的施加壓力測試,除縱向四點外,都存在施力傳感單元的示數遠大于其他未施力傳感單元示數的情況。實驗表明,檢測系統能直接對單點、兩點、三點、橫向四點、斜線四點傳感單元的受力位置進行定位,對縱向傳感單元受力位置的定位需進一步進行數據處理分析。根據M0404傳感器廠家提供的傳感單元電壓與電壓信號示數的計算公式,可計算出各受力傳感單元的電壓值,計算式為:
U = 3.3×(m / 4 096)" " " " " " " " " " (1)
其中,m為數據采集系統的電壓信號示值,U為受力傳感單元的電壓值。
4.2" 傳感單元壓力測定
為了進一步解決縱向陣列傳感單元數據定位不準確以及判別傳感單元壓力大小的問題,選取第三列四個傳感單元進行實驗。實驗分為兩步,第一步是對柔性傳感器的輸入電極輸入低電平信號,第二步是對第三列的四個傳感單元分別施加總和為30、25、20、15、10、5 N的壓力。壓力分布情況及數據采集系統采集的數據如表2所示。
表2數據表明:對柔性傳感器一列的四個傳感單元施加總和相同的壓力時,數據采集系統采集的四個電壓數據之和相同。對同一列四個傳感單元施加總和大小逐漸遞增的壓力時,數據采集系統采集到的電壓數據之和與壓力大小的關系如圖5所示。
由圖3數據可知:施加在該列四個傳感單元上的壓力之和越大,數據采集系統電壓數據越小。當施加的壓力之和進一步增大時,電壓數據進一步減小越來越接近0,此時接近響應的臨界值,電壓信息數據大小的下降幅度變小。
當施加的壓力之和在5 N與20 N之間時,壓力之和與數據采集系統顯示的電壓信息數據關系式為:
F = -0.143m + 30.74" " " " " " " " " " (2)
當施加的壓力之和在20 N與30 N之間時,壓力之和與數據采集系統顯示的電壓信息數據關系式為:
F = -m + 95" " " " " " " " " " " " " "(3)
式(2)(3)中,F為該列四個傳感單元的壓力之和,m為數據采集系統電壓數據。當數據采集系統采集的數據大于75時,使用式(2)計算四個傳感單元的壓力之和F,當數據采集系統采集的數據小于75時,使用式(3)計算四個傳感單元的壓力之和F。
上述實驗通過對柔性傳感器的輸入電極輸入低電平信號來確定同一列四個傳感單元的壓力之和F,為了進一步確定同一列四個傳感單元上的壓力信號,對柔性傳感器的輸入電極依次輸入高電平信號,實驗數據如表3所示。
分析柔性傳感器上的壓力分布情況與數據采集系統的示數,可得如下判別規律:
1)當同一列四個傳感單元中僅有一個傳感單元受到壓力時。實驗1中的數據表明:施加壓力的單個傳感單元上對應的數據采集系統的數據遠大于未施加壓力的傳感單元對應的數據。由于有且只有一個傳感單元施加壓力,對應的傳感單元上施加的壓力滿足以下關系式:
f = F" " " " " " " " " " " " " " " " (4)
式(4)中,f為傳感單元上施加的壓力值,F為輸入低電平信號時數據采集系統的示數。
2)當同一列四個傳感單元中有兩個傳感單元受到壓力時。實驗2、3的數據表明:兩個傳感單元上均施加10 N壓力,壓力之和F為20 N。數據采集系統采集的這兩個傳感單元的數據分別為2 007與2 018,均約為2 000,數據近似相等,單個傳感單元上的壓力等于總壓力值除以傳感單元個數,即f = F / 2。將其中一個傳感單元上施加的壓力增大2 N,另外一個傳感單元上施加的壓力減少2 N,即兩個傳感單元上的壓力值分別為12 N與8 N,數據采集系統采集的這兩個傳感單元的數據分別為2 221與1 799,約為2 200與1 800,則增加2 N滿足關系式(2 200 - 2 000) / 100 = 2,減少2 N滿足關系式(1 800 - 2 000) / 100 = -2。綜上所述,當同一列四個傳感單元中有兩個傳感單元受到壓力時,傳感單元上的壓力值滿足以下關系式:
f = F / 2 + (x - 2 000) / 100" " " " " " " " (5)
式(5)中,f為單個傳感單元上施加的壓力值,F為同一列傳感單元上的壓力之和,x為輸入高電平信號時數據采集系統采集的該傳感單元的示數(以下計算式相同)。
3)當同一列四個傳感單元中有三個傳感單元受到壓力時。實驗次數4至5的數據表明:三個傳感單元上的總壓力值為30 N時,三個傳感單元上均施加10 N壓力,數據采集系統采集的這三個傳感單元的數據分別為1 478、1 537、1 560,均約為1 500,同理推算出單個傳感單元上的壓力值滿足以下關系式:
f = F / 3 + (x - 1 500) / 100" " " " " " " " (6)
4)當同一列四個傳感單元中四個傳感單元受到壓力時。實驗次數6至7的數據表明:四個傳感單元上的總壓力值為40 N時,四個傳感單元上均施加10 N壓力,數據采集系統采集的這四個傳感單元的數據分別為1 119、1 225、1 180、1 169,均約為1 200,同理推算出單個傳感單元上的壓力值滿足以下關系式:
f = F / 4 + (x - 1 200) / 100" " " " " " " " (7)
經實驗驗證,式(2)至式(7)同樣滿足橫向四個傳感單元、斜線四個傳感單元受力情況的計算。綜上所述,對傳感器傳感單元受力情況的數據采集系統的處理規則如圖6所示。
4.3" 信號檢測系統的測量誤差
為了驗證信號檢測系統采集的傳感單元電壓數據經計算得到的壓力值的準確性,隨機選取傳感器上3個不同位置的傳感單元,分別對其施加不同的壓力,實驗結果如表4所示。圖7為檢測系統信息輸出、接收、顯示圖。
實驗結果表明,由檢測系統測得的壓力值與實際施加壓力值的誤差在3%以內,測量誤差在可接受的范圍之內,這表明所設計的信號檢測系統滿足壓阻式柔性傳感器的檢測需求。
表4" 信號檢測系統的測量誤差實驗結果
5" 結" 論
該研究基于STM32最小核心系統板,利用單片機嵌入的程序對采集的電信號數據進行分析、轉換及分類顯示,使用上位機讀取下位機收集到的壓力信息,研究開發一種柔性傳感器陣列的信號檢測系統。該檢測系統結構簡單、檢測速度快、檢測精度高、實時性好,具有較好的應用推廣前景。
參考文獻:
[1] 吳靖,李晟,張景,等.面向物聯網的新型柔性傳感器 [J].物聯網學報,2023,7(2):1-14.
[2] 侯星宇,郭傳飛.柔性壓力傳感器的原理及應用 [J].物理學報,2020,69(17):70-85.
[3] 周學思,鐘榮華,王天輝.柔性傳感技術及其在健康醫療領域中的應用 [J].軍事醫學,2015,39(11):876-880.
[4] 尚飛,胡瀟然,張千,等.面向機器人觸覺的柔性壓力傳感器 [J].電子科技大學學報,2020,49(4):636-640.
[5] 張陽陽,李莉萍.面向人(機)-機交互的柔性傳感器及其智能感知系統導讀 [J].無線電通信技術,2022,48(3):431-432.
[6] 李浩林,王震,陳樹康,等.基于壓阻傳感器的智能鞋墊及運動采集分析 [J].西部皮革,2022,44(4):26-28.
[7] 吳帥帥,高國偉,劉碩.高靈敏度柔性電子皮膚的研究與應用進展 [J].傳感器與微系統,2023,42(7):1-5+22.
[8] 湯桂君,殷柯柯,原會雨.納米材料在柔性壓阻式壓力傳感器中的研究進展 [J].復合材料學報,2023,40(7):3722-3737.
[9] 黃志勇,李紅強,陳保登,等.基于PDMS的柔性壓阻式傳感器的研究進展 [J].有機硅材料,2024,38(1):66-75.
[10] 周瑞,李時維,李紹成,等.壓阻式柔性壓力傳感器陣列信號采集系統設計 [J].傳感器與微系統,2021,40(9):104-107.
作者簡介:楊焜宇(1998—),男,漢族,廣東陽江人,碩士研究生在讀,研究方向:柔性傳感器;郭偉東(1976—),男,漢族,廣東汕頭人,初級經濟師,本科,研究方向:無損檢測;尹錫軒(1999—),男,漢族,廣東東莞人,碩士研究生在讀,研究方向:柔性傳感器;劉豐銓(2000—),男,漢族,廣東珠海人,碩士研究生在讀,研究方向:柔性傳感器;胡正發(1974—),男,漢族,安徽廣德人,教授,博士,研究方向:柔性傳感器。