Javascript 使用node js websockets实时显示温度
我有温度传感器ds18b20,并且我成功地获得了读数,如何在温度变化时将该值发送到连接的客户端Javascript 使用node js websockets实时显示温度,javascript,node.js,raspberry-pi,Javascript,Node.js,Raspberry Pi,我有温度传感器ds18b20,并且我成功地获得了读数,如何在温度变化时将该值发送到连接的客户端 socket.emit('Temperature', TempValue() ); 在连接上使用这个只执行一次,我需要不断地发送给客户端,这将显示在HTML页面上。我有一个类似的系统,它基于一对温度传感器控制阁楼风扇。我所做的是: 我使用读取温度传感器的setInterval()在服务器本地设置轮询间隔。此间隔独立于任何连接,它是服务器代表所有连接执行的操作 当应用程序首次启动时,第一个温度被发送到
socket.emit('Temperature', TempValue() );
在
连接上使用这个
只执行一次,我需要不断地发送给客户端,这将显示在HTML页面上。我有一个类似的系统,它基于一对温度传感器控制阁楼风扇。我所做的是:
setInterval()
在服务器本地设置轮询间隔。此间隔独立于任何连接,它是服务器代表所有连接执行的操作io.emit()
向所有连接的客户端广播一个新的温度值,并将刚刚发送的新值保存为新的比较值李>
通过这种方式,我只在新温度与以前的值相差足够大且值得使用一些带宽发送时才向客户端发送新温度。您可以将其包装在
setInterval
中,并每隔500毫秒检查一次温度,例如setInterval(()=>socket.emit('temperature',TempValue()),500)
或socket.setInterval(()=>socket.emit('Temperature',TempValue()),500)
yesds18b20.Temperature('28-031397798ac6',function(err,value){Temperature=value;io.emit('Temperature',Temperature);})代码>@reputationX-这是一个额外的问题,还是你说你现在明白了?