哈尔滨西门子专业授权代理商
上位机监控程序
在上位机上实现工艺流程图的实时监测、数据处理是通过可编程控制器操作站系统软件和组态软件来实现的。组态软件主要对系统的构成进行定义,定义过程点参数、趋势笔、趋势组、流程图、报表等,软件由各种监视画面和操作画面组成,主要包括总貌画面、流程图画面、趋势画圃、报表管理以及趋势打印、报表生成打印输出、操作调整等。
上位机主要工艺参数分组曲线显示,并存人上位磁盘中,工艺随时调用打印,做工艺质量分析。同时还可将每班设备启停时间、各工位启停传送时间进行记录存盘.供生产管理人员随时查询打印停工台时间和停工月报表。 上位机的操作分操作员级和工程师两级.正常生产时,由生产工人操作。
工艺流程画面如图3实现了对整个烤漆房的全面监控,界面形象生动,友好,具有较好的可靠性,在画面上 实现凤机旋转动画,燃烧机燃烧动画,当某设备发生故障,该设备将闪烁,并弹出实时报警画面;在手动状态,可以直接点击该设备,便可启停该设备,喷漆和烤漆时,通风的路径及颜色将发生变化。烤漆房温度除数字显示外,采用温度棒图显示。显示系统各设备的状态,可设定参数,如烤漆时间;图5历史报警画,显示所有报警发生的时间,报警恢复、报警应答,报警的**级,报警组,如果在运行阶段,变量的数值或变化情况满足已定义的报警条件、从报警条件恢复正常状态、报警应答时均可以产生报警事件(报警发生、报警恢复、报警应答)。报警信息还可以用文件的形式进行历史记录或实时打印报警信息。用户可以自定义报警信息的显示格式、记录格式和打印格式。同时可以利用命令语言实现对报警事件的复杂控制和灵活处理。
5 结束语
本系统已在青岛四方车辆厂调试成功,且投入生产,从运行情况来看,电气系统几乎处于无故障工作,大大提高了生产率。此系统组态灵活,操作方便,具有抗干扰能力强,工作,维修方便,与上位工控机联系,接受工控机的控制和查询,由工控机完成对整条生产线的监控,实现了喷烤漆自动化。
1 引言
随着PLC在工厂自动化中的广泛应用,各PLC生产商不断推承出新,功能更加完善,性能更加优异的PLC不断涌现。以德国西门子公司为例,90年代中期,继S5系列PLC之后,就相继推出了S7系列的PLC。该系列PLC不仅具有S5系列PLC的优点,而且更加注重功能的改进和集成。对于现在应用广泛的闭环控制、模拟量处理、通信联网、脉冲输出等均提供了相应的指令及使用途径。编程软件STEP 7为用户提供了界面友好且功能强大的开发工具。本文拟就S7-200系列PLC中CPU214通过与一台SIMOVERT微型主电机驱动器通信来起动、停止电机,以及改变电机的频率,介绍其特点并给出相应的应用程序流程图或源程序。
2 硬件要求
(1) 硬件组成
一台带输入器的S7-200 CPU214,一根RS 485电缆,一台微型主电机驱动器和电机;
(2) 参数设置
正确地将电机和微型主电机驱动器接好线,并且所用电机和微型主电机驱动器的参数已通过人工设定,且微型主电机驱动器必须设置在遥控方式(P910=1),波特率:19.2kB(P92=7),地址1(P91=1);
(3) 接线方式
用一根带9针阳性插头的RS 485通信电缆接在S7-200 CPU214的1、3、8端上,电缆另一端是插孔,分别接到微型主电机驱动器的13、14、15端子上。
3 分析及说明
(1) S7-200自由通信口模式
S7-200 CPU214与SIMOVERT微型主电机驱动器通信是通过S7-200自由通信口模式进行的,使用USS5字协议。输入器用来初始化发给电机驱动器的命令。用程序监视RUN/TERM开关,并选择相应的协议来设置自由通信口模式的控制字节(SMB30);
(2) 输入点分配
I0.0 上升沿有效 使电机以上次命令的恒定频率运转;
I0.2 上升沿有效 使电机以上次命令的频率开始变频运转;
I0.4 上升沿有效 停止电机;
I0.5 电平有效 以1或2倍率改变频率:
I0.5=“0”:1倍,I0.5=“1”:2倍;
I0.6 上升沿有效 以1或2倍频率增量增加电机频率;
I0.7 上升沿有效 以1或2倍频率增量降低电机频率;
I1.0 电平有效 控制电机旋转方向,I1.0=0:电机正转,I1.0=1:电机反转;
(3) 程序检测
首先对微型主电机驱动器的发送要计时,如果失败,允许再试发送,较多可试发送3次。然后,对来自微型主电机驱动器的接收也要计时,在退出发送接收操作之前可重试多达3次。对来自微型主电机驱动器的响应信息要进行有效性校验(STX,LEN,ADR及BCC),任何被检测到的错误都要进行显示;
(4) 输出点分配
0用来显示检测到的错误信息,具体显示含义如下:
“0”表示无错误;“1”表示非法的响应(除去坏的BBC);“2”表示坏的BBC;“3”表示发送**时;“4”表示接收**时。
4 程序结构
(1) 程序结构
整个控制程序由1个主程序(MAIN)、8个子程序(SBR 0-7)及4个中断程序(INT 0-3)组成。各程序所完成的功能如下:
l MAIN 主程序:监视用于自由通信口/PPI通信切换的RUN/TERM开关,寻找输入信号上升沿作为电机运行命令。
? SBR0 设置自由通信口通信:**扫描时设置自由通信口模式的参数。
?SBR1 RUN子程序:设定电机恒速运转。
?SBR2 RAMP子程序:设定电机变速运转。
? SBR3 增加频率倍率的子程序:增加微型主电机驱动器的输出频率。
?SBR4 降低频率倍率的子程序:降低微型主电机驱动器的输出频率。
?SBR5 STOP子程序:停止电机。
?SBR6 计算输出信息的BCC。
?SBR7 发送信息,初始化发送定时器。
? INT0 发送(XMT)中断处理程序,打开。
? INT1 发送**时的中断处理程序,较多试发3次。
?INT2 接收字符的中断处理程序。
? INT3 接收**时的中断处理程序,较多试收3次
5 程序及注释
由于文章篇幅的限制,在此仅给出与通信有关部分的源程序。
SBR 7 //初始化XTM及XTM定时器
XMT VB99,0 //发送
ATCH 0,9 //捕捉XTM发送中断,并
//调用中断程序0
MOVB 255,SMB34 //设置XTM定时器255MS
ATCH 1,10 //捕捉XTM定时器中断,
//并调用中断1
RET
INT 0 //中断程序0,XMT发送中断处理,
//关XMT定时器
DTCH 10 //退出XMT定时器
DTCH 9 //中止XMT事件
MOVW 3,VW204 //刷新XMT重试次数
MOVW 14,VW208 //响应信息中接收的字符数
MOVW 0,VW215 //清BCC累加器
MOVD &VB114,VD211 //设置接收缓冲区指针
ATCH 2,8 //捕捉RCV(接收)中断,并
//调用中断程序2
ATCH 3,10 //捕捉接收定时器中断,并调
//用中断程序3
RETI
INT 1 //定时器中断0处理--发送
DTCH 9 //停止XMT(发送)
DTCH 10 //退出定时器
DECW VW204 //重试次数减1,若为0,且
LD SM1.0 //SM1.0=1,则
MOVB 3,VB210
MOVB 3,0 //用0指示发送**时
MOVW 3,VW204 //刷新发送重试计数
S M0.0,1 //使RUN、RAMP有效
CRETI //条件返回
XMT VB99,0 //重试发送
ATCH 0,9 //捕捉XMT中断,并调用
//中断程序0
MOVB 255,SMB34 //设置XMT定时器为避
//免55mS
ATCH 1,10 //捕捉定时中断,并调用
//中断程序
RETI
INT 2 //接受字符处理
MOVB SMB2,AC0 //得到接收字符
XORW AC0,VW215 //累积BCC
[NextPage]
MOVB AC0,*VD211 //把接收到的字符送
//入缓冲区
INCD VD211 //缓冲区指针加1
DECW VW208 // 有待接收的字符总数减1
LDN SM1.0 //检验是否结束
CRETI
NOT
DTCH 10 //退出接收定时器
DTCH 8 //关接收
AB= 0,VB216 //检验已算好的BCC是否为0
NOT
MOVB 2,VB210 //坏的BCC操作码
MOVB 2,0
JMP 0
LDB= VB114,16#02 // STX**个字符吗
AB= VB115,16#0C //长度=12吗?
AB= VB116,VB102 //将信息发往同一从
//设备吗?
MOVB 0,VB210 //操作正确
MOVB 0,0
JMP 0
LD SM0.0
MOVB 1,VB210 //信息中有不对的地方
MOVB 1,0
LBL 0
MOVW 3,VW206 //刷新接收可重试次数
RETI
INT 3 //定时器中断0处理—接收
DTCH 8 //关接收中断
DTCH 10 //退出接收定时器
DECW VW206 //重试次数减1,若为0,且
LD SM1.0 //SM1.0=1,则
MOVB 4,VB210
MOVB 4,0 //指示接收**时
MOVW 3,VW206 //刷新接收重试次数
S M0。0,1 //使RUN/RAMP有效
CRET
NOT
MOVD &VB114,VD211 //设置接收缓冲区指针
MOVW 0,VW215 //清BCC累加器
XMT VB99,0 //重发送
ATCH VB0,9 //捕捉XMT中断,并
//调用中断程序0
MOVB 255,SMB34 //设置XMT定时器中断
ATCH 1,10 //捕捉定时器中断,并调
//用中断程序1
RETI
6 结束语
虽然此程序只与一台微型主电机驱动器通信,但可将它扩展用于另外的输入点,选择多站通信线路上的某一台微型主电机驱动器的地址,向它发送命令。另外,这个程序的基本通信结构还可用来发送别的信息给主电机驱动器,如监视电流、转矩等