全国服务热线: 15821971992

西门子一级授权代理商|低压电器总代理商

发布日期 :2023-07-19 17:06发布IP:120.204.170.107编号:11828589
品牌:
西门子
型号:
模块
产地:
德国
分 类
工控系统及装备
单 价
电议
有效期至
长期有效
咨询电话
15821971992
手机
15821971992
Email
2724917714@qq.com
让卖家联系我
详细介绍

怎么用梯形图写积分程序和微分程序

一般在STEP7软件中并没有具体用梯形图表示积分和微分的模型,而是直接调用纯软件PID控制功能块来实现微分积分功能(PID控制)。如STEP7提供了系统功能块(其中S7-400为SFB41、SFB42、SFB43,S7-300plc为FB41、FB42、FB43)实行闭环控制,其中SFB41(CONT_C)用于连续控制,SFB42(CONT_S)用于步进控制,SFB43(PULSEGEN)用于脉冲宽度控制,可以都是系统固化的纯软件控制器,运行过程中循环扫描、计算所需的全部数据存储在分配给FB或SFB的背景数据块中,可以无限次调用。打开一个程序块,在LAD/FBD/STL编辑器中,通过选择左边New Network(新网络)下Library(库)/Standard Library(标准库)/PID Controller(PID控制器),直接插入PID控制器下的FB41、FB42、FB43(与S7-400PLC的SFB41、SFB42、SFB43兼容),而FB58和FB59用于PID温度控制。
如有一台电炉要求炉温在一定范围内,就可以通过在周期性中断组织块OB35中调用PID控制器FB41,当设定电炉温度后,如CPU314C-2DP经过PID运算后由自带模拟量输出模块输出一个电压信号送到控制板,控制板根据电压信号的大小控制电热丝的加热电压的大小。可以通过激活或取消PID控制器FB41中的参数如TI(积分时间输入)和TD(微分时间输入)、CYCLE(采样时间)等使控制器适应过程的需要

西门子S7-200PLC编程软件里面的整数相除功能

话说一个细心的客户询问我“为什么西门子S7-200plc编程软件里面除了有DIV_I指令,还要有DIV指令,它们不都是实现整数相除的功能吗?”。说的有道理,差异在哪儿呢?先来看看两个指令的功能说明:
1. DIV指令是将两个16位的整数相除,得出一个32位的结果,其中包括一个16位的余数(高位)和一个16位的商(低位)。
2. DIV_I指令是将两个16位的整数相除,产生一个16位的商,不保留余数。
哦,看来区别是在结果上面,一起来做个实验看看吧:

其中,VW0是被除数,VW2是除数,VD4的低十六位(即VW6 = 16#000D)是整数相除得到的商(VW6十进制值是13);高十六位(即VW4 = 16#00DC)是整数相除得到的余数(VW4十进制值是220)。

其中,VW0是被除数,VW2是除数,VW10是整数相除得到的商,余数没有保留。
由此,这两个功能块的区别就显而易见了,然后本以为问题到此结束,刚要与客户说再见,但客户接着又抛出了一个问题“S7-300中哪个指令块可以实现S7-200中DIV指令块的功能啊?”,这个,这个。。。。我得查查。然后,搜遍STEP7中整数运算的指令块,没有见到与DIV指令完全相同功能的指令块,但却发现了MOD_DI功能块是可以单独取余数的。那么,接着实验:

其中,MD0为被除数,MD4为除数,MD8为双整数相除得到的余数 ,不保留商。

其中,MD0为被除数,MD4为除数,MD12为双整数相除得到的商,不保留余数。

看来客户想要实现一个指令块既得商,又得余数的功能不得不分步实施啦。虽然说在STEP7的编程中不存在DIV同样功能的指令块,但它的实现更为灵活——将余数与商分开,根据客户的需要单独取之。另外,在S7-200中实现整数取余有一定的局限性,就是DIV指令块只能实现16位的整数相除取余,而STEP 7中的MOD_DI则可以使用32位的双整数直接取余。

通过实验是不是更清楚明了呢?相信您已经牢牢记住了,那么我要给客户回电话去啦



相关分类
推荐产品
信息搜索
 
智能科技新闻
浔之漫智控技术(上海)有限公司
  • 地址:上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 电话:15821971992
  • 邮件:2724917714@qq.com
  • 手机:15821971992
  • 联系人:聂聪
低压电器新闻
低压电器相关搜索