西门子S7-300模拟量之FC
一、导读
在PLC中除了基本逻辑的编程,模拟量的应用也是非常广泛的。比如采集现场设备的温度、压力、流量、速度等都可以使用模拟量编程的方式。而在现场的设备又有可能有大量的传感器,这就对我们编程人员来说是一个重复性劳动。而S7-300的FC块中就能为我们减少这种数据量比较大而带来的重复性劳动。
二、控制要求:
1.使用温度传感器读取室内温度,当室内温度超过30℃报警指示灯以1HZ的频率闪烁。
2.当室内温度低于5℃时,电机停止运行
3.使用温度传感器读取室外温度值。
通常我们会使用FC块或者FB块编程,然后在OB1块去调用FC或者FB块。而FC和FB块的编程方式都有带参数(图1)和不带参数(图2)的编程方法。
▲图1
▲图2
三、程序编写:
1)硬件组态
2)定义FC块参数接口,分别为AI_input、Osh、Osl等
3)根据公式进行编写程序:[(Osh-Osl)*(AI_Input-Lsl)]/ (Lsh-Lsl)+ Osl
4)在主程序OB1中调用三次FC1程序块:填入AI通道地址、Osh工程高值(查看传感器量程上限)、Osl工程低值(查看传感器量程下限)、Lsh数字量高值(10V电压对应27848)、Lsh数字量低值(0V电压对应0)
四、结束语:
当我们需要对某个设备重复编程时,可以使用FC块进行编程。但是使用FC时,要使用带参数的子程序,这样我们就可以实现多次调用,而调用时只需要填写相应的参数即可。