找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
小程序查看
手机扫码追踪该问题
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
请教一下Dint型变量DB5.DBD0可以和Real型变量DB5.DBD4比较大小吗?
数据大小的比较最好是数据类型一致,结果才准确。如果用LAD来写直接就会报错,因为数据格式不一致。用STL来写虽然不会报错,但是结果可能不会准确。
如果用move指令把一个Dint型数送给Real型变量DB5.DBD4,那么DB5.DBD4的数值是什么格式的?
因为在数据块里建立数据时必须定义数据类型,DB5.DBD4被定义成了REAL,那么用move指令把一个Dint型数送给Real型变量DB5.DBD4,DB5.DBD4的数值还是REAL格式,可能数值就发生改变了。只有目标地址本来就没有定义数据类型时MOVE指令才可以消除数据的类型属性。例如把DINT的DB5.DBD0传送给没有定义数据类型的MD0,那么MD0里就是不具有任何类型属性的一个32位的二进制代码。
要把转速发给ABB的变频器的控制字PQW322,打算用move指令,我是把Dint型变量DB5.DBD0 move给PQW322还是把Real型变量DB5.DBD4 move给PQW322啊?
PQW是16位的数据,而EINT和REAL都是32位的数据,所以这两种都不能直接传送给PQW。具体的事项要参考ABB变频器的说明书。
发送转速的数据,应该和abb的变频器协商好了,通常发送的是dint或者word或者dword,很少发送real。
对real的转速,用16384或者32786进行标么后,变成一个word或者dword,然后再move到pqw中。
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!