签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
配置自由口报文,映射的I/O地址读取 电机温度 浮点数类型(r35=20.0),通过映射的地址读取数值是:ID258=16#0CCC_0000. 地址应该是没问题的,我想请教下这个数值数据该如何转换?
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1550344&b_id=47&s_id=0&num=6
甭管什么数,无外乎就是十进制;十六进制;二进制这三种。温度属于实数,所以不会是二进制数。三种进制的数之间转换。
我没做过S7-1500的项目,仅以S7-300为例说明:
首先把输入的数据转换为--———》实数————》此数乘以 电机参数P2006的值,再除以16384,就是实际的温度值了。
电机温度显示.png
大拇指赞楼上。16384是通讯的满度值。它对应于标定的温度100%。
十进制16384对应十六进制的就是4000,对应100%
数据占据满量程的半分比,是个相对值。
这个转换最大值需要看S120中怎么设置的!在S120中可以用1个PZD来表示你想要读取的参数,也可以用连续的两个PZD来表示你要读取的参数,如果是用一个PZD来表示,那么你要转换的值对应的PZD度数的最大值为16380(W#16#4000),如果是用两个PZD来表示,那么你要转换的值对应的PZD度数的最大值为1073741824(W#16#4000 0000),楼主上面程序中写的是ID258,你要确定你S120中是设置用2个PZD来表示温度,否则你应该用IW258的。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录