牛慧暉
(山東科技大學,山東青島,266590)
坐立姿勢(坐姿)是學生群體一天內工作和學習內絕大部分時間所處的狀態。坐姿正確地保持不僅能夠預防慢性疾病的出現,而且還能夠提高工作和學習的效率[1]。但是,在面對沉重的學習負擔的情況下,長時間的坐立狀態使得身體的各個部位會產生不適的感覺,學生不得不調整自己的坐姿來舒緩疲憊[2]。在這個調整過程中人們很難一直保持正確的坐姿,會出現頭部傾斜、軀干彎曲等不良坐姿的表現。隨著時間的推移,不良坐姿引起的一連串的“職業病”對學生族的身體健康造成了危害,也影響著他們的正常生長發育。當前,為了更有效地降低因不良坐姿帶來的消極影響,研究人員開展了坐姿檢測領域的相關研究。通常采用的技術路線主要是兩種,一是基于攝像頭的視頻圖像識別技術,該方式識別效果好,設備簡單,但是存在易空間干擾、數據處理復雜、實時性差,同時存在一定的隱私泄密問題[3~4]。二是基于可穿戴設備的識別技術,這種方式具有應用簡單、信息處理速度快等特點,能夠一定程度上地減小了隱私的侵入性[5~6]。綜上所述,本文考慮系統的實用性和實時性,提出了一種基于柔性FSR壓力傳感器的坐姿實時檢測系統的設計,實現了坐姿狀態數據的實時采集與顯示,具有良好的應用性和研究意義。
本文設計的坐姿實時檢測系統由壓力感知單元、壓力信號采集、處理模塊和上位機顯示構成。其設計思路:當人體處于不良坐姿狀態時,固定在人體表面的柔性FSR壓力傳感器會在頸椎以及脊椎彎曲時產生的突出力的作用下產生不同程度的擠壓,依靠壓力傳感器的壓阻效應,將測量的壓力轉換為電阻輸出。信號經過放大由A/D將電阻變化信號轉換為電壓信號,然后由單片機處理發送到上位機顯示。達到不同坐姿狀態對應下的數據變化實時顯示的目的。圖1展示了系統的整體設計圖。

圖1 坐姿實時檢測系統整體設計圖
本系統采用INTERLINK ELECTRONICS公司生產的FSR402型號的短尾電阻式壓力傳感器作為感知單元[7]。其感知區域內的壓力越大,輸出電阻越小,工作電壓為5V,壓力范圍為<10kg,實物圖如圖2(a)所示。

圖2 FSR傳感器實物圖及安裝位置
為了使FSR傳感器更好地感受到外部的壓力,我們將其表面放置一層自制的硅橡膠突起觸頭。本文主要對脖子、后背、以及腰部長時間彎曲等不良坐姿狀態進行檢測。因此,在頸椎處放置一個壓力傳感器(定義為FSR1),用來檢測頸椎彎曲狀態。后背部位的脊椎處位放置一個壓力傳感器(定義為FSR2),腰部的脊椎處平行放置一個壓力傳感器(定義為FSR3),用來檢測軀干脊柱的彎曲狀態。傳感器的安裝位置如圖2(b)所示。
考慮到本文設計的系統中壓力信號采集簡單,因此我們選用基于ARMv7-M體系結構的32位高性能、低功耗微控制器STM32F103VET6作為系統的主控芯片[8~9],其最高運行速度可以達到72 MHz,CPU的時鐘運行速度與RAM的讀取速度同步,擁有著豐富的片內資源和外設接口。該處理器具有豐富的通用I/O端口,可以自主設置為其他的外設功能口;內部集成了大容量的嵌入式Flash和SRAM,滿足對大量數據儲存和快速讀寫;內部集成多路雙采樣和保持功能集成的A/D轉換單元,滿足了同時對多個模擬量的快速采集;豐富的通信方式選擇(兩個SPI,兩個I2C,五個USART, 一個USB,一個CAN通信,一個SDIO),易與其他外部模塊的數據通訊。
該系統包含的壓力傳感器數目少,單獨接線,不需要設計復雜的陣列行列掃描采集電路。直接使用STM32芯片內部集成的模數轉換器,實現對壓力數據的快速采集和處理。其轉換速率可達1MHz,轉換范圍為0~3.6V,采集速率能夠滿足傳感器的實際采樣需求。
為了便于單片機對微弱電壓信號的采集,采用基于AD620芯片的放大器模塊對采樣電阻的電壓信號進行放大。該芯片具有精度高、成本低、功耗低及供電電源范圍寬(±2.3V~±18V)等特點。可用于微伏、毫伏電壓的放大,放大倍數易于調節(最大1000倍),適用于諸如傳感信號檢測、電壓/電流轉換等應用場合。
為了便于傳感信號的收集,采用WiFi的方式將單片機處理后的數據無線傳輸到PC端。WiFi模塊微控制單元芯片型號為ESP8266,該芯片是面向物聯網一款性價比高、開發成本低的可編程MCU,能實現與單片機之間的串口通信。其內部集成了多種模塊包括:32-bit處理器、片上SRAM、天線開關、功率放大器濾波器和電源管理器等。這種領先特征,使其在開發和運行中擁有強大的片上處理和存儲能力,最少地占用系統資源和外圍硬件電路。ESP8266模塊通過串口UOTXD與UORXD與STM32微控制器進行通信[10]。
STM32F103VET6芯片和復位電路、晶振電路、下載電路以及電源電路共同組成了STM32最小系統,其電路原理圖如圖3~6所示。同時單片機最小系統和ESP8266芯片構成了系統的核心采集電路。本文基于STM32最小系統以及放大電路模塊和FSR402壓力傳感器搭建了坐姿檢測系統的硬件電路。

圖3 復位電路

圖4 晶振電路

圖5 下載電路

圖6 電源電路
坐姿檢測系統的信號檢測原理結構圖如圖7所示,其中R1~R3為采樣電阻,阻值為10kΩ。

圖7 系統檢測原理圖
當采樣電阻的兩端輸出電壓經過放大電路放大a倍后,單片機內部A/D采集得到的電壓為Vout,根據分壓原理內部對傳感器的電阻進行計算,以FSR1的電阻計算為例公式如下:
采樣電阻兩端電壓為:

分壓電路的電流為:

FSR1的電阻為:

單片機需要編寫執行程序完成控制內部A/D對傳感器的壓力數據采集,對數據內部處理、控制WiFi模塊對數據無線傳輸等多個工作。軟件系統采用模塊化設計的思想由keil5進行編寫,系統語言使用C語言。總體程序由主程序、I/O口配置程序、壓力數據采集/處理程序、WiFi通信程序組成,系統程序流程圖如圖8所示,模塊化的設計思路提高了系統的設計效率。具體工作流程如下:單片機上電工作之后,系統主程序開始對單片機的I/O配置初始化,對內部的A/D模塊初始化,對ESP8266芯片以及WiFi協議棧初始化。系統初始化完成后,單片機按照設置的程序依次掃描每個壓力傳感器的數據并存儲到RAM中,對數據進行處理,通過ESP8266芯片的WiFi功能將采集完成的傳感器數據發送到PC端。電腦端口連接WiFi適配器,使用串口助手接收并實時顯示接收到的數據。

圖8 系統程序流程圖
坐姿實時檢測系統組裝調試完成后,將傳感器用創可貼固定在學生頸部和軀干處,對志愿者的不同坐姿狀態進行實時的檢測。首先,我們對系統進行了可行性測試,實驗結果如圖9所示。結果表明,當學生身體處于彎曲狀態時,設計的系統可以快速地檢測和顯示頸部、軀干處的壓力信號,滿足設計的需要。

圖9 系統可行性實驗
接下來,利用設計的系統對學生坐姿的實時狀態進行測試實驗。實驗結果如圖10所示。開始測試時志愿者先保持正確坐姿,從圖10紫框的測試過程中可以看出此時傳感器FSR1-FSR3采集的壓力數據沒有明顯的變化。然后志愿者開始模擬不良坐姿(頭部保持正常姿態),后背開始彎曲。此時傳感器FSR2受到脊椎突出力的作用,輸出明顯的電阻變化。當軀干進一步彎曲時,腰部處安裝的傳感器FSR3也在脊椎突出力的作用下輸出有了明顯的變化。接下來,志愿者頭部也開始彎曲下低,在頸椎作用力下傳感器FSR1也輸出了明顯的變化。在圖10黑框的測試過程中,傳感器FSR1-FSR3處于長時間的輸出變化狀態,此時志愿者沒有保持正確的坐姿,即不良坐姿。

圖10 坐姿實時測試結果
本文設計了一種用于學生坐姿狀態監測的測試系統,通對FSR壓力傳感器采集學生頸椎和脊椎的彎曲產生的壓力信號,利用STM32單片機進行有效的檢測和處理,最終將處理完成的傳感器數據無線發送到PC端,實現了對不同坐姿狀態下傳感器壓力數據的采集和實時顯示。測試結果表明:設計的系統可以明顯判斷出不良坐姿狀態的特征,可以對學生的坐姿狀態進行遠程監控。