Bạn có muốn cung cấp cho bạn đôi mắt Arduino hay ý thức không gian? chỉ vì bạn không muốn con robot của bạn rơi xuống hoặc rơi khỏi bàn!
Hoặc có thể bạn đang nghĩ đến việc tạo ra một cảm biến đỗ xe, cảm biến độ nước hoặc thiết bị đo khoảng cách. tuy nhiên, bạn không biết làm thế nào để bắt đầu?
Anh đến đúng chỗ rồi! chúng tôi sẽ chỉ cho bạn cách sử dụng cảm biến khoảng cách để đạt được những mục đích này.
Cảm biến siêu âm HC-SR04 Arduino là cảm biến gần thứ hai, rất phù hợp cho các ứng dụng đo khoảng cách và tránh đối tượng / chướng ngại vật.
Hướng dẫn này sẽ giới thiệu về cảm biến siêu âm và cách sử dụng nó với microcontroller Arduino.
chúng tôi sẽ giả sử bạn là người mới bắt đầu và giải thích mọi thứ từ đầu.
Cảm biến siêu âm Arduino
1.1 Cảm biến siêu âm là gì
Cảm biến siêu âm là mô-đun sử dụng sóng âm để tính toán khoảng cách từ vật cản/ cơ thể.
Công việc của nó là tạo ra một sóng âm thanh tần số siêu âm, và sau đó duy trì nó cho đến khi vật thể phản xạ nó.
Sau đó, khoảng cách được đo sử dụng khoảng trễ giữa sự phát ra và sự trở lại của sóng.
nói cách khác, đó là thời gian phát ra và nhận sóng âm thanh. các phương trình sau đây làm rõ hơn các khái niệm của bạn:
Bây giờ, bạn đang tự hỏi tại sao khoảng cách được chia thành hai. đó là bởi vì sóng âm có hai không gian.
đầu tiên đến từ cảm biến siêu âm, và sau đó quay trở lại cảm biến. Vì vậy, để tính toán khoảng cách của vật thể, chúng ta nên chia khoảng cách cho hai.
Hình 1: Cảm biến siêu âm Arduino
bộ cảm biến siêu âm hc-sr04 là gì
HC-SR04 là một cảm biến siêu âm Arduino tuyệt vời, khá phổ biến giữa các nhà mã hóa.
Cũng giống như con dơi, HC-SR04 sử dụng sonar để đo khoảng cách giữa vật thể và vật thể chính. nó có độ chính xác cao và khả năng phát hiện khoảng cách không tiếp xúc.
HC-SR04 có độ ổn định, hình dạng nhỏ gọn, thiết kế đơn giản và dễ sử dụng. bạn có thể mua nó theo ý muốn của bạn, với chiều dài bao bì có thể thay đổi từ 2 cm đến 400 cm.
phần tốt nhất là ánh sáng mặt trời, hay chất đen, không ảnh hưởng đến công việc của nó. tuy nhiên, việc kiểm tra các vật liệu mềm như quần áo vẫn là một thách thức.
hình 1 thể hiện mô-đun hc-sr04 sẵn sàng. một khi bạn có được nó, bạn có thể dễ dàng quan sát nó bao gồm một bộ nhận sóng siêu âm và một mô-đun phát.
Mô-đun phát sóng siêu âm phát ra sóng âm thanh, sóng âm thanh truyền qua môi trường, và sau đó vật thể phản xạ sóng âm thanh. nó phản hồi lại sóng âm từ một mô-đun nhận sóng siêu âm.
Giống như cảm biến siêu âm chính, bạn có thể đo khoảng cách giữa một đối tượng và một khối đặc cơ bản.
tất cả những gì bạn cần là sự chậm trễ giữa sóng truyền và cảm biến trở lại.
Bạn có thể sử dụng bộ cảm biến này trong nhiều dự án, như robot chặn vách ngăn, robot tránh chỗ và các thiết bị đo khoảng cách.
Hình 2: Cảm biến siêu âm Arduino
kết nối với cảm biến siêu âm arduino
2.1 HC-SR04 Cảm biến siêu âm Arduino là gì
Trước khi bắt đầu bất kỳ dự án nào, bạn luôn cần phải kết nối một cảm biến siêu âm với một microcontroller Arduino.
Bạn có thể mua bất kỳ microcontroller Arduino nào trên thị trường như Arduino UNO, Arduino Mega và Arduino nano.
hình 2 thể hiện một bộ điều khiển arduino. Kết nối HC-SR04 với Arduino rất đơn giản vì nó chỉ có bốn chân.
Nếu bạn có thể hiểu được công việc đơn giản đằng sau bốn cái chốt, bạn có thể bắt đầu làm việc.
HC-SR04 có bốn chân sau:
VCC. cung cấp điện áp 5 v cần thiết cho bộ cảm biến hoạt động bình thường.
GND. đó là một cái kim cắm đất.
hàm lượng giác. Đây là kim kích hoạt. Nó phát ra sóng âm thanh.
tiếng vang. kim nhận tín hiệu nhận được sóng âm thanh.
các đặc điểm chính mà bạn nên chú ý là:
mô-đun này cần điện áp hoạt động 5 v dc.
dòng điện hoạt động của mô-đun là 15 m a.
nó đo bằng cách đo góc 15 độ.
nó có thể đo khoảng cách từ 2 cm đến 4 mét.
Cách kết nối HC-SR04 với bộ vi điều khiển Arduino
phần này sẽ chỉ cho bạn cách kết nối các bộ vi điều khiển hc-sr04 và arduino. Một lần nữa, nhiệm vụ rất đơn giản. Pin điện Vcc luôn được liên kết với chân 5V của Arduino.
chân đất gnd luôn được kết nối với chân đất của arduino. Đối với các pin Trigger và Echo, bạn vẫn có thể kết nối chúng với Arduino.
Tuy nhiên, hãy nhớ rằng bạn nên luôn kết nối các pin Trigger và Echo với các pin kỹ thuật số của Arduino.
Trong ví dụ của chúng tôi, chân Trigger được kết nối với chân Arduino 11, chân Echo được kết nối với chân Arduino 12.
Trước khi tiếp tục với cách mã hóa trên microcontroller Arduino để làm cho cảm biến này hoạt động với dự án của bạn, chúng tôi sẽ giới thiệu về thư viện NewPing của Arduino trong chương tiếp theo.
Hình 3: Cảm biến siêu âm Arduino
thư viện cảm biến siêu âm arduino
3.1 thư viện newpin là gì?
nếu bạn không quen với thư viện new ping, bạn sẽ gặp rất nhiều rắc rối.
Bạn có thể nghĩ rằng bộ cảm biến siêu âm mới được cài đặt không hoạt động tốt vì bạn không biết rằng vấn đề không phải do bộ cảm biến siêu âm mà là thư viện ping và siêu âm hiện hành.
Thư viện NewPing là một món quà từ Arduino, nó hoàn toàn sửa chữa bất kỳ vấn đề nào. Nó cung cấp rất nhiều tính năng mới, và cảm biến siêu âm Arduino mang lại một cuộc sống mới.
3.2 Làm thế nào để tải về thư viện NewPing?
Bạn có thể tải về thư viện ở đây: tải về thư viện NewPing. Sau khi tải xuống, chỉ cần đặt thư mục “NewPing” vào thư mục “libraries” của Arduino.
Tại thời điểm này, chúng tôi hy vọng rằng bạn đã tải về Arduino IDE và biết cách vào thư mục thư viện của nó. Arduino IDE là phần mềm được sử dụng để mã hóa các dự án vi điều khiển Arduino.
Sau khi hoàn thành việc sao chép và dán thư mục NewPing, mở Arduino IDE và tạo một tập tin phác thảo mới, hoặc bạn có thể mở một tập tin cũ.
Đi tới thanh trình đơn và chọn” Draft-Include Library-“NewPing” Bây giờ bạn đã sẵn sàng để bắt đầu mã hóa dự án. hình 3 thể hiện tùy chọn include library.
Hình 4: Cảm biến siêu âm Arduino
dự án cảm biến siêu âm arduino
4. 1 dự án đo khoảng cách
Với dự án này, mục đích duy nhất của chúng tôi là cho bạn thấy cách HC-SR04 đo khoảng cách từ một vật thể. bằng cách hiểu hết mã nguồn của dự án này, bạn có thể dễ dàng sửa đổi nó cho dự án của bạn.
4. 2 cần những bộ phận nào
đầu tiên, bạn cần một bo mạch arduino, một cảm biến siêu âm, một tấm thử nghiệm và một cái nhảy. Nghe có vẻ dễ. ngoài ra, thư viện new ping sẽ làm cho cuộc sống của bạn dễ dàng hơn và hạnh phúc hơn.
Trong ví dụ của chúng tôi, chúng tôi kết nối HC-SR04 với một microcontroller Arduino, như trong bảng 1. bạn cũng có thể hàn các chân của hc-sr04 như được trình bày trong hình 4.
Hình 5: Cảm biến siêu âm Arduino
ngoài ra, nó gợi ý rằng bạn nên nhớ những điều sau:
ngoài ra, điều gì sẽ xảy ra trong ngắn hạn? Không đặt bộ cảm biến siêu âm lên bề mặt kim loại vì điều này có thể dẫn đến việc đoản mạch. dòng điện cao chảy qua mạch, trong trường hợp này có thể làm cháy các cảm biến.
Để dễ dàng lắp đặt bộ cảm biến siêu âm, bạn nên che mặt sau của bộ cảm biến bằng băng cách ly. chúng tôi rất khuyến khích bước này.
ngoài ra, không cần thiết phải cài đặt cảm biến siêu âm trên bảng kiểm tra trước. Bạn có thể kết nối công khai các cảm biến với microcontroller Arduino chỉ bằng cách sử dụng các cáp nhảy.
một khi bạn đã kết nối với mạch điện, bạn có thể chuyển sang chương tiếp theo. trong chương tiếp theo, chúng tôi cung cấp các mã nguồn và mô tả của các dự án ví dụ.
Hình 6: Cảm biến siêu âm Arduino
bộ cảm biến siêu âm hc-sr04 mã arduino
5. 1 mã nguồn dự án
dưới đây là mã đơn giản nhất có thể được sử dụng thư viện newping. Sau khi cài đặt thư viện NewPing, bạn có thể sao chép và dán mã này vào Arduino IDE.
từ đó, bạn có thể tải lên bo mạch arduino của bạn. chúng tôi hy vọng bạn đã biết cách tải mã lên bo mạch arduino. trong phần tiếp theo, chúng tôi sẽ giải thích chi tiết.
Http://playground.arduino.cc/code/newping*
# Bao gồm
Bộ gây ra_chân 9
Echo_chân 10
Khoảng cách tối đa 200
// các thiết đặt mới cho các chân và khoảng cách tối đa
Sonar NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE)
void setup () {serial. begin (9600); Vâng, thưa ông
void loop() {delay(50);
unsigned int distance = sonar.ping_cm();
Serial.print (khoảng cách)
serial. println (” cm “);
5. 2 mô tả mã nguồn của dự án đo khoảng cách
thư viện newping làm cho việc đo khoảng cách từ một đối tượng đơn giản. Dòng đầu tiên của mã thêm tính năng thư viện NewPing, vì vậy bạn nên bắt đầu lập trình.
các thư viện được bao gồm theo các bước trong chương 3:
# Bao gồm
điều tiếp theo bạn cần làm là khai báo hoặc xác định một kích hoạt và chân echo. Bạn có thể tự do chọn bất kỳ chân Arduino nào để kết nối với cảm biến của bạn, miễn là nó là chân số.
Trong ví dụ của chúng tôi, chúng tôi kết nối chân Trigger với chân số 9 của Arduino và chân Echo với chân số 12 của Arduino.
Trigger_PIN 11
Echo_chân 12
Sau đó, để sử dụng thư viện này, bạn phải đặt giá trị khoảng cách tối đa. Để làm như vậy, xác định các biến MAX_DISTANCE.
Khoảng cách tối đa 200
Tiếp theo, bạn cần tạo một “thuộc thức NewPing” có tên sonar: NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
Sau đó, cho giao tiếp nối tiếp, chúng tôi khởi tạo nó ở tốc độ 9600 trong setup ().
serial. begin (9600);
trong hàm loop () bạn chỉ cần sử dụng thuộc tính ping_cm () để có được giá trị khoảng cách. thuộc tính này là một đối tượng sonar của thư viện newping.
trong ví dụ của chúng tôi, chúng tôi xác định không gian là một biến số không âm. Do vậy, bạn có được khoảng cách đo lường centimét.
Ngoài ra, nếu bạn không sử dụng cm để đo khoảng cách, bạn cũng có thể đo khoảng cách bằng inch. Dùng sonar.ping_in() để lấy khoảng cách theo inch.
unsigned int distance = sonar.ping_cm();
Cuối cùng, chúng tôi sử dụng các hàm print() và published In() của Arduino IDE để in kết quả lên màn hình nối tiếp.
Serial.print (khoảng cách);
serial. println (” cm “);
Để làm rõ hơn về cách Arduino làm cho cuộc sống của bạn dễ dàng và thoải mái hơn, hình 5 cho thấy công việc của bộ vi điều khiển Arduino trong dự án này. nếu không phải vì arduino, bạn có thể phải làm điều đó bằng tay.
5. 3 mã nguồn của dự án lcd
nếu bạn muốn hiển thị các giá trị khoảng cách trên màn hình lcd, bạn có thể sử dụng các mã sau. đoạn mã này là một sự thay đổi đơn giản của đoạn mã trước. # Bao gồm
#include // bao gồm thư viện LiquidCrystal
màn hình lcd (1, 2, 4, 5, 6, 7);
Bộ gây ra_chân 9
Echo_chân 10
Khoảng cách tối đa 200
cài đặt NewPing cho pin và distanceNewPing tối đa (TRIGGER_PIN, ECHO_PIN, max_distance);
void setup () {serial. begin (9600); LCD. Bắt đầu (16, 2); Vâng, thưa ông
vòng void () {
hoãn (50):
unsigned int distance = sonar.ping_cm();
Serial.print (khoảng cách);
serial. println (” cm “);
lcd. set cursor (0, 0); // đặt textwritten tiếp theo của LCD thành displayedlcd.print(“Distance: vị trí”); // in chuỗi “distance” trên LCDlcd.print; // In khoảng cách Sensorlcd.print (“cm” giá trị khoảng cách);
hoãn (10);
5. 4 mô tả mã nguồn của dự án lcd
một lần nữa, đoạn mã này rất dễ hiểu. chúng tôi sẽ chỉ nói về những thay đổi đã được thực hiện trong mã trước. đầu tiên, bao gồm thư viện liquidcrytal.
Nó khởi tạo lại và cho phép các chân/ tham số D4, D5, D6 và D7 của màn hình LCD. sau đó, bạn sẽ cần tạo một đối tượng lcd.
màn hình lcd (1, 2, 4, 5, 6, 7);
sau đó, nếu bạn khởi tạo giao diện màn hình lcd, nó sẽ hữu ích. thêm vào đó, hãy tham khảo kích thước của màn hình lcd (chiều rộng và chiều cao). điều này nên được thực hiện trong thiết lập (). trong ví dụ của chúng tôi, LCD là loại 16×2, vì vậy chúng tôi khởi tạo nó như sau:
LCD. Bắt đầu (16, 2);
Tiếp theo, xác định vị trí trên màn hình mà bạn muốn hiển thị văn bản. Rất đơn giản: Bạn chỉ cần đặt con trỏ:
lcd. set cursor (0, 0);
để in các giá trị khoảng cách, sử dụng hàm print () của đối tượng lcd.
LCD.print(” khoảng cách:”);
lcd.print (khoảng cách);
lcd. print (” cm”);
Hình 7: Cảm biến siêu âm Arduino
6, kết luận
chúng tôi hy vọng các bạn đã sẵn sàng để bắt đầu lập trình. Mục đích chính của chúng tôi là cung cấp cho bạn một hướng dẫn đầy đủ về cảm biến siêu âm Arduino.
Bạn không cần phải truy cập các trang web khác nhau để tìm hiểu mọi thứ, bởi vì chúng tôi đã hoàn toàn bao gồm tất cả mọi thứ.
đầu óc của bạn phải đầy những ý tưởng mới, bạn có thể làm điều đó ngay bây giờ. bạn cũng đồng ý rằng hc-sr04 là cảm biến siêu âm giá rẻ nhất.
hãy mua một cái và làm chúng tôi ngạc nhiên với ý tưởng tuyệt vời của bạn.
Nếu bạn muốn biết nên làm gì với cảm biến siêu âm, chúng tôi cũng có thể giúp đỡ. bạn có thể thử xây dựng một bộ cảm biến điện tử với hệ thống báo động tích hợp. hiển thị khoảng cách từ xe đến đối tượng và cảnh báo khi xe quá gần.
Ngoài ra, nếu bạn cần thêm trợ giúp hoặc yêu cầu, chúng tôi luôn sẵn sàng giúp đỡ bạn. Vui lòng liên hệ với chúng tôi qua [email protected] hoặc vào trang web của chúng tôi để được hỗ trợ khách hàng tốt nhất.
đội kỹ sư của chúng tôi sẽ rất vui lòng giúp bạn hoàn thành dự án.