S7-200 PLC通过自由通讯口方式与丹佛斯变频器通讯
西门子S7-200系列PLC与调速装置的通讯及调速控制的实现 2
![西门子S7-200系列PLC与调速装置的通讯及调速控制的实现 2](https://img.taocdn.com/s3/m/41799232482fb4daa58d4b31.png)
摘要随着自动化控制理论、工业控制网络和计算机、通信网络技术等的飞速发展,在工业场合中,PLC技术应用广泛。
在电机控制方面,通常使用变频器达到调节电机速度的目的。
本文首先对本文设计的系统的主要技术进行了简单介绍,主要包括PLC技术和变频调速技术。
并且针对PLC的I/O口的规模对PLC进行了分类。
同时本文分别就PLC 技术和变频调速技术进行详细的阐述。
并且就本系统使用的S7-200PLC系类PLC进行了详细的分析。
同时本文针对系统的需求和PLC技术的特点设计了一个完整的调速系统,并且测试了器通讯,对调速控制进行了实现。
关键词PLC技术;变频调速;通信技术;目录摘要 (I)第1章引言 (1)1.1 PLC技术 (1)1.1.1 PLC简介 (1)1.1.1 PLC分类 (1)1.2 变频调速技术 (1)第2章西门子S7-200系列PLC技术与应用 (2)2.1 PLC的工作原理与功能特点 (2)2.1.1 PLC的工作原理 (2)2.1.2 PLC的功能特点 (3)2.2 SIEMENS S7-200 PLC (3)2.2.1 西门子S7-200 PLC 的功能概述 (3)2.2.2 西门子S7-200 PLC 的工作模式 (3)2.2.3S7-200 PLC 网络的通信协议 (4)第3章变频调速技术与应用 (7)3.1变频器的原理与容量计算 (7)3.1.1 变频器的原理 (7)3.1.2 变频器的容量计算 (9)3.2 变频调速原理 (10)第4章系统设计 (12)4.1系统硬件设计 (12)4.2系统软件设计 (14)4.2.1变频调速驱动设置 (14)4.2.2PLC 控制变频器的程序设计 (14)参考文献 (18)致谢 (19)第1章引言1.1 PLC技术1.1.1 PLC简介PLC英文全名为Programable Controller,即可编程控制器,包括逻辑运算、顺序控制、时序、计数以及算术运算等程序。
S7_200PLC与Danfoss变频器自由口通信的实现_孙晓明
![S7_200PLC与Danfoss变频器自由口通信的实现_孙晓明](https://img.taocdn.com/s3/m/19b2771ca21614791711289f.png)
第31卷 第4期2009年8月武汉理工大学学报 信息与管理工程版J OURNAL OF WUT (I N FORM AT I ON &MANAGE M ENT E NG I NEER I NG )V o.l 31N o .4A ug.2009文章编号:1007-144X (2009)04-0521-04文献标志码:AS7-200PLC 与Danfoss 变频器自由口通信的实现孙晓明,敖 非(武汉理工大学自动化学院,湖北武汉430070)摘 要:在超细粉气流磨生产线现场,为了实现PLC 对两台变频器实施监控,需先解决小型系统中PLC 与变频器之间的通信可靠问题。
研究了西门子S7-200PLC 和D anfoss VLT 2900变频器之间的通信关系,依据D anfoss V LT 2900变频器的FC 通信协议,选择S7-200PLC 的自由口工作模式,编写通信程序,气流磨生产线现场运行的结果表明,S7-200PLC 与D anfoss VLT 2900变频器的自由口通信稳定可靠,达到了对两台D anfoss VLT 2900变频器工作状态进行实时监控的目的。
关键词:D an f o ss FC 协议;自由口通信;可编程控制器;变频器中图分类号:TP393.04DO I :10.3963/.j issn .1007-144X.2009.04.001收稿日期:2009-01-28.作者简介:孙晓明(1956-),男,山东龙口人,武汉理工大学自动化学院副教授.基金项目:国家863计划重大项目基金资助项目(2006AA11A133).PLC 和变频器在当今工控中应用越来越广泛,在传统的PLC -变频控制集成系统中,变频器的启动/停止和故障监控由PLC 通过开关量实现端对端控制。
变频器频率是由PLC 通过模拟量输出端口输出0~5(10)V 或4~20mA 信号控制,需要PLC 配置昂贵的模拟量输出端口模块。
丹佛斯通讯
![丹佛斯通讯](https://img.taocdn.com/s3/m/19d823c98bd63186bcebbc2c.png)
LD SM0.0 MOVB 1, VB503 MOVD *VD552, VD504
∥ ∥给出初始站址 ∥装入发送数据
LD SM0.0 MOVD &VB500, VD540 MOVB 0, AC1
∥计算 BCC 位 ∥设置指针 ∥清理运算器
LD SM0.0 FOR VW582, +1, +7 XORW *VD540, AC1 INCD VD540
发送缓冲区
VB500 VB501 VB502 VB503 VB504 VB505 VB506 VB507 VB508
发送长度 起始字节 报文长度 目地地址 控制字高 控制字低 参考值高 参考值低 BCC 码
接收缓冲区
VB520 VB521 VB522 VB523 VB524 VB525 VB526 VB527 VB528
∥ ∥关中断 ∥如果报头错 ∥或格式错 ∥或来电地址错 ∥则转至重发程序 ∥ ∥
LD SM0.0 MOVD &VB520, VD544 MOVB 0, AC1
∥否则计算 BCC 位 ∥ ∥
LD SM0.0
∥
FOR VW584, +1, +7
∥
XORW *VD544, AC1
∥
INCD VD544
∥
NEXT
CN0313.114
VLT 为 Danfoss 公司的注册标志
1
本例中,采用所有 FANFOSS 变频器内置的 FC 协议(短格式).S7—200 作为 RS485 总线网的主站(Master)控制网络,VLT2800 作为通信从站(Slave)响应 主站的指令。主站可通过读取输入寄取器来了解从站的工作状态。由于本例主要 提供两个产品间的通信手段,所以只象征性的通过一个输入点控制 3 个从站的启 动(运行频率 25Hz),复杂控制及长格式的具体应用可由程序员在实际工作中自 由发挥。
plc200与dcs Modbus 通讯
![plc200与dcs Modbus 通讯](https://img.taocdn.com/s3/m/1ddc5609f18583d048645906.png)
说明: 用下面的例程你可以在 S7-200 CPU 之间建立一个简单的 Modbus 主-从通讯。
这个例子是关于 Modbus 功能码 6 的(写从站保持寄存器) , 也可以作为其他所支持的功能码 的基本参数设置步骤:1, 2, 3, 4, 5, 15 和 16 。
要求: 要使用 Modbus 协议必须先获得并在 STEP 7 Micro/Win 中安装指令库 (条目 17470979)。
Modbus 主站协议只被 STEP 7 Micro/Win V4.0 SP5 及其以上版本支持。
1. 硬件设置 2. 参数匹配 3. 指令库的存储地址 4. 保持寄存器变量传输1. 硬件设置 例程中的 Modbus 通讯是在两个 S7-200 CPU 的 0 号通讯口间进行的(最好每个 CPU 都有 两个通讯口)。
在主站侧也可以用相应库文件 "MBUS_CTRL_P1" 和 "MBUS_MSG_P1"通过 1 号通讯口通信。
通讯口 1 用 Micro/WIN 与 PG 或 PC 建立连接,两个 CPU 的通讯口 0 通 过 Profibus 缆进行连接(电缆的针脚 连接为 3,3,8,8 -> 见图 01)。
另外,需要确定逻 辑地 M 相连 。
图. 01 2. 参数匹配 对于 MODBUS 通讯,主站侧需要程序库 "MBUS_CTRL" 和 "MBUS_MSG",从站侧需要程 序库 "MBUS_INIT" and "MBUS_SLAVE"。
在 Micro/WIN 中您需要为主站和从站新建一个项目,程序与参数设置见图.02。
必须要保证主站与从站的“Baud”和 “Parity” 的参数设置要一致,并且程序块 "MBUS_MSG" 中 的 "Slave" 地址要与程序块 "MBUS_INIT" 中的 "Addr" 所设置的一致 (见图. 02)。
S7_200PLC与PC自由口通讯的多种实现方法
![S7_200PLC与PC自由口通讯的多种实现方法](https://img.taocdn.com/s3/m/7f20ede27e21af45b307a8f7.png)
S7-200PLC与PC自由口通讯的多种实现方法1 引言西门子S7-200PLC是德国西门子公司生产小型PLC。
S7-200以其高可靠性、指令丰富、内置功能丰富、强劲通讯能力、较高性价比等特点,工业控制领域中被广泛应用。
S7-200PLC突出特点之一是自由口通讯功能。
如何实现S7-200PLC与个人计算机互联通信,是S7-200PLC应用技术关键。
可编程控制器与计算机之间通讯一般是RS-422口或RS-232C口进行,信息交换方式为字符串方式,运用RS-232C或RS-422通道,容易配置一个与计算机进行通信系统,将所有软元件数据和状态用可编程控制器送入计算机,由计算机采集这些数据,进行分析及运行状态监测。
用计算机改变可编程控制器设备初始值和设定值,实现计算机与可编程控制器直接控制,一旦确定了可编程控制器控制指令,就能很方便与计算机连接。
2 S7-200自由口通讯模式S7-200支持多种通讯模式,如点点接口(PPI)、多点接口(MPI)、Rrofibus DP等。
PPI等通讯协议主要用于西门子系列产品之间通讯以及对PLC编程。
自由口模式下,可由用户控制串行通讯接口,实现用户自定义通讯协议。
用户可以用梯形图程序调用接收中断、发送中断、发送指令(XMT)、接受指令(RCV)来控制通信操作。
自由口模式下,通信协议完全由梯形图程序控制。
S7-200CPU上通信口是与RS-485兼容9针D型连接器,PLC还提供了实现RS-485与PC机上RS-232C相连接PC/PPI电缆,利用它可以方便实现S7-200系列PLC与PC之间硬件连接。
S7-200编程软件为STEP7-Micro/WIN32,该软件有STL、FBD和Ladder三种编程模式,有SIMATIC指令和IEC131-3指令两种指令。
本文所给出范例是使用SIMATIC指令STL编程。
3 S7-200 PLC端通讯程序实现PLC程序分为主程序和中断程序。
S7-200PLC与三菱FX系列PLC的自由口通信
![S7-200PLC与三菱FX系列PLC的自由口通信](https://img.taocdn.com/s3/m/2aa9911a6c175f0e7cd1372a.png)
图 2 CPU 接线图
3.1 CPU 226CN 的 PORT0 口 可 以 进 行 自 由 口 通 信 , 其 9 针 的 接 头
中 ,1 号 管 脚 接 地 ,3 号 管 脚 为 RXD+/TXD+ 公 用 ,8 号 管 脚 为 RXD-/
TXD- 公 用 。
Байду номын сангаас
3.2 FX2N-32MR 的编程口不能进行自由口通信,可以配置一块能够
SDB 和 RDB 短接。
3.3 自 由 口 通 信 的 通 信 线 缆 一 定 要 使 用 屏 蔽 双 绞 线 , 最 好 使 用
PROFIBUS 网络电缆。 RS485-BD 侧的屏蔽线要接地。
3.4 通信程序
1)CPU 226CN 程序
//主程序 OB1
LD SM0.7
EU
O SM0.1
MOVB 16#09,SMB30 //选 定 端 口 0 为 自 由 口 , 波 特 率 选 择
S7-200CPU 使用 SMB30 对于 PORT0 定义通信口的工作模式,控 制字节的定义如图 1:
图 1 控制字节定义
如 图 1 示 :通 信 模 式 由 控 制 字 的 最 低 两 位 “m m”决 定 ,自 由 口 模 式令 m m=01;奇偶校验选择由控制位“p p”决定;控制位的“d”是每个 字符的位数;控制位的“b b b”是波特率选择,自由口 通 信 的 波 特 率 可 设置为 1200、2400、4800、9600、19200、38400、57600 和 115200。
自 由 口 通 信 的 核 心 是 发 送 (XMT) 和 接 收 (RCV) 两 条 指 令 , 以 及 相 应的特殊寄存器控制。 发送指令(XMT)启动自由端口模式下数据缓冲 区(TBL)的数据发送。 通过指定的通信端口发送存储在数据缓冲区中 的信息。 最多可以发送 255 个字符,发送结束时可以产生中断事件,对 于 PORT0 口为中断事件 9。接收指令(RCV)初始化或中止接收信息的 服务,最多可以接收 255 个字符。 通过指定的通信端口接收的信息存 储在数据缓冲区(TBL)中,接收完成后会产生中断事件对于 PORT0 口 为中断事件 23。 由于 S7-200CPU 通信端口是 RS-485 半双工通信口, 因此发送和接收不能同时处于激活状态。
S7-200通过自由口连接MODBUS设备
![S7-200通过自由口连接MODBUS设备](https://img.taocdn.com/s3/m/9c375618a76e58fafab003d0.png)
S7-200通过自由口MODBUS连接接线方法如下西门子在 Micro/WIN V4.0 SP5 中正式推出 Modbus RTU 主站协议库(西门子标准库指令)。
图 1. 西门子标准指令库(Micro/WIN V4.0 SP5)注意:1. Modbus RTU 主站指令库的功能是通过在用户程序中调用预先编好的程序功能块实现的,该库对Port 0 和Port 1 有效。
该指令库将设置通信口工作在自由口模式下。
2. Modbus RTU 主站指令库使用了一些用户中断功能,编其他程序时不能在用户程序中禁止中断。
3. Modbus RTU 主站库对CPU的版本有要求。
CPU 的版本必须为2.00 或者2.01(即订货号为6ES721*-***23-0BA*),1.22版本之前(包括1.22版本)的S7-200 CPU 不支持。
使用 Modbus RTU 主站指令库,可以读写 Modbus RTU 从站的数字量、模拟量 I/O 以及保持寄存器。
要使用 Modbus RTU 主站指令库,须遵循下列步骤:1.安装西门子标准指令库2.按照要求编写用户程序调用 Modubs RTU 主站指令库Modbus RTU 主站功能编程1. 调用 Modbus RTU 主站初始化和控制子程序使用 SM0.0 调用 MBUS_CTRL 完成主站的初始化,并启动其功能控制:图 2. 用 SM0.0 调用 Modbus RTU 主站初始化与控制子程序各参数意义如下:a)EN 使能:必须保证每一扫描周期都被使能(使用SM0.0)b)Mode 模式:为1 时,使能Modbus 协议功能;为0 时恢复为系统PPI协议c)Baud 波特率:支持的通讯波特率为1200,2400,4800,9600,19200,38400,57600,115200。
d)Parity 校验:校验方式选择0=无校验1=奇较验2=偶较验e)Timeout 超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为1000 毫秒(1 秒),允许设置的范围为1 - 32767。
通过西门子200PLC自由口ModbusRTU通讯协议控制丹佛斯FC系列变频器
![通过西门子200PLC自由口ModbusRTU通讯协议控制丹佛斯FC系列变频器](https://img.taocdn.com/s3/m/91e3edc95122aaea998fcc22bcd126fff7055d39.png)
· 问题:问题:· 怎样通过Modbus RTU 控制FC 系列变频器?系列变频器? · 回答:回答:· FC 系列变频器通过内置的RS485接口,以ModbusRTU 格式进行通讯。
参数设置如表 参数号参数号 设置数值设置数值 内容内容 8-30 【2】Modbus RTU 选择协议选择协议8-31 1-247 设置变频器地址,不能重复设置变频器地址,不能重复 8-32 2400-115200 设置波特率,各站速度一致设置波特率,各站速度一致 8-33【0】奇数】奇数奇偶校验,各站设置一致奇偶校验,各站设置一致· 电报结构(十六进制)电报结构(十六进制)·地址字段包含8位数据,有效的地址范围为0-247(十进制),0为广播模式;1-247对相应地址的从站进行寻址。
对相应地址的从站进行寻址。
功能字段包含8位数据,有效地代码范围为1-FF 1-FF,功能字段用于在主站和从站之间,功能字段用于在主站和从站之间发送消息。
当从主站向从站发送时,功能字段为主站的控制字;当从从站向主站传送时,功能字段为从站的状态字。
送时,功能字段为从站的状态字。
由主到从的控制代码由主到从的控制代码代码(十六进制)代码(十六进制) 功能功能 1 读取线圈读取线圈 3 读取保持寄存器读取保持寄存器 5 写入单个线圈写入单个线圈 6 写入单寄存器写入单寄存器 F 写入多个线圈写入多个线圈 10 写入多个寄存器写入多个寄存器 B 获取通讯事件计数器获取通讯事件计数器 11报告从站ID·数据字段,是由几组字节两个十六进制数字(数据字段,是由几组字节两个十六进制数字(0000至FF FF)构成,根据不同的功能代)构成,根据不同的功能代码,数据字段包含的位长、作用不一,针对常用的功能代码,举例如下:码,数据字段包含的位长、作用不一,针对常用的功能代码,举例如下: · 1、功能代码、功能代码=1=1=1,读取线圈状态,读取线圈状态,读取线圈状态 Byte1Byte2Byte3 Byte4 Byte5 Byte6Byte7 Byte8站址站址01位起始地址位起始地址位个数位个数CRC16· 2、功能代码、功能代码、功能代码=5=5=5,写入单个线圈数值,写入单个线圈数值,写入单个线圈数值 Byte1Byte2Byte3Byte4Byte5Byte6Byte7 Byte8站址站址 05 位起始地址位起始地址 位的值位的值 CRC16· 3、功能代码、功能代码、功能代码=F =F =F,写入多个线圈数值,写入多个线圈数值,写入多个线圈数值 Byte1 Byte2 Byte3 Byte4 Byte5 Byte6 Byte7 Byte7+n B8+n B9+n站址站址0F位起始地址位起始地址位的个数位的个数字节数位的值位的值CRC16·线圈及位的意义。
S7-200PLC与三菱FX系列PLC的自由口通信
![S7-200PLC与三菱FX系列PLC的自由口通信](https://img.taocdn.com/s3/m/2aa9911a6c175f0e7cd1372a.png)
图 2 CPU 接线图
3.1 CPU 226CN 的 PORT0 口 可 以 进 行 自 由 口 通 信 , 其 9 针 的 接 头
中 ,1 号 管 脚 接 地 ,3 号 管 脚 为 RXD+/TXD+ 公 用 ,8 号 管 脚 为 RXD-/
TXD- 公 用 。
3.2 FX2N-32MR 的编程口不能进行自由口通信,可以配置一块能够
【关键词】电压互感器;接地;谐振
0 引言
在变电站值班过程中, 遇有恶劣天气会出现接地现象, 警铃响, 10kV 三项电压出现不平衡现象,这时要注意观察是一相电压降低,另 两相升高,还是一相电压降低,另两相电压不变,这是非常重要的判断 依据。
1 电压互感器单相接地故障现象
在县局的 35kV 变电站中,大多变电站建在农村较偏远的地方,多 是由于 10kV 线路上出现接地引起变电站内的信号发生变化, 如果一 相电压降低,其余两相升高,当降低到保护整定值时,继电保护装置动 作,警铃响,信号灯亮,如果电压短时不稳定,一般情况下我们判断为 瞬时间接性接地, 可能是线路上树枝因大风等其他原因挂到线路上, 或者是有东西挂在线路上,但一般都是瞬时的。 如果电压降低到一定 值,长时间不变,则为永久性接地,一般有树枝压线、瓷瓶绝缘击穿,一 相断线接地等。 有关规程规定:在中性点不接地系统中,当系统发生单 相接地故障时,仍可在故障状态下继续运行一段时间。 但不接地系统 发生单相接地故障后,非故障相会产生较高的过电压,影响设备的绝 缘性能和使用寿命,造成的后果是出现更频繁的甚至更严重的故障。 1.1 当中性点不接地系统中发生金属永久性单相接 地 时 , 如 一 相 接 地,则这相电压表指示接近为零,非接地两相的电压表指示接近 10kV, 电压互感器绕组开口三角两端出现几十伏电压(正 常 时 只 有 约 3V),启 动绝缘监察继电器发出接地信号并报警。 1.2 当发生非 金 属 性 短 路 接 地 时,既 高 电 阻 、电 弧 、树 枝 等 单 相 接 地 。 如 A 相 发 生 接 地 ,则 Uan 比 正 常 电 压 要 低 ,其 余 两 相 电 压 Ubn、Ucn 大 于 58V 且小于 100V,电压互感器绕组开口三角处两端电压有几十伏 ,达 到继电器启动值,发出接地信号并报警。 1.3 当 系 统 发 生 单 相 接 地 时 ,容 性 比 感 性 大 ,故 障 点 流 过 电 容 电 流 ,
丹佛斯FC51和西门子200通讯
![丹佛斯FC51和西门子200通讯](https://img.taocdn.com/s3/m/8e707905a6c30c2259019e77.png)
User Manual1丹佛斯变频器(FC51为例)和西门子S7‐200PLC 通讯z 以吹瓶机为例:z 变频器控制达到的目的:1、 上电定时3秒,以广播的方式,把所有的变频器参数(共10个)写到变频器2、 通过1个DI 端子ON/OFF ,实现2段速控制,需要设定变频器2个寄存器(P310.0 ,P310.1) z 确定变频器参数表: 序号 参数号 参数值 说明 变频器中对应的MODIBUS 地址PLC 中对应的MODIBUS 地址字数 * 14-22 2 参数恢复出厂值 * 8-30 2 MODIBUS 协议 *8-311~31通讯地址设置完成后重新上电,通讯协议更改有效 通讯协议:9600,8,1,偶校验,CRC Y=X*10-1 Y=X*10+400001 0-40 0 面板启动禁用 399 40400 WORD2 0-41 2 面板停止禁用409 40410 WORD 3 1-01 0 V/F 1009 41010 WORD 4 3-03 100.000HZ上限频率参考值 3029 43030 DWORD 5 3-15 0 参考值1-无功能 3149 43150 WORD 6 3-16 0 参考值2-无功能 3159 43160 WORD 7 3-17 0 参考值3-无功能3169 43170 WORD 8 3-41 10.00 加速时间 3409 43410 DWORD 9 3-42 10.00 减速时间 3419 43420 DWORD 105-1116多段速-DI05109 45110 WORD 注:拨码开关1、2为ONz 关于变频器通讯协议说明: 1、 例一:把加速时间3‐41参数(地址为3409 16进制 0D51H ),调整为10.00秒(1000 16进制 03E8H )串行调试助手,发送格式如下(是双字写): 01 10 0D 51 00 02 04 03 E8 2、 例二:把0‐41参数改为2 (单字写):地址409‐‐‐199H01 06 01 99 00 023、 例三:把3‐10‐0和3‐10‐1,2个预置值,设为1000(03E8H)和2000(07D0H),(3‐10地址为3099,16进制0C1BH ) 由于是3‐10的二级菜单,先对索引寄存器009寄存器(MODIBUS 对应的寄存器是008)写00或01: 第一步:01 06 00 08 00 00 第二步:01 06 0C 1B 03 E8 第三步:01 06 00 08 00 01 第四步:01 06 0C 1B 07 D0User Manual2关于200PLC 通讯值得注意的地方:1、 选定是P0口还是P1口通讯,更改端口地址,默认是2,2、 设定通讯协议,9600、偶校验,把指令放在主程序,使其一直有效3、 对于读写地址,00001至00128是映射至Q0.0 ‐ Q15.7的离散输出 10001至10128是映射至I0.0 ‐ I15.7的离散输入30001至30032是映射至AIW0至AIW62的模拟输入寄存器 40001至4xxxx 是映射至V 存储器的保持寄存器。
西门子S7200与变频器MODBUS通讯实例详解
![西门子S7200与变频器MODBUS通讯实例详解](https://img.taocdn.com/s3/m/bf795bb631126edb6f1a10f0.png)
西门子S7200与变频器MODBUS通讯实例详解西门子S7200PLC简介西门子S7-200PLC在实时模式下具有速度快,具有通讯功能和较高的生产力的特点。
一致的模块化设计促进了低性能定制产品的创造和可扩展性的解决方案。
来自西门子的S7 - 200微型PLC可以被当作独立的微型PLC解决方案或与其他控制器相结合使用。
Modbus通讯协议简介Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。
其系统结构既包括硬件、亦包括软件。
它可应用于各种数据采集和过程监控。
ModBus网络只有一个主机,所有通信都由他发出。
网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。
采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
1 MODBUS RTU协议在S7-200中的应用原理1.1 MODBUS RTU协议与S7-200相互关系简介S7-200 CPU上的通讯口Port0可以支持MODBUS RTU协议,成为MODBUS RTU 从站。
此功能是通过S7-200的自由口通讯模式实现,因此可以通过无线数据电台等慢速通讯设备传输。
想在S7-200 CPU与其他支持MODBUS RTU的设备使用MODBUS RTU协议通讯,需要由有S7-200 CPU做MODBUS主站。
S7-200 CPU做主站必须由用户自己用自由口模式,按相关协议编程。
2 从站指令的用法:S7-200控制系统应用中,MODBUS RTU从站指令库只支持CPU上的通讯0口(Port0)。
要实现MODBUS RTU通讯,需要Step7-Micro/WIN32 V3.2以上版本的编程软件,而且须安装Step7-Micro/WIN32 V3.2 Instruction Library(指令库)。
变频器与西门子PLC在自由口模式下的串行通信
![变频器与西门子PLC在自由口模式下的串行通信](https://img.taocdn.com/s3/m/9814af02b52acfc789ebc9d0.png)
变频器与西门子PLC在自由口模式下的串行通信之所以我的博客关于通讯的内容多,主要是因为我对PLC和变频器通讯的知识比较少。
现在也只做过西门子S7-226与英威腾变频器的Modbus和自由口的通讯1 引言变频器与plc配套应用是常见的自动化集成系统。
由plc发出启动、停止、运行频率等指令,来控制变频器的运转及频率输出,达到控制生产过程自动化目的。
基于串行通讯的变频器与plc集成技术具有的优点得到广泛的工程重视。
本文介绍三菱变频器f700与西门子plc s7-200在自由口模式下的串行通信,达到plc对变频器的便捷控制。
2 变频器与plc的连接plc s7-200与三菱变频器通信采用rs485接口的串行方式。
s7-200侧为九针接口,三菱变频器为rs485端子,采用二线式连接。
3 通讯系统设计3.1 plc的自由口通信模式s7-200支持自由口通信模式。
自由口模式使s7-200可以与许多通信协议公开的其他设备和控制器进行通信。
波特率为1200~115200 b/s(可调整)。
自由口模式的数据字节格式总是有一个起始位、一个停止位,用户可以选择7位或者8位数据,也可以选择是否有校验位以及是奇校验还是偶校验。
在自由口模式下,通过使用发送中断、接收中断、发送指令(xmt)和接收指令(rcv),为所有通信活动编程。
在自由口模式下,通信协议完全由用户程序控制。
3.2 三菱变频器专用协议在自由口模式下,plc与变频器通信遵循三菱变频器专用协议。
首先,按照变频器通讯规格对变频器参数进行设置(具体参照变频器手册)。
其次通信采用以下步骤:向变频器发送要求数据(变频器不会自动发送数据),经变频器等待时间后,从变频器向plc发送返回数据,等待变频器处理事件后,进行再处理。
plc与变频器通信以ascii码(16进制)进行。
plc对变频器进行运行状态监控、运行频率设置、启动、停止等操作。
这些数据的收发采用不同的数据模式。
如运行频率采用附表所示数据模式。
西门子S7-200PLC如何通过自由口通信控制变频器运行
![西门子S7-200PLC如何通过自由口通信控制变频器运行](https://img.taocdn.com/s3/m/25c375f24bfe04a1b0717fd5360cba1aa8118cff.png)
西门子S7-200PLC如何通过自由口通信控制变频器运行一、S7-200如何通过自由口通信控制西门子变频器的运行1、西门子变频器的通信协议是固定的。
如A、A′格式。
控制电机的启停用A′格式,要改变变频器的运行频率,使用A格式。
2、S7-200PLC根据西门子变频器的通信协议,通过自由口发送数据到变频器中,实现对西门子变频器的正转、反转、停止及修改运行输出频率。
二、西门子变频器通信协议总和校验计算:频率值对应的ASCII码:频率数据内容H0000~H2EE0变成十进制即为0~120Hz,最小单位为0.01Hz。
如现在要表示数据10Hz,即为1000(单位为0.01Hz),1000转换成十六进制为H03E8,再转换成ASCII码为H30H33H45H38。
总和校验代码总和校验代码是由被检验的ASCII码数据的总和(二进制)的最低一个字节(8位)表示的2个ASCII码数字(十六进制)三、S7-200自由口通信1、通信端口控制字节2、发送指令XMT与接收指令RCV说明:(1)发送与接收指令可以方便地发送或接收最多255个字节的数据。
(2)PORT指定发送或接收的端口。
(3)TBL指定发送或接收数据缓冲区,第一个数据指定发送或接收的字节数。
(4)发送完成时可以调用中断,接收完成时也可调用中断.四、项目实现用S7-200PLC自由口通信方式控制西门子变频器,拖动电机正转启动与停止,并能改变变频器的运行频率。
设变频器站号为1.正转启动的代码是:H05H30H31H46H41H31H30H32H38H31停止的代码是:H05H30H31H46H41H31H30H30H37H46把变频器运行输出频率改为20Hz的代码是:H05H30H31H45H44H31H30H30H31H04H42H351、设置变频器参数2、编写PLC自由口通信控制程序总结:1、作自由口通信时,一定要先研究要通讯设备的通信协议和数据格式。
2、作自由口通信时,如果要求PLC既发送数据,又接收数据。
S7-200系列自由口通讯的实现及应用
![S7-200系列自由口通讯的实现及应用](https://img.taocdn.com/s3/m/1559b2fa0029bd64783e2ce6.png)
S7-200系列自由口通讯的实现及应用1 引言为了达到和通讯协议已知的控制设备进行数据交换,以提高自动化控制系统的灵活性,很多plc制造商都相继的开发出了方便、灵活的自由口通讯方式,例如三菱公司的fx2系列plc, omron公司的cjm1系列的plc,西门子公司的s7-200系列plc等都提供了自由口通讯模式。
自由口通讯是指plc提供了串行的通讯硬件,和用于定制通讯协议的相关指令,在控制系统中,当要和plc连接的控制设备的通讯协议已知时,可以在plc中进行编程定制通讯协议,和控制设备进行数据通讯。
本文主要介绍西门子s7-200的自由口和计算机的串口进行的通讯,计算机中采用visual basic进行编程,从而实现计算机与可编程控制器的直接控制。
该通讯方式具有效率高、容易实现、通讯硬件简单、容易配置等特点在工业控制领域中被广泛应用。
2 s7-200通讯指令及特殊字节采用自由口通讯方式时,s7-200上的rs485口完全由用户控制,可以与任何协议已知的设备进行通讯,在这种情况下通讯协议完全由用户制定,为此,s7-200提供了用于进行通讯协议定制的特殊标志位以及相关的通讯指令。
特殊标志字节s7-200用于自由口通讯模式定义的特殊标志字节有smb30和smb130,smb30用于s7-200的端口0的通讯,smb130用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb130为例,介绍其组成。
smb130各位的含义如下:pp:两位用于选择通讯的校验方式当这两位的组合是:00无校验 01 偶校验 10 无校验 11 奇校验d:这一位用于选择通讯的数据位数 d=1时7个数据位,d=0时8个数据位bbb:用于选择自由口通讯是的波特率,这三位的组合和通讯波特率的关系如下:000 ——38400bps001 ——19200bps010 ——9600bps011 ——4800bps100 ——2400bps101 ——1200bps110 —— 600 bps111 —— 300 bpsmm: 用于通讯协议的选择,当这两位的组合是:00 ppi从站模式 01 自由口通讯模式 10 ppi主站模式接收信息的状态字节s7-200在自由口通讯时用于接受信息的状态有smb86和smb186,smb86用于s 7-200的端口0的通讯,smb186用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb186为例,介绍其组成。
S7200与丹佛斯变频器通讯
![S7200与丹佛斯变频器通讯](https://img.taocdn.com/s3/m/729a79eafab069dc51220101.png)
块:MAIN作者:创建时间:2005.08.09 19:44:35 修改时间:2015.06.23 10:04:39符号变量类型数据类型注释L0.0TEMP1TEMP BOOL L0.1TEMP2TEMP BOOL LW1Hz TEMP INT LB3Addr TEMP BYTETEMP通讯电缆(PLC 1口)3-----------SG+8-----------SG-网络标题网络 1网络注解chushihua ENS SM0.1通讯使能位:V1070.21符号地址注释通讯使能位V1070.2网络 2R S tongxun ENRET1CTW RET2REFRET3ADD ERROR S_L R_W PARM DAT通讯使能位:V1070.2通讯使能位:V1070.21通讯状态位:V1070.31动作控制:VW0参考值:VW1074站址:VB2返回速度:VW1082返回状态:VW1084返回参数值:VD1086S_L:V1070.0R_W:V1070.1参数号:VW1076错误状态:VB1072参数值:VD1078符号地址注释R_W V1070.1S_L V1070.0参考值VW1074参数号VW1076参数值VD1078错误状态VB1072动作控制VW0返回参数值VD1086返回速度VW1082返回状态VW1084通讯使能位V1070.2通讯状态位V1070.3站址VB2网络 3ENDSM0.0块:chushihua作者:创建时间:2005.08.11 13:51:16 修改时间:2015.06.23 10:04:39符号变量类型数据类型注释 EN IN BOOL IN IN_OUT OUTTEMP子例行程序注解网络标题网络 1网络注解MOV_BENOENOUT IN ENISM0.016#49SMB130网络 2RETSM0.0块:tongxun作者:创建时间:2005.08.11 13:45:47修改时间:2015.06.23 10:04:39符号变量类型数据类型注释EN IN BOOLLW0CTW IN WORDLW2REF IN WORDLB4ADD IN BYTEL5.0S_L IN BOOLL5.1R_W IN BOOLLW6PARM IN WORDLD8DAT IN DWORDININ_OUTLW12RET1OUT WORDLW14RET2OUT WORDLD16RET3OUT DWORDLB20ERROR OUT BYTEOUTLD21TEMP1TEMP DWORDLW25TEMP5TEMP INTLD27TEM1TEMP DWORDLD31TEM2TEMP DWORDLD35TEM3TEMP DWORDTEMP子例行程序注解网络 1短格式/MOV_WENO ENOUT INMOV_BENO ENOUT INMOV_BENO ENOUT INMOV_WENO ENOUT INMOV_WENO ENOUT INBCC_CHKENBCC_RES~ BCC_STA~DATA_LENS_L:V1070.016#0802VW100016#06VB1002#ADD:LB4VB1003#CTW:LW0VW1004#REF:LW2VW1006&VB10017VB1008符号地址注释S_L V1070.0网络 2长格式(判断读或写参数)MOV_BENOENOUTINMOV_WENOENOUTINMOV_BENOENOUTINWAND_WENOENOUTIN1IN2/WOR_WENOENOUTIN1IN2WOR_WENOENOUTIN1IN2FILL_NENOENOUTINNMOV_DWENOENOUTINS_L:V1070.016VB100016#020E VW1001#ADD:LB4VB100316#0FFF#PARM:LW6#TEMP5:LW25R_W:V1070.116#1000#TEMP5:LW25VW1004 R_W:V1070.116#E000#TEMP5:LW25VW1004+03VW1006R_W:V1070.1#DAT:LD8VD1008MOV_WENOENOUT IN MOV_WENOENOUT IN BCC_CHK ENBCC_RES~BCC_STA~DATA_LEN#CTW:LW0VW1012#REF:LW2VW1014&VB100115VB1016符号地址注释R_W V1070.1S_L V1070.0网络标题网络 3激活发送完成中断激活100毫秒无通讯中断处理置100豪秒无通讯出错次数上限3次,发送数据ATCHENOENINT EVNTMOV_BENOENOUT IN ATCHENOENINT EVNTMOV_BENOENOUT IN XMTENOENTBL PORTSM0.0fasongwangche~:INT026100SMB35dingshizhongd~:INT1113VB1040VB10001符号地址注释dingshizhongduan INT1中断例行程序注解fasongwangcheng INT0中断例行程序注解网络 4状态值导出MOV_WENOENOUT IN MOV_WENOENOUT IN MOV_DW ENOENOUT IN MOV_BENOENOUT IN SM0.0VW1042#RET1:LW12VW1044#RET2:LW14VD1046#RET3:LD16通讯出错状态:VB1071#ERROR:LB20符号地址注释通讯出错状态VB1071网络 5RETSM0.0S7200与丹佛斯变频器通讯 / fasongwangcheng (INT0)块:fasongwangcheng作者:创建时间:2005.08.09 19:44:35 修改时间:2015.06.23 10:04:39符号变量类型数据类型注释 TEMP TEMP TEMPTEMP中断例行程序注解网络标题网络 1接收数据则关闭发送完成中断激活接收数据中断置接受数据指针清接收数据个数为零DTCHENOENEVNTATCHENOENINTEVNTMOV_DW ENOENOUT IN MOV_BENOENOUT IN SM0.026jieshoushuju:INT225&VB1020VD10360VB1069符号地址注释jieshoushuju INT2中断例行程序注解块:dingshizhongduan作者:创建时间:2005.08.11 14:29:16修改时间:2015.06.23 10:04:39符号变量类型数据类型注释LB0TEM1TEMP BYTETEMPTEMPTEMP中断例行程序注解网络 1DTCHENOENEVNTDTCHENOENEVNTDTCHENOENEVNT>BATCHENOENINTEVNTMOV_BENOENOUTINATCHENOENINTEVNTXMTENOENTBLPORTRETISM0.0252611VB1040fasongwangche~:INT026100SMB35dingshizhongd~:INT111VB10001符号地址注释dingshizhongduan INT1中断例行程序注解fasongwangcheng INT0中断例行程序注解网络 2置错误标志位WAND_BENOENOUT IN1IN2<=B WOR_BENOENOUT IN1IN2S SM0.02通讯出错状态:VB1071#TEM1:LB0VB104001#TEM1:LB0通讯出错状态:VB1071通讯使能位:V1070.21符号地址注释通讯出错状态VB1071通讯使能位V1070.2网络标题网络 3网络注解RETISM0.0块:jieshoushuju作者:创建时间:2005.08.10 8:44:07 修改时间:2015.06.23 10:04:39符号变量类型数据类型注释LW0START TEMP INT LW2NUM TEMP INT LB4OUT TEMP BYTE LB5TEM1TEMP BYTETEMP中断例行程序注解网络标题网络 1将接收来得数据放入指针所指的地址每接收一个数据指针偏移一位每接收一个接收数据个数加1(VB1069)MOV_BENOENOUT IN INC_DW ENOENOUT IN INC_BENOENOUT IN SM0.0SMB2*VD1036VD1036VD1036VB1069VB1069网络 2用来判断在不同情况下所返回的数据长度是否足够。
S7-200自由口通讯教程及编程实例
![S7-200自由口通讯教程及编程实例](https://img.taocdn.com/s3/m/57ee9960fe4733687f21aa24.png)
S7-200自由口通讯教程及编程实例S7-200自由口通讯自由口模式允许应用程序控制S7-200 CPU的通讯端口,使用PC/PPI电缆和自由口功能,可以将S7-200连接到带有RS-232兼容接口的多种设备,比如调制解调器。
这里我们将介绍如何用S7-200连接GSM调制解调器发送短消息,并通过这个例子来介绍应用S7-200自由口编程的一般原则时及应注意的问题。
在下面的例子中我们将用到:1. PC/PPI电缆(10位;9 600波特;DIP开关设置:0 1 0 1 1)2. 西门子S7-200 CPU22X3. TC35 Terminal GSM调制解调器4. 一个9直通针转接头(用来连结PC/PPI电缆与TC35 Terminal调制解调器)5. 一根九针直通电缆(用来连结计算机与TC35 Terminal调制解调器)6. STEP 7-Micro/Win V3.2或更高版本软件一、TC35 调制解调器AT指令简介要使用TC35发送短消息需要使用TC35的AT指令,我们首先介绍如何用Windows自带的超级终端连接TC35发送短消息。
1.用九针直通的电缆将TC35连接到计算机的串口上2.打开超级终端(开始à程序à附件à通讯à超级终端)3.为连接取名Connect to TC35T4.选择TC35连接的串口COM15.按照下图的参数设置端口。
19 200 bps为TC35默认的端口波特率,如果该波特率已被更改,请选择正确的波特率。
6.在窗口中键入AT回车测试与TC35的连接,如果连接正确,TC35将返回OK。
7.TC35可以发送两种格式的短消息,普通文本格式和PDU格式。
应用普通文本格式时,短消息内容以ASCII码格式直接输入,操作比较简单,缺点是只能发送英文短消息;应用PDU格式时,短消息内容以Unicode格式输入,可以发送任何文字,缺点是短消息内容需要转换成Unicode码,并且要把短消息按PDU格式打包,操作比较复杂(编程复杂)。
西门子plc200与dcs通信方法modbus
![西门子plc200与dcs通信方法modbus](https://img.taocdn.com/s3/m/8d55dfbb7e21af45b307a8e3.png)
西门子PLC200与DCS通信方法2011-12-29 10:05在PLC侧作为从站首先用MBUS_INIT指令(初始化从站)"模式"输入数值选择通讯协议:输入数值1将端口0指定给Modbus协议并启用协议;将输入数值0则将端口0指定给PPI,并禁用Modbus协议。
"波特"参数将波特率设为1200、2400、4800、9600、19200、38400、57600或115200。
"地址"参数将地址设为1和247之间(包括1和247)的数值。
"奇偶校验"参数被设为与Modbus主设备奇偶校验相匹配。
可接受的数值为:0-无奇偶校验1-奇数校验2-偶数校验"延时"参数通过将指定的毫秒数增加至标准Modbus信息超时的方法延长标准Modbus信息结束超时条件。
该参数的典型数值在有线网络上应为0。
如果您在使用带有纠错功能的调制解调器,将延时设为50至100毫秒的数值。
如果您在使用扩展频谱无线电,将延时设为10至100毫秒的数值。
"延时"数值可以是0至32767毫秒。
MaxIQ参数将供Modbus地址0xxxx和1xxxx使用的I和Q点数设为0至128之间的数值。
数值0禁止所有向输入和输出的读取。
建议使用的MaxIQ数值是128,该数值可在S7-200中存取所有的和Q点。
MaxAI参数将供Modbus地址3xxxx使用的字输入(AI)寄存器数目设为0至32之间的数值。
数值0禁止模拟输入的读数。
建议使用的MaxAI数值如下,这些数值可允许存取所有的S7-200模拟输入:32用于CPU 224、224XP、226和226XMMaxHold参数设定供Modbus地址4xxxx使用的V存储器中的字保持寄存器数目。
例如,为了允许主设备存取2000个字节的V存储器,将MaxHold设为1000个字的数值(保持寄存器)HoldStart参数是V存储器中保持寄存器的起始地址。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
r sm87.2, 1-
network 4 -
ld sm0.0-
atch int1, 23 -
//连接口0接收完成的中断-
network 5 -
5.2 变频器参数修改子程序-
当要改变当前变频状态的信息需传送时,调用“控制子程序”。首先它要禁止端口的接收,然后对控制电码进行编辑和bcc检验码计算,并发送;当没有改变当前变频状态的信息需传送时,调用“空命令”子程序。因为plc如果要读取变频器的当前工作状态,就要给变频器发送命令,而“控制子程序”代码繁琐,执行效率不高,我们可以将“空命令”程序需传送的电码预先编排好(可以用短电码),“控制子程序”程序代码如下:-
3 plc的选型-
西门子工控产品在工控领域应用市场中有较高的占有率。s7-200系列是西门子simatic plc家族中的小规模plc成员,自由通讯口方式是s7-200 plc的一个特色的功能,它使s7-200 plc可以由用户自己定义通讯协议。利于自由通讯口方式,在本系统中plc可以与变频器和方便连接。plc通过自由通讯口方式与变频器通讯,控制变频器的运行,读取变频器自身的电压、电流、功率、频率和过压、过流、过负荷等全部报警信息等参数,这比通过外部端口控制变频器的运行具有较高的可靠性,节省了plc宝贵的i/o端口,又获的了大量变频器的信息。在本例中,作者将按照danfoss fc协议来对s7-200的自由口进行编程。-
2 变频器的选型-
danfoss vlt系列变频调速器提供串行通讯技术的支持。它所支持的串行通讯技术包括标准rs-485、profidrive、lonworks在内的多种现场总线方式。其中,rs-485通讯方式为用户提供了无需附加任何费用的、最为廉价实用的串行通讯方式。只需按照danfoss vlt变频器规定的通讯数据结构、控制字和状态字格式发送数据即可实现与vlt变频的通讯。vlt为用户提供了两种控制字和状态字格式标准:即danfoss标准的danfoss fc协议和profibus标准的profidrive协议。其中fc协议为用户提供了更多的与vlt有关的控制信息和状态信息。本项目中选用danfoss fc协议。-
hta vb200, vb250, 15-
network 6 -
ld sm0.0 //计算bcc校验码-
for vw240, +1, +15-
network 7 -
4 vlt串行通讯-
4.1 vlt通讯原理-
vlt变频器的串行通讯为异步半双工的方式,使用字节奇偶校验和块传送异或校验方法。每个变频器都配备有一个标准的rs-485通讯端口,使协议可以通过rs-485电气接口来进行传输。plc为主机,变频器为从机,系统电码的传输由主机控制,主机不断发出某个地址的电码给从机,等待从机的响应。主机最多能带31个从机,在有中继器的情况下,可以增加到126个从机,也就是从机的地址最多可以设定到126。通讯时,每一个字节从一个起始位开始实行传送,然后再传递8个数据位,相应地组成一个字节,每个字节由一个奇偶校验位来验证传送的正确性,然后由一个终止位结束。这样一个字节共由11个位组成。-
movb 102, smb87-
network 3 -
ld sm0.0-
movb 16#02, smb88-
movb 50, smb92-
movb 50, smb94-
network 13 -
ld sm4.5-
xmt vb250, 0-
network 14 -
scre-
5.3 变频器通讯完成处理-
发送完成后执行发送完成中断程序,它的操作包括:允许rcv;bcc码寄存器清零;重新装入用于计算bcc校验码的地址指针;接收缓冲区中存放指令结束字符的字节清零,用来判断下一条指令格式是否正确。 -
movw 16#047c, vw211-
movw lw1, vw213-
network 3 -
ld l0.1-
movw 16#0434, vw211-
movw 0, vw213-
4.2 vlt电码结构-
每个电码由一个起始字节(stx)开始,这个起始字节为stx=02h。随后紧跟一个表示电码长度(lge)的字节和表示变频器地址的字节(adr)。然后是一些数据字节(随电码类型而变)。整个电码由一个数据控制字节(bcc)来结束。结构如附表。-
附表 vlt电码结构
ld sm0.0-
atch int0, 9 -
//连接口0发送完成的中断-
network 6 -
ld sm0.0-
eni -
(4) pcd为过程块,占用4个字节。它有两种状态,当主机发给从机时,pcd1为控制字,pcd2为参考值;当从机发给主机时,pcd1为状态字,pcd2为当前的输出频率;-
(5) bcc为数据控制字节。由它来对接收到的命令进行检验正确与否。它的初始值为0,然后对该字节以前的所有字节进行异或。 -
next-
network 10 -
ld sm0.0-
hta vb242, vb265, 1 -
//bcc校验码写入发送缓冲区-
network 11 -
主题:S7-200 PLC通过自由通讯口方式与丹佛斯变频器通讯
1 引言 -
在传统的plc——变频控制集成系统中,变频器的启动/停止与故障监控由plc通过开关量实现端对端控制。变频器频率是由plc通过模拟量输出端口输出0~5(10)v或4~20ma信号控制,需要plc配置昂贵的模拟量输出端口模块。变频器出现故障时由plc读取变频器的故障报警触点,对具体故障原因并不清楚,需查询变频器报警信息后再阅读变频器说明书才知道。随着交流变频控制系统及通讯技术的发展,可以利用plc及变频器的串行通讯的方式来实现plc对变频器的控制。 -
-
在上述数据结构中:-
(1) pke占用两个字节,包括参数命令类型和参数数目;-
(2) ind为索引,也占用两个字节,索引字节用于表明它是一个读命令还是写命令。在读命令中必须具有0400h的格式,在写命令中必须具有0500h的格式;-
(3) pwe为参数值块。占用四个字节,分为高字(pwe h)和低字(pwe l)。“比如主机要改变当前的变频器参数,新的参数就应写在参数pwe中发送给变频器;”-
5 plc编程示例-
5.1 变频器初始化子程序-
plc在第一次扫描时执行初始化子程序,对端口及rcv指令进行初始化。为了增加程序的可靠性,在初始化完成后,如果检测到端口空闲时则运行rcv指令使端口处于接受状态。初始化子程序如下:-
network 1 // 网络标题 -
network 4 -
ld sm0.0-
movw lw1, vw213-
network 5 // 网络标题-
// 网络注释-
ld sm0.0-
ld sm0.0-
xorb *vd220, vb242-
network 8 -
ld sm0.0-
incd vd220-
network 9 -
ldb= vb251, 16#0e -
//发送缓冲区准备好后进行发送-
s s0.1, 1- 源自network 12 -
lscr s0.1-
movb 16#02, vb200-
movb 16#0e, vb201-
movb lb3, vb202-
movd 0, vd203-
movd 0, vd207-
//中断允许-
network 7 -
ld sm0.0-
movd &vb250, vd220 -
//装入地址指针-
movb 0, vb242 -
//bcc码寄存器清零-
movd &vb300, vd224 -
//装入地址指针-
movb 0, vb246 -
//bcc码寄存器清零-
检测端口空闲可编在主程序中-
// 设定端口属性-
ld sm0.0-
movb 73, smb30-
network 2 -
// 接收信息状态-
ld sm0.0-
network 1 -
ld sm0.0 //停止端口0的接收-
r sm87.7, 1-
rcv vb300, 0-
network 2 -
ld l0.0-
接收完成后执行接收完成中断程序,它会将接收缓冲区中的十六进制ascii码还原成数据并保存。然后调用“接收处理”子程序。它主要是求出接收缓冲区中指令的bcc校验码并与指令中的bcc校验码进行比对,并对电码中的数据进行处理。-
6 结束语-
使用此方法采用西门子plc通过自由口使用danfoss fc协议对danfoss变频器进行控制,极大地减少了线路连接的复杂性,避免了现场可能的各种电磁干扰对控制设备的影响。-