给大伙能分享的是麻烦问下西门子s7-300plc仿真的量方面的实例,中有了以上几个方面的要点:
1、对变送器参与取值,并进行控制
2、对模数功能块fc105进行动态创建
3、对ai模块接受设置中
4、对ai量程块并且选择
这个实例,现场调试的是一个流量可以调节回路中,流量变送器输出2-2-madc信号到sm331模拟真实然后输入模块,模块将该信号转换成浮点数,后再在程序中内部函数fc105将该值转换成成工程量,我们就也可以监视换算工程中的流量值了。
仿真的量ai采用sm311模块是8x12bit(8通道12位)对应货号是6es7331-7kf02-oabo,在模数被转化上凭借传感器或变送器的,电压或电流木盒的值,到ai模块上并且装换,然后把值传给西门子的cpu进行处理,最终达到可以检测压制传感器的值
命令need对缓冲存储器bfm#17定义变量来确认通道号。bfm#17为16位存储器,第一位b00通道1b01通道2
据你建议选用的模拟量模块来确定程序的编译程序,基本上的框架是减少的,使用to来写入到你模块的缓冲存储器的bfm值,用around来加载模块的bfm值,当前值、通道选择等一些你是需要的参数自己看一下三菱特殊能量模块手册就那样最好。
cpu带一个数字模块,两个模拟真实然后输入模块,顺序怎末排,是先数字量再仿真的量,模块编号模拟量就成为1和2。那个k1代表模块号,k12代表读取模块12号寄存器,d0代表读了必然d0数据区,k1代表读取一个数据,12号寄存器里面是什么内容你必须查找手册,cup数字模块特殊模块那是这顺序。三菱的特殊的方法模块有特殊能量的号,前面加多少数字全是差不多。模块4-20ma是模块的输入输入标准,况且对应什么数字要换算查找编程手册你会更所了解。手册上有详细说明和样例程序。
首先,你要的plc中去设置要的量程,和随机的分辨率:
1、如果没有你使用内建的ad然后输入,那么随机的仿真的量输入地址那是:200ch~203ch
比如要是在用ad0的话,随机的仿真的量然后输入值就保存在200ch中。
2、假如你在用扩大的仿真的量输入模块,或者cpm1a-ad041,那就必须首先将模块修改参数写入文件模块的输出地址中,然后把从模块的输入地址读取数据测量值。
接着,也可以按照cp1h内带的scl指令参与然后输入线性化。
不需要将可以转换前后的值d100~d103:
d100:转换后的a点值(bcd码),只不过装换后对应0吨,所以我这里设为0
d101:转换的前的a点值,一样的设为0
d102:转换的后的b点值(bcd码),是因为你要对应10吨,所以我这里设为10
d103:转换前的b点值,因为20ma按于模拟量的输入输入值6000(如果前面修改的时候中,选择12000,请这里值改12000)
全局函数scl指令,将通道200的模拟量采集值经scl指令转换成为0~10吨的bcd码
如果你要提高精度,是可以使用功能块来选项卡一个scl指令,这样的话你这个可以在功能块中在用st语言方便的输入线性转换公式。
接着在主程序中调用:
但是而cp1h不支持真接再输入浮点数常量,但你也可以真接在内存里对浮点数据接受键入的或编程内部函数flt指令来接受转换成。
最后,如果没有仅是为了会显示给用户看工程量的话,那么许多上位机除开触摸屏都有吧线性可以转换的功能,你也可以就在上位机里做,最大限度地省些了plc中的编程。