开发协议 %e5%bc%80%e5%8f%91%e5%8d%8f%e8%ae%ae
您现在的位置:首页 > 开发协议 > 二次开发,网络开关控制的【HTTP协议】的指令控制方式

使用教程

下载中心

二次开发,网络开关控制的【HTTP协议】的指令控制方式

发布时间:2016/12/05 开发协议 标签:HTTP控制协议开关控制协议开发协议智能控制协议浏览:5857

2018-11-11起,所有带HTTP协议的产品不内置,暂停使用,支持此功能需说明。

网络远程控制开关HTTP控制协议的操作说明,二次开发时使用的功能:



首先开发人员必须知道控制器【什么叫X的信号输入】和【什么叫Y的开关量输出】在控制器的标签上有印刷字,可以看清楚,和查看控制器的使用说明有介绍,这里只介绍二次开发的控制指令和查询指令功能.
一般HTTP协议只能是对Y的开关进行控制,查询Y的状态,与查询X的状态,再也没有其它功能了。在满足不到功能时,比如定时,请参考提供的SOCKET二次开发进行操作。

控制开关的指令如:
发  送  : http://192.168.1.250/cgi-bin/io_request.cgi?setbitaddr=512&bitval=111111111111111
返回结果  : status=request ok,setbitaddr=512,bitval=1111111111111111

发送的超链接用户只关心IP地址, setbitaddr, bitval,三个地方的参数即可http协议类似字符串控制方式,可以单独对某一个开关进行打开,或对所有取返等.Setbitaddr表示继电器处于寄存器位置,512起为第一个继电器,513为第二个继电器,与此类推,

数字码解释:0表示关,1表示开,2表示反转,3表示忽略。
示例:
单独对某一路控制打开,其它不理,比如第3路,寄存器位置为514,
1.可发送:setbitaddr=512&bitval=331,
2.或可发送:setbitaddr=513&bitval=31.
3.或可发送:setbitaddr=514&bitval=1.
解:第3路继电器,寄存器为512+2=514,“行1”中有两个3,表示第1和第2路都忽略不操作,只对第三路进行打开,第三路后面不增加数字也表示忽略后面的继电器,“行2”也是同样道理,如果想更加容易理解的方法对第三路控制,参考 “行3”

以8路的设备几种示例都为正确:
setbitaddr=512&bitval=11111111// 8路全开
setbitaddr=512&bitval=00000000//8路全关
setbitaddr=512&bitval=00011000//4、5打开,1、2、3、6、7、8关闭
setbitaddr=512&bitval=0//第1路关闭
setbitaddr=514&bitval=1//只对第3路控制打开
setbitaddr=512&bitval=00000010//1-8中,第7打开,其它关闭
setbitaddr=512&bitval=011//第1路关闭,第2、3打开
setbitaddr=516&bitval=102//第5路打开,第6关闭,第7反转
setbitaddr=515&bitval=0022// 第4、5路打开,第6、7路反转
前面介绍中都是简短字符串说明,实际上需要连同IP地址等一起发送才是正确的如:
发送:http://192.168.1.250/cgi-bin/io_request.cgi?setbitaddr=516&bitval=102才是一个完整的.
如果是远程控制发送:http://abcd.vicp.net:81/cgi-bin/io_request.cgi?setbitaddr=516&bitval=102 也可以达到这功能。

域名为花生壳域名以及端口号也需要一起发送:当端口号没有修改,默认为80时,发送超链接协议可以不加端口号,当改动了WEB端口号时,需连同端口号一起发送,上图示例的81为端口号。
互锁,自锁等功能也很容易达到,互锁功能用户的理解有好多种,两个开关互锁,三个开关互锁,全部开关互锁,都有不同的观点,http协议可以很容易实现各种互锁功能.使用0表示关,1表示开的简单方式.
http协议的作用好处可以支持到多用户同时连接并同时发起控制。

因为某些IE浏览器发送多次一模一样的超链接,浏览器会检测到是同样的数据,将会自动在电脑内存读取页面,而不会向网络发送链接,导至发送控制失败,二次开发时可以在每次发送超链接后面加上其它字符,这样才能确保每次都将命令发出,比如第一次发送:setbitaddr=512&bitval=11111111A,第二次发送:setbitaddr=512&bitval=11111111B,在最后面另外加了一些无用字符,使每条链接不相同。

 

查询继电器【Y输出】状态:(所有型号的网络控制器都有继电器输出)

发 送 :http://192.168.1.250/cgi-bin/io_request.cgi?queryallout

或发送:http://192.168.1.250/cgi-bin/io_request.cgi?queryallout=xxx&rand=23123123

两者对比中,“=”和后面字符串数字可有可无

返回结果:status=request ok,io=0011001100000000

0表示检测到继电器关闭,1表示继电器打开查询开关量输入状态:(带开关量输入网络控制器只有大部分型号才有)

查询开关量【X输入】状态:(带开关量输入网络控制器只有部分型号才有)
发 送 :http://192.168.1.250/cgi-bin/io_request.cgi?queryallin
或发送:http://192.168.1.250/cgi-bin/io_request.cgi?queryallin=xxx&rand=23123123
两者对比中,“=”和后面字符串数字可有可无返回结果:status=request ok,io=0011001100000000
0表示检测到无开关量输入,1表示有关量输入

下例图片展示了在浏览器发送命令,简易和快速测试。
http

网络开关HTTP协议能快速应用系统集成开发,网络开关模块芯片内部集成了WEB服务器,除直接WEB浏览器进入设备可控制外,可以通过指令方式发送控制,控制方式是客户端直接访问网络开关设备达到控制功能。

本文PDF下载地址:HTTP开发协议


姓 名:
邮箱
留 言: