如何解决ds18b20远距离传输(大概100m的距离,要求是有线传输), 单片机接受数据?

2024-12-14 19:13:39
推荐回答(4个)
回答1:

有线传输……那就是每个DS18B20用一个简单的单片机(比如2051)控制,然后使用RS485传输到atmega16上。

如果Atmega16单片机与上位机通信要使用串口,但是5个DS18B20节点与Atmega16的通信也要使用串口(RS485),那就需要Atmega16来切换串口通道了。

或者DS18B20获得的温度数据转换为电流信号,在被Atmega16采样前再转换为电压信号。Atmega16有10位的ADC且有8个输入通道,这样把电压信号送入Atmega16的ADC转换为数字信号,再通过串口传递给上位机——这样有个好处,每个DS18B20有一个单片机控制运行,得到的温度数据转换为电流信号直接送到线路上到Atmega16。所以Atmega16不需要查询每个18B20的状态或发出请求数据的命令,只要直接转换相关线路上的电流信号即可得到数据。

回答2:

采集的温度信息传输100米无非是信号太弱,只要在输出端接组放大器就OK了
,还是很弱的话在上位机端再接组。买好一点的。。。。

回答3:

这种传感器 供电是3到5.5伏 一百米 确实是有点远 如果你在实际发现 确实是不行 你中间加一个放大和反馈 电路

回答4:

1、用0.5以上的屏蔽双绞线作为传输线,在单片机IO口端接外部上拉电阻。
2、每个DS18B20就近接入单片机作为一个传感器节点,用485等工业总线把单片机联网。
3、每个DS18B20就近接入单片机作为一个传感器节点,用无线数传模块把单片机联网。
4、