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

S1116和台达DVP-EH的连接使用说明
发布日期:2012-8-22  浏览:6123

 前言:
    台达DVP-EH系列PLC系列是工控同仁们常用型号之一,北京西姆宏仪器仪表有限公司是专业生产I/O产品的厂商,所生产的模拟量型前端产品S1116(16通道,标准电压、电流、热电阻、热电偶混接万能输入,工程量值)可以很方便的通过RS485通讯的方式,对DVP-EH系列进行模拟量输入通道的扩展(从16通道到256通道,1~16个站),既方便、简单、实用,又降低了扩展成本,而且还解决了使用PLC模拟量模块不易解决的现场隔离问题和扩展模拟量通道数量上的局限,以及采集模拟信号底层编程的麻烦,特别适合于需要较多模拟量信号秒级采集应用的场合。此连接亦适用于DVP-EH挂接S1216(两线制变送器信号专用型,16通道,内供电)型模拟量输入前端。以下就对此给予详细说明:
一、 S1116与DVP-EH通讯说明
   
     台达DVP-EH系列PLC的COM2口具备MODBUS主站读写指令(MODRW),但不支持MODBUS的04(读输入寄存器)号功能码,因此对S1116给予相应在软件修改(03号功能码与04号功能码通用),以使两者能够方便的通讯。

1.通讯线的连接
    由于S1116采用RS485方式,通讯协议MODBUS(I),而DVP-EH的COM2也是RS485通讯口,因此S1116可以和DVP-EH的COM2直接相连(通过单根屏蔽双绞线)。
接线方法如下:
DVP-EH的COM2            S1116(1号站)端子            S1116(N号站)端子
RS485+          ————     37(RS485A)    ————      37(RS485A)
RS485           ————     36(RS485B)    ————      36(RS485B)
G(PLC地)        ————    35(RS485地)   ————      35(RS485地)
2.通讯形式:(通讯方式为主从方式,DVP-EH为主,S1116为从)
       波特率=19200 bps
       数据长度=8位
       奇偶性=无
       停止位=1位
       最终D1120=H91。
3.S1116前端设置
● 用户在使用之前应将S1116的站址设置好,并将通讯速率设置为19200 bps,通信协议为MODBUS(I)(S1116的其它参数,用户根据现场实际工况自行设置)。
●  如果有多个(N个)S1116,站址应从01开始,依次至N为止,连续不得跳跃。
●  通讯协议(参见后面说明)的具体细节用户可忽略。S1116与DVP-EH的接口程序名为S_DVP-EH 。
● DVP-EH将对各S1116进行循环读取,1秒之内约可读取8个S1116站的模拟量数据。

二、 DVP-EH相关软件说明(S1116与DVP-EH的接口程序名为S_DVP-EH 。)
    软件使用M2000作为DVP-EH发送数据的触发脉冲,第一次由程序开始触发,以后的触发由一次收发工作都正常结束(M1127置起)或异常结束(M1129)来完成。
DVP-EH收到的通讯数据由MODRW指令在内部存放在D1296开始的16个数据寄存器中,再由本程序将16个通道数据放入指定(D2050开始)的数据寄存器中。
对于用户而言,只需在程序中简单定义D2000寄存器连接S1116的个数,再运行本程序,即可收取所挂接的各个S116的模拟量采集值(数据格式INT,工程量值)。
当通讯异常结束或超时,将置起该站对应的通讯异常标志位(D2007),以方便用户读取判断那个站通讯出现问题,并且该站对应内容将被写入10004,用户也可以从数据层面上判断通讯是否正常。


三、 占用资源
1. M2000
2. E0
3. D2000~D2050+(站数×16),如果没有那么多站,则其对应空间将释放。
4. 不占用中断
5. COM2口

四、 寄存器分配使用说明
1. D2001:    站号
2. D2000:    站数(注意:需要由用户输入实际挂接的站数)
3. D2002~D2006: 中间计算用
4. D2007:        通讯异常标志(每站一位,16个站对应16位,正常为0,异常为1,最低位为1号站)
5. D2008~D2049:  通讯接收到的数据
6. D2050~D2065:  第一站16通道数据

五、 程序清单
LD    M1002           // 第一次扫描
MOV   K1  D2001   // 第一个站号写入D2001
MOV   K16  D2000  //  站数写入D2000(本行程序中挂接站数由用户根据需要自行定义!
可选范围K1~K16,即1~16个站)
MOV   K0   D2007   //  清除各站通讯异常标志位
MOV   H0C91 D1120    //   初始化通信格式(BPS=19200,8位数据位,1位停
//   止位)
SET  M1120            //   通讯设置保存
SET  M1143     //   ASCⅡ/RTU模式选择,选择RTU方式
SET  M2000     //  触发通讯脉冲

LD  M1000
MODRW    D2001      K3      H0       D2008  K16   // 串行数据传送命令。站址在D2001内,// 3号功能码,取数据地址为0,接受内容放入从 
// D2008开始的寄存器中,读取16个数据。 
LDP  M2000
SET  M1122             // 发送请求,开始发送(发送结束时自动复位)
MOV K2000 D1129     // 置通讯超时时间=2000mS
RST  M2000             // 清除触发脉冲

LD  M1127             // 通信结束,并且无超时标志。
RST  M1127             //  清除通讯结束标志位
SET  M2000             //  触发下一次通讯
MOV D2001 D2002
DEC  D2002
MUL K16  D2002 D2004
MOV D2004 E0
BMOV D1296 D2050E K16
CALL   P4     // 清除通讯异常标志
CALL   P2     // 站号加1

LD   M1129             // 通讯超时,且结束
CALL P1                // 往对应站号的空间写入10004,以指示数据异常
CALL P3       // 置通讯异常标志
CALL P2                 // 站号加1
RST  M1129              //  清除超时标志位
SET  M2000                //  触发下一次通讯
 
FEND             // 主程序结束

P001              // 写入通讯异常时数据为10004
LD  M1000
MOV  D2001 D2002
DEC D2002
MUL K16  D2002  D2004
MOV D2004 E0
MOV K0  D2004
P005
LD   M1000
MOV  K10004 D2050E
INC  D2004
INC  E
LD<  D2004 K16
CJ  P5
SRET

P002               // 站号加1,如果大于站数则置为1
LD   M1000
INC  D2001
LD>  D2001 D2000
MOV K1  D2001
SRET

P003                // 置通讯错误标志位
LD  M1000
MOV K1   D2006
MOV  D2001 D2005
P006
LD>  D2005 K1
ROLP D2006 K1
DEC D2005
CJ  P6
LD  M1000
WOR D2006 D2007 D2007
SRET

P004     // 清除通讯错误标志位
LD  M1000
MOV K1   D2006
MOV  D2001 D2005
P007
LD>  D2005 K1
ROLP D2006 K1
DEC D2005
CJ  P7
LD  M1000
WXOR HFFFF D2006 D2006
WAND 2006 D2007 D2007
SRET

END

注:1、本连接方法亦适用于S3000系列可配置I/O单元的S3116及S3216 I/O卡件。
    2、台达DVP系列PLC的其它型号,如ES/EX/SS R SA/SX等均可以以类似方法进行相应的模拟量通道扩展,仅需对上述程序略加修改而已。


 

 

 
 

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