99久久久久国产-99久久久久国产精品免费-99久久久久久久-99久久久免费精品免费-99久久免费费视频在线观看

131 1300 0010
其他電源
當前位置: 首頁>> 電源技術>>其他電源>>
  • 導航欄目
  • 逆變電源
  • 開關電源
  • 電機伺服
  • 其他電源
  • 基于IDT的便攜式無線供電空氣質量檢測儀設計
    基于IDT的便攜式無線供電空氣質量檢測儀設計
  • 基于IDT的便攜式無線供電空氣質量檢測儀設計
  • 來源:嵌入式悅翔園  發布日期: 2022-09-14  瀏覽次數: 1,204

    0 前言

    這兩年開始畢業設計和畢業答辯的要求和難度不斷提升,傳統的畢設題目缺少創新和亮點,往往達不到畢業答辯的要求,這兩年不斷有學弟學妹告訴學長自己做的項目系統達不到老師的要求。

    為了大家能夠順利以及最少的精力通過畢設,學長分享優質畢業設計項目,今天要分享的是

    基于單片機的便攜式空氣質量檢測儀

    1、簡介

    基于IDT的便攜式無線供電空氣質量檢測儀,隨著近些年環保問題的日益嚴峻,身邊的朋友也越來越重視自己的生存環境,尤其是對空氣質量的關注度日益增高。我就打算自己設計制作一套便攜式的空氣質量檢測儀,采用無線供電的方式來運行保證檢測儀的運行,同時利用無線供電系統給檢測儀內部的鋰電池進行充電。(本項目采用的是IDT 5W無線充電開發套件

    2、主要器件

    IDT15W無線充電開發套件

    Arduino?LGT8F328D單片機

    A003最新款顆粒物傳感器

    S80053二氧化碳傳感器

    2.2寸串口屏

    18650鋰電池,容量2600mah

    ETA9640充放電芯片,最大充放電電流1000ma

    3、實現效果

    56bf572c-33df-11ed-ba43-dac502259ad0

     

    5b28eae4-33df-11ed-ba43-dac502259ad0

    IDT無線供電系統接收板

    5d8a0de0-33df-11ed-ba43-dac502259ad0

    無線充電過程

    5de145ce-33df-11ed-ba43-dac502259ad0

    4、設計原理

    硬件說明

    通過設計計算,整機負載電流約500ma,考慮到設計的充電電流是1000ma,所以項目選用了IDT 5W無線供電系統,該系統可以提供5V 1A的最大5W的功率輸出,完全滿足設計要求。(本項目采用的是IDT 5W無線充電開發套件)

    5e20aed0-33df-11ed-ba43-dac502259ad0

    包含三大部分組成:

    1、無線供電鋰電池充放電部分,由于傳感器的TTL輸出電平是3.3V,所以還需要通過一個LDOMCU供電電源降為3.3V。傳感器供電部分是5V(內部有LDO降壓),有系統直接供電即可。本項目用的電池選用了常見的18650鋰電池,容量2600mah。充放電芯片選用上海鈺泰的ETA9640一體式芯片,最大充放電電流1000ma,自帶鋰電池保護電路,無需外圍再加保護電路。無線供電接收板接口直接與USB供電接口并接,既可以采用USB供電,也可以采用IDT無線系統供電。

    2、MCU部分選用了AVR內核的8位單片機,LGT8F328D,傳感器選用攀藤科技的A003最新款顆粒物傳感器和森爾電子的S8 0053二氧化碳傳感器(由于二氧化碳傳感器價格較貴,最終未進行購買)。

    3、顯示屏幕選用了2.2寸串口屏,便于快速開發,降低開發難度。

    5e67a89e-33df-11ed-ba43-dac502259ad0

    在這里插入圖片描述

    5f3d05a2-33df-11ed-ba43-dac502259ad0

    在這里插入圖片描述

    項目的PCB圖和3D圖部分:

    這個PCB板子尺寸為80*70mm,正面為主要電路和屏幕部分,反面為18650電池倉和兩個傳感器接口

    最終PCB板和焊接好的PCB板:

    5f9a51c6-33df-11ed-ba43-dac502259ad0

    在這里插入圖片描述

    軟件部分

    本項目軟件設計采用Arduino IDE開源編程框架,主要分為系統初始化和循環執行兩大部分構成。

    5 部分核心代碼

    #include?
    
    SoftwareSerial?pm(2,?NULL);
    
    SoftwareSerial?co(4,?NULL);
    
    unsigned?int?CO2;
    
    unsigned?int??pm25;
    
    void?getCO2(unsigned?char?Data)?
    
    {
    
    ??staTIc?unsigned?char?RxBuffer[7];
    
    ??staTIc?unsigned?char?RxCnt?=?0;
    
    ??RxBuffer[RxCnt++]?=?Data;
    
    ??if?(RxBuffer[0]?!=?0xFE?&&?RxBuffer[1]?!=?0x04)
    
    ??{
    
    ????RxCnt?=?0;
    
    ????return;
    
    ??}
    
    ??if?(RxCnt?>?6)
    
    ??{
    
    ????CO2?=?(int)?RxBuffer[3]?*?256?+?(int)?RxBuffer[4];
    
    ????RxCnt?=?0;
    
    ????return;
    
    ??}
    
    }
    
    void?getPM25()
    
    {
    
    ??uint8_t?mData?=?0;
    
    ??uint8_t?i?=?0;
    
    ??uint8_t?mPkt[32]?=?{0};
    
    ??int?mCheck?=?0;
    
    ??pm.listen();??
    
    ??delay(100);
    
    ??while?(pm.available()?>?0)
    
    ??{
    
    ????mData?=?pm.read();
    
    ????delay(2);
    
    ????if?(mData?==?0x42)?
    
    ????{
    
    ??????mPkt[0]?=??mData;
    
    ??????mData?=?pm.read();
    
    ??????delay(2);
    
    ??????if?(mData?==?0x4d)?
    
    ??????{
    
    ????????mPkt[1]?=??mData;
    
    ????????mCheck?=?66?+?77;
    
    ????????for?(?i?=?2;?i?<?30;?i++)?
    
    ????????{
    
    ??????????mPkt[i]?=?pm.read();
    
    ??????????delay(2);
    
    ??????????mCheck?+=?mPkt[i];
    
    ????????}
    
    ????????mPkt[30]?=?pm.read();
    
    ????????delay(2);
    
    ????????mPkt[31]?=?pm.read();
    
    ????????delay(2);
    
    ????????if?(mCheck?==?mPkt[30]?*?256?+?mPkt[31])?
    
    ????????{
    
    ??????????pm25?=?mPkt[12]?*?256?+?mPkt[13];
    
    ??????????
    
    ??????????Serial.flush();
    
    ??????????return;
    
    ????????}
    
    ??????}
    
    ????}
    
    ??}
    
    }
    
    
    void?setup()
    
    {
    
    ??Serial.begin(9600);
    
    ??pm.begin(9600);
    
    ??co.begin(9600);
    
    ??delay(5000);
    
    ??Serial.println("SPG(2);");?
    
    ??delay(100);
    
    }
    
    
    void?loop()
    
    {
    
    ??getPM25();
    
    ??co.listen();??
    
    ??delay(100);
    
    ??staTIc?unsigned?char?TxBuffer[]?=?{0xFE,?0x04,?0x00,?0x03,?0x00,?0x01,?0xD5,?0xC5};
    
    ??co.write(TxBuffer,?8);
    
    ??delay(100);
    
    ??while?(co.available())
    
    ??{
    
    ????getCO2(co.read());
    
    ??}
    
    ??Serial.print("LABL(48,0,40,159,'");??Serial.print(pm25);??Serial.print("',");??Serial.print(15);??Serial.println(",1);");
    
    ??Serial.print("LABL(48,161,40,319,'");??Serial.print(CO2);??Serial.print("',");??Serial.print(15);??Serial.println(",1);");
    
    }

  • ·上一篇:
    ·下一篇:
  • 其他關聯資訊
    深圳市日月辰科技有限公司
    地址:深圳市寶安區松崗鎮潭頭第二工業城A區27棟3樓
    電話:0755-2955 6626
    傳真:0755-2978 1585
    手機:131 1300 0010
    郵箱:hu@szryc.com

    深圳市日月辰科技有限公司 版權所有:Copyright?2010-2023 www.qingjujia.cn 電話:13113000010 粵ICP備2021111333號
    主站蜘蛛池模板: 好大水好多好爽好硬好深视频 | 国产超清在线观看 | 欧美一二三区 | 日韩中文字幕不卡 | 黄色录像一级带 | www黄色大片| 国产不卡免费 | 性殴美| 日本第一页 | 特级aa一级欧美毛片 | 一级毛片成人免费看免费不卡 | 在线播放免费人成毛片乱码 | 欧美扩阴| 国产精品视频麻豆 | 欧美日韩1区 | 清纯唯美亚洲综合日韩第 | 青青青国产观看免费视频 | 亚洲黄色中文字幕 | 一级片在线免费播放 | 操片免费看| 亚洲欧美一区二区三区另类 | 古代级a毛片在线 | 国产精品日韩 | 国产一区 在线视频 | 草草草草视频 | 手机国产日韩高清免费看片 | 国产一区二区丁香婷婷 | 国产亚洲综合成人91精品 | 亚洲国产精品综合久久网络 | 大片在线免费观看 | 特大巨黑人吊与黑人性xxxx | 五月天婷婷综合网 | 男女一级特黄a大片 | 国产在线91区精品 | 色婷婷777| 窝窝午夜色视频国产精品东北 | 大学生高清一级毛片免费 | 日韩免费一区二区三区 | 国产日韩欧美中文字幕 | 国内精品久久久久 | 国产大乳喷奶水在线看 |