- Các thành phần bắt buộc cho Arduino Solar Tracker:
- Máy theo dõi năng lượng mặt trời một trục hoạt động như thế nào?
- Cách xây dựng bảng điều khiển năng lượng mặt trời xoay bằng Arduino:
- Sơ đồ mạch và giải thích:
- Bộ theo dõi năng lượng mặt trời một trục sử dụng mã Arduino:
Trong bài viết này, chúng ta sẽ tạo một Bảng điều khiển năng lượng mặt trời theo dõi mặt trời bằng Arduino, trong đó chúng ta sẽ sử dụng hai LDR (Điện trở phụ thuộc vào ánh sáng) để cảm nhận ánh sáng và một động cơ servo để tự động xoay tấm pin mặt trời theo hướng ánh sáng mặt trời.. Ưu điểm của dự án này là các tấm pin mặt trời sẽ luôn hướng theo ánh sáng mặt trời sẽ luôn hướng về phía mặt trời để được sạc mọi lúc và có thể cung cấp nguồn điện tối đa. Nguyên mẫu rất dễ xây dựng. Dưới đây, bạn sẽ tìm thấy mô tả đầy đủ về cách nó hoạt động và cách chế tạo nguyên mẫu.
Các thành phần bắt buộc cho Arduino Solar Tracker:
Sau đây là thành phần cần thiết để xây dựng hệ thống theo dõi năng lượng mặt trời bằng Arduino, hầu hết các thành phần phải có sẵn tại cửa hàng địa phương của bạn.
- Động cơ Servo (sg90)
- Bảng điều khiển năng lượng mặt trời
- Arduino Uno
- LDR's X 2 (Điện trở phụ thuộc ánh sáng)
- Điện trở 10K X 2
- Ắc quy (6 đến 12V)
Máy theo dõi năng lượng mặt trời một trục hoạt động như thế nào?
Trong dự án này, LDR's đang làm việc như một máy dò ánh sáng. Trước khi đi vào chi tiết, chúng ta sẽ phải hiểu cách thức hoạt động của LDR. LDR (Light Dependent Resistor) còn được gọi là quang trở là thiết bị nhạy cảm với ánh sáng. Điện trở của nó giảm khi ánh sáng chiếu vào và đó là lý do tại sao nó thường được sử dụng trong Mạch phát hiện bóng tối hoặc ánh sáng. Kiểm tra các mạch khác nhau dựa trên LDR tại đây.
Hai LDR được đặt ở hai bên của bảng điều khiển năng lượng mặt trời và Động cơ Servo được sử dụng để xoay tấm pin mặt trời. Servo sẽ di chuyển bảng điều khiển năng lượng mặt trời về phía LDR có điện trở thấp, có nghĩa là về phía LDR mà ánh sáng đang chiếu xuống, theo cách đó nó sẽ tiếp tục đi theo ánh sáng. Và nếu có một số lượng ánh sáng chiếu vào cả hai LDR, thì servo sẽ không quay. Servo sẽ cố gắng di chuyển bảng điều khiển năng lượng mặt trời ở vị trí mà cả hai LDR sẽ có cùng điện trở, nghĩa là nơi cùng một lượng ánh sáng sẽ chiếu vào cả hai điện trở và nếu điện trở của một trong các LDR thay đổi thì nó sẽ quay về phía có điện trở thấp hơn LDR. Xem Video minh chứng ở cuối Bài viết này.
Cách xây dựng bảng điều khiển năng lượng mặt trời xoay bằng Arduino:
Để tạo nguyên mẫu, bạn sẽ phải làm theo các bước sau:
Bước 1:
Trước hết, lấy một mảnh bìa cứng nhỏ và tạo một lỗ ở một đầu. Chúng tôi sẽ lắp vít vào đó để cố định nó với servo sau này.
Bước 2:
Bây giờ cố định hai miếng bìa cứng nhỏ với nhau theo hình chữ V với sự trợ giúp của keo hoặc súng nóng và đặt bảng điều khiển năng lượng mặt trời lên đó.
Bước 3:
Sau đó, gắn mặt dưới của hình chữ V vào đầu kia của mảnh bìa cứng nhỏ mà bạn đã tạo một lỗ ở bước đầu tiên.
Bước 4:
Bây giờ, hãy lắp vít vào lỗ bạn đã tạo trên bảng mạch thẻ và lắp nó qua lỗ vào servo. Vít đi kèm với động cơ servo khi bạn mua nó.
Bước 5:
Bây giờ đặt servo trên một miếng bìa cứng khác. Kích thước của bìa cứng phải đủ lớn hơn để bạn có thể đặt Arduino Uno, breadboard và pin lên đó.
Bước 6:
Gắn các LDR ở hai mặt của bảng điều khiển năng lượng mặt trời với sự trợ giúp của keo. Đảm bảo rằng bạn đã hàn các dây với chân của LDR. Bạn sẽ phải kết nối chúng với các điện trở sau này.
Bước 7:
Bây giờ đặt Arduino, pin và breadboard lên bìa cứng và thực hiện kết nối như được mô tả trong phần Sơ đồ mạch và Giải thích bên dưới. Nguyên mẫu cuối cùng được hiển thị bên dưới.
Sơ đồ mạch và giải thích:
Sơ đồ mạch hoàn chỉnh cho dự án arduino theo dõi năng lượng mặt trời được hiển thị bên dưới. Như bạn có thể thấy, mạch rất đơn giản và có thể dễ dàng được xây dựng với sự trợ giúp của một breadboard nhỏ.
Trong Arduino Solar Panel Tracker này, Arduino được cung cấp năng lượng bởi pin 9V và tất cả các bộ phận khác được cung cấp bởi Arduino. Điện áp đầu vào được Arduino khuyến nghị là từ 7 đến 12 vôn nhưng bạn có thể cấp nguồn cho nó trong phạm vi từ 6 đến 20 vôn, đó là giới hạn. Cố gắng cấp nguồn cho nó trong điện áp đầu vào được khuyến nghị. Vì vậy, kết nối dây dương của pin với Vin của Arduino và dây âm của pin với đất của Arduino.
Tiếp theo, kết nối servo với Arduino. Kết nối dây dương của servo với 5V của Arduino và dây nối đất với mặt đất của Arduino rồi kết nối dây tín hiệu của Servo với chân số 9 của Arduino. Servo sẽ giúp di chuyển bảng điều khiển năng lượng mặt trời.
Bây giờ hãy kết nối các LDR với Arduino. Kết nối một đầu của LDR với một đầu của điện trở 10k và cũng kết nối đầu này với A0 của Arduino và kết nối đầu kia của điện trở đó với đất và kết nối đầu kia của LDR với 5V. Tương tự, kết nối một đầu của LDR thứ hai với một đầu của điện trở 10k khác và cũng kết nối đầu đó với A1 của Arduino và kết nối đầu kia của điện trở đó với đất và kết nối đầu kia của LDR với 5V của Arduino.
Bộ theo dõi năng lượng mặt trời một trục sử dụng mã Arduino:
Mã cho Trình theo dõi bảng điều khiển năng lượng mặt trời dựa trên Arduino này rất dễ dàng và được giải thích rõ ràng bằng các nhận xét. Trước hết, chúng tôi sẽ bao gồm thư viện cho động cơ servo. Sau đó, chúng tôi sẽ khởi tạo biến cho vị trí ban đầu của động cơ servo. Sau đó, chúng tôi sẽ khởi tạo các biến để đọc từ các cảm biến LDR và Servo.
#include
Lệnh sg90.atach (servopin) sẽ đọc Servo từ chân 9 của Arduino. Tiếp theo, chúng tôi đặt các chân LDR làm chân đầu vào để chúng tôi có thể đọc các giá trị từ các cảm biến và di chuyển bảng điều khiển năng lượng mặt trời theo đó. Sau đó, chúng tôi đặt động cơ servo ở 90 độ, đây là vị trí ban đầu cho servo.
void setup () {sg90.attach (servopin); // gắn servo vào chân 9 pinMode (LDR1, INPUT); // Tạo chân LDR làm pinMode đầu vào (LDR2, INPUT); sg90.write (vị trí ban đầu); // Di chuyển servo ở độ trễ 90 độ (2000); // đưa ra độ trễ là 2 giây}
Sau đó, chúng tôi sẽ đọc các giá trị từ các LDR và sẽ lưu trong R1 và R2. Sau đó, chúng tôi sẽ tạo ra sự khác biệt giữa hai LDR để di chuyển servo cho phù hợp. Nếu sự khác biệt giữa chúng bằng 0, điều đó có nghĩa là cùng một lượng ánh sáng chiếu vào cả hai LDR, do đó tấm pin mặt trời sẽ không di chuyển. Chúng tôi đã sử dụng một biến có tên là lỗi và giá trị của nó là 5, việc sử dụng biến này là nếu sự khác biệt giữa hai LDR dưới 5 thì servo sẽ không di chuyển. Nếu chúng ta không làm điều này thì servo sẽ tiếp tục quay. Và nếu sự khác biệt lớn hơn giá trị lỗi (5) thì servo sẽ di chuyển bảng điều khiển năng lượng mặt trời theo hướng của LDR, trên đó ánh sáng đang chiếu xuống. Kiểm tra Mã đầy đủ và Video demo bên dưới.
int R1 = analogRead (LDR1); // đọc giá trị từ LDR 1 int R2 = analogRead (LDR2); // đọc giá trị từ LDR 2 int diff1 = abs (R1 - R2); // Tính toán sự khác biệt giữa int diff2 = abs (R2 - R1) của LDR; if ((diff1 <= error) - (diff2 <= error))) {// nếu chênh lệch thuộc lỗi thì không làm gì} else {if (R1> R2) {initial_position = --initial_position; // Di chuyển servo về phía 0 độ} if (R1 <R2) {initial_position = ++ initial_position; // Di chuyển servo về phía 180 độ}}
Vì vậy, đó là cách bạn có thể xây dựng một Trình theo dõi bảng điều khiển năng lượng mặt trời đơn giản, sẽ tự động di chuyển về phía ánh sáng giống như một bông hoa hướng dương. Ở đây chúng tôi đã sử dụng bảng điều khiển năng lượng mặt trời công suất thấp để giảm trọng lượng, nếu bạn đang có ý định sử dụng tấm pin mặt trời công suất cao hoặc nặng thì bạn cần chọn động cơ Servo cho phù hợp.