สารบัญ:
- ขั้นตอนที่ 1: ออกแบบเทอร์โมมิเตอร์อินฟราเรด
- ขั้นตอนที่ 2: ฮาร์ดแวร์
- ขั้นตอนที่ 3: IR และ Mask
- ขั้นตอนที่ 4: ซอฟต์แวร์ Arduino
- ขั้นตอนที่ 5: การทดสอบและสรุปผล
วีดีโอ: เครื่องวัดอุณหภูมิอินฟราเรดสำหรับการนอนหลับ: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ดังนั้น Lazy Old Geek (L. O. G.) นี้จึงเพิ่งซื้อโมดูลระบายความร้อน IR MLX90614 จาก AliExpress.com ดูภาพ
นี่คือเซ็นเซอร์ประเภทเดียวกับที่ใช้ในเทอร์โมมิเตอร์วัดหน้าผากและหูที่แสดงในภาพที่สาม สิ่งเหล่านี้เรียกว่าไม่สัมผัสเพราะองค์ประกอบเซ็นเซอร์จริงไม่สัมผัสกับผิวหนังจริงๆ
ฉันต้องการลองทำสิ่งนี้เพื่อวัดอุณหภูมิผิวของฉันเมื่อฉันนอนหลับ ฉันคิดว่าฉันทามติทั่วไปคืออุณหภูมิร่างกายของคุณลดลงเมื่อคุณนอนหลับ จากนั้นจะสูงขึ้นเมื่อคุณตื่นนอน
นี่เป็นบทความที่น่าสนใจ:
www.sleep.org/does-your-body-temperature-c…
“จนกว่าจะถึงจุดต่ำสุดสองสามชั่วโมงก่อนที่คุณจะตื่นนอนตอนเช้า “
“เนื่องจากอุณหภูมิเป็นส่วนสำคัญในการกำหนดเวลาที่เราหลับ จึงเป็นเรื่องที่น่าสนใจที่ระหว่างการนอนหลับอย่างรวดเร็ว (REM) เซลล์ที่ควบคุมอุณหภูมิของสมองจะปิด และปล่อยให้อุณหภูมิร่างกายของคุณถูกกำหนดโดยห้องนอนของคุณอบอุ่นหรือเย็นแค่ไหน”
นี่คืออีก:
www.tuck.com/thermoregulation/#:~:text=อะไร…
“จากอุณหภูมิร่างกายสูงสุดของคุณในตอนเย็นจนถึงจุดต่ำสุดก่อนตื่นนอน คุณจะพบว่าอุณหภูมิแกนกลางของร่างกายลดลง 2 องศาฟาเรนไฮต์
อุณหภูมิของทั้งสมองและร่างกายลดลงระหว่างการนอนหลับ NREM ยิ่งช่วงการนอนหลับของ NREM นานขึ้น อุณหภูมิก็จะยิ่งลดลง ในทางตรงกันข้าม อุณหภูมิของสมองจะเพิ่มขึ้นระหว่างการนอนหลับ REM การควบคุมอุณหภูมิของร่างกายและสมองนั้นสัมพันธ์กับการควบคุมการนอนหลับอย่างใกล้ชิด”
ดังนั้นฉันจึงต้องการวัดอุณหภูมิร่างกายตลอดทั้งคืน
ขั้นตอนที่ 1: ออกแบบเทอร์โมมิเตอร์อินฟราเรด
การออกแบบของฉันคือการใช้เซ็นเซอร์อุณหภูมิ IR MLX90614 พร้อมตัวเว้นระยะ เพื่อให้ระยะห่างจากผิวคงที่ ดังนั้นฉันจึงสวมหน้ากาก CPAP เพื่อการนอนหลับและจะติดเซ็นเซอร์ IR เข้ากับมัน (คุณอาจจะใช้ผ้าคาดศีรษะก็ได้) ตำแหน่งในอุดมคติคือ (เห็นได้ชัดว่า) หลอดเลือดแดงชั่วขณะ แต่ฉันสนใจการเปลี่ยนแปลงของอุณหภูมิมากกว่าอุณหภูมิจริง
เซ็นเซอร์ IR จะเก็บข้อมูลตามช่วงเวลาที่กำหนดตลอดทั้งคืน (ฉันเริ่มด้วย 30 วินาที แต่ตอนนี้ใช้เวลา 5 นาที) MLX90614 ยังวัดอุณหภูมิแวดล้อมของเซ็นเซอร์ด้วย
ฉันจะใช้เซ็นเซอร์อุณหภูมิ/ความชื้น DHT22 เพื่อตรวจสอบสภาพห้องโดยรอบ ข้อมูลจะถูกเก็บไว้ในการ์ด microSD
DS3231 RTC (นาฬิกาเรียลไทม์) จะคอยติดตามเวลา
ข้อมูลอุปกรณ์:
MLX90614 เซ็นเซอร์อุณหภูมิ IR
แรงดันไฟฟ้า: 3V (มีรุ่น 5V ด้วย)
อินเทอร์เฟซ: I2C (SCL/SDA)
Arduino Library: ห้องสมุด Adafruit
DS3231 RTC นาฬิกาเวลาจริง
แรงดันไฟฟ้า: 3.3-5.5V
อินเทอร์เฟซ: I2C (SCL/SDA)
คุณสมบัติ: แบตเตอรี่สำรอง
ห้องสมุด Arduino:
อะแดปเตอร์ microSD
แรงดันไฟฟ้า: 3.3V (แก้ไข)
อินเทอร์เฟซ: SPI (SCK/MISO/MOSI/CS)
คุณสมบัติ: ตัวแปลงระดับIC
ห้องสมุด Arduino: SPI
DHT22
แรงดันไฟฟ้า: 3.3-6V
อินเทอร์เฟซ: บัสสายดิจิตอลหนึ่งสาย
คุณสมบัติ:
Arduino Library: adafruit/DHT-sensor-library
3.3V Micro Pro Arduino
แรงดันไฟฟ้า 3.3V
คุณสมบัติ: ไมโครคอนโทรลเลอร์ ATmega32U4
การดัดแปลง: DS3231
โมดูล AliExpress ที่ฉันซื้อควรได้รับการออกแบบให้ใช้แบตเตอรี่แบบชาร์จไฟได้ LIR2032 วงจรการชาร์จไม่ทำงาน ฉันลองแล้ว หลังจากนั้นประมาณหนึ่งวัน แบตเตอรี่ก็หมด
หลังจากค้นหาบนอินเทอร์เน็ต ฉันพบบทความนี้:
www.onetransistor.eu/2019/07/zs042-ds3231-…
ฉันเห็นด้วยกับการวิเคราะห์นี้ แต่คิดว่า LIR2032 จะชาร์จอย่างเพียงพอ แต่ไม่มากเกินไป ฉันผิดไป. DS3231 ของฉันแม้ว่าจะถูกทำเครื่องหมายเป็น ZS-042 ด้วยเนื่องจากในบทความมีความแตกต่างเล็กน้อยจากของเขา แต่เกือบจะเหมือนกัน ดังนั้นฉันจึงยกเลิกการขายไดโอดที่เห็นในภาพและติดตั้งแบตเตอรี่ CR2032 หากไม่มีไดโอดโมดูลจะไม่พยายามชาร์จแบตเตอรี่ ตอนนี้ DS3231 สามารถจับเวลาได้อย่างถูกต้องแม้จะไม่ได้เสียบปลั๊กไฟ และแบตเตอรี่น่าจะใช้งานได้นานหลายปี
การดัดแปลง: อะแดปเตอร์ microSD
ดังนั้นฉันจึงซื้ออะแดปเตอร์ microSD นี้จาก AliExpress.com ได้รับการออกแบบมาให้ทำงานกับไมโครคอนโทรลเลอร์ 5V และยังมี IC จำแลงระดับด้วย สำหรับแอปพลิเคชันของฉัน ฉันใช้พลังงาน 3.3V ดังนั้นฉันจึงย่ออินพุตไปยังเอาต์พุตของตัวควบคุมแรงดันไฟฟ้า (ดูเหมือนว่าตัวเปลี่ยนระดับจะทำงานได้ดีกับสัญญาณ 3.3V) ฉันทำเครื่องหมายการแปลง 3.3V ด้วยยาทาเล็บสีเหลือง แนบแผนผังแล้ว
ขั้นตอนที่ 2: ฮาร์ดแวร์
ฮาร์ดแวร์:
ตอนนี้ฉันคิดว่านี่เป็นการศึกษาความเป็นไปได้มากกว่านี้ ดังนั้นฉันจึงออกแบบแผนผังและทดลองวงจรต่อแผนผัง ภาพที่สองแสดงส่วนที่สำคัญ
ขั้นตอนที่ 3: IR และ Mask
สำหรับเซ็นเซอร์ IR, MLX90614 ฉันสร้างสายเคเบิล 4 เส้นเพื่อเชื่อมต่อกับเขียงหั่นขนม ฉันติดกาวตัวเว้นวรรคกับเซ็นเซอร์ IR เซ็นเซอร์อยู่ห่างจากขอบของตัวเว้นระยะประมาณ 2 มม.
ฉันติดแผ่นเวลโครแบบกาวที่ด้านหลังของเซ็นเซอร์ IR ที่ด้านข้างของหน้ากาก CPAP ฉันติดแถบเวลโครกาวผสมพันธุ์ ตอนนี้เซ็นเซอร์ IR ถูกยึดไว้กับ Velcro หน้ากาก CPAP ถือไว้กับผิวของฉัน
FYI: เนื่องจากภาพเหล่านี้ ฉันขยับเซ็นเซอร์ไปทางด้านขวา เนื่องจากโดยทั่วไปแล้ว ฉันนอนตะแคงซ้ายและรู้สึกไม่สบายตัว
ที่ตั้ง: เทอร์โมมิเตอร์วัดไข้ทางหน้าผาก ซึ่งบางครั้งเรียกว่าเทอร์โมมิเตอร์วัดหลอดเลือดแดงขมับ ควรจะปัดผ่านหน้าผาก:
www.researchgate.net/figure/Scanning-the-t…
ภาพที่แนบมาจากหน้าเว็บนี้
ตอนนี้ฉันเดาว่าเซ็นเซอร์ IR ของฉันอยู่ที่ตำแหน่ง 12 หรือ 14 มากกว่า แต่สำหรับจุดประสงค์ของฉัน ฉันไม่สนใจเกี่ยวกับอุณหภูมิจริงๆ ฉันสนใจการเปลี่ยนแปลงของอุณหภูมิเมื่อเวลาผ่านไปเป็นส่วนใหญ่ ดังนั้นสถานที่จึงไม่ควรมีความสำคัญ
ขั้นตอนที่ 4: ซอฟต์แวร์ Arduino
ภาพสเก็ตช์ใช้ DS3231 เพื่อบอกเวลา สเก็ตช์มีเวลาเริ่มต้น (เริ่มบันทึก) เวลาหยุดและช่วงเวลาการบันทึก บันทึกวันที่ ชั่วโมง (ทศนิยม) อุณหภูมิ DHT22 RH อุณหภูมิแวดล้อม MLX90614 และอุณหภูมิ IR ลงในไฟล์ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) (ฉันใช้ Microsoft Excel เพื่ออ่านไฟล์นี้)
เวลาออมแสงเป็นปัญหาสำหรับฉัน ฉันพบสิ่งต่อไปนี้โดย JChristensen:
forum.arduino.cc/index.php?topic=96891.0
github.com/JChristensen/Timezone
ในการใช้สิ่งนี้ คุณต้องตั้งค่า RTC เป็น UTC (เวลาสากลเชิงพิกัด) ก่อน นี่คือเวลาในกรีนิช ประเทศอังกฤษ ฉันไม่รู้ว่าต้องทำอย่างไร แต่พบบทความนี้:
www.justavapor.com/archives/2482
เขียนซ้ำสำหรับเวลาภูเขา (แนบ) UTCtoRTC.ino
ซึ่งจะตั้งค่า DS3231 เป็นเวลา UTC ช้ากว่าเวลาบนภูเขา 6 ชั่วโมง
จากนั้นฉันก็รวมเขตเวลาไว้ใน Sketch พูดตามตรงฉันยังไม่ได้ทดสอบเลยแค่คิดว่ามันใช้ได้ผล
การติดตั้งซอฟต์แวร์/ฮาร์ดแวร์
ต้องการห้องสมุดเพิ่มเติม:
github.com/PaulStoffregen/DS1307RTC
github.com/JChristensen/Timezone
github.com/adafruit/Adafruit-MLX90614-Libr…
github.com/adafruit/DHT-sensor-library
ติดตั้งแบตเตอรี่ CR2032 ใน DS3231 RTC เชื่อมต่อกับ Arduino Pro Micro 3.3v
เรียกใช้ UTC ไปที่ RTC.ino การตั้งค่านี้กำหนดให้ DS3231 เป็น UTC (เวลามาตรฐานกรีนิช)
ฟอร์แมตการ์ด microSD ฉันใช้ Windows รูปแบบคือ FAT32 ใส่ลงในอะแดปเตอร์การ์ด microSD
ตั้งค่าและเชื่อมต่อเซ็นเซอร์ IR
โหลดภาพร่าง Infrared.ino
หลังจากคืนหนึ่ง คุณสามารถถอดการ์ด microSD และเสียบเข้ากับพีซีได้
Night.csv สามารถเปิดได้ด้วย Excel (มีวิธีเปิดด้วย Libre Office (ฟรี))
ขั้นตอนที่ 5: การทดสอบและสรุปผล
ฉันอ่านการ์ด microSD ด้วย MS Excel ในสเปรดชีต ฉันสร้างอีกคอลัมน์หนึ่งชื่อ Difference ซึ่งก็คือ IRTemp -96 นี่แสดงให้เห็นถึงความแปรผันของอุณหภูมิประมาณ 96F จากนั้นฉันสร้างแผนภูมิโดยใช้ชั่วโมงเป็นทศนิยมเทียบกับส่วนต่าง แผนภูมิแสดงการเปลี่ยนแปลงของอุณหภูมิตลอดทั้งคืน (ไม่ใช่อุณหภูมิจริง)
สำหรับวันที่ 18 ส.ค. ฉันได้รวมไฟล์และแผนภูมิพร้อมกับความคิดเห็นของฉัน
บางคนแนะนำว่าคืนปกติคือเมื่ออุณหภูมิลดลงจนถึงสองสามชั่วโมงก่อนที่จะตื่นขึ้นเมื่ออากาศเริ่มสูงขึ้นอีกครั้ง แผนภูมิดูเหมือนจะเป็นไปตามรูปแบบนั้น
สิ่งที่ฉันพบว่าน่าสนใจกว่านั้นคือเวลาที่มันเริ่มปีนขึ้นซึ่งอาจเป็นการนอนหลับ REM ฉันมีข้อมูลการนอนหลับจากเสื่อนอน Withings ของฉันในคืนเดียวกับที่บอกว่าฉันอยู่ในโหมดหลับ REM ตั้งแต่ 3:15 ถึง 4:50 น. ซึ่งสอดคล้องกับกราฟ IR อย่างใกล้ชิดเมื่อเพิ่มขึ้นเล็กน้อย Withing ยังแสดง REM จาก 1:30 ถึง 2 ซึ่งไม่กว้างเท่ากับการแสดง IR
ข้อแม้: สิ่งนี้ไม่เห็นด้วยกับ Fitbit หรือแหวน Go2Sleep ของฉันเลย
สำหรับวันที่ 19 ส.ค. ฉันได้รวมแผนภูมิพร้อมความคิดเห็น นี่เป็นคืนที่ไม่ปกติเพราะฉันเปิดหน้าต่างไว้ แต่มีไฟป่าห่างออกไปประมาณ 10 ไมล์ซึ่งพัดไปด้วยควันและเถ้า ตอนเข้านอน ตัวอุ่นนอนไม่ค่อยสบาย
บทสรุป:
ดังนั้นการตั้งค่าของฉันดูเหมือนจะทำในสิ่งที่ฉันต้องการให้ทำ
ฉันดีใจเป็นพิเศษที่ได้เห็นความเชื่อมโยงที่เป็นไปได้ระหว่าง IR temp และ REM sleep และวางแผนที่จะทำการทดสอบเพิ่มเติม
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง