如何使用Node.js的socket模块和硬件设备通讯?
发布于 9 年前 作者 CommanderXL 9032 次浏览 最后一次编辑是 8 年前 来自 问答

自动化学生党一枚,喜欢前端。 刚学node.js一星期。 因为自己呆的实验室是做单片机的。然后现在接了个项目是做一个控制系统,硬件设备上面装有各种传感器,然后通过GPRS走socket。因为要通过网站页面控制,因此自然想到了socket.io。这样我就不用写上位机啥的了,可以通过node搭建的服务器接收数据,在前台页面显示并传入数据库。

现在就是不太清楚通过前台的交互,往服务器上发送数据之后,怎么才能让服务器向这些硬件设备实现点对点的通信,并发送要传输的数据?

5 回复

我现在做的也是和硬件通讯。 写过一篇博文 关于在环境监控中用到的node.js通讯不知道有没有帮助。 node作为一个通讯服务端,同时提供TCP服务(socket)和HTTP服务(socket.io),你只要将和设备的连接以某个唯一的值保持起来就可以。 你在web界面做一个操作的时候,在页面上通过socket.io向服务端emit一个事件并附带数据,然后服务端再根据唯一标识找到对应这个设备的socket连接,向那边写数据,前提是你socket通讯有自己约定的协议,或者使用国标之类的,这样才能识别指令。

我们协议里每次发数据包都会带有设备的唯一标识,我是通过超时机制来控制socket连接,只有他的socket连接是通的你才能和他通讯啊

noduino nodejs和硬件通讯的项目。

@AdamsMao 这个不是针对Arduino设备的?

显然这个是针对 arduino的

回到顶部