S7-400模块CPU代理商S7-400模块CPU代理商S7-400模块CPU代理商
目前有一个项目,通过西门子200通过MODBUS通信读取ID卡号信息,目前读取来的卡号为8位卡号,存放在两个字节里,分别为VW2000,和VW2002。以卡号223 33822为例,VW2000存放33822,VW2002存放223。现在想将两个字节合并存放到VD里去,组成完整的卡号信息。
但是目前发现都是无符号的方式出现,但是PLC运算一旦超过32768的值就是以有符号的方式进行运算,并且变成负数,运算出来的结果不是我需要的。
现在想问下,大家如何直接用无符号的数据直接进行处理,后将完整卡号存放在VD中。
图片说明: 1,PLC程序处理 2,PLC数据监控
佳答案
I_DI 指令改为 MOV_W 指令替代即可!
图片说明:1,MOV_W
紧凑型CPU | 6ES7512-1CK01-0AB0 |
6ES7511-1CK01-0AB0 | |
高防护等级CPU | 6ES7516-2PN00-0AB0 |
分布型CPU | 6ES7512-1DK01-0AB0 |
6ES7510-1DJ01-0AB0 |
wincc VBS问题
Dim vbbb
Set vbbb=CreateObject("wscript.shell")
vbbb.Run "C:\WINDOWSsystem32calc.exe"
Set vbbb=Nothing
可以打开程序cale.exe,现在我想在wincc预先判断这个程序是否打开,求相关代码。
佳答案
提供用C的思路, 就是查找程序的窗口有没有在计算机窗口已经显示,如果没有则激活,有则不激活
HWND h=NULL;
h=FindWindow(NULL,"计算器"); //查找标题为“计算器”的窗口
if (h==0) //如果没找到,那么打开计算器程序
{ ProgramExecute("calc");
h=FindWindow(NULL,"计算器");
}
ShowWindow(h, SW_NORMAL);
S7-400模块CPU代理商交换机代理商电源模块代理商电源模块代理商西门子S7系列1500模块代理商西门子CPU模块代理商西门子变频器代理商西门子交换机代理商西门子电源模块代理商西门子S7-1200模块代理商西门子变频器代理商西门子低压模块代理商
6ES7214-1BD23-0XB8 | S7-200CNCPU224,AC/DC/Rly,14输入/10输出 |
6ES7214-2AD23-0XB8 | S7-200CNCPU224XP,DC/DC/DC,14输入/10输出,集成2AI/1AO |
6ES7214-2AS23-0XB8 | S7-200CNCPU224XPsi,DC/DC/DC,14输入/10输出,集成2AI/1AO |
6ES7214-2BD23-0XB8 | S7-200CNCPU224XP,AC/DC/Rly,14输入/10输出(NPN输出),集成2AI/1AO |
6ES7216-2AD23-0XB8 | S7-200CNCPU226,DC/DC/DC,24输入/16输出 |
6ES7216-2BD23-0XB8 | S7-200CNCPU226,AC/DC/Rly,24输入/16输出 |
6ES72211EF220XA0 | SIMATIC S7-200, EM221 数字量输入模块,8输入 交流120/230V AC |