
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12



วัตถุที่มีไฟ LED ดึงดูดใจฉันเสมอ ดังนั้นโครงการนี้จึงรวมเซ็นเซอร์เข็มทิศดิจิตอลยอดนิยม HMC5883L เข้ากับ LED 48 ดวง โดยการวางไฟ LED ในวงกลม ไฟ LED ซึ่งให้แสงสว่างคือทิศทางที่คุณกำลังมุ่งหน้าไป ทุกๆ 7.5 องศาจะขับ LED ใหม่ซึ่งให้ผลลัพธ์โดยละเอียด
บอร์ด GY-86 ยังมีเซ็นเซอร์ความดันบรรยากาศ MS5611 ด้วยความช่วยเหลือของเซ็นเซอร์นี้ คุณสามารถคำนวณระดับความสูงได้ เนื่องจากความละเอียดสูงจึงเหมาะอย่างยิ่งสำหรับเครื่องวัดระยะสูง
เซ็นเซอร์ MPU6050 บนบอร์ด GY-86 มีทั้งมาตรความเร่งแบบ 3 แกนและไจโรสโคปแบบ 3 แกน ไจโรสโคปสามารถวัดความเร็วของตำแหน่งเชิงมุมเมื่อเวลาผ่านไป มาตรความเร่งสามารถวัดความเร่งโน้มถ่วง และใช้คณิตศาสตร์ตรีโกณมิติสามารถคำนวณมุมที่เซ็นเซอร์วางตำแหน่งได้ เมื่อรวมข้อมูลมาตรความเร่งและไจโรสโคป คุณจะได้รับข้อมูลเกี่ยวกับการวางแนวเซ็นเซอร์ สามารถใช้สำหรับการชดเชยความเอียงสำหรับเข็มทิศ HMC5883L (ที่ต้องทำ)
วิดีโอแนะนำสั้น ๆ ในคำแนะนำนี้จะอธิบายรายละเอียดว่ามันทำงานอย่างไร ขั้นตอนการสอบเทียบเป็นไปโดยอัตโนมัติเพื่อรับประกันความสำเร็จ อุณหภูมิมีอยู่ในเซลเซียส (ค่าเริ่มต้น) หรือฟาเรนไฮต์
มีความสุข !!
ขั้นตอนที่ 1: เครื่องวัดระยะสูง


เครื่องวัดระยะสูงใช้เซ็นเซอร์ความดันบรรยากาศ MS5611 สามารถกำหนดระดับความสูงได้ตามการวัดความดันบรรยากาศ ยิ่งสูง ความดันยิ่งต่ำ เมื่อเริ่มต้น เครื่องวัดระยะสูงจะใช้ความดันระดับน้ำทะเลเริ่มต้นที่ 1013.25 mbar การกดปุ่มที่พิน 21 แรงกดที่ตำแหน่งของคุณจะถูกใช้เป็นข้อมูลอ้างอิง ด้วยวิธีนี้ทำให้สามารถวัดความสูงของสิ่งของได้โดยประมาณ (เช่น เมื่อขับรถขึ้นเนิน)
โปรเจ็กต์นี้ใช้สูตรที่เรียกว่า "Hypsometric formula" สูตรนี้ใช้อุณหภูมิเพื่อชดเชยการวัด
float alt=((powf(แหล่งที่มา / ((float) P / 100.0), 0.19022256) - 1.0) * ((float) TEMP / 100 + 273.15)) / 0.0065;
คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับสูตรไฮโซเมตริกได้ที่นี่:
สูตรไฮโปเมทริก
ข้อมูลการสอบเทียบจากโรงงานและอุณหภูมิเซ็นเซอร์จะอ่านจากเซ็นเซอร์ MS5611 และนำไปใช้กับโค้ดเพื่อให้ได้การวัดที่แม่นยำที่สุด ระหว่างการทดสอบ ฉันพบว่าเซ็นเซอร์ MS5611 มีความไวต่อการไหลของอากาศและความแตกต่างของความเข้มของแสง ต้องเป็นไปได้เพื่อให้ได้ผลลัพธ์ที่ดีกว่าในวิดีโอแนะนำนี้
ขั้นตอนที่ 2: อะไหล่
1 x Microchip 18f26k22 ไมโครคอนโทรลเลอร์ 28-PIN PDIP
3 x MCP23017 เครื่องขยายสัญญาณ I/O 16 บิต 28 พิน SPDIP
48 x LED's 3mm
1 x โมดูล GY-86 พร้อมเซ็นเซอร์ MS5611, HMC5883L และ MPU6050
1 x SH1106 OLED 128x64 I2C
1 x ตัวเก็บประจุเซรามิก 100nF
ตัวต้านทาน 1 x 100 โอห์ม
ขั้นตอนที่ 3: แผนภาพวงจรและ PCB

ทุกอย่างพอดีกับ PCB ด้านเดียว ค้นหาไฟล์ Eagle และ Gerber ที่นี่ เพื่อให้คุณสร้างเองหรือสอบถามผู้ผลิต PCB
ฉันใช้เข็มทิศ LED และเครื่องวัดระยะสูงในรถของฉันและใช้อินเทอร์เฟซ OBD2 เป็นแหล่งจ่ายไฟ ไมโครคอนโทรลเลอร์พอดีกับขั้วต่อ
ขั้นตอนที่ 4: วิธีจัดแนว LED ให้สมบูรณ์แบบในวงกลมในไม่กี่วินาทีด้วยซอฟต์แวร์การออกแบบ Eagle PCB

คุณต้องเห็นคุณสมบัติที่ดีจริงๆ ใน Eagle PCB Design Software ซึ่งช่วยให้คุณประหยัดเวลาในการทำงาน ด้วยคุณสมบัติ Eagle นี้ คุณสามารถจัดแนว LED ให้เป็นวงกลมได้อย่างสมบูรณ์แบบในไม่กี่วินาที
เพียงคลิกที่แท็บ "ไฟล์" จากนั้น "เรียกใช้ ULP" จากที่นี่ คลิกที่ "cmd-draw.ulp" เลือก "ย้าย" "ขั้นองศา" และ "วงกลม" กรอกชื่อ LED แรกในฟิลด์ "ชื่อ" กำหนดพิกัดของจุดศูนย์กลางของวงกลมบนตารางที่ช่อง "X center coord" และ "Y center coord" ในโครงการนี้มีไฟ LED 48 ดวงดังนั้น 360 หารด้วย 48 ทำให้ 7.5 สำหรับฟิลด์ "มุมขั้น" รัศมีของวงกลมนี้คือ 1.4 นิ้ว กด Enter และคุณมีวงกลม LED ที่สมบูรณ์แบบ
ขั้นตอนที่ 5: กระบวนการสอบเทียบเข็มทิศ

HMC5883L มี ADC 12 บิตที่ช่วยให้ทิศทางของเข็มทิศมีความแม่นยำ 1 ถึง 2 องศาเซลเซียส แต่ก่อนที่จะให้ข้อมูลที่ใช้งานได้ จะต้องมีการปรับเทียบ เพื่อให้โปรเจ็กต์นี้ทำงานได้อย่างราบรื่น มีวิธีการสอบเทียบที่ให้ค่าออฟเซ็ต x และ y ไม่ใช่วิธีการที่ซับซ้อนที่สุด แต่ก็เพียงพอสำหรับโครงการนี้ ขั้นตอนนี้จะเสียค่าใช้จ่ายเพียงไม่กี่นาทีและให้ผลลัพธ์ที่ดี
โดยการโหลดและเรียกใช้ซอฟต์แวร์นี้ คุณจะได้รับคำแนะนำในกระบวนการสอบเทียบนี้ จอแสดงผล OLED จะบอกคุณเมื่อกระบวนการจะเริ่มและสิ้นสุดเมื่อใด กระบวนการสอบเทียบนี้จะขอให้คุณหมุนเซ็นเซอร์ 360 องศาโดยถือให้แบนสนิท (ในแนวนอนกับพื้น) ติดตั้งบนขาตั้งกล้องหรืออะไรทำนองนั้น การทำเช่นนี้โดยถือไว้ในมือของคุณไม่ได้ผล ในตอนท้าย ออฟเซ็ตจะแสดงบน OLED หากคุณเรียกใช้ขั้นตอนนี้หลายครั้ง คุณต้องเห็นผลลัพธ์ที่เกือบเท่ากัน
นอกจากนี้ ข้อมูลที่รวบรวมยังมีให้ผ่าน RS232 ผ่านพิน 27 (9600 บอด) เพียงใช้โปรแกรมเทอร์มินัลเช่น Putty และรวบรวมข้อมูลทั้งหมดในไฟล์บันทึก ข้อมูลนี้สามารถนำเข้าได้อย่างง่ายดายใน Excel จากที่นี่ คุณสามารถดูได้ง่ายขึ้นว่าออฟเซ็ตของ HMC5883L ของคุณเป็นอย่างไร
ออฟเซ็ตใส่ใน EEPROM ของไมโครคอนโทรลเลอร์ สิ่งเหล่านี้จะถูกโหลดเมื่อเริ่มต้นซอฟต์แวร์เข็มทิศและเครื่องวัดระยะสูง ซึ่งคุณจะพบในขั้นตอนที่ 7
ขั้นตอนที่ 6: ชดเชยการปฏิเสธแม่เหล็กของตำแหน่งของคุณ



มีทิศเหนือแม่เหล็กและทิศเหนือทางภูมิศาสตร์ (ขั้วโลกเหนือ) เข็มทิศของคุณจะเป็นไปตามเส้นสนามแม่เหล็กของโลก ดังนั้นให้ชี้ไปที่ทิศเหนือของแม่เหล็ก ความแตกต่างระหว่างทิศเหนือแม่เหล็กและทิศเหนือทางภูมิศาสตร์เรียกว่าการปฏิเสธแม่เหล็ก ที่ตำแหน่งของฉัน ความลาดเอียงเพียง 1 องศา 22 นาที ดังนั้นจึงไม่คุ้มที่จะชดเชยสิ่งนี้ ที่อื่น ความเอียงนี้อาจสูงถึง 30 องศา
ค้นหาความลาดเอียงของสนามแม่เหล็ก ณ ตำแหน่งของคุณ
หากคุณต้องการชดเชยสิ่งนี้ (เป็นทางเลือก) คุณสามารถเพิ่มการปฏิเสธ (องศาและนาที) ใน EEPROM ของไมโครคอนโทรลเลอร์ ที่ตำแหน่ง 0x20 คุณสามารถเพิ่มองศาในรูปแบบเลขฐานสิบหกที่มีลายเซ็น มีการลงนามเพราะอาจเป็นการปฏิเสธเชิงลบได้เช่นกัน ที่ตำแหน่ง 0x21 คุณสามารถเพิ่มนาทีในรูปแบบเลขฐานสิบหกได้เช่นกัน
ขั้นตอนที่ 7: รวบรวมรหัส


รวบรวมซอร์สโค้ดนี้และตั้งโปรแกรมไมโครคอนโทรลเลอร์ของคุณ รหัสนี้คอมไพล์ถูกต้องด้วย MPLABX IDE v5.20 และ XC8 คอมไพเลอร์ v2.05 ในโหมด C99 (รวมถึงไดเร็กทอรี C99) นอกจากนี้ยังมีไฟล์ hex เพื่อให้คุณสามารถข้ามขั้นตอนการคอมไพล์ได้ ตรวจสอบให้แน่ใจว่าคุณยกเลิกการเลือกช่องทำเครื่องหมาย "เปิดใช้งานข้อมูล EEPROM" เพื่อป้องกันไม่ให้ข้อมูลการสอบเทียบ (ดูขั้นตอนที่ 5) ถูกเขียนทับ ตั้งโปรแกรมเมอร์ของคุณไว้ที่ 3.3 โวลต์!
การเชื่อมต่อพิน 27 กับกราวด์คุณจะได้อุณหภูมิเป็นฟาเรนไฮต์
ขอบคุณ Achim Döbler สำหรับไลบรารีกราฟิก µGUI ของเขา

รองชนะเลิศการประกวดเซนเซอร์
แนะนำ:
ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: 5 ขั้นตอน (พร้อมรูปภาพ)

ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: มีไฟฉายมากมายในท้องตลาดที่มีการใช้งานเหมือนกันและมีระดับความสว่างต่างกัน แต่ฉันไม่เคยเห็นไฟฉายที่มีแสงมากกว่าหนึ่งประเภท ในโครงการนี้ ฉันรวบรวมไฟ 3 แบบในไฟฉายเดียว ฉัน
LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: 4 ขั้นตอน (พร้อมรูปภาพ)

LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: ฉันได้สร้างก้อนเมฆ LED เพื่อสร้างบรรยากาศที่ไม่มีตัวตนในบ้านของฉัน ในขั้นต้นจะใช้สำหรับเทศกาลที่ถูกยกเลิกเนื่องจากการระบาดในปัจจุบัน ฉันเคยใช้ Fade Candy Chip เพื่อให้ได้แอนิเมชั่นที่ลื่นไหล และฉันได้
เครื่องชาร์จรูปลอกเรืองแสง LED UV LED: 4 ขั้นตอน (พร้อมรูปภาพ)

เครื่องชาร์จรูปลอกเรืองแสง LED UV LED: ไฟ LED UV LED ที่ใช้พลังงานจากแบตเตอรี่ช่วยให้สติ๊กเกอร์เรืองแสงในที่มืดที่ทำจากไวนิลโฟโตลูมิเนนต์ถูกชาร์จและเรืองแสงตลอดเวลาในความมืด ฉันมีเพื่อนที่เป็นพนักงานดับเพลิง เขาและเพื่อนๆ สวมหมวกกันน๊อคเรืองแสงในที่มืด
DIY LED Strip: วิธีตัด เชื่อมต่อ บัดกรี และเปิดไฟ LED Strip: 3 ขั้นตอน (พร้อมรูปภาพ)

DIY LED Strip: How to Cut, Connect, Solder and Power LED Strip: คู่มือเริ่มต้นสำหรับการสร้างโครงการแสงของคุณเองโดยใช้แถบ LED แถบ LED ที่ยืดหยุ่นและใช้งานง่ายเป็นทางเลือกที่ดีที่สุดสำหรับการใช้งานที่หลากหลายฉันจะครอบคลุม พื้นฐานในการติดตั้งแถบ LED 60 LEDs/m ในร่มแบบเรียบง่าย แต่ใน
โคมไฟ LED Strip แบบง่าย (อัพเกรดแถบ LED ของคุณ): 4 ขั้นตอน (พร้อมรูปภาพ)

Simple LED Strip Lamps (อัพเกรดแถบ LED ของคุณ): ฉันใช้แถบ LED มาระยะหนึ่งแล้วและชอบความเรียบง่ายของแถบ LED มาโดยตลอด คุณเพียงแค่ตัดบทบาทบางส่วน บัดกรีสายไฟเข้ากับมัน ต่อแหล่งจ่ายไฟ และคุณมีแหล่งกำเนิดแสงสำหรับตัวคุณเอง ตลอดหลายปีที่ผ่านมา ฉันได้พบค