色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

基于CW32的儀表精度測量實現(三):標定與校準

CW32生態社區 ? 來源:CW32生態社區 ? 作者:CW32生態社區 ? 2024-09-02 10:07 ? 次閱讀

標定的概念

標定是一種校準過程,它通過與已知的標準或參考值進行比較來確保測量設備、儀器或系統的準確性和可靠性。這個過程涉及調整設備,以消除系統誤差和提高測量結果與真實值的一致性,從而確保數據的精確度和可重復性。

1.為什么去標定

我們使用單片機ADC讀取的電壓電流值由于制造公差、溫度變化、時間老化、電源波動等因素引起的初始誤差和漂移,我們需要對電壓電流進行標定校準,使得我們得到的電壓電流值是正確的。

2.標定的方法

標定的方法多種多樣,我們需要根據自己的需求來選擇相應的方法,常見的標定方法如下所示:

(1)直接比較法:

將待標定的測量設備與一個已知準確度的標準設備進行比較,直接讀取并記錄差異。

(2)多點標定法:在多個已知的標準點上進行測量,收集數據點,然后通過數學模型(如多項式擬合)來確定設備輸出與標準值之間的關系。(3)線性回歸法:使用最小二乘法等統計技術,通過擬合最佳擬合線來確定設備輸出與標準輸入值之間的線性關系。(4)分段線性標定:當測量設備的響應在不同輸入范圍內呈現不同的線性度時,可以采用分段線性標定,即在不同的輸入范圍內使用不同的線性模型。

(5)非線性標定:

對于非線性設備,使用非線性函數(如指數、對數或S形曲線)來描述輸入與輸出之間的關系。

標定的實現

1.CW32開發板的實物圖和原理圖

wKgZombRpWeAaSMEAABpnBq-Jys92.webp

wKgaombRpWiAUdKPAACQegNOZ1A90.webp

2.軟件代碼講解

(1)濾波算法在做電壓值的校準之前,我們根據傳感器采集到的是連續性的時間序列信號,所以我們可以采用了均值濾波對單片機采集到的AD值進行濾波處理。在程序中我首先初始化總和、最大值和最小值變量,然后在一個循環中累加數組 value 中所有元素的值,并同時更新最大值和最小值。循環結束后,從總和中減去最大值和最小值,以排除可能的異常數據點,最后將調整后的總和除以數組元素數減去2,得到并返回一個濾除極端值后的均值。這種方法有助于減少數據中的噪聲,特別是當數據集中包含異常高值或低值時。代碼如下所示:

uint32_t Mean_Value_Filter(uint16_t *value, uint32_t size) //均值濾波 { uint32_t sum = 0; //ADC采樣數據和 uint16_t max = 0; uint16_t min = 0xffff; //min初值取最大是為了將第一個數據記錄 int i; for(i = 0; i < size; i++) { sum += value[i]; if(value[i] > max) { max = value[i]; } if(value[i] < min) { min = value[i]; } } sum -= max + min; //去除最大最小值 sum = sum / (size - 2); return sum; }

(2)分段線性標定

在代碼中定義了電壓校準的相關變量X06和X12,分別代表著6V對應的AD代碼值和12V對應的AD代碼值。其中還定義了縱坐標的變量Y06和Y12,這個對應著電壓值6V和12V。最后定義了坐標軸的斜率K,如下所示:

//5V與15V 校準 unsigned int X06=0; unsigned int X12=0; unsigned int Y06=6; unsigned int Y12=12; float K; //斜率

在標定校準之前,我們需要計算斜率,根據兩點確定一條直線算出該區間內的斜率K,如下圖所示:

void Count_K(void) { K = (Y12 - Y06); K = K/(X12 - X06); }

我們還需要存儲校準值,我們在一個數組中存了三個數據,第一個數據是判斷位(0xaa),判斷當前是否存儲過校準值。其中兩個是6V對應的AD代碼值和12V對應的AD代碼值。存儲之前需要擦除然后才能寫入數據。代碼如下所示:

void flash_calibration(void) { uint16_t dat[5]; dat[0]=0xaa; dat[1]=X06; dat[2]=X12; flash_erase(); flash_write(0,dat,5); }

我們除了寫入校準值還要讀取校準值,先讀取校準值,判斷第一個數據是否為0xaa,如果不是0xaa,代表沒校準過,需要賦一個初始化進行存儲。例如

X06 = 6.0/23/1.5*4096;如果第一個值是0xaa,那就可以把存儲過的值賦給我們的變量就可以了,代碼如下所示。

void judge_calibration(void) { uint16_t dat[5]; flash_read(0,dat, 5); if(dat[0]!=0xaa) { X06 = 6.0/23/1.5*4096; X12 = 12.0/23/1.5*4096; flash_calibration(); } else { X06=dat[1]; X12=dat[2]; } }

我們可以通過按鍵對每一個區間的信號進行校準,比如說我們這次校準的是6~12V區間內的信號,初始化時可以通過按下一次按鍵對6V時候的數據校準,再按一次按鍵就可以對12V時候的數據校準,代碼如下所示:

void button_select_calibration(void) { if(GPIO_ReadPin(CW_GPIOB,GPIO_PIN_12) == GPIO_Pin_RESET)//按鍵按下 { mode++; if(mode >2) mode =0; while(GPIO_ReadPin(CW_GPIOB,GPIO_PIN_12) == GPIO_Pin_RESET); } if(mode == 0) { DisPlay_dianya(V_Buffer); } else if(mode == 1) { X06=Mean_Value_Filter(Volt_Buffer,ADC_SAMPLE_SIZE); flash_calibration(); Count_K(); Volt_Cal(); DisPlay_dianya(V_Buffer); } else if(mode == 2) { X12=Mean_Value_Filter(Volt_Buffer,ADC_SAMPLE_SIZE); flash_calibration(); Count_K(); Volt_Cal(); DisPlay_dianya(V_Buffer); } }

3.分段線性標定分析和處理

在這個程序中,我們的思想是同時兩路AD采集,一個是測量電壓的,一個是測量電流的,同時讀取AD數據,進而能對二者一起校準。代碼如下所示:

void Get_ADC_Value(void) { static uint8_t cnt; ADC_GetSqr0Result(&Volt_Buffer[cnt]); ADC_GetSqr3Result(&Curr_Buffer[cnt]); cnt++; if(cnt >= ADC_SAMPLE_SIZE) { cnt = 0; } }

我們在電壓電流表上測量了大量的數據,如下圖所示:

wKgZombRpWiAWf-8AABvboEyiB421.webp

在上面圖中可以看出實際的電壓值和測量的電壓值存在一定的偏差,我們將它們的偏差值做成一個折線圖給大家看看,如下圖所示。

wKgaombRpWiAfqYBAAAf1kr476M66.webp

常見標定的原理是:使用AD值作為X軸,電壓(電流)值作為Y軸;在電壓(電流)為0的時候標定為Xmin,在電壓(電流)為最大量程的時候標定為Xmax,根據數學公式兩點確定一條直線,可以得到這條直線的斜率K。根據Y=kx公式我們可以通過輸出每一個AD值得到對應的電壓(電流)值。

wKgZombRpWmALqB1AAAUUga_egI43.webp

常見的標定是在只有最小值和最大值之間做了標定,如果這兩個值的范圍很大,使用中間的AD值也會出現誤差,所以我們就需要多做幾組標定,使得數據更加準確,這樣就形成了分段線性標定。效果圖如下所示。

wKgaombRpWmAWHArAAASTNoL9KU43.webp

如果我們求X3到X2之間的電壓值,可以根據公式:Y=k×(Xad-X2)+5得到準確的電壓值,在這條折線上標的點越多,測量得到的電壓值就越準確。

4.標定的結果

標定之前的實驗數據顯示,誤差在0.08V左右,數據如下所示:

wKgZombRpWiAWf-8AABvboEyiB421.webp

誤差的折線圖如下所示:

wKgZombRpWqABpTmAAAlwsAN6x428.webp

實物的測量圖顯示誤差在0.08左右,結果如下所示:

wKgaombRpWqAGX3zAABpQrAkGv819.webp

在6V標定之后實驗數據顯示誤差在0.01V左右,數據如下所示:

wKgZombRpWqAQ8LMAABY5pnoZwo77.webp

標定校準后的誤差的折線圖如下所示,可以看出6V標定后的誤差范圍在0V到0.03V之間的,所以證明了多處標定,得到的測量值就越精確。

wKgaombRpWuAQBLZAAA4zBrY1Y483.webp

經過標定校準后的電壓顯示沒有誤差,結果如下所示:

wKgZombRpWuABqhBAABkziS0Y7094.webp



審核編輯 黃宇

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

    關注

    0

    文章

    8

    瀏覽量

    8271
  • CW32
    +關注

    關注

    1

    文章

    210

    瀏覽量

    706
收藏 人收藏

    評論

    相關推薦

    次元測量校準方法

    在現代制造業中,精確的測量對于保證產品質量至關重要。次元測量儀作為一種高精度測量工具,廣泛應用于汽車、航空、電子等行業。為了確保
    的頭像 發表于 01-06 09:38 ?256次閱讀

    化工廠過程儀表的維護與校準

    隨著化工行業的快速發展,過程儀表成為化工廠監測和控制生產過程的核心設備。化工行業的安全生產對檢測工具的精度和可靠性提出了更高要求,因此過程儀表的維護和校準的重要性不容忽視。
    的頭像 發表于 12-03 17:50 ?367次閱讀

    武漢芯源半導體CW32芯片重慶地區線下技術交流會成功舉辦

    2024年10月19日,武漢芯源半導體授權CW32生態社區主辦的“CW32芯片-重慶地區技術交流會”在重慶市科技工作者眾創之家成功舉辦。此次交流會匯聚重慶地區的嵌入式開發工程師和電子信息類企業代表,共同探討CW32芯片在儀器
    的頭像 發表于 10-24 10:55 ?533次閱讀

    基于CW32儀表精度測量實現(一):相關濾波原理

    一、濾波的概念 濾波是指通過某種方法將信號中的某些頻率成分增強或抑制,達到去除噪聲、改善信號質量、分離信號等目的的過程。濾波器是實現濾波功能的關鍵組件,它可以改變信號的頻譜特性,對不同頻率區域的信號
    的頭像 發表于 08-30 18:53 ?283次閱讀
    基于<b class='flag-5'>CW32</b>的<b class='flag-5'>儀表</b><b class='flag-5'>精度</b><b class='flag-5'>測量</b><b class='flag-5'>實現</b>(一):相關濾波原理

    紅外溫度傳感器的校準標定工作

    紅外溫度傳感器廣泛應用于各種紅外測溫儀等非接觸式溫度測量。這一類的測溫產品在生產和校準檢定過程中,需要使用黑體或者面源對其進行標定
    的頭像 發表于 08-16 09:49 ?740次閱讀
    紅外溫度傳感器的<b class='flag-5'>校準</b><b class='flag-5'>標定</b>工作

    武漢芯源半導體成功舉行無錫地區CW32線下技術交流研討會

    2024年7月12日,武漢芯源半導體有限公司在無錫地區成功舉辦了CW32系列MCU的線下技術交流研討會。此次活動分別在行業龍頭企業客戶的研發中心和代理商無錫梓軒電子會議室內舉行,吸引了來自無錫地區兩輪車儀表及電動工具等領域的眾多客戶及工程師參與。
    的頭像 發表于 07-24 11:00 ?534次閱讀

    【項目展示】基于CW32的遙控循跡小車

    CW32循跡小車.zip_免費高速下載|百度網盤-分享無限制? 一、概述 CW32循跡、遙控小車具有循跡和遙控兩種功能,小車的硬件模塊由CW32F030C8T6小藍板、智能小車控制底板、BT04-E
    的頭像 發表于 05-31 17:33 ?1383次閱讀
    【項目展示】基于<b class='flag-5'>CW32</b>的遙控循跡小車

    基于CW32的有刷直流電機控制實驗:直流電機閉環位置和速度控制實驗

    DAP-Link插入電腦后未識別到芯片,則將中間兩根線的接線對換。 程序下載 將 DAP-Link 與電腦相連后檢查是否識別到CW32: 如圖就是已經識別到CW32,可以開始下載程序。 閉環速度位置說明 程序
    的頭像 發表于 05-31 17:01 ?630次閱讀
    基于<b class='flag-5'>CW32</b>的有刷直流電機控制實驗<b class='flag-5'>三</b>:直流電機閉環位置和速度控制實驗

    CW32數字電壓電流表軟件進階教程-3.電壓電流標定

    標定是通過測量標準器的偏差來補償儀器系統誤差,從而改善儀器或系統準確度、精度的操作。為了提高電壓電流表在測量時的測量
    的頭像 發表于 05-31 16:20 ?817次閱讀
    <b class='flag-5'>CW32</b>數字電壓電流表軟件進階教程-3.電壓電流<b class='flag-5'>標定</b>

    CW32數字電壓電流表軟件教程-實驗四:數碼管動態顯示

    顯示不同的值需要用到CW32的定時器功能,在定時器的中斷服務程序里面執行顯示刷新的動作。有關CW32的定時器和中斷的相關知識請查看鏈接:【CW32F003E4核心板】入門學習教程。本文只講述如何配置定時器中斷并執行數碼管刷新函數
    的頭像 發表于 05-31 15:23 ?573次閱讀
    <b class='flag-5'>CW32</b>數字電壓電流表軟件教程-實驗四:數碼管動態顯示

    坐標測量機的精度如何保證?

    坐標測量機(CoordinateMeasuringMachine,CMM)的精度保證涉及多個方面,包括機械設計、環境控制、校準、操作技巧、維護保養等:1、機械系統設計:
    的頭像 發表于 05-22 10:21 ?1026次閱讀
    <b class='flag-5'>三</b>坐標<b class='flag-5'>測量</b>機的<b class='flag-5'>精度</b>如何保證?

    芯源半導體首個CW32嵌入式創新實驗室揭牌

    武漢芯源半導體,一家知名的MCU(微控制器)廠商,近日攜手上海科學技術職業學院,共同揭牌了“CW32嵌入式創新實驗室”。此次合作旨在搭建起企業與高校之間的緊密橋梁,實現資源共享和優勢互補。
    的頭像 發表于 05-08 10:37 ?467次閱讀

    產教融合,校企合作——武漢芯源半導體首個CW32嵌入式創新實驗室順利揭牌!

    2024年4月24日上午,武漢芯源半導體有限公司與上海科學技術職業學院共同舉辦的“CW32嵌入式創新實驗室揭牌儀式”在上海科學技術職業學院第二會議室隆重舉行。活動現場,武漢芯源半導體與上海
    的頭像 發表于 05-06 13:42 ?467次閱讀
    產教融合,校企合作——武漢芯源半導體首個<b class='flag-5'>CW32</b>嵌入式創新實驗室順利揭牌!

    CW32量產燒錄工具

    本節主要介紹CW32微控制器的燒錄器CW-Writer,以及與之配合的軟件CW-Programmer的使用方法。燒錄器CW-Writer通過ISP協議,可
    的頭像 發表于 04-25 15:22 ?1463次閱讀
    <b class='flag-5'>CW32</b>量產燒錄工具

    CW32快速開發入門

    CW32快速開發入門
    的頭像 發表于 04-24 18:56 ?2083次閱讀
    <b class='flag-5'>CW32</b>快速開發入門
    主站蜘蛛池模板: 真实农村女人野外自拍照片| 亚瑟天堂久久一区二区影院| 荷兰少归BVBV| 成人在线免费看片| 99re久久热在线视频| 最新无码国产在线视频9299| 一个人的HD高清在线观看| 亚洲精品拍拍央视网出文| 乌克兰成人性色生活片| 日本午夜精品理论片A级APP发布 | 蜜臀色欲AV无人A片一区| 久久精品热99看二| 久久re这里视频只精品首页| 精品香蕉99久久久久网站| 好色的妹妹| 精品国产乱码久久久久久免费流畅| 国产小视频在线高清播放| 国产色无码精品视频国产| 国产精品亚洲精品爽爽| 国产偷国产偷亚州清高APP| 国产亚洲精品久久久999无毒| 国产午夜伦伦伦午夜伦| 国产亚洲综合视频| 黄色a级免费网站| 精子pk美女| 老师你下面好紧夹死了| 免费被靠视频动漫| 欧美亚洲国内日韩自拍视频| 强奷乱码欧妇女中文字幕熟女| 亲胸揉胸膜下刺激视频在线观看| 日本国产成人精品无码区在线网站 | 嗯啊…跟校草在教室里做h| 男插女高潮一区二区| 欧美另类一区| 日韩黄色软件| 我年轻漂亮的继坶2中字在线播放 我们中文在线观看免费完整版 | bt成人种子| 成人人观看的免费毛片| 国产AV亚洲精品久久久久| 国产女合集第六部| 久久艹综合|