西门子编程语句表
西门子指令

第1章位逻辑指令1.1 LD指令:载入常开触点 11.2 A指令:串联常开触点 21.3 O指令:并联常开触点 31.4 LDN指令:载入常闭触点 41.5 AN指令:串联常闭触点 51.6 ON指令:并联常闭触点 61.7 LDI指令:立即载入常开触点71.8 AI指令:串联立即常开触点81.9 OI指令:并联立即常开触点91.10 LDNI指令:载入立即常闭触点101.11 ANI指令:串联立即常闭触点111.12 ONI指令:并联立即常闭触点131.13 NOT指令:改变使能位输入状态141.14 EU指令:上升边缘检测151.15 ED指令:下降边缘检测161.16 ALD指令:触点块串联171.17 OLD指令:触点块并联181.18 LPS、LRD、LPP指令:逻辑堆栈操作191.19 =指令:线圈输出211.20 =|指令:立即线圈输出221.21 S指令:线圈置位231.22 SI指令:线圈立即置位241.23 R指令:线圈复位251.24 RI指令:线圈立即复位261.25 NOP指令:空操作271.26 X指令:异或操作28第2章比较指令2.1 LDB=指令:载入字节等于302.2 AB=指令:与运算字节等于312.3 OB=指令:或运算字节等于322.4 LDB指令:载入字节不等于332.5 AB指令:与运算字节不等于342.6 OB指令:或运算字节不等于352.8 AB=指令:与运算字节大于或等于37 2.9 OB=指令:或运算字节大于或等于39 2.10 LDB=指令:载入字节小于或等于40 2.11 AB=指令:与运算字节小于或等于41 2.12 OOB=指令:或运算字节小于或等于42 2.13 LDB指令:载入字节大于432.14 AB指令:与运算字节大于442.15 OB指令:或运算字节大于452.16 LDB指令:载入字节小于462.17 AB指令:与运算字节小于472.18 OB指令:或运算字节小于482.19 LDW=指令:载入字等于492.20 AW=指令:与运算字等于502.21 OW=指令:或运算字等于522.22 LDW指令:载入字不等于532.23 AW指令:与运算字不等于542.24 OW指令:或运算字不等于552.25 LDW=指令:载入字大于或等于562.26 AW=指令:与运算字大于或等于57 2.27 OW=指令:或运算字大于或等于58 2.28 LDW=指令:载入字小于或等于602.29 AW=指令:与运算字小于或等于61 2.30 OW=指令:或运算字小于或等于62 2.31 LDW指令:载入字大于632.32 AW指令:与运算字大于642.33 OW指令:或运算字大于652.34 LDW指令:载入字小于672.35 AW指令:与运算字小于682.36 OW指令:或运算字小于692.37 LDD=指令:载入双字等于702.38 AD=指令:与运算双字等于712.39 OD=指令:或运算双字等于722.40 LDD指令:载入双字不等于732.41 AD指令:与运算双字不等于742.42 OD指令:或运算双字不等于762.43 LDD=指令:载入双字大于或等于77 2.44 AD=指令:与运算双字大于或等于782.46 LDD=指令:载入双字小于或等于802.47 AD=指令:与运算双字小于或等于812.48 OD=指令:或运算双字小于或等于822.49 LDD指令:载入双字大于832.50 AD指令:与运算双字大于842.51 OD指令:或运算双字大于852.52 LDD指令:载入双字小于872.53 AD指令:与运算双字小于882.54 OD指令:或运算双字小于892.55 LDR=指令:载入实数等于902.56 AR=指令:与运算实数等于912.57 OR=指令:或运算实数等于922.58 LDR指令:载入实数不等于932.59 AR指令:与运算实数不等于942.60 OR指令:或运算实数不等于952.61 LDR=指令:载入实数大于或等于962.62 AR=指令:与运算实数大于或等于972.63 OR=指令:或运算实数大于或等于982.64 LDR=指令:载入实数小于或等于1002.65 AR=指令:与运算实数小于或等于1012.66 OR=指令:或运算实数小于或等于1022.67 LDR指令:载入实数大于1032.68 AR指令:与运算实数大于1042.69 OR指令:或运算实数大于1052.70 LDR指令:载入实数小于1062.71 AR指令:与运算实数小于1072.72 OR指令:或运算实数小于108第3章转换指令3.1 BTI指令:字节转换至整数1103.2 ITB指令:整数转换至字节1113.3 ITD指令:整数转换至长整数1123.4 ITS指令:整数转换至字符串1133.5 DTI指令:长整数转换至整数1153.6 DTR指令:长整数转换至实数1163.7 DTS指令:长整数转换至字符串1173.8 ROUND指令:取整为长整数1193.9 TRUNC指令:截断为长整数1203.10 RTS指令:实数转换至字符串1213.11 BCDI指令:BCD码转换为整数1233.12 IBCD指令:整数转换为BCD码1243.13 ITA指令:整数转换至ASCII码1253.14 DTA指令:长整数转换至ASCII码1273.15 RTA指令:实数转换至ASCII码1293.16 ATH指令:ASCII码转换至十六进制数字1313.17 HTA指令:十六进制数字转换至ASCII码1333.18 STI指令:字符串转换至整数1343.19 STD指令:字符串转换至长整数1363.20 STR指令:字符串转换至实数1373.21 DECO指令:解码1383.22 ENCO指令:编码1403.23 SEG指令:七段显示转换141第4章计数器指令4.1 CTU指令:向上计数1434.2 CTD指令:向下计数1454.3 CTUD指令:双向计数1464.4 HDEF指令:定义高速计数器1484.5 HSC指令:高速计数器150第5章浮点型数学运算指令5.1 +R指令:实数加1535.2 -R指令:实数减1545.3 *R指令:实数乘1565.4 /R指令:实数除1575.5 SQRT指令:求平方根1595.6 SIN指令:求正弦值1605.7 COS指令:求余弦值1615.8 TAN指令:求正切值1625.9 LN指令:求自然对数1635.10 EXP指令:求指数值164第6章整型数学运算指令6.1 +I指令:整数加1656.2 +D指令:长整数加1666.3 ?I指令:整数减1686.4 ?D指令:长整数减1696.5 MUL指令:整数与长整数相乘1716.6 *I指令:整数乘1726.7 *D指令:长整数乘1736.8 DIV指令:整数与长整数相除1756.9 /I指令:除以整数1766.10 /D指令:除以长整数1776.11 INCB指令:递增字节1796.12 INCW指令:递增字1806.13 INCD指令:递增双字1816.14 DECB指令:递减字节1836.15 DECW指令:递减字1846.16 DECD指令:递减双字185第7章中断指令7.1 CRETI指令:从中断(INT)有条件返回1877.2 ENI指令:启用中断1887.3 DISI指令:禁止中断1897.4 ATCH指令:中断连接1907.5 DTCH指令:中断分离1917.6 CEVNT指令:清除中断事件192第8章字逻辑指令8.1 INVB指令:取反字节1948.2 INVW指令:取反字1958.3 INVD指令:取反双字1968.4 ANDB指令:与运算字节1978.5 ANDW指令:与运算字1998.6 ANDD指令:与运算双字2008.7 ORB指令:或运算字节2018.8 ORW指令:或运算字2038.9 ORD指令:或运算双字2048.10 XORB指令:异或运算字节2058.11 XORW指令:异或运算字2078.12 XORD指令:异或运算双字208第9章移动指令9.1 MOVB指令:移动字节2109.2 MOVW指令:移动字2119.3 MOVD指令:移动双字2129.4 MOVR指令:移动实数2139.5 BMB指令:成块移动字节2149.6 BMW指令:成块移动字2159.7 BMD指令:成块移动双字2179.8 SWAP指令:交换字节2189.9 BIR指令:移动字节立即读取2199.10 BIW指令:移动字节立即写入220第10章程序控制指令10.1 FOR指令:循环开始22210.2 NEXT指令:循环结束22410.3 JMP指令:跳接至标签22510.4 LBL指令:语句标签22610.5 LSCR指令:载入顺序控制继电器22610.6 SCRT指令:顺序控制继电器转换22810.7 SCRE指令:顺序控制继电器结束22910.8 CRET指令:从子程序(SBR)有条件返回23110.9 END指令:主程序(OB1)有条件结束23110.10 STOP指令:转换至停止模式23210.11 WDR指令:监视程序复原23210.12 DLED指令:诊断LED 233第11章移位和循环移位指令11.1 SLB指令:向左移位字节23511.2 SLW指令:向左移位字23611.3 SLD指令:向左移位双字23811.4 SRB指令:向右移位字节23911.5 SRW指令:向右移位字24011.6 SRD指令:向右移位双字24211.7 RLB指令:循环左移字节24311.8 RLW指令:循环左移字24411.9 RLD指令:循环左移双字24611.10 RRB指令:循环右移字节24711.11 RRW指令:循环右移字24911.12 RLD指令:循环右移双字25011.13 SHRB指令:寄存器位移252第12章字符串指令12.1 SLEN指令:获取字符串长度25412.2 SCPY指令:将字符串1复制至字符串2 25512.3 SSCPY指令:从字符串复制子字符串25712.4 SCAT指令:字符串连接25812.5 SFND指令:在字符串1中查找字符串2 26012.6 CFND指令:在字符串中查找字符26112.7 LDS=指令:载入字符串等于26312.8 AS=指令:与运算字符串等于26412.9 OS=指令:或运算字符串等于26512.10 LDS指令:载入字符串不等于26612.11 AS指令:与运算字符串不等于26712.12 OS指令:或运算字符串不等于26812.13 ITS指令:整数转换至字符串26912.14 DTS指令:双整数转换至字符串27112.15 RTS指令:实数转换至字符串27212.16 STI指令:字符串转换至整数27412.17 STD指令:字符串转换至长整数27612.18 STR指令:字符串转换至实数278第13章表格指令13.1 FILL指令:内存填充28013.2 ATT指令:增加至表格28113.3 FND?TBL指令:表格查找28313.4 LIFO指令:后入先出28513.5 FIFO指令:先入先出286第14章定时器指令14.1 TON指令:接通延时定时器28814.2 TONR指令:掉电保护性接通延时定时器29014.3 TOF指令:断开延时定时器29114.4 BITIM指令:开始间隔时间29314.5 CITIM指令:计算间隔时间294插图第15章特殊指令15.1 网络读/网络写29615.2 发送/接收29915.3 脉冲输出30215.4 PID指令305。
西门子编程语句表

英文助记符德文助记符程序元素分类说明---| |--- ---| |--- 位逻辑指令常开接点(地址)---|/|--- ---|/|--- 位逻辑指令常闭接点(地址)---( ) ---( ) 位逻辑指令输出线圈---(#)--- ---(#)--- 位逻辑指令中间输出==0 ---| |--- ==0 ---| |--- 状态位指令结果位等于“0”>0 ---| |--- >0 ---| |--- 状态位指令结果位大于“0”>=0 ---| |--- >=0 ---| |--- 状态位指令结果位大于等于“0”<=0 ---| |--- <=0 ---| |--- 状态位指令结果位小于等于“0”<0 ---| |--- <0 ---| |--- 状态位指令结果位小于“0”<>0 ---| |--- <>0 ---| |--- 状态位指令结果位不等于“0”ABS ABS 浮点算术运算指令浮点数绝对值运算ACOS ACOS 浮点算术运算指令浮点数反余弦运算ADD_DI ADD_DI 整数算术运算指令双整数加法ADD_I ADD_I 整数算术运算指令整数加法ADD_R ADD_R 浮点算术运算指令实数加法ASIN ASIN 浮点算术运算指令浮点数反正弦运算ATAN ATAN 浮点算术运算指令浮点数反正切运算BCD_DI BCD_DI 转换指令BCD 码转换为双整数BCD_I BCD_I 转换指令BCD 码转换为整数BR ---| |--- BIE ---| |--- 状态位指令异常位二进制结果----(CALL) ----(CALL) 程序控制指令从线圈调用FC/SFC(无参数)CALL_FB CALL_FB 程序控制指令从方块调用FBCALL_FC CALL_FC 程序控制指令从方块调用FCCALL_SFB CALL_SFB 程序控制指令从方块调用SFBCALL_SFC CALL_SFC 程序控制指令从方块调用SFC----(CD) ----(ZR) 计数器指令减计数器线圈CEIL CEIL 转换指令上取整CMP >=D CMP >=D 比较指令双整数比较(==,<>,>,<,>=,<=)CMP >=I CMP >=I 比较指令整数比较(==,<>,>,<,>=,<=)CMP >=R CMP >=R 比较指令实数比较(==,<>,>,<,>=,<=)COS COS 浮点算术运算指令浮点数余弦运算----(CU) ---( ZV ) 计数器指令加计数器线圈DI_BCD DI_BCD 转换指令双整数转换为BCD 码DI_R DI_R 转换指令双整数转换为浮点数DIV_DI DIV_DI 整数算术运算指令双整数除法所有梯形逻辑指令一览A-2英文助记符德文助记符程序元素分类说明DIV_I DIV_I 整数算术运算指令整数除法DIV_R DIV_R 浮点算术运算指令实数除法EXP EXP 浮点算术运算指令浮点数指数运算FLOOR FLOOR 转换指令下取整I_BCD I_BCD 转换指令整数转换为BCD 码I_DI I_DI 转换指令整数转换为双整数INV_I INV_I 转换指令整数的二进制反码INV_DI INV_DI 转换指令双整数的二进制反码---( JMP ) ---( JMP ) 跳转指令无条件跳转---( JMP ) ---( JMP ) 跳转指令条件跳转---( JMPN ) ---( JMPN ) 跳转指令若非则跳转LABEL LABEL 跳转指令标号LN LN 浮点算术运算指令浮点数自然对数运算---(MCR>) ---(MCR>) 程序控制指令主控继电器断开---(MCR<) ---(MCR<) 程序控制指令主控继电器接通---(MCRA) ---(MCRA) 程序控制指令主控继电器启动---(MCRD) ---(MCRD) 程序控制指令主控继电器停止MOD_DI MOD_DI 整数算术运算指令回送余数的双整数MOVE MOVE 赋值指令赋值MUL_DI MUL_DI 整数算术运算指令双整数乘法MUL_I MUL_I 整数算术运算指令整数乘法MUL_R MUL_R 浮点算术运算指令实数乘法---(N)--- ---(N)--- 位逻辑指令RLO 下降沿检测NEG NEG 位逻辑指令地址下降沿检测NEG_DI NEG_DI 转换指令双整数的二进制补码NEG_I NEG_I 转换指令整数的二进制补码NEG_R NEG_R 转换指令浮点数求反---|NOT|--- ---|NOT|--- 位逻辑指令信号流反向---(OPN) ---(OPN) 数据块调用指令打开数据块:DB 或DI OS ---| |--- OS ---| |--- 状态位指令存储溢出异常位OV ---| |--- OV ---| |--- 状态位指令溢出异常位---( P )--- ---( P )--- 位逻辑指令RLO 上升沿检测POS POS 位逻辑指令地址上升沿检测---( R ) ---( R ) 位逻辑指令线圈复位---( RET ) ---( RET ) 程序控制指令返回ROL_DW ROL_DW 移位和循环指令双字左循环ROL_DW ROL_DW 移位和循环指令双字右循环ROUND ROUND 转换指令舍入为双整数RS RS 位逻辑指令复位置位触发器---( S ) ---( S ) 位逻辑指令线圈置位---(SAVE) ---(SAVE) 位逻辑指令将RLO 存入BR 存储器---( SC ) ---( SZ ) 计数器指令设置计数器值S_CD Z_RUECK 计数器指令减计数器S_CU Z_VORW 计数器指令加计数器所有梯形逻辑指令一览A-3英文助记符德文助记符程序元素分类说明S_CUD ZAEHLER 计数器指令加-减计数器---( SD ) ---( SE ) 定时器指令接通延时定时器线圈---( SE ) ---( SV ) 定时器指令扩展脉冲定时器线圈---( SF ) ---( SA ) 定时器指令断开延时定时器线圈SHL_DW SHL_DW 移位和循环指令双字左移SHL_W SHL_W 移位和循环指令字左移SHR_DI SHR_DI 移位和循环指令双整数右移SHR_DW SHR_DW 移位和循环指令双字右移SHR_I SHR_I 移位和循环指令整数右移SHR_W SHR_W 移位和循环指令字右移SIN SIN 浮点算术运算指令浮点数正弦运算S_ODT S_EVERZ 定时器指令接通延时S5 定时器S_ODTS S_SEVERZ 定时器指令保持型接通延时S5 定时器S_OFFDT S_AVERZ 定时器指令断电延时S5 定时器---( SP ) ---( SI ) 定时器指令脉冲定时器线圈S_PEXT S_VIMP 定时器指令扩展脉冲S5 定时器S_PULSE S_IMPULS 定时器指令脉冲S5 定时器SQR SQR 浮点算术运算指令浮点数平方SQRT SQRT 浮点算术运算指令浮点数平方根SR SR 位逻辑指令置位复位触发器---( SS ) ---( SS ) 定时器指令保持型接通延时定时器线圈SUB_DI SUB_DI 整数算术运算指令双整数减法SUB_I SUB_I 整数算术运算指令整数减法SUB_R SUB_R 浮点算术运算指令实数减法TAN TAN 浮点算术运算指令浮点数正切运算TRUNC TRUNC 转换指令舍去小数取整为双整数UO ---| |--- UO ---| |--- 状态位指令无序异常位WAND_DW WAND_DW 字逻辑指令双字和双字相“与”WAND_W WAND_W 字逻辑指令字和字相“与”WOR_DW WOR_DW 字逻辑指令双字和双字相“或”WOR_W WOR_W 字逻辑指令字和字相“或”WXOR_DW WXOR_DW 字逻辑指令双字和双字相“异或”WXOR_W WXOR_W 字逻辑指令字和字相“异或”__。
SINUMERIK西门子系统加工中心编程各代码.doc

西门子系统,在机床没有回零点时,也可以循环起动的方法。
在启动状态下(诊断一机床设定)输入DB126 DBX4.0,B,1 西门子系统,等分圆周孔,钻孔循环的另一种方法,MACLL CYCLE81(100,0,5,,20)HOLES 1 或2(0,0,126,90,360/7,7)MACLL1, 是直线2, 是圆周0,起始角度0,起始点Z值126,半径90,第一孔的起始角度360/7,在360度内钻7个孔7, —共要钻7个孔西门子系统按键说明:区域转换键菜单扩展键返回键加工显示键自动方式单段运行手动方式J门子系统操作面板,英—汉对照说明:JOG 手动方式窗口:PresetScratch 对刀Handwheel 手轮ICN ICNGfct+transf G 功能Auxiliary func 功能表Spindles 主轴功能Axis federate 轴功能表Zoom act .val 坐标值放大Act.val MCS 机床坐标系/绝对坐标系;<<<<<<<<<<<<<<<<<<<<<<<<<<<AUTO 自动方式窗口:Over-storeDRF offsetProgram control 程序控制Block searchHandwheel 手轮Correct programProgram overviewGfct+transf G 功能Auxiliary func 功能表Spindles 主轴功能Axis federate 轴功能表Zoom act .val 坐标值放大Act.val MCS 机床坐标系/绝对坐标系;<<<<<<<<<<<<<<<<<<<<<<<<<<<MDA 方式窗口Program control 程序控制Handwheel 手轮Editor function 编辑MDA file fct MDA 程序管理Gfct+transf G 功能Auxiliary func 功能表Spindles 主轴功能Axis federate 轴功能表Zoom act .val 坐标值放大Act.val MCS 机床坐标系/绝对坐标系Delete MDA buffer 删除MDA 缓冲区;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 按区域转换键后的窗口:Machine 机床Parameter 参数Program 程序Services 服务Diagnosis 诊断Startup 起动AUTO 自动方式MDA MDA 方式JOG 手动方式R.EPOSREF ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 按Parameter 参数选择键后的窗口:Magazine list 刀具补偿R parameter R 参数Setting data 设定数据(维修时用)Zero offset 零点偏置User data 用户数据Actire ZO+compens 坐标激活Tool manageme 刀具管理Axes+ 轴+Axes- 轴-Rotation scale mirr Base ZOSet ZO;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 按Program 程序选择键后的窗口:Work—pieces 工件Part programs 工件程序Sub—programs 子程序User cycles用户循环Clip —board 剪粘板Log记录Interactiv programing 对话式编程New新的Copy复制Inserl粘贴Delete删除Rename重命名AlterenableInteractiv programing 对话式编程New新的Load装载Unload卸载Smulation 模拟Manage programs 程序管理Seleet选择Save setup data 保存数据;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 按Services服务选择键后的窗口:Data in数据输入Data out数据输出Manage data数据管理Data selection 数据选择In terface 接口V24 RS232C 接口PG编程器Disk磁盘Archive…文档NC card NC 卡;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 按Diagnosis诊断选择键后的窗口:Alarms报警Messages 信息Alarm log报警记录Serrice displays 服务显示Plc status :-型LC 状态Display newStore logSort young — old;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv按Program control 程序控制,选择键后的窗口:Skp:skip block Dry:dry runfederate ROV:rap:trat o / rideM01:program stopDisplay erav bloks anly 仅显示程序段移动西门子系统打开两个程序窗口,可以相互复制程序段的操作步骤:新建一个文件或打开一个文件 一-按双页面键” 一-■丁开第二个文件一-按程序段选择键”,选中要复制 的程序段一-按复制程序段”键一-按NEXT/Window 键,也就是把光标换到另一个文件下面 一-按粘贴 程序段键 > 按确定软键”。
西门子S7 指令表

西门子S7-200 PLC指令学习(1)S7-200系列的基本逻辑指令S7-200系列的基本逻辑指令与FX系列和CPM1A系列基本逻辑指令大体相似,编程和梯形图表达方式也相差不多,这里列表表示S7-200系列的基本逻辑指令(见表)。
表 S7-200系列的基本逻辑指令S7-200系列PLC的比较指令在SIEMENS S7-200的编程软件STEP-7中,有专门的比较指令:IN1与IN2比较,比较的数据类型可以是B、I(W)、D、R,即字节、字整数、双字整数和实数;还可以有其他的比较式:>、<、≥、≤、<>等等。
当满足比较等式,则该触点闭合。
与LMODSOFT指令对照:在LMODSOFT中,没有直接的数的比较指令,但SUB指令可以通过其执行减法功能后的三个输出端的状态实现整数的比较功能。
若与LMODSOFT 中的SUB指令对应,则在STEP-7中应有三个比较指令: >、=、< 来分别对应SUB 指令的三个输出;若还要对应≥、≤、或<>,则根据SUB指令三个输出端的不同组合,均可找到对应的比较指令。
比如:①(30007)>(40030)②(30007)=(40030)③(30007)<(40030)①+②(30007)≥②+③(30007)≤(40030)①+③(30007)<>(40030)S7-200系列PLC的定时器指令类型、编号及分辨率TON——接通延时TONR——有记忆接通延时TOF——断开延时3种分辨率(时基):1ms、10ms、100ms——分别对应不同的定时器号定时器6个要素:指令格式(时基、编号等)预置值——PT使能——IN 复位——3种定时器不同当前值——Txxx 定时器状态(位)——可由触点显示定时值=时基×预置值PT。
由于定时器的计时间隔与程序的扫描周期并不同步,定时器可能在其时基(1ms、10ms、100ms)内任何时间启动,所以,未避免计时时间丢失,一般要求设置PT预置值必须大于最小需要的时间间隔。
西门子 s7-300 s7-400编程语句表(stl)参考手册

美国(约翰森城) 技术支持和授权 当地时间:星 期一到星 期五 08:00:00 - 17:00 电话:+1 (0) 770 740 3505 传真:+1 (0) 770 740 3699 E-Mail:isd-callcenter@sea. GMT: -5:00
亚洲/ 澳大利亚(北京) 技术支持和授权 当 地 时 间:星期一到星期五 8:30 - 17:30 电话:+86 10 64 75 75 75 传真:+86 10 64 74 74 74 E-Mail: @ GMT: +8:00
SIMAT IC 热线和授权服务和技术支持 除了纸文件资料以外,我们在网上还提供有在线资料: /automation/service&support (英文网站) /service (中文网站) 在网上你可以找到: • • • • • 北 大 上 广 成 新闻列表可以向你提供不断更新的最新产品信息。 通过网上服务和技术支持部分的搜索功能,可以找到所需文件。 在论坛部分,全世界的用户和专家都可交流其经验。 通过我们在网上的代表处数据库, 你可以找到当地的自动化与驱动集团代表 处。 有关现场服务、修理、备件等更多信息,可参见“服务”。 京:(010) 6471 9990 连:(0411) 369 9760 - 40 海:(021) 5879 5255 州:(020) 8732 3967 都:(028) 6820 0939
vii
前言
viii
目录
前言…………………………………………………………………………………………………...iii 目录…………………………………………………………………………………………………..ix 1 位逻辑指令…………………………………………………………………………………….1-1 1.1 位逻辑指令概述 ...................................................................................... 1-1 1.2 A “ 与”................................................................................................. 1-3 1.3 AN “ 与非” ........................................................................................... 1-4 1.4 O “ 或”................................................................................................. 1-5 1.5 ON “ 或非”........................................................................................... 1-6 1.6 X “异或” ........................................................................................... 1-7 1.7 XN “ 异或非” ........................................................................................ 1-8 1.8 O 先“ 与” 后“ 或”................................................................................... 1-9 1.9 A( “ 与” 操作嵌套开始.......................................................................... 1-10 1.10 AN( “ 与非” 操作嵌套开始 .................................................................... 1-11 1.11 O( “ 或” 操作嵌套开始 ............................................................................ 1-11 1.12 ON( “ 或非” 操作嵌套开始.................................................................... 1-12 1.13 X( “异或”操作嵌套开始...................................................................... 1-12 1.14 XN( “ 异或非” 操作嵌套开始 ................................................................. 1-13 1.15 ) 嵌套闭合 .......................................................................................... 1-14 1.16 = 赋值 ............................................................................................... 1-15 1.17 R 复位 ............................................................................................... 1-16 1.18 S 置位 ................................................................................................. 1-17 1.19 NOT RLO 取反 ................................................................................. 1-18 1.20 SET RLO 置位(=1 ) ........................................................................ 1-18 1.21 CLR RLO 清零(=0 )....................................................................... 1-19 1.22 SAVE 把 RLO 存入 BR 寄存器........................................................... 1-20 1.23 FN 下降沿 .......................................................................................... 1-21 1.24 FP 上升沿 .......................................................................................... 1-23 比较指令……………………………………………………………………………………….2-1 2.1 比较指令概述..........................................................................................2-1 2.2 ? I 比较两个整数(16 位).....................................................................2-2 2.3 ? D 比较两个双整数(32 位) ...............................................................2-3 2.4 ? R 比较两个浮点数(32 位)................................................................2-4 转换指令………………………………………………………………………………………3-1 3.1 转换指令概述..........................................................................................3-1 3.2 BTI BCD 转成整数(16 位) .................................................................3-2 3.3 ITB 整数(16 位)转成 BCD.................................................................3-3 3.4 BTD BCD 转成整数(32 位)..............................................................3-4
西门子常用指令

MOVR IN,OUT
IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN还可以是常数
BIR IN,OUT
立即读取输入IN的值,将结果输出到OUT
IN:IB
OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD
DATA,S_BIT:I,Q,M,SM,T,C,V,S,L
N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数
S7-200PLC交换和填充指令
交换和填充指令如表4-24所示。
表4-24交换和填充指令
名称
指令格式
(语句表)
功能
操作数
换字节指令
SWAP IN
将输入字IN的高位字节与低位字节的内容交换,结果放回IN中
IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD
填充指令
FILL IN,OUT,N
用输入字IN填充从OUT开始的N个字存储单元
N的范围为1~255
IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD
IN还可以是AIW和常数
FND<> TBL,PTN,INDEX
FND< TBL,PTN,INDEX
FND> TBL,PTN,INDEX
搜索表TBL,从INDEX指定的数据项开始,用给定值PTN检索出符合条件(=,<>,<,>)的数据项
如果找到一个符合条件的数据项,则INDEX指明该数据项在表中的位置。如果一个也找不到,则INDEX的值等于数据表的长度。为了搜索下一个符合的值,在再次使用该指令之前,必须先将INDEX加1
西门子S7-200指令

表 S7-200系列的基本逻辑指令指令名称 指令符 功能操作数取 LD bit 读入逻辑行或电路块的第一个常开接点 Bit :I ,Q ,M ,SM ,T ,C ,V ,S取反 LDN bit 读入逻辑行或电路块的第一个常闭接点 和 A bit 串联一个常开接点 和非 AN bit 串联一个常闭接点 或 O bit 并联一个常开接点 或非ON bit并联一个常闭接点 电路块和 ALD 串联一个电路块 无电路块或 OLD 并联一个电路块 输出 = bit 输出逻辑行的运算结果 Bit :Q ,M ,SM ,T ,C ,V ,S 置位 S bit ,N 置继电器状态为接通 Bit :Q ,M ,SM ,V ,S 复位R bit ,N使继电器复位为断开表4-20 四则运算指令名称指令格式 (语句表)功能操作数寻址范围加法指令 +I IN1,OUT两个16位带符号整数相加,得到一个16位带符号整数。
执行结果:IN1+OUT=OUT (在LAD 和FBD 中为:IN1+IN2=OUT )IN1,IN2,OUT :VW ,IW ,QW ,MW ,SW ,SMW ,LW , T ,C ,AC ,*VD ,*AC ,*LDIN1和IN2还可以是AIW 和常数 +D IN1,IN2两个32位带符号整数相加,得到一个32位带符号整数。
执行结果:IN1+OUT=OUT (在LAD 和FBD 中为:IN1+IN2=OUT )IN1,IN2,OUT :VD ,ID ,QD ,MD ,SD ,SMD ,LD ,AC ,*VD ,*AC ,*LD IN1和IN2还可以是HC 和常数+R IN1,OUT两个32位实数相加,得到一个32位实数。
执行结果:IN1+OUT=OUT (在LAD 和FBD 中为:IN1+IN2=OUT )IN1,IN2,OUT :VD ,ID ,QD ,MD ,SD ,SMD ,LD ,AC ,*VD ,*AC ,*LD IN1和IN2还可以常数减法指令 -I IN1,OUT两个16位带符号整数相减,得到一个16位带符号整数。
sinumerik数控编程指令高级讲解

sinumerik数控编程指令高级讲解Sinumerik是西门子公司的数控系统,广泛应用于各类数控机床。
在数控编程中,掌握高级编程指令能够有效提高编程效率和加工精度。
本文将对Sinumerik数控编程中的高级指令进行详细讲解,帮助读者深入理解和运用这些指令。
一、循环指令1.MOD:模数循环指令,用于实现固定循环的多次执行。
语法:MOD [循环次数]示例:MOD 5含义:执行5次固定循环。
2.WHILE-ENDWH:条件循环指令,根据指定条件重复执行循环体内的指令。
语法:WHILE 条件...ENDWH示例:WHILE [I] <= 10...ENDWH含义:当变量I的值小于等于10时,重复执行循环体内的指令。
二、数组指令1.DIM:定义数组指令,用于定义一个数组。
语法:DIM [数组名]([维数])示例:DIM TABLE(10)含义:定义一个名为TABLE的一维数组,包含10个元素。
2.INDEX:数组索引指令,用于访问数组元素。
语法:[数组名](INDEX)示例:TABLE(INDEX)含义:访问数组TABLE的当前元素。
三、子程序调用指令1.CALL:调用子程序指令,用于调用已定义的子程序。
语法:CALL [子程序名]示例:CALL SUB1含义:调用名为SUB1的子程序。
2.RETURN:子程序返回指令,用于从子程序返回到主程序。
语法:RETURN示例:RETURN含义:从当前子程序返回到主程序。
四、其他高级指令1.IF-THEN-ELSE-ENDIF:条件判断指令,根据条件执行不同路径的指令。
语法:IF 条件THEN...ELSE...ENDIF示例:IF [I] > 10 THEN...ELSE...ENDIF含义:如果变量I的值大于10,执行第一个路径的指令;否则,执行第二个路径的指令。
2.PAUSE:暂停指令,用于暂停程序的执行。
语法:PAUSE [时间]示例:PAUSE 5含义:暂停5秒。
西门子编程指令对照表

西门子和发那科(加工中心)指令对照表中文含义西门子发那科备注快速定位 G00 X_ Y_ Z_ G00 X_ Y_ Z_ ; 一样直线插补 G01 X_ Y_ Z_ F_ G01 X_ Y_ Z_ F_ 一样圆弧插补半径编程G02/G03 X_ Y_ CR=_ F_ G02/G03 X_ Y_ R_ F_ 半径符号不同圆弧插补圆心编程G02/G03 X_ Y_I_ J_ F_ G02/G03 X_ Y_I_ J_ F_ 一样进给暂停 G04 F (秒)G04 S(转速) (S为转速,只有主轴受控机床才可是使用) G04 X (秒) 或G04 P(毫秒) 进给暂停工作平面 G17* X-Y G18 Z-X G19 Y-Z G17* X-Y G18 Z-X G19 Y-Z 一样绝对/相对G90*绝对G91相对G90*绝对G91相对一样进给G94*分进给/G95转进给G94*分进给/G95转进给一样输入单位 G71*公制/G70英制G21*公制/G20英制不一样刀具半径补偿G41左刀补G42右刀补G40取消刀补G41/G42 G90/G91 G01 X_ Y_ D_ F_ (建立)G40 G90/G91 G01 X_ Y_ F_ (取消) G41左刀补G42右刀补G40取消刀补G41/G42 G90/G91 G01 X_ Y_ D_ F_ (建立)G40 G90/G91 G01 X_ Y_ F_ (取消) 一样刀具长度补偿T_D_ + G5_例如G00 Z_ T_D_; G5_ + G43/G44 + H_ G49取消补偿例如G00 Z_ G43/4 H_; 不一样坐标偏移 TRANS X_ Y_ Z_ (绝对)ATRANS X_ Y_ Z_ (附加于前一个指令)TRANS 单独占一行,取消坐标偏移G52 X_ Y_ Z_ (绝对)G52 X0 Y0 Z0 取消偏移可编程偏移坐标旋转 ROT RPL= __ (RPL后跟旋转度数)AROT RPL=__(附加前一个指令)ROT单独占一行,取消坐标旋转G68 X_ Y_ R_ (X_ Y_为旋转中心,R为旋转度数,逆时针为正,反之为负)G69 取消坐标旋转可编程旋转比例缩放 SCALE X_Y_ (比1大放大,比1小缩小)ASCALE X_Y_(附加前一个指令)SCALE单独占一行,取消比例缩放不做说明可编程比例镜像MIRROR X0 Y0 (关于X轴对称写Y0,反之亦然,X、Y后面只要跟一个数字即可,没意义)AMIRROR X0 Y0 (附加前一个指令)MIRROR 单独占一行,取消镜像不做说明可编程镜像极坐标AP极角RP极径G17 G16 X_ Y_ (X为极径Y为极角)G15 取消极坐标孔循环CYCLE 81、82、83、84、HOLSE等G73、G81-G89(G98为初始高度,G99为安全高度,R安全高度数值)均为孔系加工宏指令变量符号为R1-R249,R0为空变量运算(+、-、*、/、COS、SIN、TAN、SQRT)=、>、>=、<、<=、>< (等于、大于、大于等于、小于、小于等于、不等于)IF R1>=42.1 GOTOB AAA运算公式要加小括号“()”,比如COS(45)R1=6AAA: G01 X=R1 Y0;运算顺序:先三角函数,后乘除,再加减;先括号里面,后括号外面。
西门子编程语句表

英文助记符德文助记符程序元素分类说明---| |--- ---| |--- 位逻辑指令常开接点(地址)---|/|--- ---|/|--- 位逻辑指令常闭接点(地址)---( ) ---( ) 位逻辑指令输出线圈---(#)--- ---(#)--- 位逻辑指令中间输出==0 ---| |--- ==0 ---| |--- 状态位指令结果位等于“0”>0 ---| |--- >0 ---| |--- 状态位指令结果位大于“0”>=0 ---| |--- >=0 ---| |--- 状态位指令结果位大于等于“0”<=0 ---| |--- <=0 ---| |--- 状态位指令结果位小于等于“0”<0 ---| |--- <0 ---| |--- 状态位指令结果位小于“0”<>0 ---| |--- <>0 ---| |--- 状态位指令结果位不等于“0”ABS ABS 浮点算术运算指令浮点数绝对值运算ACOS ACOS 浮点算术运算指令浮点数反余弦运算ADD_DI ADD_DI 整数算术运算指令双整数加法ADD_I ADD_I 整数算术运算指令整数加法ADD_R ADD_R 浮点算术运算指令实数加法ASIN ASIN 浮点算术运算指令浮点数反正弦运算ATAN ATAN 浮点算术运算指令浮点数反正切运算BCD_DI BCD_DI 转换指令 BCD 码转换为双整数BCD_I BCD_I 转换指令 BCD 码转换为整数BR ---| |--- BIE ---| |--- 状态位指令异常位二进制结果----(CALL) ----(CALL) 程序控制指令从线圈调用 FC/SFC(无参数)CALL_FB CALL_FB 程序控制指令从方块调用 FBCALL_FC CALL_FC 程序控制指令从方块调用 FCCALL_SFB CALL_SFB 程序控制指令从方块调用 SFBCALL_SFC CALL_SFC 程序控制指令从方块调用 SFC----(CD) ----(ZR) 计数器指令减计数器线圈CEIL CEIL 转换指令上取整CMP >=D CMP >=D 比较指令双整数比较(==,<>,>,<,>=,<=)CMP >=I CMP >=I 比较指令整数比较(==,<>,>,<,>=,<=)CMP >=R CMP >=R 比较指令实数比较(==,<>,>,<,>=,<=)COS COS 浮点算术运算指令浮点数余弦运算----(CU) ---( ZV ) 计数器指令加计数器线圈DI_BCD DI_BCD 转换指令双整数转换为BCD 码DI_R DI_R 转换指令双整数转换为浮点数DIV_DI DIV_DI 整数算术运算指令双整数除法所有梯形逻辑指令一览A-2英文助记符德文助记符程序元素分类说明DIV_I DIV_I 整数算术运算指令整数除法DIV_R DIV_R 浮点算术运算指令实数除法EXP EXP 浮点算术运算指令浮点数指数运算FLOOR FLOOR 转换指令下取整I_BCD I_BCD 转换指令整数转换为BCD 码I_DI I_DI 转换指令整数转换为双整数INV_I INV_I 转换指令整数的二进制反码INV_DI INV_DI 转换指令双整数的二进制反码---( JMP ) ---( JMP ) 跳转指令无条件跳转---( JMP ) ---( JMP ) 跳转指令条件跳转---( JMPN ) ---( JMPN ) 跳转指令若非则跳转LABEL LABEL 跳转指令标号LN LN 浮点算术运算指令浮点数自然对数运算---(MCR>) ---(MCR>) 程序控制指令主控继电器断开---(MCR<) ---(MCR<) 程序控制指令主控继电器接通---(MCRA) ---(MCRA) 程序控制指令主控继电器启动---(MCRD) ---(MCRD) 程序控制指令主控继电器停止MOD_DI MOD_DI 整数算术运算指令回送余数的双整数MOVE MOVE 赋值指令赋值MUL_DI MUL_DI 整数算术运算指令双整数乘法MUL_I MUL_I 整数算术运算指令整数乘法MUL_R MUL_R 浮点算术运算指令实数乘法---(N)--- ---(N)--- 位逻辑指令 RLO 下降沿检测NEG NEG 位逻辑指令地址下降沿检测NEG_DI NEG_DI 转换指令双整数的二进制补码NEG_I NEG_I 转换指令整数的二进制补码NEG_R NEG_R 转换指令浮点数求反---|NOT|--- ---|NOT|--- 位逻辑指令信号流反向---(OPN) ---(OPN) 数据块调用指令打开数据块:DB 或 DI OS ---| |--- OS ---| |--- 状态位指令存储溢出异常位OV ---| |--- OV ---| |--- 状态位指令溢出异常位---( P )--- ---( P )--- 位逻辑指令 RLO 上升沿检测POS POS 位逻辑指令地址上升沿检测---( R ) ---( R ) 位逻辑指令线圈复位---( RET ) ---( RET ) 程序控制指令返回ROL_DW ROL_DW 移位和循环指令双字左循环ROL_DW ROL_DW 移位和循环指令双字右循环ROUND ROUND 转换指令舍入为双整数RS RS 位逻辑指令复位置位触发器---( S ) ---( S ) 位逻辑指令线圈置位---(SAVE) ---(SAVE) 位逻辑指令将RLO 存入BR 存储器---( SC ) ---( SZ ) 计数器指令设置计数器值S_CD Z_RUECK 计数器指令减计数器S_CU Z_VORW 计数器指令加计数器所有梯形逻辑指令一览A-3英文助记符德文助记符程序元素分类说明S_CUD ZAEHLER 计数器指令加-减计数器---( SD ) ---( SE ) 定时器指令接通延时定时器线圈---( SE ) ---( SV ) 定时器指令扩展脉冲定时器线圈---( SF ) ---( SA ) 定时器指令断开延时定时器线圈SHL_DW SHL_DW 移位和循环指令双字左移SHL_W SHL_W 移位和循环指令字左移SHR_DI SHR_DI 移位和循环指令双整数右移SHR_DW SHR_DW 移位和循环指令双字右移SHR_I SHR_I 移位和循环指令整数右移SHR_W SHR_W 移位和循环指令字右移SIN SIN 浮点算术运算指令浮点数正弦运算S_ODT S_EVERZ 定时器指令接通延时 S5 定时器S_ODTS S_SEVERZ 定时器指令保持型接通延时 S5 定时器S_OFFDT S_AVERZ 定时器指令断电延时 S5 定时器---( SP ) ---( SI ) 定时器指令脉冲定时器线圈S_PEXT S_VIMP 定时器指令扩展脉冲 S5 定时器S_PULSE S_IMPULS 定时器指令脉冲 S5 定时器SQR SQR 浮点算术运算指令浮点数平方SQRT SQRT 浮点算术运算指令浮点数平方根SR SR 位逻辑指令置位复位触发器---( SS ) ---( SS ) 定时器指令保持型接通延时定时器线圈SUB_DI SUB_DI 整数算术运算指令双整数减法SUB_I SUB_I 整数算术运算指令整数减法SUB_R SUB_R 浮点算术运算指令实数减法TAN TAN 浮点算术运算指令浮点数正切运算TRUNC TRUNC 转换指令舍去小数取整为双整数UO ---| |--- UO ---| |--- 状态位指令无序异常位WAND_DW WAND_DW 字逻辑指令双字和双字相“与”WAND_W WAND_W 字逻辑指令字和字相“与”WOR_DW WOR_DW 字逻辑指令双字和双字相“或”WOR_W WOR_W 字逻辑指令字和字相“或”WXOR_DW WXOR_DW 字逻辑指令双字和双字相“异或”WXOR_W WXOR_W 字逻辑指令字和字相“异或”__欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书,学习资料等等打造全网一站式需求。
西门子编程 PLC S7-300语句表 助记符 中英文全称对照

西门子编程PLC S7-200/300语句表助记符英文全称助记指令(英文全称意思) :指令含义1 、LD ( Lode 装载 ) :动合触点2、LDN ( Lode Not 不装载 ) : 动断触点3、A ( And 与动合) : 用于动合触点串联4、AN ( And Not 与动断 ) :用于动断触点串联5、O ( Or 或动合 ) :用于动合触点并联6、ON ( Or Not 或动断 ) : 用于动断触点并联7、= ( Out 输出 ) :用于线圈输出8、OLD ( Or Lode): 块或9、ALD ( And Lode): 块与10、LPS ( Logic Push ) :逻辑入栈11、LRD ( Logic Read ) :逻辑读栈12、LPP ( Logic Pop ) :逻辑出栈13、NOT ( not 并非 ) :非14、NOP ( No Operation Performed ) : 无操作15、AENO ( And ENO ) : 指令盒输出端ENO相与16、S ( Set 放置 ) : 置117、R ( Reset 重置,清零 ) :清零18、P ( uP 上升) :正跳变19、N ( dowN 下降) :负跳变20、TON ( On_Delay Timer ) :通电延时21、TONR ( Retentive On_Delay Timer ) : 有记忆通电延时型22、TOF ( Off_ Delay Timer ) :断电延时型23、CTU ( Count Up ) : 递增计算器24、CTD ( Count Down ) : 递减计数器25、CTDU ( Count Up/ Count Down ) :增减计数器26、ADD ( add 加 ) : 加注意 //ADD_I (_ I 表示整数) ADD_DI( DI表示双字节整数)ADD-R(R 表示实数)它们都是加运算只是数的大小不同!!后面有很多这样的我就略写了!27、SUB ( Subtract 减去,减少) :减28、MUL ( Multiply ) : 乘29、DIV ( Divide ) : 除30、SQRT ( Square root ) : 求平方根31、LN ( Napierian Logarithm 自然对数 ) : 求自然对数32、EXP ( Exponential 指数的 ) :求指数33、INC_B ( Increment 增加 ) :增134、DEC_B ( Decrement 减少 ) :减135、WAND_B ( Word and 与命令 ) :逻辑与//其中_B代表数据类型还有W(字节)、DW双字后面几个都是这样的。
轻松记住西门子PLC指令,简单明了!

轻松记住西门子PLC指令,简单明了!指令(英文全称意思 ) :指令含义1、LD ( Load 装载 ) :动合触点2、LDN ( Load Not 不装载 ) : 动断触点3、A ( And 与动合) : 用于动合触点串联4、AN ( And Not 与动断 ) :用于动断触点串联5、O ( Or 或动合 ) :用于动合触点并联6、ON ( Or Not 或动断 ) : 用于动断触点并联7、= ( Out 输出 ) :用于线圈输出8、OLD ( Or Lode): 块或9、ALD ( And Lode): 块与10、LPS ( Logic Push ) :逻辑入栈11、LRD ( Logic Read ) :逻辑读栈12、LPP ( Logic Pop ) :逻辑出栈13、NOT ( not 并非 ) :非14、NOP ( No Operation Performed ) : 无操作15、AENO ( And ENO ) :指令盒输出端ENO相与16、S ( Set 放置 ) : 置117、R ( Reset 重置,清零 ) :清零18、P ( Positive) :上升沿19、N ( Negative) :下降沿20、TON ( On_Delay Timer ) :接通延时定时器21、TONR ( Retentive On_Delay Timer ) : 有记忆接通延时定时器22、TOF ( Off_ Delay Timer ) :断开延时定时器23、CTU ( Count Up ) : 增计数器24、CTD ( Count Down ) : 减计数器25、CTDU ( Count Up/ Count Down ) :增减计数器26、ADD ( add 加 ) : 加注意//ADD_I (_ I 表示整数)ADD_DI( DI表示双字节整数)ADD-R (R 表示实数)它们都是加运算只是数的大小不同。
西门子PLC,STL语句指令大全,有语句注释,一般人都收藏备用

西门⼦PLC,STL语句指令⼤全,有语句注释,⼀般⼈都收藏备⽤⼤家写PLC程序,尤其⽤到STL语⾔是不是⼀边写代码,⼀边放个巨⼤的PDF,100多页。
⽤到那个翻页半天,罗⾥吧嗦。
今天把西门⼦90⼏个STL语句表,全部整理发给⼤家。
有语句注释,收藏备⽤吧。
指令(英⽂全称意思 ) :指令含义1、LD( Load 装载 ) :动合触点2、LDN( Load Not 不装载 ) : 动断触点3、A ( And 与动合) : ⽤于动合触点串联4、AN ( And Not 与动断 ) :⽤于动断触点串联5、O( Or 或动合 ) :⽤于动合触点并联6、ON( Or Not 或动断 ) : ⽤于动断触点并联7、=( Out 输出 ) :⽤于线圈输出8、OLD( Or Lode): 块或9、ALD( And Lode): 块与10、LPS( Logic Push ) :逻辑⼊栈11、LRD( Logic Read ) :逻辑读栈12、LPP( Logic Pop ) :逻辑出栈13、NOT( not 并⾮ ) :⾮14、NOP( No Operation Performed ) : ⽆操作15、AENO( And ENO ) :指令盒输出端ENO相与16、S ( Set 放置 ) : 置117、R( Reset 重置,清零 ) :清零18、P ( Positive) :上升沿19、N( Negative) :下降沿20、TON( On_Delay Timer ) :接通延时定时器21、TONR( Retentive On_Delay Timer ) : 有记忆接通延时定时器22、TOF( Off_ Delay Timer ) :断开延时定时器23、CTU( Count Up ) : 增计数器24、CTD( Count Down ) : 减计数器25、CTUD( Count Up/ Count Down ) :增减计数器26、ADD( add 加 ) : 加注意//ADD_I (_ I 表⽰整数)ADD_DI( DI表⽰双字节整数)ADD-R (R 表⽰实数)它们都是加运算只是数的⼤⼩不同。
西门子PLC指令表

字符串至双整 数
STD
整数至BCD IBCD
字符串至实数 STR
实数至ASCII RTA
十六进制至 ASCII
HTA
取整(舍去小 数)
TRUNC
整数至ASCII ITA
指令
描述
STL
整数相减
-I
双整数相减
-D
整数相除得商/ 余数
DIV
整数相除
/I
双整数相除
/D
字节递减
DECB
字递减
DECW
双字递减
用包含在地址IN中的字值写入N个连续字,从地址OUT开始。N的范围是1至255。置ENO = 0的 错误条件:间接地址或操作数超出范围。
在表格(TBL)中搜索与某些标准相符的数据。"表格查找"指令搜索表,从INDX指定的表 格条目开始,寻找与CMD定义的搜索标准相匹配的数据数值(PTN)。命令参数(CMD)被指定 一个1至4的数值,分别代表 =、<>、<, and >。如果找到匹配条目,则INDX指向表格中的匹 配条目。欲查找下一个匹配条目,再次激活"表格查找"指令之前必须在INDX上加1。如果未找 到匹配条目,INDX的数值等于条目计数。一个表格最多可有100个条目,数据项目(搜索区 域)从0排号至最大值99。置ENO = 0的条件:间接地址或操作数超出范围。必须用边缘触发 器指令激活。
指令
描述
STL
字左移
SLW
字右移
SRW
字循环左移 RLW 字循环右移 RRW
备注
备注
备注
对输入IN(16位)执行求补操作,并将结果载入内存位置OUT(16位)。设置 ENO = 0的错误条件:0006 间接地址 特殊内存位:SM1.0 操作结果等于零
西门子指令一览表

1 位逻辑指令1、1 -||- 常开接点(地址)1、2 -|/|- 常闭接点(地址)1、3 XOR 位异或1、4 -|NOT|- 信号流反向1、5 -( ) 输出线圈1、6 -(#)- 中间输出1、7 -(R) 线圈复位1、8 -(S) 线圈置位1、9 RS 复位置位触发器1、10 RS 置位复位触发器1、11 -(N)- RLO下降沿检测1、12 -(P)- PLO上升沿检测1、13 -(SAVE) 将RLO存入BR存储器1、14 MEG 地址下降沿检测1、15 POS 地址上升沿检测2 比较指令2、1 CMP?I 整数比较2、2 CMP?D 双整数比较2、3 CMP?R 实数比较3 转换指令3、1 BCD_IBCD码转换为整数3、2 I_BCD 整数转换为BCD码3、3 I_DINT 整数转换为双整数3、4 BCD_DIBCD码转换为双整数3、5 DI_BCD 双整数转换为BCD码3、6 DI_REAL 双整数转换为浮点数3、7 INV_I 整数得二进制反码3、8 INV_DI 双整数得二进制反码3、9 NEG_I 整数得二进制补码3、10 NEG_DI 双整数得二进制补码3、11 NEG_R 浮点数求反3、12 ROUND 舍入为双整数3、13 TRUNC 舍去小数取整为双整数3、14 CEIL 上取整3、15 FLOOR 下取整4 计数器指令4、1 S_CUD 加减计数4、2 S_CU 加计数器4、3 S_CD 减计数器4、4 -(SC) 计数器置初值4、5 -(CU) 加计数器线圈4、6 -(CD) 减计数器线圈5 数据块指令5、1 -(OPN) 打开数据块:DB或DI6 逻辑控制指令6、1 -(JMP) 无条件跳转6、2 -(JMP) 条件跳转6、3 -(JMPN) 若非则跳转6、4 LABEL 标号7 整数算术运算指令7、1 ADD_I 整数加法7、2 SUB_I 整数减法7、3 MUL_I 整数乘法7、4 DIV_I 整数除法7、5 ADD_DI 双整数加法7、6 SUB_DI 双整数减法7、7 MUL_DI 双整数乘法7、8 DIV_DI 双整数除法7、9 MOD_DI 回送余数得双整数8 浮点算术运算指令8、1 基础指令8、1、1 ADD_R 实数加法8、1、2 SUB_R 实数减法8、1、3 MUL_R 实数乘法8、1、4 DIV_R 实数除法8、1、5 ABS 浮点数绝对值运算8、2 扩展指令8、2、1 SQR 浮点数平方8、2、2 SQRT 浮点数平方根8、2、3 EXP 浮点数指数运算8、2、4 LN 浮点数自然对数运算8、2、5 SIN 浮点数正弦运算8、4、6 COS 浮点数余弦运算8、2、7 TAN 浮点数正切运算8、2、8 ASIN 浮点数反正弦运算8、2、9 ACOS 浮点数反余弦运算8、2、10ATAN 浮点数反正切运算9 赋值指令9、1 MOVE 赋值10 程序控制指令10、1 -(Call) 从线圈调用FC/SFC(无参数) 10、2 CALL_FB 从方块调用FB10、3 CALL_FC 从方块调用FC10、4 CALL_SFB 从方块调用SFB10、5 CALL_SFC 从方块调用SFC10、7 -(MCR>) 主控继电器断开10、8 -(MCRA) 主控继电器启动10、9 -(MCRD) 主控继电器停止10、10 -(RET) 返回11 移位与循环指令11、1 移位指令11、1、1 SHR_I 整数右移11、1、2 SHR_DI 双整数右移11、1、3 SHL_W 字左移11、1、4 SHR_W 字右移11、1、5 SHL_DW 双字左移11、1、6 SHR_DW 双字右移11、2 循环指令11、2、1 ROL_DW 双字左循环11、2、2 ROR_DW 双字右循环12 状态位指令12、1 OV -||- 溢出异常位12、2 OS -||- 存储溢出异常位12、3 UO -||- 无序异常位12、4 BR -||- 异常位二进制结果12、5 ==0-||- 结果位等于"0"12、6 <>0-||- 结果位不等于"0"12、7 >0-||- 结果位大于"0"12、8 <0-||- 结果位小于"0"12、9 >=0-||- 结果位大于等于"0"12、10 <=0-||- 结果位小于等于"0"13 定时器指令13、1 S_PULSE 脉冲S5定时器13、2 S_PEXT 扩展脉冲S5定时器13、3 S_ODT 接通延时S5定时器13、4 S_ODTS 保持型接通延时S5定时器13、5 S_OFFDT 断电延时S5定时器13、6 -(SP) 脉冲定时器线圈13、7 -(SE) 扩展脉冲定时器线圈13、8 -(SD) 接通延时定时器线圈13、9 -(SS) 保持型接通延时定时器线圈13、10 -(SF) 断开延时定时器线圈14 字逻辑指令14、1 WAND_W 字与字相"与"14、2 WOR_W 字与字相"或"14、3 WAND_DW 双字与双字相"与"14、4 WOR_DW 双字与双字相"或"14、5 WXOR_W 字与字相"异或"14、6 WXOR_DW 双字与双字相"异或。
西门子语句表

BCD 码
果产生上溢,则ENO 为“0”
I_DINT(整数转换为双整数指令)可以将输入参数IN 的内容以整数(16 位)读
24
I_DINT 整数转换为 出,并转换为一个双整数(32 位)。其结果可以由参数OUT 输出。ENO 和EN 总
双整数
是具有相同的信号状态。
BCD_DI (BCD 码转换为双整数指令)可以将输入参数IN 的内容以七位数BCD 代
22
整数
(+/- 999)读入,并将这个数转换成整数(16 位)。其整数结果可以由参数OUT 输出。ENO 和EN总是具有相同的信号状态
I_BCD(整数转换为BCD 码指令)可以将输入参数IN 的内容以整数(16 位)读
23
I_BCD 整数转换为 出,并转换为一个三位数BCD 代码(+/- 999)。其结果可以由参数OUT 输出。如
<地址 1>,要扫描的信号.<地址 2>,M_BIT 边沿存储位,存储<地址 1>的前 一信号状态.Q,输出为一个周期.NEG(地址下降沿检测指令)可以将<地址1>的信 POS 地址上升沿检测 号状态与存储在<地址2>中的先前扫描,的信号状态进行比较。如果当前的RLO 状 态为“0”,而先前的状态为“1”(上升沿检测)则在操作之后,RLO 位将为“1 ”
25
BCD_DI BCD 码转换 码(+/-9999999)读入,并将它转换成双整数(32 位)。其双整数结果可以由参
为双整数
数OUT 输出。ENO和EN 总是具有相同的信号状态。
DI_BCD(双整数转换为BCD 码指令)可以将输入参数IN 的内容以双整数(32
26
Siemens_SCL语句详解

结构化文本ST编程,西门子PLC编程语言中叫SCL ,其它任何PLC控制器编程语言还是叫结构化编程ST。
西门子SCL语言第一章IF:条件执行IF 分支IF <条件> THEN <指令>END_IF;如果满足该条件,则将执行THEN 后编写的指令。
如果不满足该条件,则程序将从END_IF 后的下一条指令开始继续执行。
IF 和ELSE 分支IF <条件> THEN <指令1>ELSE <指令0>;END_IF;如果满足该条件,则将执行THEN 后编写的指令。
如果不满足该条件,则将执行ELSE 后编写的指令。
程序将从END_IF 后的下一条指令开始继续执行。
IF、ELSIF 和ELSE 分支IF <条件1> THEN <指令1>ELSIF <条件2> THEN <指令2>ELSE <指令0>;END_IF;如果满足第一个条件(<条件1>),则将执行THEN 后的指令(<指令1>)。
执行这些指令后,程序将从END_IF 后继续执行。
如果不满足第一个条件,则将检查第二个条件(<条件2>)。
如果满足第二个条件(<条件2>),则将执行THEN 后的指令(<指令2>)。
执行这些指令后,程序将从END_IF 后继续执行。
如果不满足任何条件,则先执行ELSE 后的指令(<指令0>),再执行END_IF 后的程序部分。
在IF 指令内可以嵌套任意多个ELSIF 和THEN 组合。
可以选择对ELSE 分支进行编程。
IF "Tag_1" = 1THEN "Tag_Value" := 10;ELSIF "Tag_2" = 1THEN "Tag_Value" := 20;ELSIF "Tag_3" = 1THEN "Tag_Value" := 30;ELSE "Tag_Value" := 0;END_IF;IF 案例如下:FUNCTION_BLOCK "IF"TITLE = 'IF Statement'//IF ... THEN ... ELSE ... END_IFVAR_INPUTStart : BOOL;Manual : BOOL;ActVal : INT;END_VARVARManual_FM : BOOL;over : BOOL;under : BOOL;equal_to : BOOL;Setpoint_man : INT := 1000;Setpoint : INT;Deviation : INT;y_index : INT := 12;Total : INT;END_VARVAR_TEMP i : INT; END_VARBEGIN//Simple IF branchIF Start THEN Setpoint := 1200; END_IF; IF Manual THENSetpoint := Setpoint_man;Q4.0 := TRUE;END_IF;//Branch with THEN...ELSEIF ActVal > SetpointTHEN Deviation := ActVal - Setpoint;ELSE Deviation := Setpoint - ActVal; END_IF;//Branch with ELSIFIF ActVal > SetpointTHEN over := TRUE;under := FALSE;equal_to := FALSE;ELSIF ActVal < SetpointTHEN under := TRUE;over := FALSE;equal_to := FALSE;ELSE equal_to := TRUE;over := FALSE;under := FALSE;END_IF;//Edge evalaution (rising edge)IF Manual AND NOT Manual_FMTHEN (*rising edge*);END_IF;Manual_FM := Manual; //Correct edge memory bit//Counting bits set to "1"Total := 0;FOR i:=1 TO 32 DOIF M[y_index,i] = TRUETHEN Total := Total + 1;END_IF;END_FOR;END_FUNCTION_BLOCK第二章CASE:创建多路分支说明:使用“创建多路分支”指令,可以根据数字表达式的值执行多个指令序列中的一个。
S7-300 S7-400语句表(STL)编程手册151-200

10.7 调用功能格式CALL FC n 注意如果使用的是语句表编辑器(STL Editor),“n”必须指向现有有效块。
在使用之前,还必须定义符号名。
说明使用该指令,可调用功能(FC)。
调用指令能够调用你作为地址输入的功能(FC),与 RLO 或其它条件无关。
在处理完被调用块后,调用块程序继续处理。
逻辑块的地址可以绝对指定,也可相对指定。
传送参数(增量编辑方式)调用块可通过一个变量表与被调用的块交换参数。
当你输入一个有效的调用语句时,语句表程序中的变量表可自动扩展。
如果调用一个功能,并且调用块的变量声明表中有 IN、OUT 和 IN_OUT 声明,则这些变量作为一个形式参数表被添加到用于调用块的程序中。
在调用功能时,必须在调用逻辑块中为声明的形式参数赋值实际参数。
IN 参数可作为常数、绝对地址或符号地址定义。
OUT 和 IN_OUT 参数必须作为绝对地址或符号地址定义。
必须保证所有地址和常数与要传送的数据类型相符。
调用指令可将返回地址(选择符和相对地址)、两个当前数据块的选择符以及 MA位保存在B(块)堆栈中。
除此之外,调用指令还可去活 MCR 的相关性,然后生成被调用块的本地数据范围。
状态字BR CC 1 CC 0 OV OS OR STA RLO /FC 写:- - - - 0 0 1 - 0例如:为 FC6 调用赋值参数CALL FC6 形式参数NO OF TOOL TIME OUT FOUND ERROR 实际参数:= MW100 := MW110 := Q0.1:= Q100.0 10.8 调用系统功能块格式CALL SFB n1,DB n2 说明使用该指令,可调用由西门子公司提供的标准功能块(SFB)。
调用指令能够调用你作为地址输入的系统功能块(SFB),与 RLO 或其它条件无关。
如果使用调用指令调用一个系统功能块,必须为它提供一个背景数据块。
在处理完被调用块后,调用块程序继续处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
英文助记符德文助记符程序元素分类说明
---| |--- ---| |--- 位逻辑指令常开接点(地址)
---|/|--- ---|/|--- 位逻辑指令常闭接点(地址)
---( ) ---( ) 位逻辑指令输出线圈
---(#)--- ---(#)--- 位逻辑指令中间输出
==0 ---| |--- ==0 ---| |--- 状态位指令结果位等于“0”
>0 ---| |--- >0 ---| |--- 状态位指令结果位大于“0”
>=0 ---| |--- >=0 ---| |--- 状态位指令结果位大于等于“0”<=0 ---| |--- <=0 ---| |--- 状态位指令结果位小于等于“0”
<0 ---| |--- <0 ---| |--- 状态位指令结果位小于“0”
<>0 ---| |--- <>0 ---| |--- 状态位指令结果位不等于“0”ABS ABS 浮点算术运算指令浮点数绝对值运算
ACOS ACOS 浮点算术运算指令浮点数反余弦运算
ADD_DI ADD_DI 整数算术运算指令双整数加法
ADD_I ADD_I 整数算术运算指令整数加法
ADD_R ADD_R 浮点算术运算指令实数加法
ASIN ASIN 浮点算术运算指令浮点数反正弦运算
ATAN ATAN 浮点算术运算指令浮点数反正切运算
BCD_DI BCD_DI 转换指令BCD 码转换为双整数
BCD_I BCD_I 转换指令BCD 码转换为整数
BR ---| |--- BIE ---| |--- 状态位指令异常位二进制结果
----(CALL) ----(CALL) 程序控制指令从线圈调用FC/SFC(无参
数)
CALL_FB CALL_FB 程序控制指令从方块调用FB
CALL_FC CALL_FC 程序控制指令从方块调用FC
CALL_SFB CALL_SFB 程序控制指令从方块调用SFB
CALL_SFC CALL_SFC 程序控制指令从方块调用SFC
----(CD) ----(ZR) 计数器指令减计数器线圈
CEIL CEIL 转换指令上取整
CMP >=D CMP >=D 比较指令双整数比较(==,<>,>,<,>=,<=)
CMP >=I CMP >=I 比较指令整数比较(==,<>,>,<,>=,<=)
CMP >=R CMP >=R 比较指令实数比较(==,<>,>,<,>=,<=)
COS COS 浮点算术运算指令浮点数余弦运算
----(CU) ---( ZV ) 计数器指令加计数器线圈
DI_BCD DI_BCD 转换指令双整数转换为BCD 码
DI_R DI_R 转换指令双整数转换为浮点数
DIV_DI DIV_DI 整数算术运算指令双整数除法
所有梯形逻辑指令一览
A-2
英文助记符德文助记符程序元素分类说明
DIV_I DIV_I 整数算术运算指令整数除法
DIV_R DIV_R 浮点算术运算指令实数除法
EXP EXP 浮点算术运算指令浮点数指数运算
FLOOR FLOOR 转换指令下取整
I_BCD I_BCD 转换指令整数转换为BCD 码
I_DI I_DI 转换指令整数转换为双整数
INV_I INV_I 转换指令整数的二进制反码
INV_DI INV_DI 转换指令双整数的二进制反码
---( JMP ) ---( JMP ) 跳转指令无条件跳转
---( JMP ) ---( JMP ) 跳转指令条件跳转
---( JMPN ) ---( JMPN ) 跳转指令若非则跳转LABEL LABEL 跳转指令标号
LN LN 浮点算术运算指令浮点数自然对数运算
---(MCR>) ---(MCR>) 程序控制指令主控继电器断开---(MCR<) ---(MCR<) 程序控制指令主控继电器接通---(MCRA) ---(MCRA) 程序控制指令主控继电器启动---(MCRD) ---(MCRD) 程序控制指令主控继电器停止MOD_DI MOD_DI 整数算术运算指令回送余数的双整数MOVE MOVE 赋值指令赋值
MUL_DI MUL_DI 整数算术运算指令双整数乘法
MUL_I MUL_I 整数算术运算指令整数乘法
MUL_R MUL_R 浮点算术运算指令实数乘法
---(N)--- ---(N)--- 位逻辑指令RLO 下降沿检测
NEG NEG 位逻辑指令地址下降沿检测
NEG_DI NEG_DI 转换指令双整数的二进制补码
NEG_I NEG_I 转换指令整数的二进制补码
NEG_R NEG_R 转换指令浮点数求反
---|NOT|--- ---|NOT|--- 位逻辑指令信号流反向
---(OPN) ---(OPN) 数据块调用指令打开数据块:DB 或DI OS ---| |--- OS ---| |--- 状态位指令存储溢出异常位
OV ---| |--- OV ---| |--- 状态位指令溢出异常位
---( P )--- ---( P )--- 位逻辑指令RLO 上升沿检测
POS POS 位逻辑指令地址上升沿检测
---( R ) ---( R ) 位逻辑指令线圈复位
---( RET ) ---( RET ) 程序控制指令返回
ROL_DW ROL_DW 移位和循环指令双字左循环
ROL_DW ROL_DW 移位和循环指令双字右循环
ROUND ROUND 转换指令舍入为双整数
RS RS 位逻辑指令复位置位触发器
---( S ) ---( S ) 位逻辑指令线圈置位
---(SAVE) ---(SAVE) 位逻辑指令将RLO 存入BR 存储器
---( SC ) ---( SZ ) 计数器指令设置计数器值
S_CD Z_RUECK 计数器指令减计数器
S_CU Z_VORW 计数器指令加计数器
所有梯形逻辑指令一览
A-3
英文助记符德文助记符程序元素分类说明
S_CUD ZAEHLER 计数器指令加-减计数器
---( SD ) ---( SE ) 定时器指令接通延时定时器线圈
---( SE ) ---( SV ) 定时器指令扩展脉冲定时器线圈
---( SF ) ---( SA ) 定时器指令断开延时定时器线圈
SHL_DW SHL_DW 移位和循环指令双字左移
SHL_W SHL_W 移位和循环指令字左移
SHR_DI SHR_DI 移位和循环指令双整数右移
SHR_DW SHR_DW 移位和循环指令双字右移
SHR_I SHR_I 移位和循环指令整数右移
SHR_W SHR_W 移位和循环指令字右移
SIN SIN 浮点算术运算指令浮点数正弦运算
S_ODT S_EVERZ 定时器指令接通延时S5 定时器
S_ODTS S_SEVERZ 定时器指令保持型接通延时S5 定时器S_OFFDT S_AVERZ 定时器指令断电延时S5 定时器
---( SP ) ---( SI ) 定时器指令脉冲定时器线圈
S_PEXT S_VIMP 定时器指令扩展脉冲S5 定时器
S_PULSE S_IMPULS 定时器指令脉冲S5 定时器
SQR SQR 浮点算术运算指令浮点数平方
SQRT SQRT 浮点算术运算指令浮点数平方根
SR SR 位逻辑指令置位复位触发器
---( SS ) ---( SS ) 定时器指令保持型接通延时定时器线圈SUB_DI SUB_DI 整数算术运算指令双整数减法
SUB_I SUB_I 整数算术运算指令整数减法
SUB_R SUB_R 浮点算术运算指令实数减法
TAN TAN 浮点算术运算指令浮点数正切运算
TRUNC TRUNC 转换指令舍去小数取整为双整数
UO ---| |--- UO ---| |--- 状态位指令无序异常位
WAND_DW WAND_DW 字逻辑指令双字和双字相“与”WAND_W WAND_W 字逻辑指令字和字相“与”
WOR_DW WOR_DW 字逻辑指令双字和双字相“或”WOR_W WOR_W 字逻辑指令字和字相“或”
WXOR_DW WXOR_DW 字逻辑指令双字和双字相“异或”WXOR_W WXOR_W 字逻辑指令字和字相“异或”__。