0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

傳感器使用中幾種常用的簡單處理方法

電子工程技術 ? 來源:電子工程技術 ? 作者:電子工程技術 ? 2022-11-30 10:40 ? 次閱讀

傳感器使用中,我們常常需要對傳感器數(shù)據進行各種整理,讓應用獲得更好的效果,以下介紹幾種常用的簡單處理方法:

1.加權平滑:平滑和均衡傳感器數(shù)據,減小偶然數(shù)據突變的影響;

2.抽取突變:去除靜態(tài)和緩慢變化的數(shù)據背景,強調瞬間變化;

3.簡單移動平均線:保留數(shù)據流最近的K個數(shù)據,取平均值;

加權平滑,使用算法如下:

(新值) = (舊值)*(1 - a) + X * a其中a為設置的權值,X為最新數(shù)據,程序實現(xiàn)如下:

float ALPHA = 0.1f;
public void onSensorChanged(SensorEvent event){
x = event.values[0];
y = event.values[1];
z = event.values[2];
mLowPassX = lowPass(x,mLowPassX);
mLowPassY = lowPass(x,mLowPassY);
mLowPassZ = lowPass(x,mLowPassZ);
}
private float lowPass(float current,float last){
return last * (1.0f - ALPHA) + current * ALPHA;
}

抽取突變采用上面加權平滑的逆算法

實現(xiàn)代碼如下:

public void onSensorChanged(SensorEvent event){
final float ALPHA = 0.8;gravity[0] = ALPHA * gravity[0] + (1-ALPHA) * event.values[0];
gravity[1] = ALPHA * gravity[1] + (1-ALPHA) * event.values[1];
gravity[2] = ALPHA * gravity[2] + (1-ALPHA) * event.values[2];filteredValues[0] = event.values[0] - gravity[0];
filteredValues[1] = event.values[1] - gravity[1];
filteredValues[2] = event.values[2] - gravity[2];
}

簡單移動平均線

保留傳感器數(shù)據流中最近的K個數(shù)據,返回它們的平均值。k表示平均“窗口”的大??;

實現(xiàn)代碼如下:

public class MovingAverage{
private float circularBuffer[]; //保存?zhèn)鞲衅髯罱腒個數(shù)據
private float avg; //返回到傳感器平均值
private float sum; //數(shù)值中傳感器數(shù)據的和
private float circularIndex; //傳感器數(shù)據數(shù)組節(jié)點位置
private int count;public MovingAverage(int k){
circularBuffer = new float[k];
count= 0;
circularIndex = 0;
avg = 0;
sum = 0;
}
public float getValue(){
return arg;
}
public long getCount(){
return count;
}
private void primeBuffer(float val){
for(int i=0;i= circularBuffer.length){
return 0;
}
return curIndex + 1;
}
public void pushValue(float x){
if(0 == count++){
primeBuffer(x);
}
float lastValue = circularBuffer[circularIndex];
circularBuffer[circularIndex] = x; //更新窗口中傳感器數(shù)據
sum -= lastValue; //更新窗口中傳感器數(shù)據和
sum += x;
avg = sum / circularBuffer.length; //計算得傳感器平均值
circularIndex = nextIndex(circularIndex);
}
}
審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據
    +關注

    關注

    8

    文章

    6762

    瀏覽量

    88624

原文標題:傳感器3種常用算法處理,請收藏!(含代碼)

文章出處:【微信號:EngicoolArabic,微信公眾號:電子工程技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    土壤監(jiān)測傳感器的使用方法

    土壤監(jiān)測傳感器是用于監(jiān)測土壤濕度、溫度、pH值、電導率、有機質含量等參數(shù)的設備,對于農業(yè)生產、環(huán)境監(jiān)測和科學研究等領域具有重要意義。 土壤監(jiān)測傳感器使用方法 1. 了解土壤監(jiān)測傳感器的類型 在
    的頭像 發(fā)表于 09-10 14:34 ?205次閱讀

    常用遙感傳感器成像的傳感器是什么

    常用遙感傳感器成像的傳感器主要包括以下幾類: 一、光學成像傳感器 多波段掃描儀 :多波段掃描儀是一種重要的光學成像
    的頭像 發(fā)表于 09-04 14:25 ?324次閱讀

    氧氣傳感器使用說明書

    電子發(fā)燒友網站提供《氧氣傳感器使用說明書.pdf》資料免費下載
    發(fā)表于 08-08 12:49 ?0次下載

    深視智能SD22系列小型激光位移傳感器使用指南

    深視智能SD22系列小型激光位移傳感器使用指南
    的頭像 發(fā)表于 07-27 08:42 ?352次閱讀
    深視智能SD22系列小型激光位移<b class='flag-5'>傳感器使</b>用指南

    溫度傳感器的常見故障及處理方法

    溫度傳感器是工業(yè)和日常生活中非常重要的設備,用于測量和監(jiān)控溫度。以下是一些常見的溫度傳感器故障及其處理方法傳感器讀數(shù)不準確 : 原因 :
    的頭像 發(fā)表于 06-20 09:11 ?2225次閱讀

    常用的焊縫自動跟蹤傳感器有哪些

    在焊接過程,焊縫的準確跟蹤對于確保焊接質量至關重要。傳統(tǒng)的焊接方法可能需要人工干預以確保焊縫的準確對齊,但隨著技術的發(fā)展,焊縫自動跟蹤傳感器在焊接領域的應用越來越廣泛。這種傳感器能夠
    的頭像 發(fā)表于 02-21 15:46 ?620次閱讀
    <b class='flag-5'>常用</b>的焊縫自動跟蹤<b class='flag-5'>傳感器</b>有哪些

    溫濕度傳感器工作原理 溫濕度傳感器的接線方法

    溫濕度傳感器是一種用于測量環(huán)境溫度和相對濕度的裝置。它通常用于工業(yè)、農業(yè)、氣象、室內空調等領域。本文將詳細介紹溫濕度傳感器的工作原理和接線方法。 一、溫濕度
    的頭像 發(fā)表于 02-14 18:00 ?8356次閱讀

    電荷型壓電傳感器使的幾點注意事項

    電荷型壓電傳感器使的幾點注意事項? 電荷型壓電傳感器是一種常用的測量設備,它將加壓信號轉換為電荷信號,通過測量電荷信號的變化以獲取被測物體的力或壓力信息。在使用電荷型壓電
    的頭像 發(fā)表于 02-05 09:29 ?699次閱讀

    電阻應變片的溫度補償方法幾種?

    電阻應變片的溫度補償方法幾種? 電阻應變片的溫度補償方法有以下幾種: 1. 溫度傳感器補償方法
    的頭像 發(fā)表于 02-04 18:14 ?4721次閱讀

    傳感器類型有哪幾種 傳感器的主要功能是什么

    多個類別。下面是常見的幾種傳感器類型和其主要功能的介紹: 溫度傳感器:主要用于測量環(huán)境或物體的溫度,常用于氣象、冶金、化工、醫(yī)療、電子等領域。 壓力
    的頭像 發(fā)表于 02-02 11:25 ?1981次閱讀

    液位傳感器的接線方法及工作原理

    液位傳感器是一種用于測量容器內液體水平的裝置。它廣泛應用于各種工業(yè)領域,如化工、石油、食品加工、水處理等。接下來將詳盡地介紹液位傳感器的接線方法和工作原理。 一、液位
    的頭像 發(fā)表于 01-15 16:10 ?4928次閱讀

    常用的角速度傳感器包括幾種類型

    常用的角速度傳感器包括幾種類型? 常用的角速度傳感器包括以下幾種類型: 1. 陀螺儀:陀螺儀是最
    的頭像 發(fā)表于 01-03 17:13 ?1189次閱讀

    幾種常用的產生負電源的方法

    幾種常用的產生負電源的方法
    的頭像 發(fā)表于 12-05 15:54 ?1232次閱讀
    <b class='flag-5'>幾種</b><b class='flag-5'>常用</b>的產生負電源的<b class='flag-5'>方法</b>

    水質傳感器使用注意事項

    水質傳感器可以監(jiān)測水體的pH值、溶解氧、濁度等參數(shù),可以幫助我們了解水體的污染程度,以及及時采取相應的措施進行處理。然而,使用水質傳感器也需要一些注意事項。1、定期維護水質傳感器需要放
    的頭像 發(fā)表于 11-28 08:12 ?546次閱讀
    水質<b class='flag-5'>傳感器使</b>用注意事項

    電感飽和的幾種判斷方法

    電感飽和的幾種判斷方法? 電感是電路中常用的電子元件之一。當電路的電感接收到交流信號時,它會在其內部產生電磁感應,導致其中的電流和電壓也隨之變化。這種性質使得電感在許多電子設備中都有
    的頭像 發(fā)表于 10-31 14:52 ?1737次閱讀