首页 > 最新动态 > 晶控课堂 >

基于TCPClient模式的8路继电器盒二次开发

2017-10-28 09:22
分享到:
首选第一步,我们需要晶控的8路控制继电器一个,电脑,网线等。
再从官网上下载我们提供的war包(relay-tcpClient.war),导入开发工具(eclipse等);
我这里使用的是eclipse;
把war包导入eclipse 这边就不演示了,
我们先把8路控制盒 通上电源和插上网线
 
继电器控制盒
 
然后我们在电脑上打开ZLVirCom4软件,
以太网配置工具
 
找到我们的继电器点进去,修改,工作模式选为tcp客户端,即我们的8路控制盒相当于tcp客户端,目标ip是我本机的ip,端口选为9999,这个我在程序里设置为9999,改完之后点击修改,再点击重启设备
 
 
ip地址设置
 
 
 
代码中我绑定监听端口为9999;
java开发
这里我开了一个线程去监听
java代码
 
之后在eclipse导入relay-tcpClient.war包之后 运行,因为8路控制盒我们已经设置过了,所以他会主动来连我们的服务器,当8路控制盒连接上的时候,在我们的console中我们可以看到
控制器设置

表示已连接成功,连接成功之后我们已经跟继电器发了2次数据了
智能家居通信协议
  智能家居测试指令
 
 
之后在我们的浏览器中可以控制了,
智能家居网页控制
我点击第6路继电器,这时候我们的服务器即我们的本机电脑给8路控制盒发的指令是
智能家居调试
这里的id代表的是第几路开关,command代表是是开关,1代表开,0代表关;
 
我们截取console中的信息,
智能家居ip
 
8路控制盒返回给我们的指令OK代表的是指令正确,控制完成,现在我们的第6路继电器已经通电,我再多点击几个开关之后,刷新页面,
 
智能家居web页
 
刷新页面后,上面的开关按钮会重置,现在我们不清楚每路继电器的开关情况,
智能家居bs代码
 
我们可以点击下面的 查询按钮,
智能家居状态查询
会显示目前继电器的通电情况, 发送的指令是
智能家居调试
 
我们在console中可以看到,1在这里是没有意义的,165转换为2进制为10100101,从右往左,代表每路的开关情况,这里是开关开关关开关开,第1路,第3路,第6路,第8路是通电的。
智能家居通信协议