Tôi sẽ cần một chiều dài dây lớn từ đầu vào tương tự vi điều khiển của tôi đến LDR hoặc cảm biến tương tự. Chiều dài của dây có khả năng là khoảng 100m, vậy nó có ảnh hưởng gì đến việc đọc ADC không? Có cách nào tôi có thể làm giảm các hiệu ứng?
Tôi sẽ cần một chiều dài dây lớn từ đầu vào tương tự vi điều khiển của tôi đến LDR hoặc cảm biến tương tự. Chiều dài của dây có khả năng là khoảng 100m, vậy nó có ảnh hưởng gì đến việc đọc ADC không? Có cách nào tôi có thể làm giảm các hiệu ứng?
Câu trả lời:
Có, thông thường bạn sẽ không đặt cảm biến cách ADC 100 mét.
Tại sao? Bởi vì chiều dài của dây sẽ bị giảm điện áp do điện trở của dây đồng, thực hiện ước tính nhanh để chứng minh, sử dụng 24 AWG ( biểu đồ đo dây ), điện trở sẽ trong khoảng 8 ohms.
Sử dụng Định luật Ohm và nói 10mA dòng điện (dự đoán của tôi, mức tín hiệu nhỏ) sẽ giảm khoảng 0,1 volt.
V = I * R
voltage drop = 10mA times 8 ohms
V = 0.010 * 8 = 0.08
or approximately 0.1 V.
Nếu đó là tín hiệu 5V là 2%, đủ để mất độ chính xác.
Thông thường để tín hiệu được truyền một cách đáng tin cậy trong một khoảng cách xa hơn và chống nhiễu cũng như xử lý điện trở dây, bạn có thể làm một số điều.
Đầu tiên là tăng điện áp, giả sử sử dụng tín hiệu 24 Volt thay vì 5V (hoặc 3,3V) hoặc bất kỳ giới hạn nào của đầu vào ADC của bạn. Điều này có thể hữu ích và là những gì giao thức nối tiếp RS-232 (EIA-232) làm để cải thiện độ tin cậy liên lạc trong một khoảng cách.
Thứ hai là sử dụng một vòng lặp hiện tại , trong đó thông tin được mã hóa thành các khác biệt hiện tại, sao cho giá trị LDR được mã hóa gần cảm biến và vòng lặp hiện tại kéo dài khoảng cách 100 mét. Điều này sẽ yêu cầu bộ thu phát vòng lặp hiện tại ở hai đầu của khoảng cách và ít nhất một đầu của vòng lặp phải có nguồn cung cấp năng lượng mạnh mẽ để cung cấp năng lượng cần thiết cho vòng lặp.
Cách thứ ba sẽ là sử dụng tín hiệu vi sai , trong đó hai dây ( đường truyền cân bằng) trải dài giữa cảm biến LDR và ADC. Sự khác biệt giữa hai giá trị là tín hiệu thực tế . Điều này có loại bỏ nhiễu chế độ phổ biến rất tốt (lọc). Ví dụ bao gồm RS-422 và hầu hết các chế độ Ethernet. Có các IC trình điều khiển dòng cho RS-422, tương tự như bộ thu phát / trình điều khiển MAX 232 phổ biến cho truyền thông nối tiếp RS-232.
Nó có thể sẽ nhận nhiễu. Có lẽ bạn có thể sử dụng thiết kế mạch giống như micrô, với hai dây LDR bên trong cáp được che chắn và tải bằng nhau và một amp khác ở đầu kia.
Vì bạn đang đi đến ADC, tôi đoán tín hiệu LDR của bạn thay đổi chậm so với thời gian tín hiệu truyền đi 100 m (500 ns), vì vậy bạn không cần lo lắng về hiệu ứng đường truyền .
Điện trở của dây có thể sẽ không ảnh hưởng đến nó, nếu điện trở của cảm biến tính bằng kiloohms. Dây có thể là 50 ohm hoặc hơn.
Trên thực tế, nếu tín hiệu LDR của bạn thay đổi chậm so với nhiễu, thì amp khuếch đại có thể bị quá mức và bạn chỉ có thể lọc nhiễu ra bằng bộ lọc thông thấp.
100 m dây của bạn sẽ hoạt động như 1 ăng ten lớn, thu nhận tất cả các loại EMI (Giao thoa điện từ). Bạn có thể sử dụng một dây cáp được che chắn, như endolith gợi ý, hoặc một cặp xoắn khá (khá = đủ xoắn trên mét).
Trở kháng thấp hơn ở cuối dây cũng làm giảm EMI, nhưng trở kháng này càng thấp, điện trở của dây càng phát huy tác dụng. Bạn có thể phải điều chỉnh đọc ADC cho mất.
Đây sẽ là một ứng dụng lý tưởng cho một AT-tiny, đó là một AVR 8 pin. Flash Tiny để lặp lại quá trình chuyển đổi ADC và truyền thông tin của bạn qua 100m dây bằng cách đập vào tín hiệu số hóa. Cho rằng tín hiệu sẽ chỉ thay đổi rất chậm, bạn có thể gửi lại các byte đơn lẻ, giả sử một lần mỗi giây, ở tốc độ truyền thấp (ví dụ: 2400bps). Chạy tín hiệu trở lại dưới dạng tương tự trên 100m dây, bạn có thể thu thập một loạt nhiễu không mong muốn, mà tín hiệu kỹ thuật số sẽ được miễn nhiễm.
Nếu bạn không muốn lập trình một AVR theo đề nghị của JustJef, bạn có thể thử bộ chuyển đổi tương tự sang số một dây như DS2450 từ Maxim. Đây là một ADC bốn. Nó sẽ có thể gửi dữ liệu lên tới 500m nếu bạn làm theo hướng dẫn của họ. (Tôi có thể dễ dàng để cảm biến nhiệt độ DS18B20 hoạt động ở 30m trên cáp báo động cơ bản).