怎么用梯形图写积分程序和微分程序
一般在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温度控制。 |
西门子S7-200PLC编程软件里面的整数相除功能
话说一个细心的客户询问我“为什么西门子S7-200plc编程软件里面除了有DIV_I指令,还要有DIV指令,它们不都是实现整数相除的功能吗?”。说的有道理,差异在哪儿呢?先来看看两个指令的功能说明: 其中,VW0是被除数,VW2是除数,VD4的低十六位(即VW6 = 16#000D)是整数相除得到的商(VW6十进制值是13);高十六位(即VW4 = 16#00DC)是整数相除得到的余数(VW4十进制值是220)。 其中,VW0是被除数,VW2是除数,VW10是整数相除得到的商,余数没有保留。 其中,MD0为被除数,MD4为除数,MD8为双整数相除得到的余数 ,不保留商。 其中,MD0为被除数,MD4为除数,MD12为双整数相除得到的商,不保留余数。 看来客户想要实现一个指令块既得商,又得余数的功能不得不分步实施啦。虽然说在STEP7的编程中不存在DIV同样功能的指令块,但它的实现更为灵活——将余数与商分开,根据客户的需要单独取之。另外,在S7-200中实现整数取余有一定的局限性,就是DIV指令块只能实现16位的整数相除取余,而STEP 7中的MOD_DI则可以使用32位的双整数直接取余。 通过实验是不是更清楚明了呢?相信您已经牢牢记住了,那么我要给客户回电话去啦 |