『7x24小时有问必答』
九,什么是浮点数?「定点」指的是约定小数点位置固定不变。那浮点数的「浮点」就是指,其小数点的位置是可以是漂浮不定的。浮点数是采用科学计数法的方式来表示的,例如十进制小数 6.187,用科学计数法表示,可以有多种方式:6.187 = 6.187* 10^06.187= 61.87 * 10^-16.187 = 618.7* 10^-2
用这种科学计数法的方式表示小数时,小数点的位置就变得漂浮不定,这就是浮点数由来。

十,BCD16.是16位的BCD,BCD码是一种数据编码方式,是用二进制数字表示十进制数字的一种方式。目的在于人看上去简单容易理解。BCD码在PLC中使用也是为了让人容易看懂数据,比如一个时间在PLC内存储的时候就是BCD码的方式一个字节就可以表示出小时,一个字节表示分钟,一个字节表示秒钟。

BCD(Binary-Coded Decimal):二进制编码的十进制数,用4位二进制表示1位十进制数(0-9) 。

- 每4位有效范围:0000~1001(对应0~9)

- 1010~1111 为无效码,PLC中会报错

- 本质:逢十进一,不是纯二进制运算

示例

- 十进制 5 → BCD:0101

- 十进制 12 → BCD:0001 0010

- 十进制 258 → BCD:0010 0101 1000

PLC里的BCD格式(常用)

. BCD16(16位)

- 西门子S7-1200/1500:-999~+999(最高位表符号)

- 三菱/施耐德/西门子200SMART:0~9999(无符号)

. BCD32(32位)

- 西门子:-9999999~+9999999

- 三菱/施耐德:0~99999999

PLC常用转换指令(西门子为例)

- I_BCD:整数 → BCD码

- BCD_I:BCD码 → 整数

- 例:  I_BCD MW10, MW12  (把MW10整数转BCD存MW12)
十一,Real转换成INT。小数就没有了ROUND取整。西门子有点特殊。如果恰好在偶数和奇数之间。小数点前是偶数。就选偶数比如32.5,取整后是32,33.5取整是34CEIL,浮点数向上取整,有效数就进位感觉西门子PLC和C语言也差不多。只能仿真S7-1200系列固件版本4.0或更高版本CPUreal和LReal区别real是32位的浮点数。Lreal是64位的浮点数。truncation截尾取整。位数去除。也可以填写变量(浮点数)。

顺便看了下,S7-1200有PID功能。在工艺里边。其他的估计都有这个功能。SCALE_X,,意思是标定翻译是缩放VALUE值范围-37763到37768。1200和300系列PLC,对应的都是0-27648VALUE是0.0到1.0范围浮点数INT数据范围是:0-27648NORM,标准化,标准

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码