Mục lục:

Đo tốc độ động cơ bằng Arduino: 6 bước
Đo tốc độ động cơ bằng Arduino: 6 bước

Video: Đo tốc độ động cơ bằng Arduino: 6 bước

Video: Đo tốc độ động cơ bằng Arduino: 6 bước
Video: Arduino | Đo Tốc Độ Động Cơ bằng Encoder và Hiển Thị LCD 2024, Tháng bảy
Anonim
Đo tốc độ động cơ bằng Arduino
Đo tốc độ động cơ bằng Arduino
Đo tốc độ động cơ bằng Arduino
Đo tốc độ động cơ bằng Arduino
Đo tốc độ động cơ bằng Arduino
Đo tốc độ động cơ bằng Arduino

Đo vòng tua máy có khó không ??? Tôi không nghĩ vậy. Đây là một giải pháp đơn giản.

Chỉ một cảm biến IR và Arduino trong bộ của bạn có thể làm như vậy.

Trong bài đăng này, tôi sẽ đưa ra một hướng dẫn đơn giản giải thích cách đo RPM của bất kỳ động cơ nào sử dụng cảm biến IR và Arduino UNO / nano

Quân nhu:

1. Arduion una (Amazon) / Arduion nano (Amazon)

2. Cảm biến IR (Amazon)

3. Động cơ DC bất kỳ (Amazon)

4. LCD 16 * 2 (Amazon)

Công cụ được sử dụng

1. Sắt hàn (Amazon)

2. Wire Stripper (Amazon)

Bước 1: Bước: 1 Đảm bảo tình trạng hoạt động của các cảm biến và thiết bị

Cảm biến hồng ngoại là gì? Cảm biến hồng ngoại là một thiết bị điện tử, phát ra ánh sáng để cảm nhận một số đối tượng của môi trường xung quanh. Cảm biến IR có thể đo nhiệt của một vật thể cũng như phát hiện chuyển động. Thông thường, trong quang phổ hồng ngoại, tất cả các vật thể đều bức xạ một số dạng bức xạ nhiệt. Những loại bức xạ này mắt chúng ta không nhìn thấy được, nhưng cảm biến hồng ngoại có thể phát hiện ra những bức xạ này.

Động cơ điện một chiều là gì? Động cơ điện một chiều (DC) là một loại máy điện biến năng lượng điện thành cơ năng. Động cơ DC lấy năng lượng điện thông qua dòng điện một chiều và chuyển đổi năng lượng này thành chuyển động quay cơ học.

Động cơ điện một chiều sử dụng từ trường xuất hiện từ các dòng điện được tạo ra, cung cấp năng lượng cho chuyển động của rôto được cố định trong trục đầu ra. Mô-men xoắn đầu ra và tốc độ phụ thuộc vào cả đầu vào điện và thiết kế của động cơ.

Arduino là gì?

Arduino là một nền tảng điện tử mã nguồn mở dựa trên phần cứng và phần mềm dễ sử dụng. Bảng Arduino có thể đọc đầu vào - ánh sáng trên cảm biến, ngón tay trên nút hoặc tin nhắn Twitter - và biến nó thành đầu ra - kích hoạt động cơ, bật đèn LED, xuất bản nội dung trực tuyến. Bạn có thể cho bảng của bạn biết phải làm gì bằng cách gửi một tập hợp các hướng dẫn đến bộ vi điều khiển trên bảng. Để làm như vậy, bạn sử dụng ngôn ngữ lập trình Arduino (dựa trên Hệ thống dây) và Phần mềm Arduino (IDE), dựa trên Xử lý.

Tải xuống ARDUINO IDE

Bước 2: Làm thế nào nó hoạt động?

Vậy logic đằng sau điều này là gì ??

Nó hoạt động tương tự như bộ mã hóa. Các bộ mã hóa khó hiểu đối với người mới bắt đầu. Tất cả những gì bạn cần biết là cảm biến IR tạo ra xung và chúng tôi đang tìm ra khoảng thời gian giữa mỗi xung.

Trong trường hợp này, cảm biến IR sẽ gửi một xung tới Arduino khi tia IR của nó bị chặn với các cánh quạt của động cơ. Thông thường chúng ta sử dụng cánh quạt có hai cánh nhưng tôi đã sử dụng cánh quạt có ba cánh như trong hình. tùy thuộc vào số lượng cánh chân vịt mà chúng ta cần sửa đổi một số giá trị trong khi tính RPM.

chúng ta hãy xem xét chúng ta có một cánh quạt có hai cánh. Đối với mỗi động cơ quay vòng, lưỡi dao sẽ chặn tia hồng ngoại hai lần. Do đó, cảm biến IR sẽ tạo ra các xung khi có điểm chặn.

Bây giờ chúng ta phải viết một chương trình có thể đo số lượng xung được tạo ra bởi cảm biến IR tại một khoảng thời gian cụ thể.

Có nhiều cách để giải quyết vấn đề nhưng chúng ta phải chọn cách nào là tốt nhất trong mã này, tôi đã đo khoảng thời gian giữa các lần ngắt (cảm biến IR) Tôi đã sử dụng hàm micros () để đo thời gian của xung tính bằng micro giây.

bạn có thể sử dụng Công thức này để đo RPMRPM = ((1 / thời lượng) * 1000 * 1000 * 60) / lưỡi

trong đó, khoảng thời gian - khoảng thời gian giữa các xung.

60 - giây đến phút

1000 - mili giây

1000 - micro đến cối xay

cánh - không có cánh trong cánh quạt.

Màn hình LCD - Arduino cập nhật các thanh ghi lệnh và dữ liệu của màn hình LCD. Hiển thị các ký tự ASCII trên màn hình LCD.

Bước 3: Lập trình Arduino của bạn bằng Arduino IDE

#bao gồm

Màn hình LCD LiquidCrystal (9, 8, 7, 6, 5, 4); const int IR_IN = 2; // Cảm biến hồng ngoại INPUT chưa ký dài trước đó; // Để lưu trữ thời gian dài không dấu; // Để lưu trữ chênh lệch thời gian không dấu long lcdrefresh; // Để lưu trữ thời gian để lcd làm mới int rpm; // Giá trị RPM boolean currentstate; // Trạng thái hiện tại của đầu vào IR quét boolean chiếm ưu thế; // Trạng thái của cảm biến IR trong lần quét trước void setup () {pinMode (IR_IN, INPUT); lcd.begin (16, 2); trước đó = 0; thịnh hành = LOW; } void loop () {////////////////////////////////////////////////// ///////////////////////////////////////// RPM Đo lường currentstate = digitalRead (IR_IN); // Đọc trạng thái của cảm biến IR if (prevstate! = Currentstate) // Nếu có thay đổi trong đầu vào {if (currentstate == LOW) // Nếu đầu vào chỉ thay đổi từ CAO thành THẤP {thời lượng = (micros () - prevmicros); // Chênh lệch thời gian giữa vòng quay trong micro giây / phút = ((60000000 / thời lượng) / 3); // rpm = (1 / mili giây) * 1000 * 1000 * 60; presmicros = micros (); // lưu trữ thời gian để tính toán vòng quay mật}} Prestate = currentstate; // lưu trữ dữ liệu quét này (quét trước) cho lần quét tiếp theo /////////////////////////////////////// ///////////////////////////////////////////////////// Màn hình LCD hiển thị nếu ((millis () - lcdrefresh)> = 100) {lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Tốc độ của Động cơ"); lcd.setCursor (0, 1); lcd.print ("RPM ="); lcd.print (vòng / phút); lcdrefresh = millis (); }}

Bước 4: Mô phỏng bằng Proteus

Mô phỏng bằng Proteus
Mô phỏng bằng Proteus

Dự án này hoạt động hoàn toàn tốt khi tôi thử mô phỏng điều này với sự trợ giúp của proteus.

Thay vì sử dụng cảm biến IR, tôi đã sử dụng bộ tạo xung DC. Nó sẽ mô phỏng xung IR tương tự như xung được tạo ra khi tia IR chạm vào các cánh quạt.

bạn phải thực hiện các thay đổi đối với chương trình của mình tùy thuộc vào cảm biến bạn sử dụng

Cảm biến IR với LM358 phải sử dụng lệnh này.

if (currentstate == HIGH) // Nếu đầu vào chỉ thay đổi từ LOW thành HIGH

Cảm biến hồng ngoại với LM359 phải sử dụng lệnh này.

if (currentstate == LOW) // Nếu đầu vào chỉ thay đổi từ CAO thành THẤP

Bước 5: Thực thi phần cứng

Thực thi phần cứng
Thực thi phần cứng
Thực thi phần cứng
Thực thi phần cứng
Thực thi phần cứng
Thực thi phần cứng

Đối với giản đồ, hãy sử dụng các hình ảnh mô phỏng hoặc tham khảo các mã chương trình và thực hiện các kết nối cho phù hợp. Tải mã chương trình lên Arduino và đo RPM của bất kỳ động cơ nào. Hãy theo dõi bài viết tiếp theo của tôi và xem kênh YouTube của tôi.

Đề xuất: