西门子PLC与变频器通信三肯台达.docx
- 文档编号:27220520
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:24
- 大小:19.57KB
西门子PLC与变频器通信三肯台达.docx
《西门子PLC与变频器通信三肯台达.docx》由会员分享,可在线阅读,更多相关《西门子PLC与变频器通信三肯台达.docx(24页珍藏版)》请在冰豆网上搜索。
西门子PLC与变频器通信三肯台达
西门子S7-200与台达三垦变频器通信程序
程序是在张红星的《从入门到精通——西门子S7-200PLC技术与应用》的431页“S7-200PLC与三垦和台达变频器通信实例”中的梯形图
大家可以把3个程序下载后看看。
程序也可以到我的网易网络硬盘直接下载。
登录在上登录密码730509,在网易网盘上下载,包括129细纱机触摸屏程序
程序:
西门子与三垦变频器带查验和通信
大伙儿能够把3个程序下载后看看
注意:
把红色的部分复制到新建记事本,保存程序后重命名为****.awl文件。
启动西门子编程软件后在程序“文件”——“导入”,把重命名的文件导入后就可以打开程序。
该方法也适应高版本程序在低版本软件无法打开的解决部分。
程序:
西门子与三垦变频器带检验和通讯
ORGANIZATION_BLOCK主程序:
OB1
TITLE=S7-200PLC与三垦变频器通信
//实现功能是PLC通过RS485通信操纵变频器的启动、停止、加速、减速。
利用ASCII码和查验和,程序相对复杂,但实现的功能很多。
//三垦变频器要求设置大体通信参数
//cd001=3 cd002=14 cd142=2(加查验和) cd144=0 cd146=1 cd147=4 cd148=4 cd149=0 cd150=1 cd151=1 cd152=0
BEGIN
Network1
LD
CALL SBR0
Network2//启动
LD
EU
MOVB 6,VB100
MOVB 16#50,VB104
CALL SBR1
Network3//正在接收=0,但本例是利用中断来接收
LDB<> SMB86,0
MOVB SMB86,VB400
Network4//发送完标志
LD
=
Network5//停止
LD
EU
MOVB 6,VB100
MOVB 16#52,VB104
CALL SBR1
Network6
LDN T37
TON T37,10
Network7//加速
LD
A T37
INCW VW135
Network8//减速
LD
A T37
DECW VW135
Network9//上限频率
LDW>= VW135,500
MOVW 500,VW135
Network10//下限频率
LDW<= VW135,15
MOVW 15,VW135
Network11
LDW<> VW135,VW145
O
MOVB 11,VB100
MOVB 16#4F,VB104
MOVW VW135,VW137
IBCD VW137
MOVW VW137,VW143
*I +10,VW143
HTA VB143,VB105,5
MOVW VW135,VW145
CALL SBR1
Network12//输出频率读取
LD
EU
MOVB 6,VB100
MOVB 16#43,VB104
CALL SBR1
Network13//当读取频率时,显示在VW602,4位显示时除以10;5位显示时除以100
LDB= VB204,16#43
ATH VB205,VB500,4
MOVW VW500,VW600
BCDI VW600
MOVW VW600,VW602
/I +10,VW602
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCKSBR_0:
SBR0
TITLE=通信初始化参数子程序
BEGIN
Network1
LD
MOVB 16#09,SMB30
MOVB 16#F0,SMB87
MOVB 16#2A,SMB88
MOVB 16#0D,SMB89
MOVB 14,SMB94
MOVW 5,SMW90
Network2//本例用于只有一台PLC,能够固定开始符及站号
LD
MOVB 16#2A,VB101
MOVB 16#30,VB102
MOVB 16#34,VB103
Network3
LD
ATCH INT0,0
ENI
END_SUBROUTINE_BLOCK
SUBROUTINE_BLOCKSBR_1:
SBR1
TITLE=计算查验和子程序
BEGIN
Network1
LD
MOVD &VB101,VD131
MOVW 0,VW129
MOVB VB100,AC1
MOVW AC1,VW127
-I +2,VW127
Network2
LD
FOR VW125,1,VW127
Network3
LD
MOVB *VD131,AC0
+I AC0,VW129
+D 1,VD131
Network4
NEXT
Network5
LD
MOVW 16#FF,AC0
ANDW VW129,AC0
INVW AC0
+I 1,AC0
ORW 16#40,AC0
MOVB AC0,*VD131
+D 1,VD131
MOVB 16#0D,*VD131
Network6//不在接收状态就发送
LDB<> SMB86,0
XMT VB100,0
Network7
LD
CRET
END_SUBROUTINE_BLOCK
INTERRUPT_BLOCKINT_0:
INT0
TITLE=接收中断程序
BEGIN
Network1
//接收完成中断程序
LD
RCV VB200,0
END_INTERRUPT_BLOCK
西门子与三垦变频器无查验和通信
ORGANIZATION_BLOCK主程序:
OB1
TITLE=S7-200PLC与三垦变频器通讯
//实现功能是PLC通过RS485通讯控制变频器的启动、停止、加速、减速。
通过二进制码实现通讯,没有使用校验码,程序简单,但功能相对ASCII码通讯实现的功能少一点。
//三垦变频器要求设置基本通信参数
//cd001=3 cd002=14 cd142=0(不加检验和) cd144=0 cd146=1 cd147=4 cd148=4 cd149=0 cd150=1 cd151=1 cd152=0
BEGIN
Network1//S7-200通过RS485通讯PORT0口与三垦变频器通讯子程序
LD
CALL SBR0
Network2//启动
LD
EU
MOVB 4,VB100
MOVB 16#50,VB103
MOVB 16#30,VB104
XMT VB100,0
Network3//停止
LD
EU
MOVB 4,VB100
MOVB 16#52,VB103
MOVB 16#30,VB104
XMT VB100,0
Network4//当接通,变频器输出频率按每秒加速
LD
A
EU
INCW VW135
Network5//当接通,变频器输出频率按每秒减速
LD
A
EU
DECW VW135
Network6//上限频率
LDW>= VW135,500
MOVW 500,VW135
Network7//下限频率
LDW<= VW135,15
MOVW 15,VW135
Network8//凡是有频率改变的要求,就把要求的发送到变频器
LDW<> VW135,VW145
MOVB 6,VB100
MOVB 16#4F,VB103
MOVW VW135,VW137
*I +10,VW137
MOVB VB137,VB104
MOVB VB138,VB135
MOVB 16#30,VB106
MOVW VW135,VW145
XMT VB100,0
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCKSBR_0:
SBR0
TITLE=自由口通信参数初始化子程序初始化通讯参数子程序
BEGIN
Network1
LD
MOVB 16#09,SMB30
MOVB 16#F0,SMB87
MOVB 16#40,SMB88
MOVB 16#0D,SMB89
MOVB 14,SMB94
MOVW 5,SMW90
Network2//采用二进制码,定义变频器的站号为04号站
LD
MOVB 16#40,VB101
MOVB 16#04,VB102
Network3//使用接收完成中断程序,并允许开全局中断
LD
ATCH INT0,9
ENI
END_SUBROUTINE_BLOCK
INTERRUPT_BLOCKINT_0:
INT0
TITLE=接收完成中断
BEGIN
Network1
LD
RCV VB200,0
END_INTERRUPT_BLOCK
西门子与台达变频器通信
ORGANIZATION_BLOCK主程序:
OB1
TITLE=实现S7-200PLC与台达变频器通信
//实现功能是PLC通过RS485通信控制变频器的正转启动、反转启动、停止、加速、减速和读取输出频率。
变频器通过Modbus通信方式进行
//要求台达变频器设置基本通信参数:
//P00=d03(主频率由RS485控制)
//P01=d03(运转/停止由RS485通信控制)
//P88=d01(站点定义为1号站)
//P90=d00 P91=d00 P92=d02 P113=d01
//(其他参数都是出厂默认值,可根据实际情况调节)
//
BEGIN
Network1
LD
CALL SBR0
Network2//正转启动命令
LD
EU
MOVB 16#30,VB104
MOVB 16#36,VB105
MOVB 16#32,VB106
MOVB 16#30,VB107
MOVB 16#30,VB108
MOVB 16#30,VB109
MOVB 16#30,VB110
MOVB 16#30,VB111
MOVB 16#31,VB112
MOVB 16#32,VB113
CALL SBR1
Network3//反转启动指令
LD
EU
MOVB 16#30,VB104
MOVB 16#36,VB105
MOVB 16#32,VB106
MOVB 16#30,VB107
MOVB 16#30,VB108
MOVB 16#30,VB109
MOVB 16#30,VB110
MOVB 16#30,VB111
MOVB 16#32,VB112
MOVB 16#32,VB113
CALL SBR1
Network4//停止指令
LD
EU
MOVB 16#30,VB104
MOVB 16#36,VB105
MOVB 16#32,VB106
MOVB 16#30,VB107
MOVB 16#30,VB108
MOVB 16#30,VB109
MOVB 16#30,VB110
MOVB 16#30,VB111
MOVB 16#30,VB112
MOVB 16#31,VB113
CALL SBR1
Network5//1秒脉冲
LDN T37
TON T37,10
Network6//加速指令(每1秒步进加速)
LD
A T37
INCW VW135
Network7//减速指令(每1秒步进减速)
LD
A T37
DECW VW135
Network8//上限频率
LDW>= VW135,5000
MOVW 5000,VW135
Network9//下限频率
LDW<= VW135,10
MOVW 10,VW135
Network10//凡有频率改变,调用子程序3
LDW<> VW135,VW145
O
CALL SBR3
Network11//读取输出频率指令
LD
EU
MOVB 16#30,VB104
MOVB 16#33,VB105
MOVB 16#32,VB106
MOVB 16#31,VB107
MOVB 16#30,VB108
MOVB 16#33,VB109
MOVB 16#30,VB110
MOVB 16#30,VB111
MOVB 16#30,VB112
MOVB 16#31,VB113
S ,1
CALL SBR1
Network12//当读取频率时,执行频率显示运算子程序
LD
A
CALL SBR2
Network13//SMB86=0表示正在接收,但本例是利用中断来接收
LDB<> SMB86,0
MOVB SMB86,VB400
Network14//发送完成标志
LD
=
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCKSBR_0:
SBR0
TITLE=通信初始化参数子程序
BEGIN
Network1//初始化通信参数及定义开始符、终止符等接收信息
LD
MOVB 16#69,SMB30
MOVB 16#E0,SMB88
MOVB 16#3A,SMB89
MOVB 18,SMB94
Network2//初始化固定参数
LD
MOVB 16#3A,VB101
MOVB 16#30,VB102
MOVB 16#31,VB103
MOVB 16#0D,VB116
MOVB 16#0A,VB117
Network3//声明使用发送完成中断
LD
ATCH INT0,9
ENI
END_SUBROUTINE_BLOCK
SUBROUTINE_BLOCKSBR_1:
SBR1
TITLE=计算校验及子程序
BEGIN
Network1//建立指针及参数清零等初始化
LD
MOVD &VB101,VD131
MOVW 0,VW129
MOVW 6,VW127
MOVW 0,AC0
MOVW 0,AC1
MOVW 0,AC2
MOVW 0,AC3
Network2//循环计算原始累加和
LD
FOR VW125,1,VW127
Network3
LD
LPS
MOVW *VD131,AC0
ANDW 16#FF,AC0
AB> AC0,16#39
MOVW AC0,AC1
-I 16#37,AC1
LRD
AB<= AC0,16#39
MOVW AC0,AC1
-I 16#30,AC1
LRD
INCD VD131
LRD
MOVW *VD131,AC0
ANDW 16#FF,AC0
LRD
AB> AC0,16#39
MOVW AC0,AC2
-I 16#37,AC2
LRD
AB<= AC0,16#30
MOVW AC0,AC2
-I 16#30,AC2
LRD
SLB AC1,4
LRD
MOVW AC1,AC3
+I AC2,AC3
LRD
+I AC3,VW129
LPP
+D 1,VD131
Network4
NEXT
Network5//指针加一,指向下一个
LD
MOVW 0,AC2
MOVW 0,AC3
+D 1,VD131
Network6
LD
LPS
MOVW 16#FF,AC0
ANDW VW129,AC0
INVW AC0
MOVW 1,VW800
+I AC0,VW800
MOVB VB801,AC2
SRB AC2,4
AW> AC2,9
+I 16#37,AC2
LRD
MOVB AC2,*VD131
LRD
+D 1,VD131
LRD
MOVB VB801,AC3
ANDB 16#0F,AC3
LRD
AW> AC3,9
+I 16#37,AC3
LRD
AW<= AC3,9
+I 16#30,AC3
LPP
MOVB AC3,*VD131
Network7//发送前,强行禁止接收
LD
MOVB 16#70,SMB87
RCV VB200,0
Network8//开始发送
LD
MOVB 17,VB100
XMT VB100,0
FILL 0,VW200,9
Network9//发送后允许接收
LD
MOVB 16#F0,SMB87
END_SUBROUTINE_BLOCK
SUBROUTINE_BLOCKSBR_2:
SBR2
TITLE=频率显示运算子程序
VAR
LIN1
WORD;
lLIN2
WORD;
LIN3
WORD;
LIN4
WORD;
END_VAR
BEGIN
Network1//把接收到的16进制ASCII码信息,转换成习惯的小数点形式
LD
BTI VB2008,LW0
BTI VB2009,LW2
BTI VB2010,LW4
BTI VB2011,LW6
Network2
LD
LPS
AW> LW0,16#40
MOVW LW0,AC0
-I 16#37,AC0
LPP
AW< LW0,16#40
MOVW LW0,AC0
-I 16#30,AC0
Network3
LD
LPS
AW> LW2,16#40
MOVW LW2,AC1
-I 16#37,AC1
LPP
AW< LW2,16#40
MOVW LW2,AC1
-I 16#30,AC1
Network4
LD
LPS
AW> LW4,16#40
MOVW LW4,AC2
-I 16#37,AC2
LPP
AW< LW4,16#40
MOVW LW4,AC2
-I 16#30,AC2
Network5
LD
LPS
AW> LW6,16#40
MOVW LW6,AC3
-I 16#37,AC3
LPP
AW< LW6,16#40
MOVW LW6,AC3
-I 16#30,AC3
Network6
LD
MOVB AC0,LB8
SLB LB8,4
MOVB AC2,LB9
SLB LB9,4
Network7
LD
MOVB LB8,VB3200
ORB AC1,VB3200
Network8
LD
MOVB LB9,VB3201
ORB AC3,VB3201
Network9
LD
ITD VW3200,VD3300
DTR VD3300,VD3304
MOVR VD3304,VD3308
/R ,VD3308
Network10
LD
R ,1
END_SUBROUTINE_BLOCK
SUBROUTINE_BLOCKSBR_3:
SBR3
TITLE=输出频率通信格式整理子程序
BEGIN
Network1//凡是有输出频率,频率改变
LD
MOVB 16#30,VB104
MOVB 16#36,VB105
MOVB 16#32,VB106
MOVB 16#30,VB107
MOVB 16#30,VB108
MOVB 16#31,VB109
MOVW VW135,VW137
MOVW 0,AC0
MOVW 0,AC1
MOVW 0,AC2
MOVW 0,AC3
Network2
LD
LPS
MOVB VB137,AC0
ANDB 16#0F,AC0
AW> AC0,9
+I 16#37,AC0
LRD
AW<= AC0,9
+I 16#30,AC0
LRD
ITB AC0,VB111
LRD
MOVB VB138,AC1
ANDB 16#0F,AC1
LRD
AW> AC1,9
+I 16#37,AC1
LRD
AW<= AC1,9
+I 16#30,AC1
LPP
ITB AC1,VB113
Network3
LD
LPS
MOVW VW137,VW139
SRW VW139,4
MOVB
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西门子 PLC 变频器 通信 三肯台达