欢迎来到天天文库
浏览记录
ID:23936594
大小:25.00 KB
页数:4页
时间:2018-11-11
《调用fb41 无值输出》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、调用FB41无值输出 问题有点多耐心看一下: 我的思路是在OB35里面调用FB1: CALL”调用PID”,”FB1背景块” COM_RST:=M2.0 CYCLE:=T#200MS 在FB1里面调用FB41(PID)背景块为DB41实参的值我在共享数据块DB2里面给定的(有图的)时间是200毫秒没错的我设定好了。怎么会没有输出值呢,帮个忙看一下,还有就是PID调节面板有没有说明的,麻烦发个链接,看一下。我的PID面板的参数有没有错误的。 问题补充: 刚刚试了一下好了,是输入的PID参数不能为0,我把DB2.DBD10DB2.DBD14DB2.DB
2、D18DB2.DBD22给删了,假如我想用这些DB2.DBD10DB2.DBD14DB2.DBD18DB2.DBD22赋值的话应该怎么做呢,还有就是还有就是PID调节面板有没有说明的。 图片说明: 1,PID调节 2,FB41 3,FB4值 最佳答案 我个人感觉你的设计比较复杂,你可以直接在周期性中断OB35中调用PID控制块FB41,然后在CYCLE参数中输入采用时间就可以了,当然你也可以在自动生成的背景数据块如DB1,其变量与对应的FB41的变量声明表中的变量一一对应,可以在数据显示方
3、式下修改实际值,即可以“ActualValue”(实际值)中进行修改参数值,也可以通过对应的FB41的变量声明表来修改,操作比较简单,没有必要使用共享数据块,实际工作中也没有这样做,方法如下: FB41“CONT_C”用于连续控制,它是系统固化的纯软件PID控制器,运行过程中循环扫描、计算所需的全部数据存储在分配给FB41的背景数据块里,所以可以无限次调用。在SIMAITC管理器中,依次展开你的项目到Blocks(块),选择菜单Insert(插入)/S7Block(S7块)/OrganizationBlock(组织块),插入OB35; 双击打开OB35,依次展开左
4、边Libraries(库)/StandardLibrary(标准库)/PIDControlBlocks(PID控制块),双击下面的FB41“CONT_C”ICONT,就在OB35下插入一个FB41,在调用块“CONT_C”上面“???”填写背景数据如DB1,就会出现下面对话框: LAD/STL/FBD TheinstancedatablockDB1doesn’texist,Doyouwanttogenerateit?(背景数据块DB1不存在,你是否要产生它?“,点击”Yes“,就自动建立一个背景数据块DB1, 这里有几个问题必须明确: FB41中参数PV_IN
5、(浮点格式过程变量输入)必须是实数,一般通过在OB1中调用规范化块FC105把整形值转换为以工程单位表示的介于下限和上限之间的实型值(即浮点格式)给DB1.DBD10,直接提供给参数PV_IN; 同时在OB1中,将FB41参数LMN_PER(I/O格式的PID输出值)通过赋值指令MOVE经PID输出值经过D/A转换后送出如到PQW3; 需要在OB100中重启PID,程序结构如下: Network1 SDB1.DBX0.0//重启PID Network2 RDB1.DBX0.0 参考下列链接《用Step7中SFB41/FB41、SFB42/FB42、SFB
6、43/FB43实现PID控制》 http://www.ad.siemens.com.cn/download/Html/download.aspx?DownloadID=1231&TreeID=8&URL=/Download/Upload/AS/application/A0018.pdf
此文档下载收益归作者所有