Làm cách nào để đọc thông số cảm biến Analog 5V với GPIO kỹ thuật số 3.3V?


7

Tôi đã mua "Bộ cảm biến Sunfounder" cho Raspberry Pi 2, nhưng toàn bộ nội dung được làm cho Arduino (5V). Tôi đã mua ADC, Level Shifters nhưng tôi bị mắc kẹt vì tôi nghĩ rằng tôi chắc chắn bỏ lỡ một giải pháp đơn giản.

  1. Tôi đọc rằng bộ chia điện áp với điện trở sẽ không hoạt động chính xác trước ADC. EDIT : http://electronics.stackexchange.com
  2. ADC của tôi có giao diện SPI, vì vậy tôi cần trao đổi hai chiều với Pi, nhưng nếu tôi cấp nguồn cho nó bằng 5V, tôi cần một Shifter cấp cho GPIO. Tôi chỉ có sự thay đổi cấp độ đơn hướng.

Tôi không biết làm thế nào để sử dụng các cảm biến này một cách hiệu quả?

  • Tôi có thể sử dụng một bộ dịch chuyển cấp theo từng hướng trên cùng một ADC giữa nó và GPIO không?

  • Tôi có cần shifter cấp hai chiều không?

  • Bạn có biết ADC 5V-> 3.3V không?

Tôi đã bỏ lỡ một giải pháp đơn giản? Cảm ơn bạn.


1
Tôi không chắc chắn nơi bạn đọc rằng bộ chia điện áp sẽ không hoạt động. Mong bạn có thể đăng một liên kết. Đó thực sự là một giải pháp đơn giản nhưng thanh lịch. Tại đây: build-electronic-circuits.com/wp-content/uploads/2013/08/ , Trong đó, Vin là tín hiệu đầu vào của bạn và vout là tín hiệu đầu ra của bạn. Giữ R1 và R2 theo nhu cầu của bạn. Ví dụ: để có tín hiệu 3,3v khi đầu vào của bạn là 5v, bạn sẽ cần phải có R1 = 100k ohms và R2 = 200k ohms một cách đại khái và tương tự. Hy vọng nó giúp.
dhruvvyas90

2
Như dastaan ​​đề nghị sử dụng bộ chia điện áp trên MISO (từ ADC đến Pi để cắt đầu ra từ 5V xuống 3V3). Sau đó, bạn có thể cấp nguồn cho ADC từ 5V và sử dụng làm điện áp tham chiếu. Tất cả các tín hiệu ADC SPI khác (MOSI, SCLK, SS) là đầu vào từ Pi. ADC vẫn sẽ hoạt động ngay cả khi các tín hiệu là 3V3.
gia

1
Bạn đã thử chạy cảm biến ở 3.3V chưa? Nhiều cảm biến tương tự (và khá nhiều kỹ thuật số) cho Arduino thực sự có thể chạy 3-5,5V chỉ tốt. Các cảm biến phổ biến hoạt động như thế này xuất hiện trong tâm trí là TMP036 (nhiệt độ), cảm biến mực nước và cảm biến flex.
Nathan

Liên kết mà tôi đã nói đến ở đây: http://electronics.stackexchange.com . Có vẻ như có một vấn đề với trở kháng cho ADC.
Elo

@joan: cảm ơn rất nhiều vì lời giải thích về pin duy nhất để dịch từ 5V sang 3.3V!
Elo

Câu trả lời:


7

Đối với các cảm biến tương tự như photoresister và cảm biến hiệu ứng hội trường (và rất có thể là các cảm biến khác như được đề xuất trong các nhận xét), bạn có thể cung cấp cho chúng 3,3V và vẫn hoạt động chính xác.

Họ nên hoạt động như một điện trở biến đơn giản khi có ảnh hưởng bên ngoài. Hy vọng rằng hình ảnh sau đây sẽ minh họa cho một photoresister;

Máy phát quang

(chỉ cần làm rõ, trong trường hợp bộ cảm biến bạn đang sử dụng, bộ đệm 10k Ohm tạo thành một phần của dải phân cách bên dưới đã được tích hợp vào bảng cảm biến) Đầu ra analog sau đó được đưa vào ADC.

ADC tôi đã sử dụng cho loại kết nối này là Adaf nhung ADS1015 . Nó sẽ chạy từ 3,3V khá vui vẻ.

Đây là cách bạn sẽ có chúng kết nối;

nhập mô tả hình ảnh ở đây

Kết nối các đầu vào tương tự với Pi (chính xác theo cách này) là chủ đề của chương tiếp theo trong ' Raspberry Pi: Đo lường, Ghi lại, Khám phá ' và sẽ có sẵn trong một vài ngày. EDIT: Chương này đã được xuất bản và cuốn sách có sẵn miễn phí từ Leanpub tại đây .


Cảm biến hiệu ứng Hall Hall thường là đầu ra kỹ thuật số collector mở, không tương tự. Đầu ra kỹ thuật số collector mở thường có thể được kết nối trực tiếp với Pi.
joan

@joan: Bộ sản phẩm bao gồm nhiều phiên bản. Bộ cảm biến Sunfounder . Trong "cảm biến hội trường tương tự" màu đen và "cảm biến hội trường" (loại công tắc như họ nghĩ), và một thứ ba, trong "cảm biến hội trường tuyến tính" màu đỏ, với 4 chân, mà tôi tin là tương tự và kỹ thuật số (4 chân ).
Elo

@Elo Đủ rồi, tôi chưa đến với những người đó. Những cái kỹ thuật số được sử dụng trong các bộ đếm xung đơn giản như cảm biến lưu lượng chất lỏng, máy đo tốc độ quạt bo mạch chủ và một số van gió thời tiết.
gia

Điều này chắc chắn chỉ áp dụng cho các cảm biến tương tự (và tôi cho rằng chúng sẽ giống về mặt vật chất với các phiên bản Keyes). Nhưng họ làm việc đơn giản là đủ.
d3noob

1
Cảm ơn, nhận xét và ebook của bạn đã giúp tôi kết nối ADS1115 với cảm biến của tôi và R Pi 3.
Tia

0

Có lẽ bạn có thể sử dụng PCF8591 tương tự như bộ chuyển đổi kỹ thuật số. Nó làm nhiều hơn sau đó kiểm tra nhị phân đơn giản, nó chuyển đổi điện áp thành giá trị kỹ thuật số. Nó là cấu hình. Mất 2,5 đến 6 volt cho nguồn điện. Bạn có thể đặt một số cập nhật không thường xuyên cho thiết bị và quét đầu ra của nó để có giá trị lớn hơn những gì bạn mong đợi.


Cảm ơn bạn đã đề xuất của bạn. Điện áp tối đa đầu vào là Vdd + 0,5 Datasheet . Vì vậy, nếu tôi cấp nguồn cho 5V, đầu ra cũng sẽ là 5V. Vì vậy, chúng tôi trở lại đề xuất @joan.
Elo

@Elo, không chính xác, vì nó sử dụng I2C làm đầu ra. Vì vậy, đầu ra có thể là 3,3V, kỹ thuật số. Bạn phải cấp nguồn cho nó với ít nhất 5V, bởi vì nó có thể đọc tới Vdd + 0,5V khi nhập.
Piotr Kamoda

0

Bạn cũng có thể sử dụng bộ dịch chuyển cấp hai chiều - Tôi đã mua một bộ hai dòng (3.3 <==> 5.0 Volts) từ một nhà bán lẻ trên trang web hành động trực tuyến phổ biến - trong đó đề cập rõ ràng về khả năng tương thích I 2 C của nó , một số người không nói gì - đó là lý do tại sao tôi chọn cái trước) cho một vài GB Bảng. (Tôi không nhận được bất kỳ dấu hiệu nào cho thấy dòng nào được dán nhãn "A" và "B" là điện áp nào, nhưng nhà bán lẻ ở Anh đã nhanh chóng cung cấp cho tôi dữ liệu đó theo yêu cầu!) Điều đó đi vào các dòng SDA và SCL và hai (5.0 & 3.3) đường ray cung cấp với mặt đất (0V) là chung cho cả hai bên. Các tín hiệu I 2 C "bên ngoài" hiện có nguồn gốc 5V và chúng, và nguồn cung cấp 5V có thể được mở rộng sang các thiết bị hỗ trợ 5V khác sử dụng bus đó mà không gây nguy hiểm cho Pi.

EDIT: Tôi đã xem câu trả lời của d3noob chứ không phải câu hỏi của OP, đó là sử dụng xe buýt I 2 C nhưng OP được gọi là SPI. Mặc dù các chi tiết khác nhau, chi phí liên quan đến việc sử dụng một bộ chuyển đổi thực tế được thiết kế cho công việc của một trong những chiếc xe buýt đó nhiều hơn là do sự bảo vệ mà chúng dành cho các chân GPIO dễ bị tổn thương trên Pi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.