คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 6
ให้เก็บข้อมูลพลังงานสะสมเป็นหน่วย Ws [Watt x second] โดยการ
แล้วเขียนโค้ดประมาณนี้ครับ ให้ E แทน Energy รวม และ P แทน Power ในขณะนั้นครับ
E = E + P
โดยทำคำสั่งนี้ทุก ๆ 1 วินาทีนะครับ ก็จะได้พลังงานสะสมเป็นหน่วย Ws แล้วครับ
จากนั้นตอนแสดงผลค่อยคำนวณออกมาเป็น Wh หรือ kWh ตามต้องการได้เลยครับ
โดย 1 Wh เท่ากับ 3600 Ws ครับ
แล้วเขียนโค้ดประมาณนี้ครับ ให้ E แทน Energy รวม และ P แทน Power ในขณะนั้นครับ
E = E + P
โดยทำคำสั่งนี้ทุก ๆ 1 วินาทีนะครับ ก็จะได้พลังงานสะสมเป็นหน่วย Ws แล้วครับ
จากนั้นตอนแสดงผลค่อยคำนวณออกมาเป็น Wh หรือ kWh ตามต้องการได้เลยครับ
โดย 1 Wh เท่ากับ 3600 Ws ครับ
▼ กำลังโหลดข้อมูล... ▼
แสดงความคิดเห็น
คุณสามารถแสดงความคิดเห็นกับกระทู้นี้ได้ด้วยการเข้าสู่ระบบ
กระทู้ที่คุณอาจสนใจ
อ่านกระทู้อื่นที่พูดคุยเกี่ยวกับ
Microcontroller
การพัฒนาซอฟต์แวร์
อิเล็กทรอนิกส์
วิศวกรรมคอมพิวเตอร์
Arduino การคำนวณค่าพลังงานไฟฟ้า ค่าที่ได้นั้นมันลดลงครับ
energy = ((Power*(time))/3600) ; // หน่วยที่ได้จะเป็น whr , time เป็นวินาที
ซึ่งค่าที่วัดออกมานั้น ถูกต้องครับ แต่ปัญหาคือ เมื่อค่ากำลังไฟฟ้าลดลง ค่าพลังงานจะลดลงตาม ซึ่งจริงๆแล้ว ค่าพลังงานไม่ควรจะลดลง มีแต่จะเพิ่มเร็วขึ้นขึ้นหรือเพิ่มช้าลงหรือค่าหยุดอยู่ที่ค่าล่าสุด ขึ้นอยู่กับค่ากำลังไฟฟ้าที่มากหรือน้อย
สมมติ ผมวัดหลอดไฟแบบไส้ ค่ากำลังไฟฟ้าอยุ่ที่ 100 Watt วัดค่าพลังงานไฟฟ้าไปได้ครึ่งชั่วโมง ค่าพลังงานจะอยู่ที่ 50 Whr แต่พอผมปิดสวิตท์ไฟ ค่ากำลังไฟฟ้าจะตกเหลือ 0 Watt ซึ่งความเป็นจริง ค่าพลังงานควรจะหยุดอยู่ที่ค่า 50 whr ไปเรื่อยๆ ไม่เพิ่มขึ้นและไม่ลดลง แต่ของผม ค่าพลังงานจะตกลง เหลือ 0 whr
ใครพอจะมีวิธีเขียนโค๊ด ไม่ให้ค่าพลังงานมันลดลง มั้ยครับ ขอบคุณล่วงหน้าครับ