6ES7232-4HB32-0XB0
SIMATIC S7-1200,模拟输出, SM 1232,2 AO, +/-10V,14 位分辨率, 或0-20mA/4-20mA, 13 位分辨率
浔之漫智控技术(上海)有限公司
本公司销售西门子自动化产品,全新原装,****,价格优势
西门子PLC,西门子触摸屏,西门子数控系统,西门子软启动,西门子以太网
西门子电机,西门子变频器,西门子直流调速器,西门子电线电缆
我公司大量现货供应,价格优势,品质保证,德国原装进口
西门子PLC的监控功能
可通过主菜单“调试( Debug)”下的选项,在程序编辑器和状态图区内监视、读取、写入和强制plc的状态数据。
STEP7-Micro/WIN 32软件的监视和调试功能,既可在程序编辑器窗口中实现,也可以状态图的形式显示。
(1)程序编辑器窗监控
选择主菜单“调试(Debug)”中的“使用执行状态(Use ExecutionStatus)”选项,可以在程序编辑器窗口中监控PLC的实际执行状态(见图12-3.4)。
单击工具栏中的“程序状态监控”按钮,或选择主菜单命令“调试(Debug)”一“程序状态(ProgramStatus)”,在程序编辑器窗口中可以监控PLC的实际执行状态。
PLC所显示的实际执行状态是PLC循环扫描完成后的编程元件状态。
编程元件中出现绿色指示时,表明该编程元件为接通状态“l”;红色表示执行的指令有误:灰色表示指令未被扫描(跳过或未调用)。
(2)状态图监控
单击浏览条上的“状态图( Status Chart)”图标,或选择主菜单“检视(View)”一“元件(Component)”一“状态图(Status Chart)”,可打开状态图的监控页面(见图12-3.5)。
在“地址( Address)”中,输入需要监控的操作数(信号)地址,通过右击相应的单元格,可以进行信号地址的插入、删除等操作。
利用工具条中的状态图显示按钮,可以对输入的地址进行重新排列。
信号的状态将在状态图的“现行值( CurrentValue)”栏中显示。当PLC在STOP模式时,状态显示的是执行PLC程序前的初始值或条件:PLC在RUN模式时,可以连续监控执行中的程序状态。
西门子PLC常用数据的编程实例
当数据用规定的格式输入后,在西门子plc的内部存储器中均需要以二进制的形式存储,二进制格式与实际数据间的关系较复杂,它常常会给程序的调试与检查带来困难,为了更清楚地说明数据的使用方法与存储形式,举例如下。
【例1】利用数据装载指令(指令代码L),将各种十进制、十六进制数据读入到累加器ACCU1。
程序指令如下:
①L 27 ,/将单字长(16位)的十进制常数27读入到累加器l中;
②L1#一1 //将双字长(32位)的十进制常数一l读入到累加器l中:
③L2#1010 0000 0010 0001 //将单字长(16位)的二进制数1010 0000 0010 0001读入到累
加器l中;
④LDW#16# AOFl_BCD4 //将双字长(32位)的十六进制常数AOFl BCD4读入到累加器l中;
⑤L-2.5 //将双字长(32位)的浮点数“-2.5”读入到累加器l中(有关浮点数c1勺存
储格式见后述)。
【例2】利用数据装载指令(指令代码L),将ASCII字符“END”读入到累加器1中,并确定其执行结果。
LfEND. ∥将ASCII字符“END”读入到累加器l中
对照表8-5.2“ASCII代码表”可知,E=45;N=4E D=44,本字符在累加器1中的执行结果为:“454E44”。
【例3】利用数据装载指令(指令代码L),将定时器时间值、计数器计数值读入到累加器1中,并确定其执行结果。
①LT#500ms ∥将定时器时间值(500ms)读入到累加器l中;
②LC#100 //将计数器计数值(100)读入到累加器l中;
定时器时间值、计数器计数值以常数形式存储,累加器l的执行结果分别为500与100。
【例4】利用数据装载指令(指令代码L),将2字节(16位)的常数100、20分别读入到累加器1的高、低字节中,并确定其执行结果。
LB# (100,20) //将2字节(16位)的常数读入到累加器l中;
本指令与常数读入指令“L 27”的区别在于:
L 27指令:执行指令是将常数27转换为二进制后存储于累加器1,因为27=(1B) 16,累加器l的执行结果为“001B”。常数值的范围为0~65535(即O—FFFF)。
L B#(100,20)指令:执行指令是将2个十进制常数转换为二进制后,分别存储于存储器的高字节与低字节中,因为100=(64)16;20=(14)16,累加器1的执行结果为“64 14”。指令中括号内的常数值的范围为0~255(即O~FF)。
相关指令:
LB# (100,20,12,15) //将4字节(32位)的常数读入到累加器l中。
【例5】利用数据装载指令(指令代码L),将4字节(32位)的地址数据10.2、M10.2分别读入到累加器1中,并确定其执行结果。
①LP#10.2 /,将双字长(32位)的地址数据读入到累加器l中;
②LP#M10.2 //将双字长(32位)的地址数据读入到累加器l中;
注意:地址数据在S7中的存储格式如下:
地址位(bit31):“0”指针寄存器不含地址符,地址符bit24~bit26应为0;“l”指针寄存器含地址符,地址符由bit24~bit26指定。
地址符(bit24~bit26):地址位(bit31)为“1”时用于指定存储器地址,地址的编码如下:
000:地址P:
001:,地址I;
010:地址Q;
011:地址M;
100:地址DBX;
101:地址DIX;
110:地址L:
111:地址VL。
在累加器1中,指令“L P#10.2”的执行结果为“0000 0052”;指令“L P#10.2”的执行结果为“83000052”。
【例6】利用数据装载指令(指令代码L),将日期数据2006-11-18读入到累加器1中,并确定其执行结果。
LD#2006_ll—l8 //将双字长(32位)的日期读入到累加器l中;
注意:日期在PLC中的存储格式为表格数据,且以1990年1月1日作为起点“O”;以后每天增加1,1990年1月2日为“l”。2006年11月18日对应累加器l的日期存储数据为:6165;而2007年11月18日对应累加器1的日期存储数据为:6165365= 6530。
【例7】利用数据装载指令(指令代码L),将时间数据13:20:33.125s读入到累加器1中,并确定其执行结果。
LTOD#13:20:33.125 ∥将双字长(32位)的对阅读入到累加器l中。
注意:时间在PLC中的存储格式为以ms为单位的数据,如:
13:20:33.125s =(13×3600 20×60 33.125)s= 48033125 ms
执行本指令后累加器1的时间存储数据为:48033125。