Thể loại: Mạch vi điều khiển
Số lượt xem: 32016
Bình luận về bài viết: 0

Các cảm biến phổ biến nhất cho Arduino

 

Các cảm biến được sử dụng trong một loạt các mạch và dự án. Không có tự động hóa có thể làm mà không có chúng. Chúng tôi quan tâm đến họ vì một dự án đã được tạo ra để đơn giản hóa việc thiết kế và phổ biến điện tử Arduino. Đây là một bảng hoàn thành với một vi điều khiển và mọi thứ bạn cần để làm việc với nó và lập trình nó. Trong bài viết này, chúng tôi sẽ xem xét các cảm biến cho Arduino, nhưng chúng cũng có thể được sử dụng với các bộ vi điều khiển khác.

Các cảm biến phổ biến nhất cho Arduino

Các cảm biến là gì?

Các giác quan là mắt, tai và các giác quan khác vi điều khiển hoặc thiết bị điều khiển khác. Chúng được phân biệt bởi bản chất của tín hiệu và theo mục đích.

Theo bản chất của tín hiệu được chia thành:

  • Tương tự;

  • Kỹ thuật số

Và với mục đích, các cảm biến là để đo lường:

  • Nhiệt độ;

  • Áp lực;

  • Độ ẩm

  • Tính axit;

  • Chiếu sáng

  • Mực nước hoặc các chất khác;

  • Rung

  • Và các thành phần chuyên ngành khác.

Nếu chúng ta nói về Arduino, thì khi nhận thông tin từ các cảm biến, chúng ta xử lý tín hiệu số hoặc đo điện áp từ đầu ra analog của mô-đun. Như đã đề cập, cảm biến là kỹ thuật số và analog. Một số mô-đun cho Arduino có cả đầu ra kỹ thuật số và analog, thống nhất chúng.

Họ là

  • Điện trở

  • Cảm ứng

  • Điện dung;

  • Áp điện;

  • Photocell và các loại khác.



Cảm biến ánh sáng hoặc ánh sáng

Cách dễ nhất để xác định độ sáng của một cái gì đó - sử dụng một quang điện trở, photodiode hoặc phototransistor. Bạn có thể kết nối một trong các tùy chọn được liệt kê với Arduino hoặc mua một bảng đặc biệt - cảm biến ánh sáng.

Cảm biến ánh sáng

Những lợi ích của một giải pháp chìa khóa trao tay là gì? Đầu tiên, để xác định những thay đổi trong độ rọi của một tế bào quang điện là không đủ, bạn cũng cần một điện trở thông thường hoặc điều chỉnh, có thể nó bộ so sánh, cho từng bước có / không hoạt động. Thứ hai, một bảng mạch in do nhà máy sản xuất sẽ đáng tin cậy hơn so với lắp bản lề hoặc bảng bó, hoặc các cách khác mà người nghiệp dư sử dụng.

Cảm biến ánh sáng

Trên AliExpress hoặc trong các cửa hàng trực tuyến khác, nó có thể được tìm thấy theo yêu cầu "HÌNH ẢNH-CẢM BIẾN" hoặc đơn giản là "cảm biến ánh sáng".

Mô-đun này có ba đầu ra:

  • Dinh dưỡng;

  • Trái đất

  • Đầu ra kỹ thuật số từ bộ so sánh.

Hoặc phiên bản bốn pin:

  • Dinh dưỡng;

  • Trái đất

  • Đầu ra kỹ thuật số từ bộ so sánh;

  • Tương tự

Vì vậy, trên bảng đặt điện trở điều chỉnh để điều chỉnh thời gian của bộ so sánh có thể tạo ra tín hiệu kỹ thuật số.

Ví dụ về sử dụng:

  • Cảm biến ánh sáng cho rơle ảnh;

  • Báo động (kết hợp với bộ phát);

  • Bộ đếm các vật thể xuyên qua chùm sáng, v.v.

Rất khó để đạt được các giá trị chính xác, vì sẽ cần một đồng hồ đo ánh sáng chính xác để điều chỉnh chính xác bằng cách chiếu sáng. Chất phát quang phù hợp hơn để xác định các giá trị trừu tượng như "tối hoặc sáng".

Ngoài một bảng bán như vậy, bạn có thể thấy khá thú vị Mô-đun GY-302. Đây là một cảm biến ánh sáng dựa trên mạch tích hợp BH-1750. Tính năng của nó là một mô-đun kỹ thuật số, nó có dung lượng 16 bit, giao tiếp với các bộ vi điều khiển thông qua bus i2c. 16 bit cho phép bạn đo độ rọi từ 1 đến 65356 Lux (Lx).

Cảm biến ánh sáng xung quanh dựa trên mạch tích hợp BH-1750

Dưới đây là một sơ đồ kết nối của nó. Bạn có thể nhận thấy rằng SDA và SCL kết nối với các chân tương tự của vi điều khiển.

Sơ đồ kết nối cảm biến ánh sáng

Điều này là do thực tế là bus I2C được thực hiện trên các chân arduino này, có thể nhìn thấy bằng cách nhìn vào hình ảnh sau đây. Do đó, đừng để bị lừa bởi thực tế này, cảm biến là kỹ thuật số.

Sơ đồ mô-đun GY-302

Ưu điểm của cảm biến kỹ thuật số là bạn không cần kiểm tra các giá trị của từng trường hợp, biên dịch các bảng để dịch các giá trị đo thành tỷ lệ thực, v.v.Trong hầu hết các trường hợp, đối với các cảm biến kỹ thuật số, chỉ cần kết nối một thư viện làm sẵn và đọc các giá trị được chuyển đổi thành các đơn vị thực là đủ.

Ví dụ phác thảo cho GY-302 (BH-1750):

Ví dụ phác thảo cho GY-302

Làm thế nào để một bản phác thảo làm việc?

Lúc đầu, chúng tôi nói với chương trình rằng chúng tôi cần kết nối thư viện Wire.h, chịu trách nhiệm liên lạc qua đường I2C và BH1750. Phần còn lại của các hành động được mô tả tốt trong các nhận xét và kết quả là cứ sau 100ms chúng ta lại đọc giá trị từ cảm biến trong Lux.

Đặc điểm của GY-302 BH1750:

  • Truyền thông vi điều khiển I2C

  • Phản ứng quang phổ tương tự như độ nhạy của mắt

  • Lỗi do bức xạ hồng ngoại được giảm thiểu

  • Phạm vi đo 0-65535 Lux

  • Điện áp cung cấp: 3-5 V

  • Tiêu thụ hiện tại thấp và chức năng ngủ

  • Lọc nhiễu ánh sáng 50/60 Hz

  • Số lượng cảm biến tối đa trên 1 bus I2C là 2 miếng.

  • Không cần hiệu chuẩn

  • Tiêu thụ hiện tại - 120 μA

  • Ở chế độ ngủ - 0,01 A

  • Bước sóng đo được - 560nm

  • Ở chế độ phân giải cao - 1 Lux

  • Ở chế độ phân giải thấp - 4 Lux

  • ADC - 16 bit

Thời gian thực hiện các phép đo:

  • Ở chế độ phân giải cao - 120 ms

  • Ở chế độ phân giải thấp - 16 ms


Cảm biến chướng ngại vật

Tôi đã chọn cảm biến này làm cảm biến tiếp theo để xem xét, bởi vì một trong các tùy chọn của nó hoạt động trên cơ sở photodiode hoặc phototransistor, về nguyên tắc tương tự như quang điện trở đã thảo luận trong phần trước.

Cảm biến chướng ngại vật

Tên của nó là "cảm biến chướng ngại vật quang học." Thành phần chức năng chính là photodiode và đèn LED phát và nhận trong phổ hồng ngoại (do đó, không thể nhìn thấy bằng mắt người, cũng như lắp ráp ngưỡng, ví dụ, trên một bộ so sánh với bộ điều chỉnh độ nhạy.

Ví dụ sơ đồ kết nối:

Ví dụ kết nối

Một ví dụ về chương trình xử lý tín hiệu từ cảm biến.

Một ví dụ về chương trình xử lý tín hiệu từ cảm biến

Ở đây, nếu đầu ra từ cảm biến là 1 1, nghĩa là có một chướng ngại vật, đèn LED trên bo mạch Arduino hoặc được kết nối với chân thứ 13 (cùng một thứ) sẽ sáng lên. Thường được sử dụng trong robot và báo động.

Sử dụng cảm biến

Cảm biến khoảng cách

Bản sao trước đó bao gồm một máy thu, - photodiode và bộ phát, - một đèn LED. Cảm biến khoảng cách siêu âm cũng bao gồm một máy thu và bộ phát sóng siêu âm. Anh ấy tên là HC SR04.

Cảm biến khoảng cách

Đặc điểm HC SR04:

  • Điện áp cung cấp 5V

  • Thông số vận hành của lực t ok - 15 mA

  • Dòng thụ động <2 mA

  • Góc nhìn - 15 °

  • Độ phân giải cảm ứng - 0,3 cm

  • Góc đo - 30 °

  • Độ rộng xung - 10-6 giây

  • Phạm vi đo: 2-400 cm.

Lỗi xuất hiện do:

  • nhiệt độ và độ ẩm - có thể được giảm bằng cách đo nhiệt độ bằng DHT-11 hoặc DHT-22, ví dụ, và nhập hệ số để hiệu chỉnh các phép đo.

  • khoảng cách đến đối tượng;

  • vị trí của vật thể so với cảm biến (theo sơ đồ bức xạ) có thể được bù bằng cách cài đặt HC SR04 trên servo để thay đổi hướng và điều chỉnh chính xác.

  • chất lượng hiệu suất của các yếu tố mô-đun cảm biến.

Mô hình bức xạ:

Mô hình bức xạ

Bảng có bốn đầu ra:

  • VCC - sức mạnh;

  • Trig - tín hiệu đầu vào;

  • Echo - tín hiệu đầu ra;

  • GND là một dây phổ biến.

Cảm biến dẫn HC SR04

Làm thế nào để xử lý bài đọc?

1. Chúng tôi gửi một xung có thời lượng 10 tos đến đầu vào TRIG;

2. Bên trong mô-đun, xung được chuyển đổi thành một gói gồm 8 xung theo nhau với tần số 40 kHz và được gửi qua bộ phát;

3. Các xung động phản xạ từ chướng ngại vật đến máy thu và được xuất ra ECHO;

4. Thời lượng của xung nhận được từ đầu ra ECHO nên được chia cho 58,2 để có được khoảng cách tính bằng centimet và 148 nếu bạn cần chuyển đổi sang inch.

Mã ví dụ:

Mã mẫu

Đo nhiệt độ

Cách dễ nhất để đo nhiệt độ bằng vi điều khiển là sử dụng cặp nhiệt điện hoặc nhiệt điện trở. Cặp nhiệt điện được sử dụng để đo nhiệt độ cao, để đo trong nhà và ngoài trời - điều mà tôi sẽ nói về một chút dưới đây sẽ làm, nhưng bây giờ, hãy xem xét một cặp nhiệt điện.

Cảm biến nhiệt độ

Mỗi loại cặp nhiệt điện có cách tiếp cận riêng để làm việc với vi điều khiển. Ví dụ, có một cặp nhiệt điện loại K, hay còn được gọi là - chromel-alumel, với dải nhiệt độ đo được từ -200 đến +1400 độ C với độ nhạy 41 mV / độ C. Và đối với cô ấy có một bộ chuyển đổi đặc biệt dựa trên IC max6675, nó có chức năng bù nhiệt độ của mối nối lạnh, v.v.

Module đo nhiệt độ

Bạn có thể làm việc với mô-đun này bằng thư viện cùng tên cho Arduino. Trong hình bên dưới, bạn thấy một ví dụ về mã chương trình cho trường hợp này.

Mã mẫu

Sau đó, sau đây được hiển thị trên màn hình cổng nối tiếp.

Giám sát cổng nối tiếp

Nhưng cũng có một cảm biến nhiệt độ kỹ thuật số DS12B20, nó có thể được gọi là cổ điển, vì nó đã được sử dụng trong nhiều năm trong các dự án nghiệp dư, và rất lâu trước khi xuất hiện Arduino.

Cảm biến nhiệt độ kỹ thuật số DS12B20

Mạch tích hợp kỹ thuật số này, thiết bị bên trong của nó được hiển thị trong hình dưới đây:

Thiết bị vi mạch bên trong

Sơ đồ kết nối bảng:

Sơ đồ kết nối

Các tính năng và thông tin chính DS18b20:

  • Sai số nhỏ hơn 0,5 ° C (trong khoảng nhiệt độ từ -10 ° C đến + 85 ° C).

  • Không cần hiệu chuẩn

  • Phạm vi đo - từ -55 С đến + 125С

  • VCC, điện áp cung cấp 3,3-5V.

  • độ phân giải lên tới 0,0625С, được thiết lập bằng phần mềm;

  • Độ phân giải - 12 bit

  • Mỗi trường hợp được gán một mã nối tiếp duy nhất. Điều này là cần thiết để dễ dàng sử dụng một vài phần trong một dự án

  • Giao diện truyền thông - 1 dây

  • Không cần đóng đai

  • Số lượng cảm biến tối đa trên một dòng là 127 miếng.

  • Chế độ năng lượng giả - trong trường hợp này, cảm biến được cấp nguồn trực tiếp từ đường truyền. Đồng thời, không đo được nhiệt độ cao hơn 100C

Dưới đây bạn thấy biểu đồ chuyển đổi của mã nhị phân từ DS18b20 sang nhiệt độ tính bằng độ C.

Bảng chuyển đổi cho mã nhị phân từ DS18b20 sang nhiệt độ tính bằng độ C

Chương trình ví dụ để đọc các giá trị nhiệt độ.

Chương trình ví dụ để đọc giá trị nhiệt độ

Cảm biến áp suất khí quyển

Phong vũ biểu điện tử được lắp ráp trên cơ sở cảm biến áp suất khí quyển. Các tùy chọn sau đây đã được sử dụng rộng rãi:

  • BMP180;

  • BMP280;

  • BME280.

Cảm biến áp suất khí quyển

Nếu hai trường hợp trước đó tương tự nhau, thì Cảm biến BME280 - Đây là một trạm thời tiết thu nhỏ. 3 cảm biến được tích hợp trong đó:

  • Nhiệt độ;

  • Áp lực;

  • Độ ẩm.

Đặc tính kỹ thuật của nó:

  • Kích thước 2,5 x 2,5 x 0,93 mm;

  • Vỏ kim loại LGA, được trang bị 8 đầu ra;

  • Điện áp cung cấp 1,7 - 3,6V;

  • Tính khả dụng của giao diện I2C và SPI;

  • Tiêu thụ hiện tại chờ 0,1 0,1A.

Những ví dụ này là phong vũ biểu MEMS. MEMS là viết tắt của vi cơ điện tử. Đây là một cấu trúc cơ học sử dụng các hiện tượng điện dung và các nguyên tắc khác cho công việc của nó. Dưới đây bạn thấy một ví dụ về một cảm biến như vậy trong bối cảnh.

Ví dụ mặt cắt của cảm biến

Ví dụ sơ đồ kết nối:

Ví dụ kết nối

Và một ví dụ về mã chương trình:

Mã mẫu

Logic của chương trình rất đơn giản:

1. Gọi chương trình con (chức năng) đọc từ cảm biến.

2. Yêu cầu đọc các cảm biến nhiệt độ tích hợp trong phong vũ biểu.

3. Chúng tôi đang chờ thời gian để đánh giá cảm biến nhiệt độ;

4. Đọc kết quả đo nhiệt độ;

5. Yêu cầu giá trị áp lực;

6. Chúng tôi đang chờ thời gian đo áp suất;

7. Đọc giá trị áp suất;

8. Trả về giá trị áp suất từ ​​hàm.

Một sự thật thú vị là có bốn tùy chọn để đọc các giá trị, chúng được chỉ định làm đối số trong hàm startPressure, dấu thứ hai là từ 0 đến 3, trong đó 0 là ước tính sơ bộ và 3 là ước tính chính xác.


Cảm biến chuyển động

Cảm biến chuyển động phổ biến nhất cho Arduino là Mô-đun cảm biến hồng ngoại HC SR501. Một tính năng của mô-đun này là nó có sự điều chỉnh khoảng cách đáp ứng và thời gian trễ của tín hiệu đầu ra sau khi hoạt động.

Cảm biến chuyển động

Tính năng mô-đun:

1. Điện áp cung cấp 4,5 - 20 V.

2. Dòng tĩnh ≈ 50 A;

3. Điện áp tín hiệu đầu ra (mức logic): 3,3 V;

4. Phạm vi nhiệt độ hoạt động - từ -15 ° C đến 70 ° C;

5. Kích thước: 32 * 24 mm;

6. Trường nhìn - 110 °;

7. Khoảng cách hoạt động tối đa - từ 3 đến 7 m (có thể điều chỉnh); Trên 30 ° C, khoảng cách này có thể giảm.

Sơ đồ nối dây:

Sơ đồ kết nối cảm biến chuyển động

Làm thế nào để làm việc với anh ta, chúng tôi đã xem xét trong một bài báo được xuất bản trước đó: Sơ đồ cảm biến chuyển động, nguyên lý làm việc và sơ đồ nối dây của chúng


Cảm biến mực nước

Được thiết kế để chỉ mức chất lỏng.

Cảm biến mực nước

Đặc điểm

1. Điện áp cung cấp 3-5V

2. Dòng tiêu thụ> 20 mA

3. Tương tự

4. Kích thước của vùng đo 40x16 mm

5. Độ ẩm cho phép 10% - 90%

Mã ví dụ:

Mã mẫu

Các giá trị đầu ra là từ 0 (ở trạng thái khô) đến 685 (nó có thể khác nhau thực sự phụ thuộc vào độ dẫn của nước). Đừng quên về điện phân, khi đo mức độ muối hoặc nước cứng, nó sẽ ăn mòn.


Cảm biến rò rỉ

Mô-đun này bao gồm hai phần - chính cảm biến và bộ so sánh, có thể được xây dựng trên LM393, LM293 hoặc LM193.

Cảm biến rò rỉ

Nhờ bộ so sánh, tín hiệu tương tự được chuyển đổi thành kỹ thuật số.

Sơ đồ nối dây:

Sơ đồ nối dây cảm biến rò rỉ

Hội đồng quản trị

  • VCC - sức mạnh, phải phù hợp với sức mạnh của bo mạch Apduino, trong hầu hết các trường hợp là 5V;

  • GND - dây chung;

  • AO - tín hiệu tương tự;

  • DO là một tín hiệu kỹ thuật số.

Có một điện trở điều chỉnh trên bảng so sánh, nó đặt độ nhạy của cảm biến. Nó có thể hoạt động như một tín hiệu của mưa hoặc rò rỉ một cái gì đó, và khi kết hợp với một cần cẩu như vậy, nó có thể hoạt động như bảo vệ chống rò rỉ đường ống trong căn hộ:

Vòi bảo vệ rò rỉ

Video cho thấy cách thức hoạt động:


Cảm biến độ ẩm

Thường được sử dụng trong các dự án tưới nước tự động, để xác định độ ẩm của đất, cũng như trước đây bao gồm các điện cực và một bảng với một bộ so sánh.

Cảm biến độ ẩm

Nó có thể hoạt động cả trong chế độ analog và kỹ thuật số. Một ví dụ về sơ đồ kết nối cho hệ thống tưới tự động với cần trục dựa trên động cơ:

Sơ đồ kết nối của cảm biến độ ẩm với Arduino

Và một ví dụ về mã chương trình để xử lý tín hiệu số từ cảm biến độ ẩm:

Mã ví dụ để xử lý tín hiệu số từ cảm biến độ ẩm
Cảm biến nhiệt độ và độ ẩm kỹ thuật số AM2302

Kết luận

Chúng tôi đã kiểm tra các cảm biến phổ biến, nhưng cũng có nhiều cảm biến khác. Đây là một loạt các cảm biến rung, con quay hồi chuyển, gia tốc kế, cảm biến bức xạ và nhiều hơn nữa.

Mục đích của bài viết là thu thập ở một nơi nhiều yếu tố có thể hữu ích cho một kỹ sư điện tử mới bắt đầu để thực hiện các dự án của họ. Nếu bạn quan tâm đến một cảm biến cụ thể - hãy viết bình luận và chúng tôi sẽ xem xét nó chi tiết hơn.

Để thuận tiện cho bạn, chúng tôi đã biên soạn cho bạn một bảng với chi phí ước tính và danh sách các cảm biến phổ biến cho Arduino, theo thứ tự chúng được xem xét trong bài viết:Cảm biến cho Arduino

Giá được lấy từ các cửa hàng trực tuyến ở Nga hoặc Ukraine. Ở Trung Quốc, chúng có giá rẻ hơn 2 lần trở lên.

Xem thêm tại electro-vi.tomathouse.com:

  • Đo nhiệt độ và độ ẩm trên Arduino - một cách lựa chọn
  • Kết nối cảm biến analog với Arduino, đọc cảm biến
  • Sự khác biệt giữa cảm biến analog và kỹ thuật số là gì
  • Cách sắp xếp và cảm biến dòng
  • Sơ đồ cảm biến chuyển động và nguyên lý làm việc của chúng, sơ đồ nối dây

  •