发表于:2004-08-12 10:24:00
楼主
本人现正在做一个S7-200与ABB的NMBA-01的通信项目。现有几个难题请高手不吝指教。
1.我现在是用NMBA与DCS500B通信,根据NMBA-01的说明书可读取参数地址:40001~49999,
49999为99组参数99,而DCS500B有139组参数,请问如何编址?
2.因我没有S7-200自由口的针脚资料,所以是参照DP从站端口连接器针脚接线。定义如下:
1 机壳地
2 24V返回
3 隔离信号B
4 隔离发送请求
5 隔离的+5V返回
6 隔离的+5V
7 +24V
8 隔离信号A
9 未用
我只用了1、3、8三个针脚,不知有没有用对?且3-8之间要不要接终端电阻?如要的话
是110欧还是330欧?我的S7-200是作MODBUS主站用。
3.我做实验的时候把NMBA的TERMINATION置为ON,发送信息后一点返回信息也没有(1:1通
信,S7-200上没接终端电阻)。当我把TERMINATION置为OFF时,得到如下信息:
用XMT发送01 03 00 66 00 01 64 15(十六进制,最后两位为CRC校验码)
返回:00 00 01 03 02 8A D0 DE B8 00(我是用中断方式接收的)
其中00 66 表示的是读取1组02的参数AITAC HIGH VALUE即102的十六进制方式,不知对不对
我用操作盘知道102的数值为450.0rpm,不知返回的数值是什么意思?
用XMT发送01 03 00 67 00 01 35 D5(00 67即103 AITAC LOW VALUE)
返回00 00 01 03 02 00 01 79 84 00(操作盘:-450.0rpm)
我把前面的0去掉,分两种情况对返回数据校验,一是保留后面的0,一是去掉后面的0,
发现把最后两位作为校验位均没错,怪哉!
还有更头痛的就是以上信息只是激动人心地出现过几次,然后就如泥牛入海,一点返回信息都没了。
后来我改用了屏蔽线也不行,真头痛!
4.我还无法用S7-200的RCV接收信息。