Mục lục:
- Quân nhu
- Bước 1: Xây dựng vi mạch của bạn:
- Bước 2: Lập trình Arduino của bạn:
- Bước 3: Lập trình Python để vẽ đồ thị dữ liệu từ Arduino:
- Bước 4: Chương trình cuối cùng để kiểm tra cường độ ánh sáng trong phòng
- Bước 5: Kết quả:
Video: Vẽ đồ thị cường độ ánh sáng bằng Arduino và Thư viện chính Arduino của Python: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:32
Arduino là một công cụ tiết kiệm nhưng hiệu quả và chức năng cao, lập trình nó trong Embedded C khiến quá trình tạo dự án trở nên tẻ nhạt! Mô-đun Arduino_Master của Python đơn giản hóa điều này và cho phép chúng tôi thực hiện các phép tính, loại bỏ các giá trị rác và vẽ biểu đồ để thể hiện trực quan dữ liệu.
Nếu bạn chưa biết về mô-đun này, hãy cài đặt nó bằng lệnh pip install Arduino_Master
Đừng lo lắng nếu bạn không biết cách sử dụng mô-đun này, hãy truy cập liên kết này => Arduino_Master
Tuy nhiên, mã cho dự án này sẽ luôn có sẵn trong tài liệu hướng dẫn này.
Quân nhu
Đối với dự án này, bạn sẽ cần những thứ sau:
- Một Arduino
- Điện trở phụ thuộc ánh sáng (LDR) và
- Python 3 đã được cài đặt trên máy tính của bạn.
Bước 1: Xây dựng vi mạch của bạn:
Chúng tôi sẽ sử dụng chân A1 của Arduino để lấy dữ liệu đầu vào. Bạn cũng có thể sử dụng chân 5V và GND của Arduino thay cho Pin. Thực hiện kết nối như sau:
- Kết nối một đầu của LDR với cực dương của pin 5V hoặc với chân 5V của Arduino.
- Kết nối song song đầu kia của LDR với chân A1 và đầu cực âm của pin hoặc chân GND của Arduino.
- Sử dụng một điện trở để đảm bảo tất cả dòng điện không chạy đến GND, điều này sẽ dẫn đến việc bạn không nhận được tín hiệu đủ mạnh để cảm nhận ở đầu cuối A1 của Arduino. (Đang sử dụng một điện trở 10k ohms).
Bước 2: Lập trình Arduino của bạn:
Mô-đun Arduino_Master sử dụng Serial Monitor của Arduino để gửi và nhận dữ liệu. Lợi thế của việc sử dụng mô-đun này là, khi bạn lập trình Arduino, bạn có thể thay đổi chương trình python một mình cho các dự án khác nhau vì lập trình trong python tương đối dễ dàng hơn!
Mã số:
// Biến LDR_1 được sử dụng để biểu thị chân A1 của Arduino.
int LDR_1 = A1;
// Dữ liệu nhận được từ A1 sẽ được lưu trữ trong LDR_Value_1.
float LDR_Value_1;
Đầu vào chuỗi;
void setup ()
{pinMode (LDR_1, INPUT); // LDR_1 được đặt làm chân INPUT. Serial.begin (9600); // Tốc độ truyền thông được đặt ở 9600.}
void loop ()
{if (Serial.available ()> 0) // nếu có bất kỳ đầu vào nào trong màn hình nối tiếp thì hãy tiếp tục. {input = Serial.readString (); // Đọc đầu vào dưới dạng chuỗi. if (input == "DATA") {LDR_Value_1 = analogRead (LDR_1) * (5.0 / 1023.0); // (5/1023) là hệ số chuyển đổi để nhận giá trị tính bằng Vol. Serial.println (LDR_Value_1); // Nếu đầu vào bằng "DATA", thì đọc đầu vào từ LDR_1 và in nó trên Serial Monitor. } else int i = 0; // nếu đầu vào không bằng "DATA", không làm gì cả! }
}
Bước 3: Lập trình Python để vẽ đồ thị dữ liệu từ Arduino:
Mỗi và mọi LDR sẽ có các giá trị điện trở riêng và chúng ta phải nhớ rằng không có linh kiện điện tử nào hoạt động giống hệt nhau. Vì vậy, trước tiên chúng ta phải tìm hiệu điện thế ở các cường độ ánh sáng khác nhau.
Tải chương trình sau lên IDE python của bạn và chạy nó:
Làm điều này đối với các cường độ ánh sáng khác nhau và sử dụng biểu đồ rút ra kết luận, chẳng hạn như nếu cường độ nhỏ hơn 1, căn phòng quá tối. Đối với cường độ từ 1 đến 2, căn phòng tối đáng kể. Đối với cường độ lớn hơn 2, đèn được Bật.
# Nhập mô-đun Arduino_Master
từ nhập Arduino_Master *
# thu thập dữ liệu
data = filter (ardata (8,quee = False, dynamic = True, msg = "DATA", lines = 30), eval_type = 'num', limit = [0, 5])
# giới hạn được đặt thành 5 vì chúng tôi đang sử dụng pin 5V.
# Vẽ các giá trị
Biểu đồ (data, stl = 'dark_background', label = 'Cường độ ánh sáng')
Bước 4: Chương trình cuối cùng để kiểm tra cường độ ánh sáng trong phòng
Sau khi đi đến kết luận từ dữ liệu bạn nhận được, hãy tải lên chương trình sau và đảm bảo thay đổi các giới hạn theo kết luận của bạn.
# Nhập mô-đun Arduino_Master
từ Arduino_Master nhập # thu thập dữ liệu dữ liệu = bộ lọc (ardata (8, bóp = Sai, động = Đúng, msg = "DATA", dòng = 50), dự kiến_type = 'num', giới hạn = [0, 5]) # phân loại dữ liệu dựa trên kết luận thông tin = cho tôi trong phạm vi (len (dữ liệu)): cường độ = dữ liệu nếu cường độ 1 và cường độ = 2: info.append ('BẬT nhẹ') # Vẽ Đồ thị. compGraph (data, info, stl = 'dark_background', label1 = 'Light Intensity', label2 = 'State')
Bước 5: Kết quả:
Chương trình sẽ mất một hoặc hai phút để chạy vì bạn đang đọc 50 giá trị tức thời từ Arduino.
Nếu bạn muốn tăng tốc quá trình, hãy thử thay đổi tham số dòng của hàm ardata. Nhưng hãy nhớ rằng số lượng quan sát càng ít thì chất lượng dữ liệu càng kém.
Lưu ý: Nếu đồ thị hoàn chỉnh trong hình trên không hiển thị, hãy tham khảo đồ thị phía trên phần Giới thiệu.
Đề xuất:
Công tắc ánh sáng điều khiển bằng nháy mắt bằng kính đeo đầu tẩy của Shota Aizawa (Học viện anh hùng của tôi): 8 bước (có hình ảnh)
Công tắc ánh sáng được điều khiển bằng mắt-nháy bằng Kính bảo hộ đầu tẩy của Shota Aizawa (Học viện anh hùng của tôi): Nếu bạn đọc truyện tranh về học viện anh hùng của tôi hoặc xem anime về học viện anh hùng của tôi, bạn phải biết một người vẽ bùa tên là shota aizawa. Shota Aizawa còn được gọi là Thủ lĩnh tẩy, là một Anh hùng chuyên nghiệp và là giáo viên chủ nhiệm của Lớp 1-A của U.A. Shota's Quirk cho anh ta
Lập trình Arduino bằng Arduino khác để hiển thị văn bản cuộn mà không có thư viện: 5 bước
Lập trình Arduino Sử dụng Arduino khác để hiển thị văn bản cuộn mà không cần thư viện: Sony Spresense hoặc Arduino Uno không quá đắt và không yêu cầu nhiều năng lượng. Tuy nhiên, nếu dự án của bạn có giới hạn về nguồn, không gian hoặc thậm chí ngân sách, bạn có thể muốn xem xét sử dụng Arduino Pro Mini. Không giống như Arduino Pro Micro, Arduino Pro Mi
Người vẽ Thu hoạch - Bài dự thi Cuộc thi Phát triển Ngoài Trái đất của NASA: 5 bước (có Hình ảnh)
Người vẽ thu hoạch - Bài dự thi Cuộc thi Phát triển Ngoài Trái đất của NASA: Tóm tắt: Trên trạm vũ trụ quốc tế, các phi hành gia không có nhiều chỗ để trồng thực phẩm. Khu vườn thủy canh này được thiết kế để hoạt động hiệu quả bằng cách sử dụng khoảng không gian tối thiểu để thu hoạch 30 cây theo lịch trình luân phiên trong một
Đèn xe đạp rất sáng sử dụng bảng điều khiển ánh sáng tùy chỉnh PCB: 8 bước (có hình ảnh)
Đèn xe đạp rất sáng sử dụng bảng điều khiển ánh sáng tùy chỉnh PCB: Nếu bạn sở hữu một chiếc xe đạp thì bạn sẽ biết những ổ gà khó chịu có thể ảnh hưởng đến lốp xe và thân xe của bạn như thế nào. Tôi đã làm nổ lốp xe quá đủ rồi nên tôi quyết định thiết kế bảng điều khiển đèn led của riêng mình với mục đích sử dụng nó như một chiếc đèn xe đạp. Một trong đó tập trung vào việc trở thành E
Công tắc ánh sáng + Bộ điều chỉnh độ sáng quạt trong một bảng với ESP8266: 7 bước (có hình ảnh)
Công tắc đèn + Bộ điều chỉnh độ sáng quạt trong một bảng với ESP8266: Trong hướng dẫn này, bạn sẽ học cách xây dựng công tắc đèn và bộ điều chỉnh độ sáng quạt của riêng mình chỉ trong một bảng với bộ vi điều khiển và mô-đun WiFi ESP8266. Đây là một dự án tuyệt vời cho IoT. : Mạch này xử lý điện áp chính AC, vì vậy hãy cẩn thận