设为首页  |  加入收藏    
首页
关于我们 产品介绍 应用方案 下载中心 客户留言 联系我们
     
应用方案
应用方案  
您现在的当前位置:首页 > 应用方案

s_plc使用说明新版
发布日期:2012-8-22  浏览:3853

 
一、概述
        PLC(可编程控制器)应用广泛,其CPU功能较强,可靠性高,但在输入输出I/O方面,PLC存在价格过高,扩展模块不隔离,输入信号还要进行编程运算来完成采集,品牌繁多,互不兼容,用户使用起来不方便等缺点。我公司研制生产的S系列I/O前端具有模入(AI)、模出(AO)、开入(DI)、开出(DO)等功能;规格多样;工程量值输出;RS485通讯接口;灵活的通讯协议;扩展简捷;价格低廉。但在复杂控制等应用场合较PLC就有所欠缺,而PLC的优势恰恰在此。S系列I/O前端可以方便地与各种PLC构成秒级的多点数据采集和控制系统,并可更快捷地融入已有的采集控制系统当中,大大降低系统工程费用。二者结合可以弥补各自的缺陷,使系统达到良好的性价比。
下面以西门子S7-200(CPU226)和S系列I/O前端连接所构成的采集控制系统为例,展示这种方案的优势所在:
1. S系列I/O前端与PLC的接口程序软件由我公司编写并无偿提供给用户,用户只要将该段程序嵌入自己的程序中即可。用户在PLC编程中或在上位机读写S系列I/O前端的输入输出数据时,只和PLC中的I/O数据映射区(位于V区内)打交道,大大减少了用户工作量和编程复杂程度。
2. 采用PLC的自由通讯口与S系列I/O前端连接(RS485总线),方便地扩展至少32个模块。
3. 扩展系统AI/AO点最多达512点,DI/DO点最多达1024点,极大的拓展了PLC的I/O点数。
4. 现场独立安装,扩展灵活,多样,调试方便。
5. 模拟量为直接工程量值,无需编程运算完成采集及输出。
6. 具有通道与通道之间隔离,现场与计算机隔离特性。
7. 利用PLC的CPU丰富资源,使整套系统具有可编程及PID等控制功能,并可脱离上位机独立运行。
8. 利用PLC的通讯扩展模块,使系统简捷地接入以太网络及PROFIBUS-DP总线网络。
9. 特别适合于各种场合的秒级采集控制应用。
10.特别适合于西门子体系(WINCC、S7系列PLC)的工控工程中,扩展大量I/O点及降低系统造价。

二、连接要点及注意事项
● S7-200(CPU226)具有两个RS485通讯口,通讯口1(PORT0)与上位机相连;通讯口2(PORT1)以自由口方式与S系列I/O前端的RS485通讯线相连。
● 通讯口2(PORT1)通讯速率为38400 bps,8位数据位,1位停止位,无奇偶校验。
● 通讯方式为主从式,PLC为主,S系列I/O前端为从。
    ● PLC与S系列I/O前端的通讯电缆连接对应表
         PLC的9针插头------------S系列I/O前端的接线端子
            3      ------------     37   (RS485 A )
            5   ------------      35   (RS485 地)
            8   ------------     36   (RS485 B )
● 用户在使用之前应将S系列I/O前端的站址设置好,并将通讯速率设置为38400 bps,通信协议为S¬_PLC(S系列I/O前端的其它参数,用户根据现场实际工况自行设置)。
● 如果有多个(N个)S系列I/O前端,站址应从01开始,依次至N为止,连续不得跳跃。
● 通讯协议(参见后面说明)的具体细节用户可忽略。S系列I/O前端与PLC的接口程序名为S¬_PLC 。
● PLC将对各S系列I/O前端不停进行循环采集及控制输出,1秒之内即可将32个S系列I/O前端采集或输出控制完毕。
● 采集及输出控制单元皆存放于固定V变量区,由用户读取或写入(模拟信号读取或写入格式为INT)。占用V区空间从V3900起始,占用1124字节,即到V5024结束 ,其中V3900~3933为连接S系列I/O前端定义前端个数及型号定义区;V4000~V5024为S系列I/O前端输入输出数据映射区,每个I/O前端分配32个字节,连接32个前端时共计为1024 字节(参见I/O数据映射区说明)。

三、连接程序说明
        S系列I/O前端与 S7-200(CPU226)的连接程序(程序名称为S_PLC)包含一个主程序,8个子程序和3个中断服务程序。3个中断服务程序分别是端口1(PORT1)接受信息完成中断(事件号为24)、端口1(PORT1)发送字符中断(事件号为26)、定时中断0(事件号为10,定时中断时间间隔寄存器为SMB34)。
       主程序(MAIN)进行通讯口2(PORT1)的初始化,并触发发送字符中断,启动S7-200(CPU226)对S系列I/O前端的通讯。当与一个S系列I/O前端通讯完成后,由接收中断程序自动启动与下一个站址S系列I/O前端的通讯,如此循环往复。定时中断0程序是对发送字符和接收信息完成中断超时(>50ms)的处理,该程序将停止对这两个中断的响应并启动下一个站址的S系列I/O前端的通讯工作。
用户只要将该段主程序(MAIN)嵌入自己的主程序中,将余下的子程序和中断服务程序置入用户系统程序中,然后修改USER_SET子程序,根据所需连I/O前端的个数及型号定义V3900~3933变量区即可。


主程序及其说明如下:
Network1
LD     SM0.1            //首次扫描
DTCH     24    //关接收中断 
DTCH     26    //关发送中断
DTCH  10    //关超时中断 
MOVD  +0,VD3996  //清除32个站的超时标志
MOVB    16#01,SMB130   //初始化PORT1口为自由口,通讯速率=38400 bps,
CALL  USER_SET      //调用用户初始系统子程序
CALL  FIRST_SET  //系统第一次运行初始化
ENI      //启动中断
CALL  FILL_COMMAND     //发送取数据命令
CALL    GET_FCS1      //求命令校验码

Network2
LD  SM0.0
CALL    GO_PATH   //启动循环

四、连接I/O定义区说明
1.连接S系列I/O前端个数定义单元:  VB3900            1  字节   (用户设置)
2.站址连接S系列I/O前端型号定义单元:  VB3902~VB3933  32 字节   (用户设置)
        每个站址所连接的S系列I/O前端的型号均由一个字节定义,VB3902为01号站址对应连接S系列I/O前端型号定义单元 ,VB3933为32号站址对应连接S系列I/O前端型号定义单元,用户通过修改USER_SET子程序完成对VB3900及 VB3902~VB3933等定义单元的更改。
       各型S系列I/O前端对应代码如下:
◆ S1104=0  S1204=0
◆ S1108=1  S1208=1
◆ S1116=2  S1216=2
◆ S1316=6
◆ S1332=7
◆ S1416=8
◆ S1504=9

五、I/O数据映射区说明
I/O数据映射区:        VB4000   1024 字节(每站占32字节)     (用户读写)
以第1号站址为例,起始I/O数据映射区地址为VB4000;(第N号站址I/O数据映射区起始地址为VB4000+(N-1)×32)
◆ S1104,S1204
   4个模拟量输出占前8个字节                (VW4000)   读  字
◆ S1108,S1208
   8个模拟量输出占前16个字节               (VW4000)   读  字

 ◆ S1116,S1216
   16个模拟量输出占前32个字节              (VW4000)   读  字
 ◆ S1316
       A: 16个开关量输入占前 2 字节             (VB4000)    读
       B: 8 个开关量输出占第 3 字节             (VB4002)    写
C: 8 个线圈状态占第   4 字节             (VB4003)    读
 ◆ S1332
   32个开关量输入占前 4 字节                (VB4000)    读
 ◆ S1416
       A: 16个开关量输出占前 2 字节             (VB4000)    写
       B: 16个线圈状态占后   2 字节             (VB4002)    读
 ◆ S1504
       A: 8 个开关量输出占第 1 字节             (VB4000)    写
       B: 8 个线圈状态占第 2 字节               (VB4001)    读
       C: 4个模拟量输出从第 3 字节开始,占8 字节 (VW4002)    写  字
D: 4个保持寄存器从第 11字节开始,占8 字节 (VW4010)    读  字

六、占用PLC软件和硬件的资源
 1.占用软件资源
   主程序两个节点,三个中断服务程序,8个子程序。三个中断为:
   ●端口1(PORT1)接受信息完成中断(事件号为24)。
   ●端口1(PORT1)发送字符中断(事件号为26)。
   ●定时中断0(事件号为10,定时中断时间间隔寄存器为SMB34)。
 2.占用硬件资源
   ●占用程序空间:大约2500字节。
   ●占用V区:V3900~V5024。
   ●时间间隔寄存器为SMB34。
   ●端口1(PORT1)

七、S_PLC协议说明
    该协议除了校验码,其他同MODBUS协议。MODBUS协议的校验码为两个字节CRC校验码,S_PLC协议变成1个字节FCS校验码加一个字节FF。FCS校验码为所命令或返回数据按字节异或后的结果。

八、USER_SET子程序举例说明
该例子为PLC连接5个S系列I/O前端时,修改USER_SET子程序例子,其中第一个前端(站址为01)型号为S1116,第二个前端(站址为02)型号为S1216,第三个前端(站址为03)型号为S1316,第四个前端(站址为04)型号为S1416,第五个前端(站址为05)型号为S1504。具体设置如下程序:

Network1
LD     SM0.0         
MOVB  +5,VB3900    // 系统站址个数(S系列I/O前端个数)
MOVB  +2,VB3902    // 01号站址对应S系列I/O前端型号为S1116
MOVB  +2,VB3903    // 02号站址对应S系列I/O前端型号为S1216
MOVB  +6,VB3904    // 03号站址对应S系列I/O前端型号为S1316
MOVB  +8,VB3905    // 04号站址对应S系列I/O前端型号为S1416
MOVB  +9,VB3906    // 05号站址对应S系列I/O前端型号为S1504

九、用户应用举例说明
该例子示范了用户如何将S_PLC程序和自己的软件结合在一起。
首先用户将S_PLC程序中的主程序并入自己的主程序中(Network1和Network2是S_PLC 程序,Network3以下为用户应用程序,见以下程序);将余下的子程序拷入用户自己的项目程序中即可。用户要根据自己实际工况来修改USER_SET子程序(参见上述章节)。
Network1
LD     SM0.1            //首次扫描
DTCH     24    //关接收中断 
DTCH     26    //关发送中断
DTCH  10    //关超时中断 
MOVD  +0,VD3996  //清除32个站的超时标志
MOVB    16#01,SMB130     //初始化PORT1口为自由口,通讯速率=38400 bps,
CALL  USER_SET      //调用用户初始系统子程序
CALL  FIRST_SET  //系统第一次运行初始化
ENI      //启动中断
CALL  FILL_COMMAND     //发送取数据命令
CALL    GET_FCS1      //求命令校验码

Network2
LD  SM0.0
CALL    GO_PATH   //启动循环

Network3                 //用户应用程序
LD  SM0.0
MOVW    VW4000,AC0  
MOVW  AC0,VW1000  //将S1116(一号站)的第一通道测量值放入VW1000
MOVW    16#2500,VW4128 //置入S1504(五号站)的第一模拟量输出值


十、连接通讯正常/超时错误标志
从VB3996起的4个字节为PLC与S系列I/O前端连接通讯正常/超时错误标志,共32位(32个站)。VB3996的最低位为01号站的连接通讯正常/超时错误标志,VB3999的最高位为32号站的连接通讯正常/超时错误标志。在通讯正常的情况下,连接通讯正常/超时错误标志全部为0;当某一个站址的S系列I/O前端通讯掉线(通讯超时错误)时,此站址对应的连接通讯正常/超时错误标志位为1。
用户在PLC的编程中或在上位机程序里,检查连接通讯正常/超时错误标志,即可判断PLC与S系列I/O前端的通讯正常与否。
S11xx,S12xx系列的I/O前端当通讯超时或掉线时,其输出显示值为10004。

十一、S系列I/O前端型号一览
S1104     4路混接(标准电压、标准电流、热阻、热偶)输入,工程量值,8路报警继电器输出。
S1108     8路混接(标准电压、标准电流、热阻、热偶)输入,工程量值,4路报警继电器输出。
S1116     16路混接(标准电压、标准电流、热阻、热偶)输入,工程量值。
S1204     4路两线制(4~20mA)变送器专用输入,直接挂接变送器,工程量值,8路报警继电器输出。
S1208     8路两线制(4~20mA)变送器专用输入,直接挂接变送器,工程量值,8路报警继电器输出。
S1216     16路两线制(4~20mA)变送器专用输入,直接挂接变送器,工程量值。
S1316     16路开关信号输入,8路开关量信号输出。
S1332     32路开关信号输入。
S1416     16路开关信号输出。
S1504     4路隔离模拟信号输出(4~20mA),8路开关信号量输出。


                                                           

版权所有: 北京西姆宏仪器仪表有限公司 京ICP备05035633号 设计制作:无忧网络