โครงการ DIY Power Meter โดยใช้ Arduino Pro Mini: 5 ขั้นตอน
โครงการ DIY Power Meter โดยใช้ Arduino Pro Mini: 5 ขั้นตอน
Anonim
โครงการ DIY Power Meter โดยใช้ Arduino Pro Mini
โครงการ DIY Power Meter โดยใช้ Arduino Pro Mini

บทนำ

สวัสดี ชุมชนอิเล็กทรอนิกส์! วันนี้ผมจะนำเสนอโครงการที่ให้คุณวัดแรงดันและกระแสของอุปกรณ์ และแสดงร่วมกับค่าพลังงานและพลังงาน การวัดกระแส/แรงดัน หากคุณต้องการวัดแรงดันและกระแสของวงจรด้วย Arduino ขั้นตอนนี้ค่อนข้างตรงไปตรงมา คุณใช้อินพุตแบบอะนาล็อกเพื่อวัดแรงดันไฟฟ้าข้ามโหลดและใช้ตัวแบ่งเพื่อวัดกระแสผ่านแรงดันตกคร่อมของตัวต้านทานแบบแบ่ง วิธีนี้ค่อนข้างหยาบและใช้ได้เฉพาะกับแรงดันไฟฟ้าภายใน 0-5 V และ ADC ของ Arduino ที่ใช้อ่านค่าแรงดันตกคร่อมของตัวต้านทานจะคลาดเคลื่อนเล็กน้อยสำหรับการวัดค่าหลายร้อย mV เท่านั้นซึ่งจะตก ข้ามทางแยก โชคดีที่มีโมดูลที่ทำให้ชีวิตของเราง่ายขึ้น สำหรับโครงการนี้ ฉันจะใช้ไอซี INA219 ซึ่งใช้ตัวต้านทาน 0.1R เป็น shunt และสามารถวัดแรงดันไฟฟ้าได้สูงถึง 32V และมีช่วงกระแสไฟที่ 0-3.2A IC นี้มีอินเทอร์เฟซ I2C เพื่อสื่อสารกับ Arduino และจากการศึกษาแผ่นข้อมูล เราสามารถใช้คำสั่งเฉพาะบนอินเทอร์เฟซ I2C เพื่ออ่านค่าแรงดันและกระแส เราโชคดีอีกครั้งเพราะเราไม่ต้องผ่านปัญหานั้น มีไลบรารี่จาก Adafruit ที่คุณสามารถดาวน์โหลดและใช้ฟังก์ชันที่สร้างไว้ล่วงหน้าเพื่ออ่านค่าแรงดันและกระแส | คลิกที่นี่เพื่อดาวน์โหลดห้องสมุด

ขั้นตอนที่ 1: จอแสดงผล OLED

จอแสดงผล OLED
จอแสดงผล OLED

องค์ประกอบต่อไปที่ฉันจะใช้คือจอแสดงผล วิธีนี้ทำให้เราสามารถแสดงค่าที่เรากำลังวัดได้จริง ฉันได้ทำงานกับจอแสดงผล OLED "96 นิ้ว" มาระยะหนึ่งแล้วและใช้งานได้อย่างสวยงาม เราสามารถใช้ไลบรารี Adafruit ที่สร้างไว้แล้วอีกครั้งเพื่อส่งข้อมูลที่ต้องการแสดงบนจอแสดงผล | คลิกที่นี่เพื่อดาวน์โหลดห้องสมุด Adafruit | คุณจะต้องใช้ไลบรารี Adafruit GFX ด้วย

ขั้นตอนที่ 2: เครื่องอ่านการ์ด SD

เครื่องอ่านการ์ด SD
เครื่องอ่านการ์ด SD

ตอนนี้ เพื่อให้โครงการนี้สมบูรณ์ เราจะเพิ่มองค์ประกอบสุดท้าย เครื่องอ่านการ์ด micro SD เพื่อจัดเก็บข้อมูลที่วัดได้เป็นไฟล์ข้อความ จากตำแหน่งที่คุณสามารถคัดลอกลงในโปรแกรมเช่น Excel เพื่อสร้างแปลงที่ดูดี และคำนวณกำลังและพลังงานที่ใช้ โดยการคูณกระแสและแรงดันด้วย เวลาตามลำดับ

โมดูลนี้สื่อสารผ่านอินเทอร์เฟซ SPI ซึ่งใช้คำสั่งในการเขียน/อ่านข้อมูลด้วย โมดูลนี้ไม่รองรับ 5V ดังนั้นเราจึงไม่สามารถเชื่อมต่อกับอินเทอร์เฟซ Arduino ได้เนื่องจาก 5V จะทำลายชิป 3.3V ในการนั้น ฉันสร้างตัวแบ่งแรงดันไฟฟ้าออกจากตัวต้านทานเพื่อปล่อยสัญญาณ 5V ไปที่สัญญาณ 3.3V ที่เหมาะสมสำหรับชิป (สาย MOSI, CS และ CLK ตามลำดับ และปล่อย 5V เป็น 3.3V เพื่อจ่ายไฟให้กับโมดูล)

ขั้นตอนที่ 3: แผนผังไดอะแกรม:

แผนภาพ
แผนภาพ

สุดท้าย เราตั้งโปรแกรม Arduino โดยใช้ไลบรารี Adafruit สำหรับโมดูล INA219 เพื่ออ่านค่าแรงดันและกระแส นอกจากนี้เรายังคูณกระแสด้วยแรงดันเพื่อให้ได้พลังงานที่ใช้ จากนั้น เราสามารถใช้ฟังก์ชัน milis() เพื่อเก็บเวลาที่ผ่านไป แล้วคูณด้วยกำลัง เพื่อคำนวณพลังงานที่ใช้ไป สำหรับตัวอ่านการ์ด SD ฉันใช้ไลบรารี "SdFat" เพราะไลบรารี SD มาตรฐานจาก Arduino ทำงานได้ไม่ดี คลิกที่นี่เพื่อดาวน์โหลด Sdfat Library

คุณสามารถจ่ายไฟให้กับบอร์ดโดยใช้แจ็ค DC และใช้แรงดันไฟฟ้าระหว่าง 7 ถึง 12V กับ Arduino ซึ่งจ่ายไฟให้กับส่วนประกอบอื่นๆ ผ่าน 5V VCC

ขั้นตอนที่ 4: PCB มาถึง:

PCB มาถึง
PCB มาถึง

ผู้สนับสนุนโครงการนี้

ผู้สนับสนุนโครงการนี้คือ PCBGOGO ซึ่งส่งมอบ PCB 10 ชิ้นให้กับโครงการนี้ PCBGOGO ผลิต PCB คุณภาพสูงในเวลาอันสั้นและส่งมอบได้อย่างรวดเร็วเช่นกัน ดังนั้น หากคุณกำลังคิดที่จะทำให้โครงการของคุณเป็นมืออาชีพ อย่าลังเลที่จะอัปโหลดไฟล์ Gerber ของคุณไปยัง PCBGOGO เพื่อรับ 10 PCBs ในราคาที่ต่ำมาก

ขั้นตอนที่ 5: โครงการวิดีโอสาธิต

www.electronicslovers.com/2019/03/diy-power-meter-project-by-using-arduino-pro-mini.html