Đọc điện áp dương và âm trong Arduino [đóng]


10

Đó là một câu chuyện dài, nhưng tôi đã tách ra và xe RC và muốn sử dụng Arduino analogRead()để có được các giá trị của động cơ và tay lái của tôi. Tôi đã đo bằng đồng hồ vạn năng của mình rằng điện áp trong xe điều khiển từ xa của tôi dao động từ -6v đến 6v.

Tuy nhiên, Arduino chỉ hỗ trợ đọc tối đa từ 0v đến 5v. Có cách nào để chuyển đổi -6v và + 6v thành 0v và 5v không? Tôi đã nghe nói rằng nó có thể được thực hiện bằng Op Amp. Một số người cũng bảo tôi sử dụng bộ chia điện áp. Nói cách khác, nếu tôi không điều khiển xe RC, Arduino sẽ thấy 2,5 volt.

Dù sao, tôi không chính xác rõ ràng về cách tôi sẽ làm điều này. Ai đó có thể vui lòng giới thiệu cho tôi một Op Amp thích hợp với một mạch cho kịch bản cụ thể này không?

HOẶC, nếu có thể, ai đó có thể chỉ cho tôi cách đọc điện áp âm và dương bằng hai chân Arduino không? Ví dụ: nếu có -6v được cung cấp, thì Ghim tương tự 0 sẽ trả về 1023. Nếu có 0v được cung cấp, thì cả Ghim tương tự 0 và 1 sẽ nói 0. Và nếu có + 6v được cung cấp, thì Ghim tương tự 1 sẽ trả về 1023 Làm thế nào tôi có thể làm cho một mạch sẽ làm việc như thế này?

Tôi đánh giá cao nó nếu bạn có một sơ đồ mạch cho việc này. Cảm ơn!


1
Khi bạn nói tín hiệu đầu ra của xe RC nằm trong khoảng từ +6 đến -6 Volts, thì cách đọc này có liên quan gì? Điểm nào bạn đang áp dụng đầu dò mặt đất của vạn năng để?
Anindo Ghosh

@AnindoGhosh Tôi vừa lấy cả hai dây dẫn của vạn năng và chạm một đầu dò vào từng dây của động cơ.
solutionhacker

2
Bỏ phiếu để đóng là tiền đề của câu hỏi này về cơ bản là sai lầm. Những gì được đọc là không tương tự; tốt nhất có thể là kỹ thuật số có độ rộng xung, nhưng thực sự có rất ít điểm để sử dụng Arduino để đọc một hệ thống RC kế thừa thô sơ khi bạn có thể dễ dàng tạo ra một kỹ thuật số hiện đại bằng cách sử dụng các mô-đun loại 1 nRF24L01.
Chris Stratton

Chào mừng đến với EE.SE! Đây dường như là một câu hỏi kỹ thuật đảo ngược, sửa đổi hoặc sửa chữa. Xin lưu ý rằng các câu hỏi như vậy phải bao gồm các bước khắc phục sự cố cụ thể và thể hiện sự hiểu biết tốt về thiết kế cơ bản của thiết bị đang được thảo luận, để bạn có thể hỏi các câu hỏi cụ thể, tập trung có thể được trả lời chính xác. Nếu không, câu hỏi là quá rộng. Thông tin chi tiết có thể được tìm thấy ở đây: Là hỏi làm thế nào để sửa một mạch bị lỗi về chủ đề? .
Dave Tweed

Câu trả lời:


15

Ba điện trở tiêu chuẩn thực hiện công việc, với điều kiện là động cơ nhìn thấy -6V được nối đất và không được tham chiếu đến đầu cực động cơ khác.

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab

Khi thay đổi Vm từ -6 đến 6V, đầu ra sẽ thay đổi từ 0 đến 4.9V.


À, bạn đánh tôi với nó :-)
Anindo Ghosh

@AnindoGhosh xin lỗi. Thông thường tôi mắc một vài lỗi toán học trong tính toán của mình, nhưng lần này tôi đã thành công lần đầu tiên. Tôi để lại toán cho bạn: o)
jippie

@AnindoGhosh oh và tôi sẽ không ngạc nhiên nếu điện áp động cơ được đo trên động cơ chứ không phải được nối đất, vì vậy bạn cũng có thể có một câu trả lời hay. Ngoài ra, tôi không có tài khoản cho PWM ...
jippie

Làm thế nào tôi có thể tính toán các giá trị điện trở, cho một điện áp đầu vào đã biết? Ví dụ, tôi có một tình huống tương tự, nhưng tín hiệu đầu vào của tôi là -2 đến +2 volt. Đây là một cấu trúc liên kết thú vị, nhưng tôi muốn hiểu lý thuyết đằng sau nó để tôi có thể sửa đổi nó, không chỉ sao chép.
cướp

@robm Tôi đã thiết lập các tỷ lệ cho các điện trở trước, sau đó sử dụng một số tính toán trong bảng bảng tính lớn để chọn các điện trở phù hợp gần nhất. Đó là việc sử dụng các công thức trong bảng tính tại sao tôi không xây dựng phương pháp chính xác mà tôi có lẽ nên có. Tôi cho rằng nó đáng để tự đặt câu hỏi: Phương pháp tiêu chuẩn để chọn giá trị điện trở cho trường hợp sử dụng cụ thể này.
jippie

4

Khi động cơ được điều khiển từ một cây cầu H đầy đủ và bạn muốn Arduino của mình ở cùng một tham chiếu mặt đất với phần còn lại của chiếc xe, thì bạn có thể sử dụng như sau:

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab

Cả hai đầu ra đều nằm trong phạm vi 0 .. 2V4 và bạn nên đặt điện áp tham chiếu bên trong của Arduino thành 2V56. Bằng cách gắn cả hai đầu ra vào đầu vào tương tự của riêng chúng, bạn có thể tính điện áp động cơ bằng cách trừ chúng. Các tụ điện có tín hiệu PWM trung bình để có thể đo được bằng ADC.


-1

Đây là một giải pháp mà không cần op-amp. Bạn sẽ cần thêm một pin đầu vào tại Arduino cho cái này.

Nếu chân đầu vào đọc 0 thì điện áp từ ADC là dương. Khác điện áp là âm.

Do sụt áp trên bộ chỉnh lưu cầu, bạn đã giải quyết được vấn đề hạ 6V xuống 5V. Bây giờ bạn sẽ có tối đa 6 - 2 * 0,7 = 4,6 V. D5 là tùy chọn và chỉ có lý do an toàn.

Nhược điểm là điện áp phải lớn hơn + 1,4V hoặc nhỏ hơn -1,4V để đo.

sơ đồ

mô phỏng mạch này - Sơ đồ được tạo bằng CircuitLab


2
Bạn cũng sẽ cần cách ly mặt đất của Arduino khỏi mạch RC. Điều này có nghĩa là họ sẽ cần nguồn cung cấp năng lượng riêng biệt.
DoxyLover
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.