Lập trình Arduino không cần viết code - Phần 7: Cảm biến mưa

Đây là phần 7 của chuỗi bài viết "Lập trình Arduino không cần viết code"

- Xem lại phần 6 tại đây

Xin chào mọi người, hôm nay chúng ta sẽ làm quen với cảm biến và cụ thể hơn là ở bài này chính là cảm biến mưa. Vào luôn nha.

Mục tiêu: Gới thiệu cảm biến mưa và thư viện Serial của mBlock

Cảm biến là gì

Cảm biến là thiết bị điện tử cảm nhận những trạng thái hay quá trình vật lý hay hóa học ở môi trường cần khảo sát, và biến đổi thành tín hiệu điện để thu thập thông tin về trạng thái hay quá trình đó. Gồm 2 loại chính: Cảm biến vật lí và cảm biến hóa học. Tạm thời hiểu đơn giản như vậy, ở bài viết sau mình sẽ nói rõ hơn về cảm biến.

Cảm biến mưa là gì

Cảm biến mưa là cảm biến giúp cảm nhận mưa. Nó gồm 2 khối: khối so sánh đặt trong nhà và khối cảm biến đặt ngoài trời. Bạn có thể điều chỉnh mức độ phát hiện bằng biến trở(Con màu xanh dương ý) Hình ảnh em nó đây:

Khối so sánh gồm 2 hàng chân: 

  • Hàng 2 chân: Gồm 2 chân nối với 2 chân của khối cảm biến.
  • Hàng 4 chân: 
Vcc 5V
GND GND
DO  (Cho ra tín hiệu Digital được điều chỉnh bằng biến trở) Dpin

AO (Cho ra tín hiệu analog)

Apin

Thực hành

Chuẩn bị

Lắp mạch như sau, ở đây mình sử dụng tín hiệu digital nên chỉ sử dụng chân DO không sử dụng chân AO.

 

Lập trình bằng mBlock

Đầu tiên ta phải bật khối Serial lên.

Sau đó chọn Arduino Mode và lập trình theop khối sau, mình nhầm lẫn một chỗ đó là phần cứng đặt chân tín hiệu là D6 mà code lại là D9 các bạn nhớ chỉnh chỗ này nha, sorry nhiều. Nếu bạn muốn sử dụng analog thì nối chân AO với chân Apin và sử dụng đối tượng lệnh "read analog pin ..". À quên nữa, nếu tín hiệu trả về là 0 thì có mưa còn 1 thì không có mưa.

Vì mBlock bị 1 lỗi, nên cần chỉnh một tí. Trước tiên ngắt kết nối cổng COM nếu đã kết nối. Bỏ dấu tích đi

Chọn Edit with Arduino IDE

Xóa dòng trong hình

Nạp code bằng arduino IDE.

Tắt arduino IDE đi.

Kết nối lại cổng COM trong mBlock. Chọn chế độ như hình và tận hưởng thành quả

Lập trình bằng Arduino IDE

Code đây và đừng hỏi tại sao không có phần cứng nhé :3

void setup(){
    pinMode(9,INPUT);
    Serial.begin(115200);
}

void loop(){
    if(digitalRead(9)==0){
        Serial.println("It is raining");
    }else{
        Serial.println("It isn't raining");
    }
}

Kết luận

Chúng ta vừa tìm hiểu xong cách làm việc với một cảm biến (Ở đây là cảm biến mưa) và từ đó ta sẽ làm việc tương tự với các cảm biến có các chân tương tự như cảm biến mưa (Nếu cảm biến có 3 chân và 1 chân ghi là OUT thì đó là chân ra tín hiệu digital). Xin cảm ơn đã theo dõi.

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Vòng đeo tay hỗ trợ người mù

Dự án là một vòng đeo tay hỗ trợ cho người mù có trọng lượng khá nhẹ chỉ khoảng 65g, có thể sạc pin khi hết, sử dụng cảm biến khoảng cách hc-sr04 và những thứ sẵn có xung quanh chúng ta. Mình mong muốn đóng góp sản phẩm này với hy vọng, nó sẽ sẽ giúp người mù đi lại được tốt hơn bằng việc thông báo cho họ âm thanh hoặc rung động khi đến gần vật cản. Với một chút kiến thức về Arduino bất cứ ai cũng có thể làm được điều này. Thiết bị dễ dàng đeo và tháo ra khỏi tay một cách nhanh chóng. Các bạn cùng chiêm ngưỡng nhé!

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Lập trình Arduino không cần viết code - Phần 1

Nếu các bạn mê lập trình từ nhỏ thì chắc có lẽ đã quen với phần mềm Scratch, hay làm dự án với Android thì sẽ biết đến InventorApp. Điểm chung của 2 phần mềm trên là đều không viết code để lập trình mà kéo thả và sắp xếp các đối tượng để lập trình. Vâng phần mềm mình sắp nói đây cũng giống như vậy. Và mình cũng xin nói luôn là đây là chuỗi bài giúp cho các bạn mới tiếp xúc với arduino, bởi vì mình sẽ ví dụ các đoạn code cơ bản và sử dụng môi trường lập trình đơn giản và thú vị.

lên
75 thành viên đã đánh giá bài viết này hữu ích.

Lập trình Arduino không cần viết code - Phần 11: Tạo hàm riêng

Đây là phần 11 của chuỗi bài viết "Lập trình Arduino không cần viết code"

- Xem lại phần 10 tại đây

[UPDATE] Tải phiên bản mới của mBlock tại đây

Hôm nay, chúng ta sẽ cùng tìm hiểu về hàm và cách tạo, gọi hàm trong mBlock và Arduino.

lên
12 thành viên đã đánh giá bài viết này hữu ích.