สารบัญ:

Mr Tracker: 3 ขั้นตอน
Mr Tracker: 3 ขั้นตอน

วีดีโอ: Mr Tracker: 3 ขั้นตอน

วีดีโอ: Mr Tracker: 3 ขั้นตอน
วีดีโอ: จะเกิดอะไรขึ้น? เมื่อ คนกากVsคนเทพVsแฮกเกอร์ แข่งกันสร้างฐานทัพป้องกันซอมบี้ในมายคราฟ (พากย์ไทย) 2024, พฤศจิกายน
Anonim
มิสเตอร์แทรคเกอร์
มิสเตอร์แทรคเกอร์

ตัวติดตามพลังงานแสงอาทิตย์ให้กระแสไฟฟ้ามากกว่าแผงโซลาร์เซลล์ปกติ 30%

  • สวัสดีต้องการสร้าง Solar Tracker ของคุณเอง
  • ต่อไปนี้คือขั้นตอนง่ายๆ ที่คุณสามารถสร้างตัวติดตามแสงอาทิตย์ของคุณเองได้

วัสดุที่จำเป็น

  • คณะกรรมการขนมปัง
  • ออดิโน่ อูโน่/นาโน/โปร มินิ
  • แบตเตอรี่ 9v
  • แผงโซลาร์เซลล์ 2 แผง (ขนาดใดก็ได้)
  • 2 LDR (ถ้าคุณต้องการสร้าง 2 แกน คุณจะต้องมี 4 LDR)
  • สายจัมเปอร์
  • กระดานการ์ด
  • 1 เซอร์โวมอเตอร์

ขั้นตอนที่ 1: ตรวจสอบแผนภาพนี้ว่าวงจรจะเป็นอย่างไร

ตรวจสอบแผนภาพนี้ว่าวงจรจะเป็นอย่างไร
ตรวจสอบแผนภาพนี้ว่าวงจรจะเป็นอย่างไร

ขั้นตอนที่ 2: วิธีการรหัส

หากคุณไม่ทราบเกี่ยวกับเซอร์โวมอเตอร์ เซอร์โวหมุนได้เพียง 180 องศา ข้อดีของการใช้เซอร์โวนั้นขึ้นอยู่กับว่าเราต้องการจะหมุนมากแค่ไหน

LDR ความต้านทานของ LDR ต่ำเมื่อมีแสงมากเกินไปและในที่มืดจะมีความต้านทานสูงมาก เราจะใส่รหัส Inside ถ้าเงื่อนไขเพื่อให้เราสามารถหมุนแผงโซลาร์ของเราได้อย่างง่ายดายโดยใช้ความต้านทานของ ldr

คุณสามารถเขียนโค้ดของคุณเองสำหรับเครื่องติดตามแสงอาทิตย์นี้ ตามการออกแบบตัวติดตามแสงอาทิตย์ของคุณ

รหัสของตัวติดตามแสงอาทิตย์ของฉันคือ: -

ขั้นตอนที่ 3: รหัส: -

#รวมเซอร์โว sg90; int initial_position = 90; int LDR1 = A0; //เชื่อมต่อ LDR1 กับ Pin A0

int LDR2 = A1; //เชื่อมต่อ LDR2 ที่ขา A1

ข้อผิดพลาด int = 5;

int เซอร์โวพิน = 9; // คุณสามารถเปลี่ยนเซอร์โวได้เพียงแค่ตรวจสอบให้แน่ใจว่าอยู่บนพิน PWM ของ arduino

การตั้งค่าเป็นโมฆะ ()

{

sg90.attach(เซอร์โวปิน);

โหมดพิน (LDR1, INPUT); โหมดพิน (LDR2, INPUT);sg90.write(initial_position);

// ย้ายเซอร์โวที่ 90 องศา

ล่าช้า (2000); }

วงเป็นโมฆะ ()

{

int R1 = analogRead (LDR1); // อ่าน LDR 1

int R2 = analogRead (LDR2); // อ่าน LDR 2 int diff1= abs(R1 - R2); int diff2= เอบีเอส (R2 - R1);if((diff1 <= error) || (diff2 <= error)) { }

อื่น {

ถ้า(R1 > R2)

{

ถ้า (initial_position>60) { initial_position = --initial_position;

}

} ถ้า (R1 < R2) {

ถ้า (initial_position<120) { initial_position = ++initial_position; } } } sg90.write(initial_position); ล่าช้า (50);

}

แนะนำ: