研发的I/O系列采集控制模块,主要用来采集现场的I/O输入信号,并输出I/O控制信号,同时还集合了串口服务器和Modbus网关的功能。产品完全按照工业级标准进行设计,功能强大、抗干扰能力强、防雷击及浪涌冲击,宽电压输入,能够在-40℃~80℃范围内长期稳定工作。
I/O系列采集控制模块,是我公司的明星系列产品,功能强大,应用十分灵活方便:
(1)可通过模块自带串口控制现场其他的串口设备,降低施工费用
(2)可多个模块进行总线组网,使I/O点数得到灵活扩展
(3)可采集现场的I/O输入信号,并输出I/O控制信号
(4)I/O控制同时支持以太网和RS485信号通信方式,支持标准的Modbus协议
(5)I/O信号类型可根据现场需要进行灵活配置
(6)输入支持事件响应,事件支持滤波处理
(7)输出支持初始状态锁定、输出锁定及安全电压设定
(8)两个模块可以在无电脑参与的情况下进行遥控操作,支持一对多或多对一遥控
(9)支持WEB网页和PC软件等多种参数配置方式,配置参数方便灵活
(10)能现场对用户的配置进行测试确保配置正确
(11)可通过远程命令对模块进行控制
(12)集合I/O采集,控制输出,串口服务器,Modbus网关功能于一身
(13)以太网口和串口均可读取并控制I/O状态
(14)数据上报与动作数据自由切换
(15)可在云端直接控制,并可上报自定义内容
(16)10/100M自适应以太网接口,支持动态IP(DHCP)和静态IP
(17)具有自动报告IP的功能,支持在线更新固件
利用PHP控制开关量设备代码:
function tcp($sendStr,$bin,$port){
$host = "10.64.245.200";//串口服务器IP
//$port 端口
$socket = socket_create(AF_INET, SOCK_STREAM, getprotobyname("tcp")); // 创建Socket
socket_set_option($socket,SOL_SOCKET,SO_RCVTIMEO,array("sec"=>3, "usec"=>0 ) );//接收超时
socket_set_option($socket,SOL_SOCKET,SO_SNDTIMEO,array("sec"=>1, "usec"=>0 ) );//发送超时
if (socket_connect($socket, $host, $port)) { //连接
socket_write($socket, $sendStr); // 逐组数据发送
$receiveStr = '';
$receiveStr = socket_read($socket, 1024, PHP_BINARY_READ); // 采用2进制方式接收数据
if ($bin=='1'){
$receiveStrHex = bin2hex($receiveStr); // 将2进制数据转换成16进制
}else{
$receiveStrHex = $receiveStr; // 不转
}
return $receiveStrHex;//返回的值
}
socket_close($socket);// 关闭Socket
}
//触发及返回结果
$get_value=tcp($type,$bin,502);//502为开关量控制器的通讯设置---》IO通讯设置----》通讯本地端口:
$json_arr = array('back_status'=>'ok','message'=>$get_value);
echo json_encode($json_arr);
前端按钮(EIO0402设备支持白话协议,这点很方便,不用再为二进制与十六进制转换头疼了):
<input type="button" name="Submit44" class="input1" value="打开所有继电器" onclick="tcp_control('EIO0402','OPENALL','0')"/>
<input type="button" name="Submit55" class="input1" value="关闭所有继电器" onclick="tcp_control('EIO0402','CLOSEALL','0')"/>
以上就是PHP+TCP控制开关量继电控制器(设备型号EIO0402)的详细内容,更多关于PHP+TCP控制开关量继电控制器(设备型号EIO0402)的资料请关注九品源码其它相关文章!