软件可在信捷官网下载,相关手册也在官网即可下载。
安装时退出电脑防护,以管理员身份运行XDPP即可,会自动安装另一个。
对应的HMI可以用FStudio
(手册4-1-3-2)
编程软件,选择【软件串口设置】,选择任意一个通讯口,进入配置界面;通讯接口选“Ethernet”;通讯协议选 XNET,连接方式选择“局域网口”,查找方式可以选“设备类型”或是“设备 ID”。两种方式都可以:
接线:电脑跟PLC用网线连接,PLC与触摸屏用网线连接,电源红黑线给PLC和触摸屏分别供电。
网线直接连接电脑与触摸屏也可以下载触摸屏程序。
若PLC与触摸屏通过网线连接显示通讯失败,可以尝试通过VGA-COM的线进行连接,可能只设置了这种通讯。
电脑设置:修改本机以太网ipv4地址,win11通过控制面板修改,默认192.168.6.20,连接PLC正常可通过MODBUS_TCP连接成功。
若不成功,首先查看是否能ping通本机IP,失败说明修改IP失败。能通再ping PLC默认192.168.6.6。
连接成功后提示机型不匹配,切换机型。
如果能下载不能运行,先设置扩展模块,不行的话重新上电试一下。
用网线直接连接或通过HUB或交换机连接的计算机,当在同一网段时才能互通。(网络地址相同,主机地址不同)
计算网络地址=IP地址和子网掩码换算为二进制,进行与运算。
公网IP和私网IP
ipconfig查出来的是本机的内网私有地址,百度查出来的是上网的共有地址。
网关
网关是一个网络通往其他网络的IP地址。
网关就是路由。
缺省网关是默认网关的父类。
DNS服务器
即域名服务器,用来域名解析(域名对应IP)
端口
包括物理端口和逻辑端口。
主机区分不同的网络服务靠的是“IP地址+端口号”的模式
0-1023是公认端口(常用端口),1025-49151是注册端口。
c语言块中用W,B进行编写。
传参进来用D与M。
即D----W,B-----M
W与B按数组使用
双字DW【10】表示W【10】与W【11】
D0====FW【0】,为双字浮点数寄存器。
连接扩展模块后要在编程软件中进行设置,上面的菜单栏-PLC设置-扩展模块设置,最常用的是第一种扩展模块。(XL-K-E6X)
连接的第一个扩展模块地址就是1000X,1000Y。
if ( !X[8] && !X[9] && !HM[1] && !B[51] && !B[66] && !B[76] && !B[86] && B[95] )
{
if ( B[230] )//中途搅拌
{
B[231] = true;//中途搅拌自动
}
}
if ( B[12] == 1 & Last_M12 == 0 )
{
FW[72] = FW[70];
FW[74] = FW[12];
}
if ( B[95] && B[14] )
{
if ( B[13] == 1 & Last_M13 == 0 )
{
FW[76] = FW[70];
FW[78] = FW[12];
FW[44] = ( FW[74] - FW[78] ) * ( ( FHD[4] * FHD[10] + FHD[6] * FHD[12] ) / ( FW[14] * 100.0 ) ) / ( FW[76] - FW[72] ); //干胶量
}
}
if ( FW[44] < 0 )
{
FW[44] = 0;
}
Last_M12 = B[12];
Last_M13 = B[13];
//液位传感器处理 X3_A桶_低液位 X4_A桶_低液位 X5 B桶_低液位 X6_B桶_低液位
//下面这段代码仅针对X3一个传感器
if ( X[3] )//若低液位传感器处于高电平
{
FW[1004]++;//高电平持续累计
if ( X[3] == 1 && Last_X3 == 0 )//如果X3信号为1且上一次的X3信号为0,表示液位传感器状态从低电平变为高电平,记录液位传感器状态由低到高的时间
{
FW[1026] = FW[1006];
FW[1006] = 0;
}
}
else
{
FW[1006]++;//低电平持续累计
if ( X[3] == 0 && Last_X3 == 1 )//记录液位传感器状态由高到低的时间
{
FW[1024] = FW[1004];//FW1024是高电平累计时间,也就是由高到低的时间——兰
FW[1004] = 0;
}
}
Last_X3 = X[3];
FW[1042] = ( FW[1026] / ( FW[1024] + FW[1026] ) ) * 100;//FW1042初值为0,第一次变高电平值变为1,再变低电平时值变为0.X,例如0.2。
if ( FHD[150] < FW[1042] )//if ( FHD[150] < FW[1042] )+++JIA
{
HM[51] = 1;
}
else
{
HM[51] = 0;
}
应用POU库可以实现功能块的封装,建立POU块。(选择FB函数块或FC函数)
可用梯形图或C语言进行编写,需要先建立变量,变量名不可使用中文。在梯形图中进行调用时可以直接输入POU块的名称,然后设置此处应用模块的名称。仍旧注意不能使用中文。
POU的变量输入要注意不能使用绝对地址,需要在全局变量表中设置变量映射。
全局变量表中映射地址是红色说明数据类型不对,可能是占用位数不对。M和D切换试试。
POU中定义变量要注意开关量用bit类型就好,BOOL类型占用的还是八位,所以在全局变量表中无法对应M地址。
FB中有自己的内部变量,FB中可以使用函数块和函数。
页面上方有局部变量区
FB 成员变量不允许使用 BIT 类型或 BIT 数组类型,可以使用 BIT 指针类型。BOOL类型与BIT类型在此处大多兼容
有一些注意事项详见手册,例如常量有时候不用写K(当与自定义的变量在一起时)
块内不能使用TMR指令,只能使用TMR_FB
C语言中调用有严格顺序,需要先写传入参数,再写调用函数体,再写输出参数。
REAL即为浮点型