在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

基于XIAO ESP32S3的可以檢測困倦的海綿寶寶

柴火創客空間 ? 來源:柴火創客空間 ? 2024-10-28 09:33 ? 次閱讀

今天為大家帶來的是來自Hackster創作者Mondal3011的作品:可以檢測困倦的海綿寶寶.這個裝置主要是使用二氧化碳傳感器去進行二氧化碳濃度測試,通過識別二氧化碳來判斷環境是否會造成人體困倦。通常,房間里的高 CO2 會導致嗜睡。當房間里的 CO2 水平上升時,這個海綿寶寶會變得困倦,這樣你就可以打開窗戶了!

材料清單

硬件

Seeed Studio XIAO ESP32S3 Sense

Mq135

跳線

絲桿電機

M4螺栓

軟件

Arduino IDE

JLCPCB易達

故事背景

最近,你可能注意到自己在課堂上感到很困。也許你并不覺得課程無聊,而且晚上睡得很好,所以這不是原因。經過一些在線研究(主要是通過 Google 和 ChatGPT),你發現這種困倦可能是由于教室里積累了過多的二氧化碳。這讓人覺得有道理,因為最近天氣很冷,教室的門窗大部分時間都關著。

同樣的問題也可能出現在你的宿舍。當你學習時,可能會感到昏昏欲睡,因為一直關著窗戶,導致房間內二氧化碳濃度過高。于是,你想出了一個創意,制作一個看起來很酷且直觀易懂的 CO2 監測器!這個監測器的設計靈感來源于海綿寶寶,眼瞼會根據二氧化碳水平的變化而上下移動,顯示他有多困。當 CO2 水平較低時,海綿寶寶的眼睛會睜得大大的,眼瞼高高翹起;隨著二氧化碳濃度的升高,眼瞼會逐漸降低。如果眼睛完全閉上,意味著房間里的二氧化碳濃度過高,你最好讓一些新鮮空氣進來!

加工流程

該項目的主要組件是 MQ135 空氣質量傳感器和小 esp32 微控制器。該裝置還包含 5 個霍爾效應傳感器,每個傳感器都映射到特定的 CO2 ppm 水平。電機通過 L293D 電機驅動器 IC 連接到微控制器。該電機是一種 DIY 絲桿電機,可根據旋轉方向上下移動眼瞼。眼瞼的長端包含一個磁鐵,霍爾傳感器可以檢測到該磁鐵。微控制器讀取 MQ135 傳感器的模擬輸出,并通過一些數學運算將其轉換為 CO2 ppm 水平。這是在特定的持續時間內完成的(在我的代碼中為 5 分鐘),并且 ppm 值是該持續時間的平均值。然后,微控制器打開絲桿電機,直到磁體位于霍爾傳感器前面,該傳感器對應于相同的 ppm(在容差范圍內)。這樣眼瞼就會移動以匹配 ppm 水平。

4f95ff2c-9275-11ef-a511-92fbcf53809c.png

4fa1ffca-9275-11ef-a511-92fbcf53809c.png

電路設計

對于這個項目,決定設計一個 PCB 并組裝起來是個很好的選擇。盡管之前沒有過這樣的經驗,但這正是一個探索新領域的機會。許多創作者在 Instructables 和 YouTube 上展示了他們自己的 PCB 制作過程,這為這個項目提供了很好的靈感和指導。

使用 EasyEDA 設計電路和 PCB 是一個不錯的選擇。雖然可能還有其他更優秀的工具,但 EasyEDA 因其易于學習和使用而受到許多 YouTuber 的青睞。通過這個平臺,可以有效地設計出所需的電路圖和印刷電路板,從而使整個項目更加順利地進行。

4fc7575c-9275-11ef-a511-92fbcf53809c.png

設計PCB

PCB 由 Seeed Fusion 制造,因此在設計之前,確保仔細閱讀了他們的所有指南。

首先,用戶在設計菜單中選擇了“將原理圖轉換為 PCB”選項,立創EDA 隨即生成了一個新的 PCB 文件,其中包含了原理圖中的所有元器件。接下來,用戶開始設計 PCB,并生成了 Gerber 文件。目前的設計以海綿寶寶為特色,雖然沒有他的 SquarePants,但歡迎其他人添加褲子,完全沒有規定禁止這樣做!

在材料選擇上,決定使用 Sunboard,這是一種低密度 PVC 板。Sunboard 非常易于使用,同時仍然具備較好的耐用性,十分適合這種手工藝項目。

制作海綿寶寶

這個項目中使用 Sunboard,一種低密度 PVC 板。它非常易于使用,同時仍然非常耐用,非常適合這種工藝。

組裝

組裝好 PCB 后,把它全部組裝在一起。并將 CO2 傳感器放在后面以將其隱藏起來。如果您也這樣做,請確保框架不要放置在沒有空氣流通的房間角落。否則你的海綿寶寶可能總是昏昏欲睡!移動時眼瞼確實會有點晃動,但這根本不是問題。由于它們僅在 CO2 水平存在顯著差異時才會移動,因此您幾乎不會看到它們移動。但是,它在移動時確實會發出一些噪音。主要是因為舊減速電機磨削。所以認為微型 N20 電機會是更好的選擇。

代碼

//  為霍爾傳感器、電機驅動器和 MQ135 傳感器定義引腳
const int hallSensors[] = {D1, D2, D3, D4, D5};
const int motorEnable = D8;
const int motorInput1 = D6;
const int motorInput2 = D7;
const int mq135Pin = A0;


MQ135 gasSensor = MQ135(mq135Pin);


// 為每個霍爾傳感器定義 CO2 ppm 范圍
const int ppmRanges[][2] = {
  {800, 1000},
  {1001, 1200},
  {1201, 1400},
  {1401, 1600},
  {1601, 1800}
};


//存儲 CO2 ppm 讀數
const int maxReadings = 30; // 5 minutes / 10 seconds
float ppmReadings[maxReadings];
int readingIndex = 0;


void setup() {
  Serial.begin(115200);


  // 將霍爾傳感器初始化為輸入端
  for (int i = 0; i < 5; i++) {
    pinMode(hallSensors[i], INPUT);
  }


  // 將電機驅動器引腳初始化為輸出端
  pinMode(motorEnable, OUTPUT);
  pinMode(motorInput1, OUTPUT);
  pinMode(motorInput2, OUTPUT);


  // 初始化電機,使其停止
  digitalWrite(motorEnable, LOW);
}


void loop() {
  // 從 MQ135 傳感器讀取二氧化碳ppm 含量
  float ppm = gasSensor.getPPM();


  //  存儲 CO2 ppm 讀數
  ppmReadings[readingIndex] = ppm;
  readingIndex = readingIndex + 1;
  
  if(readingIndex >= 30)
  {
    //計算二氧化碳的平均ppm含量
    int avgPPM = calculateAveragePPM();


// 根據 CO2 ppm 平均水平確定目標大廳傳感器
    int targetSensor = determineTargetSensor(avgPPM);


    // 將電機移至目標霍爾傳感器處
    moveMotorToTargetSensor(targetSensor);


    readingIndex = 0;
  }


  delay(10000); // 等待 10 秒
}


// 根據存儲的讀數計算二氧化碳的平均ppm含量
int calculateAveragePPM() {
  int sum = 0;
  for (int i = 0; i < maxReadings; i++) {
    sum += ppmReadings[i];
  }
  return sum / maxReadings;
}


// 根據 CO2 ppm 平均水平確定目標大廳傳感器
int determineTargetSensor(int avgPPM) {
  for (int i = 0; i < 5; i++) {
    if (avgPPM >= ppmRanges[i][0] && avgPPM <= ppmRanges[i][1]) {
      return i;
    }
  }
  return 0; //如果 avgPPM 超出范圍,則默認為第一個傳感器
}


// 將電機移至目標霍爾傳感器處
void moveMotorToTargetSensor(int targetSensor) {
  int currentSensor = getCurrentSensor();
  if (currentSensor != targetSensor) {
    int direction = (targetSensor > currentSensor) ? 1 : -1;
    while (currentSensor != targetSensor) {
      moveMotor(direction);
      currentSensor = getCurrentSensor();
    }
    stopMotor();
  }
}


// 獲取當前霍爾傳感器
int getCurrentSensor() {
  for (int i = 0; i < 5; i++) {
    if (digitalRead(hallSensors[i]) == LOW) {
      return i;
    }
  }
  return 0; // 如果沒有傳感器處于活動狀態,則默認為第一個傳感器
}


// 按指定方向移動電機
void moveMotor(int direction) {
  digitalWrite(motorEnable, HIGH);
  if (direction == 1) {
    digitalWrite(motorInput1, HIGH);
    digitalWrite(motorInput2, LOW);
  } else {
    digitalWrite(motorInput1, LOW);
    digitalWrite(motorInput2, HIGH);
  }
}


// 停止電機
void stopMotor() {
  digitalWrite(motorEnable, LOW);
}

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

    關注

    48

    文章

    7658

    瀏覽量

    152183
  • 傳感器
    +關注

    關注

    2553

    文章

    51453

    瀏覽量

    756922
  • 電機
    +關注

    關注

    142

    文章

    9093

    瀏覽量

    146479
  • esp32s3
    +關注

    關注

    0

    文章

    7

    瀏覽量

    638

原文標題:創客項目秀|基于XIAO ESP32S3 的可以檢測困倦的海綿寶寶!

文章出處:【微信號:ChaiHuoMakerSpace,微信公眾號:柴火創客空間】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于XIAO的圖像分類處理項目

    XIAOXIAO今天小編給大家帶來的是圣地亞哥的Maker Marcelo Rovai 使用 XIAO ESP32S3 Sensor 搭配Edge Impulse 實現的圖像分類的項目。
    的頭像 發表于 10-28 09:50 ?1457次閱讀
    基于<b class='flag-5'>XIAO</b>的圖像分類處理項目

    ESP32S3外置Jtag連接失敗的原因?

    首先介紹一下情況: 芯片:ESP32S3 ESPIDF版本:V5.04 OpenOCD:ESPIDF自帶的版本 JlinkV9:已經通過zadig-2.8切換成WinUSB 現狀:已經燒毀efuse
    發表于 06-07 08:30

    使用esp-idf-tools2.12不能搭建esp32s3開發環境是什么原因?

    。 我選擇V4.3.1版本后,系統不支持esp32s3的開發,可以支持esp32s2編譯和調試。但我們使用的芯片是esp32s3,還請各位幫忙查看下什么原因。謝謝。
    發表于 06-27 08:20

    請問ESP32S3的PCLK的上限為多少?

    參考貴司的鏈接 https://docs.espressif.com/projects/esp ... .html#pclk ESP32 的 PCLK 上限為 8 MHz 。 ESP32S2 的 PCLK 上限為 32 MHz。
    發表于 06-28 11:55

    ESP32S3 通過USB燒錄,燒錄失敗

    ESP32S3板通過usb插入電腦,電腦端COM設備能檢測到串口,現象為反復連接、斷開。現手動強制讓ESP32S3進入燒錄狀態,按照官網說明,先按下boot鍵(GPIO0腳拉低),再按en
    發表于 09-30 10:28

    esp32s3 lcd接口有api可以調用了嗎?

    我在esp32s3的datasheet看見寫提供了一個lcd接口,請問這個接口現在有api可以調用了嗎,我想驅動并口的lcd,esp32似乎使用的是i2s
    發表于 02-17 08:37

    esp32S3無法燒寫的原因是什么?

    使用的是esp32S3,IDF v4.3,環境windows 10前面的構建都可以成功,但是一進入燒寫就會報錯:A fatal error occurred: This chip
    發表于 02-20 08:11

    是否有任何外部組件可以使ESP32S3與CAN-FD兼容?

    控制器與 ISO11898-1 FD 格式幀不兼容,并將此類幀解釋為錯誤。我想知道是否有任何外部組件可以使 ESP32S3 與 CAN-FD 兼容。
    發表于 03-02 08:35

    ESP32S3內部外設包括DMA之類的可以直接用ESP32的配置來啟用嗎?

    ESP32S3的選項,DMA是auto選擇嗎?在SPI LCD的例程里面也沒有S3的管腳配置,LVGL的例程里面,也是卡在DMA初始化的配置。新手問下,ESP32S3內部外設包括DMA之類的
    發表于 03-06 07:10

    使用esp-idf-tools2.12不能搭建esp32s3開發環境的原因?

    V4.3.1版本后,系統不支持esp32s3的開發,可以支持esp32s2編譯和調試。但我們使用的芯片是esp32s3,還請各位幫忙查看下什么原因。謝謝。
    發表于 03-09 06:47

    使用Arduino通過USB串行對ESP32S3進行編程和調試

    電子發燒友網站提供《使用Arduino通過USB串行對ESP32S3進行編程和調試.zip》資料免費下載
    發表于 10-19 14:50 ?3次下載
    使用Arduino通過USB串行對<b class='flag-5'>ESP32S3</b>進行編程和調試

    基于ESP32S3系列模組的開發板

    基于ESP32S3系列模組的開發板
    的頭像 發表于 04-10 11:25 ?4474次閱讀
    基于<b class='flag-5'>ESP32S3</b>系列模組的開發板

    esp32s3使用多串口

    esp32s3使用多串口 我按照別人博客中設置串口2,串口打印有問題,因為沒有看到esp32s3 多串口,就總結了一下自己的經驗 下圖為esp32的引腳圖 下圖為esp32s3的引腳圖
    的頭像 發表于 11-06 11:29 ?5987次閱讀
    <b class='flag-5'>esp32s3</b>使用多串口

    UIFlow 2.0 新增支持 XIAO ESP32S3

    SupportSeeedStudioXIAOESP32S3UIFlow2.0現已支持SeeedStudioXIAOESP32S-S3開發板。這款基于ESP32-S3芯片的小型開發板以其低功耗、高性能
    的頭像 發表于 05-25 08:29 ?898次閱讀
    UIFlow 2.0 新增支持 <b class='flag-5'>XIAO</b> <b class='flag-5'>ESP32S3</b>

    基于XIAO ESP32S3 sense開發板的小型相機設計

    在這個科技飛速發展的時代,DIY(Do It Yourself)文化正成為連接創新與日常生活的橋梁,今天小編給大家帶來了來自麻省理工學院的Arnov Sharma 的基于XIAO ESP32S3 sense的小型相機項目,該相機擁有一個圓形的觸摸屏幕
    的頭像 發表于 09-06 10:17 ?748次閱讀
    基于<b class='flag-5'>XIAO</b> <b class='flag-5'>ESP32S3</b> sense開發板的小型相機設計
    主站蜘蛛池模板: 一级免费看 | 狠狠干狠狠干狠狠干 | 亚洲第一页国产 | 狠狠噜天天噜日日噜 | 好吊色视频988gao在线观看 | 丁香花五月婷婷开心 | 在线精品国产三级 | 色婷婷亚洲综合五月 | 婷婷在线观看网站 | 377p亚洲欧洲日本大胆色噜噜 | 国产精品视频永久免费播放 | 色94色欧美一区 | 日本色图视频 | 成人欧美精品久久久久影院 | 欧美午夜网站 | 综合网激情五月 | 一级片影院| 爽好舒服快给老师 | 狠狠色婷婷丁香六月 | 黄色网址在线播放 | 国产精品视频一区二区三区 | 久操精品在线观看 | a级精品九九九大片免费看 a级毛毛片看久久 | 六月婷婷七月丁香 | 青草视频网站在线观看 | 视频1区 | 亚洲精品美女久久久 | 永久免费在线观看视频 | 羞羞漫画喷水漫画yy漫画 | 黄色毛片免费网站 | 色狠狠xx | 国产激爽大片在线播放 | 欧美成人天天综合天天在线 | 高清成人 | 国产手机免费视频 | 欧美激情五月 | 国产精品天天看天天爽 | 欧美三级第一页 | 青青青久97在线观看香蕉 | 欧美手机看片 | 黄a在线 |