位置闭环控制

大家好!
         我想用S7-300PLC的FB41作一个位置闭环,要求到设定位置就以零速度停止运行。我使用绝对编码器实时反馈液压马达的运行位置,S7-300PLC通过总线给比例阀放大器命令值,控制比例阀的开口度,从而控制液压马达运动速度,精度在5mm以内即可,但要求零距离(到目标距离)以零速度将马达停下来。我想用FB41来做,但不知道如何做PID控制,FB41是模拟量PID控制,我的所有数值都是通过总线得到或发出的纯数据值,能不能使用FB41?如何使用FB41?或采用别的控制方式。请有做过相关项目的提供意见。
        第一次做这样的控制,没有相关经验,PID以前没有用过,请大家给我建议或方案!!谢谢!!

最佳答案

用Step7中SFB41/FB 41、SFB42/FB42、SFB43/FB43实现PID控制
http://www.ad.siemens.com.cn/download/docMessage.aspx?ID=1231&loginID=&srno=&sendtime=
具体做法:S7300 PLC通过OB35调用FB41功能块实现PID控制,步骤为: 
建立OB35组织块,插入PID控制功能块FB41(从插入选项中,点击标准库,在里面选PID控制里面的FB41——之前我就是因为没用过标准库,在网上看到插入FB41,我就自己建了一个FB41,结果什么也没有,当然没有参数设置了。——插入时,会要求你填写一个DB块的名称,我输入DB20,然后系统会自动给出一个梯形图的块,同时产生一个DB20数据块,里面的参数具体的含义,我这里把用到的给注释了一下,还有很多没用到的参数,你如果要弄清楚的话,网上有很多,就不说了哈)
对其参数进行设置。大多数参数采用系统默认值,配置程序如下: (前面几句赋值,是我把它转化为语句表时,它自动生成的,你自己试一下就晓得了)
A M 300.0 
= L 20.0 
BLD 103 
A M 300.1 
= L 20.1 
BLD 103 

CALL "CONT_C" , DB20 
COM_RST :=L20.0 //重新启动PID,在OB100中对M300.0置位 
MAN_ON :=L20.1 //手动与自动切换,当MD300.1为1时是手动 
PVPER_ON:= //默认为0,设为1时表示反馈量不经规格化处理直接采用 
P_SEL := //比例选择,默认为on,表示选择P有效 
I_SEL := //积分选择,默认为on,表示选择I有效 
D_SEL := //微分选择,默认为off,表示选择P无效 
CYCLE :=T#200MS //PID采样周期 
SP_INT :=MD306 //设定压差,通过触摸屏设置 
PV_IN :=MD310 //反馈值,经PLC程序规格化后给MD310 
PV_PER := //未经规格化的反馈值 
MAN :=MD320 //手动状态下的输入值,由触摸屏输入 
GAIN :=MD324 //比例增益,由触摸屏输入 
TI :=MD328 //积分时间,由触摸屏输入 
DEADB_W :=MD340 //死区宽度,默认值为0,调整时由触摸屏输入 
LMN :=MD350 //PID输出 
…… //其它参数均采用系统默认 
NOP 0 
由于反馈值和输出值都是0-100%之间的实数,所以要将其规格化:输入时,变量*100/27648,赋值给PV-IN和SP-INT,输出时,LMN*27648/100,取整。

提问者对于答案的评价:
回答不错

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc246587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月2日 上午1:13
下一篇 2018年12月2日 上午1:13

相关推荐

  • FM458故障原因

    FM458-1DP stop灯一直闪烁是什么意思?而且busf的红灯闪烁,这个可能是DP的问题?有人碰到过同样的问题吗? 最佳答案 现在STEP7硬件组态里面,在线查看各…

    自动化系统综合 2017年8月16日
  • 如何设置wincc密码

    做的wincc项目文件,我只希望别人用来读取数据,而不想让别人改参数,画面属性之类的东西。求大神介绍该怎么做呢? 最佳答案 首先在左边导航栏的用户管理中建立新的组和用户,添加用户名…

    自动化系统综合 2020年10月31日
  • step7安全模块和仿真都装不了

    本人安装了step7v5.5中文版的,但是想要安装PLCSIM和安全模块都安装不了,重装系统也不行,求各位有经验的大神指导安装!!!万分感谢 问题补充:安全模块提示有东西没有安装 …

    自动化系统综合 2017年6月13日
  • S7 200变频器问题

    我想通过PLC对变频器进行调节,但是不知道这个变频器与变频器的工作情况,程序不知怎么写哪位可以给个思路 最佳答案 可以采用USS协议通讯实现。 可以通过模拟量控制实现。&…

    自动化系统综合 2020年11月1日
  • 需要siemens-firmenmarke字体

    打开一个PDF文件,提示需要siemens-firmenmarke字体,选择忽略后,字体模糊且有的文字为黑色,请问怎么办? 最佳答案 发个字体邮件给楼主,拷贝到windows\fo…

    自动化系统综合 2020年11月1日
  • 西门子PLC官方Eplan宏下载

    大家好!求西门子PLC官方Eplan宏下载地址,非常感谢! 最佳答案 http://www.ad.siemens.com.cn/service/answer/solution.as…

    自动化系统综合 2017年6月5日
  • 远程连接OPC 服务器(OPC Scout 或KEPServerEx)

    我想用C#写一个OPC客户端程序(一台电脑),连接远程的OPC服务器(另一台电脑)。但是连接不上OPC服务器。且两台电脑能相互ping通。如果OPC客户端和OPC服务器在同一台电脑…

    自动化系统综合 2017年6月27日
  • 廖常初的《西门子人机界面(触摸屏)组态与应用技术》有没有电子版的??

    廖常初的《西门子人机界面(触摸屏)组态与应用技术》有没有电子版的?? 最佳答案 中国工控网有不少的西门子组态软件手册及资料下载,建议你去找找合适的:网址为http://www.go…

    自动化系统综合 2020年11月1日
  • PLC中的伺服编程

    请问:在300中我要用伺服系统定位,但是一直找不到对伺服的编程方式,请高手们指教下怎么对伺服编程?我要用控制定位,请讲详细些 最佳答案 初次使用建议用FM353控制伺服电机,相对简…

    自动化系统综合 2020年11月1日
  • 同步电机

    同步电机转速n决定于电源频率f,故电源频率一定时,转速不变,且与负载无关。同步电机比异步电机的优点是什么?比异步电机更适合用作伺服电机? 最佳答案 1.同步电机启动需要励磁装置,异…

    自动化系统综合 2018年3月6日