签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
PLC为S7-200smart,从站设备为称重测量链,通讯方式为RS485自由口通讯(四线制,实际上为RS422通讯,200smart本身不支持422通讯也没有相应模块,因此使用一个中继器将四线的RS485转换成2线制的RS485,连接PLC之前用串口助手测试过可以正常通讯。
称重测量链需要发送指令才会返回数据,如发送msv?;指令,会返回当前重量值; 输出格式设置的为ASCII格式,波特率设置为115200,无校验。
目前问题如下:1.编译时没有问题,下载时会提示编译错误;
2.在网上查到的资料,在中断程序触发时都用的是中断时间23,端口0接收消息完成,但是类似我手上这种,没有指令的发送,就没有数据会返回,那应该也不会有消息接收完成,因此程序中用的是中断事件9,端口0发送数据完成。
3.按照西门子操作手册上的示例去描摹了一遍,没有发生编译问题,正常下载,但是监控时,写入进去的数据全部都是空的,比如VB0中写入5,代表5个字符,VB1中为m,VB2中为s,监控时VB1和VB2中都没有值,格式设置的是ASCII,格式设置上应该是没有问题的。
4.SMB34在中断事件0中使用时,是否是指中断时间1扫描过后,等待SMB34设定的时间后,再执行中断时间2内的程序。
纯自学,看视频和网上查资料为主,基础薄弱,望各位大佬在斧正时能稍微浅显易懂些,谢谢。
自由口通讯问题请教.zip
指令如下:
Network 1
// SMB30定义为:无校验,8个数据位,波特率115200,通讯协议为自由口;
// SMB87定义为:启用通讯,无开始和结束字符,启用空闲线时间检测;
// SMW90定义为:空闲线时间为5ms;
// SMW92定义为:定时器为消息间定时器;
// SMB94定义为:最大接收20个字符;
// 启用中断程序0,中断事件9,端口0发送信息完成
// 启用中断程序2,中断事件23,端口0接收消息完成,XMT发送指令用以激活中断程序0
中断程序0:
//将MSB34赋值为20ms,中断程序1和中断程序2之间的时间间隔为20ms,启用中断程序1,XMT用以激活中断程序1
中断程序1:
//VB0定义为5个字符,指令为MSV?; 发送给端口0,20ms后启用接收程序
中断程序2:
中继器图片:已连接串口助手测试过,转成2线RS485之后可以正常通讯,PLC的端口0为3+ 8-,接线正反都测试过,都没有数据发送和返回。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1657753&b_id=64&s_id=0&num=1
1、通讯练习,最好是PLC先和PC机的串口调试工具对练,觉得PLC发送没有问题了,再PLC跟称重模块通讯,但是,PC仍然作为监视设备,监视通讯线上数据。
2、如果称重模块只支持准双工,而不是全双工的话,422是可以简单地并线实现485功能。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录