西门子200Smart 新手教程
最近正好接触西门子200smart PLC,有个小工程实例,包含ABB ACS510变频器的通讯,Smart 700 V3触摸屏画面设计,PID和Modbus软件设计。
1. 变频器参数设置
ACS510参数设置:
9802=1 -----------选择Modbus 5302=3 -----------从站地址 5303=9600 --------波特率
5304=0 ------------校验方式8n1 1102=0 ------------外部控制1
1103=8 ------------给定1来自通讯
1105=200 ----------0-20000对于0-200HZ,程序中最大5000对于50Hz(这里需要结合程序设置)
下图为手册中给出的Modbus读取各参数地址:
由于此项目中外部电路控制启停,频率是在HMI输入,因此参数只要如上设置,无需靠通讯来启停变频器。
1
2. HMI界面
Smart 700 V3触摸屏界面如下:
HMI设计此处不做介绍,本文主要介绍变频器通讯以及程序设计。
2
3. PLC设计
PLC使用的是SR20,硬件设置如下:
通信设置
断电保存数据设置
模拟量设置,只能0-20mA, 4-20mA需要程序里处理 3
基本硬件设计如上,接下来是软件设计,由于需要PID控制,我们可以通过向导生成PID功能块,如下:
1. 设置一个Loop
2. PID参数
3. 这里是4-20mA的传感器,
因此过程变量是
5530~278,对应输出(此
处项目是-4~4kpa的风压)
4
4. 这里输出设置0-5000就是由于之前变频器那边设置的5000对应最大输出50Hz,因此此处最大需要设置为5000
5. 存储器分配选择建议就行
生成的PID功能块,可以自动调节或者手动输入频率
5
模拟量转换功能块如下:
功能块代码如下:
6
最后,介绍和变频器的Modbus通讯:
Modbus RTU主站初始化
开始Modbus第一个通讯
根据变频器地址读取数据,并写入VB10开始的5个字中 读取完成后开始下一个通讯
7
8
给定数据,RW=1 一个循环后,重新开始读取数据 当然,通讯也可以采用时间轮回,不通过Done信号触发,比如第1秒读地址1,下一秒读地址2,依次循环,不用管Done。
9