- 发布
- 浔之漫智控技术(上海)有限公司
- 品牌
- 西门子
- 型号
- 模块
- 产地
- 德国
- 电话
- 15821971992
- 手机
- 15821971992
- 发布时间
- 2023-07-19 17:06:40
| 1.西门子plc可靠性高,抗干扰能力强,西门子plc高可靠性是电气控制设备的关键性能。西门子PLC由于采用现代大规模集成电路技术,采用严格的生产工艺制造,内部电路采取了**的抗干扰技术,具有很高的可靠性。从西门子PLC的机外电路来说,使用西门子PLC构成控制系统,和同等规模的继电接触器系统相比,电气接线及开关接点已减少到数百甚至数千分之一,故障也就大大降低。此外,西门子PLC带有硬件故障自我检测功能,出现故障时可及时发出警报信息。在应用软件中,应用者还可以编入外围器件的故障自诊断程序,使系统中除西门子PLC以外的电路及设备也获得故障自诊断保护。这样,整个系统具有极高的可靠性也就不奇怪了。 2.西门子PLC配套齐全,功能完善,适用性强,西门子PLC发展到今天,已经形成了大、中、小各种规模的系列化产品。可以用于各种规模的工业控制场合。除了逻辑处理功能以外,现代西门子PLC具有完善的数据运算能力,可用于各种数字控制领域。近年来西门子PLC的功能单元大量涌现,使西门子PLC渗透到了位置控制、温度控制、西门子PLC等各种工业控制中。加上西门子PLC通信能力的增强及人机界面技术的发展,使用西门子PLC组成各种控制系统变得非常容易。 3.西门子PLC易学易用,深受工程技术人员喜欢。西门子PLC作为通用工业控制计算机,是面向工矿企业的工控设备。它接口容易,编程语言易于为工程技术人员接受。梯形图语言的图形符号与表达方式和继电器电路图相当接近,只用西门子PLC的少量开关量逻辑控制指令就可以方便地实现继电器电路的功能。为不熟悉电子电路、不懂计算机原理和汇编语言的人使用计算机从事工业控制打开了方便之门。 4.西门子PLC系统的设计、建造工作量小,维护方便,容易改造,西门子PLC用存储逻辑代替接线逻辑,大大减少了控制设备外部的接线,使控制系统设计及建造的周期大为缩短,同时维护也变得容易起来。更重要的是使同一设备经过改变程序改变生产过程成为可能。这很适合多品种、小批量的生产场合。 5.西门子PLC体积小,重量轻,能耗低,由于体积小很容易装入机械内部,是实现机电一体化的理想控制设备。 |
一, 如图片1中左边看似不正常,右边能正常显示plc相关信息。 二 ,关于以上问题,我作过一些相关实验,说明一下可能出现的问题: |
网友ktissot在用下面3条指令将浮点数转换为双整数时,发现了一个神秘的现象。 L MD0 2.转换成功的情况 小于左右转换结果完全正确。转换成功时OV和OS为0。 小于2到这一段可以转换,但是转换有误差。 接近2时,*大误差为64。 大于2 ~ 2时(区间范围为128.0),转换后得到的双整数均为(16#7FFF FF80,见下图)。转换结果是区间中点的值,( + )/2= 。 大于2 ~ 2时,转换后得到的双整数均为(16#7FFF FF00)。 大于2 ~ 2时,转换后得到的双整数均为(16#7FFF FE80)。 经过分析,我已经找到了上述现象的原因,结果暂不公布,希望有兴趣的网友一起来分析一下,共享解决问题的快乐。 3.转换结果分析 大于2 ~ 2时转换后得到(16#7FFF FF80)。 大于2 ~ 2时转换后得到(16#7FFF FF00)。 大于2 ~ 2时转换后得到(16#7FFF FE80)。 上述3个区间内部的间隔为128.0,转换结果为区间的中点( + )/2= 。 所以这种转换并不**,*大误差为128/2=64。 浮点数转换为双整数的转换误差的根本原因是32位浮点数和32位双整数的有效位数的差异造成的。 浮点数由一位符号位、8位指数和尾数的小数部分(23位)组成。尾数的位数决定了浮点数的精度。尾数的整数部分为1,小数部分为23位,所以尾数的有效数字为24位。 双整数除去一位符号位,其有效位数为31位,因此浮点数的有效位数比双整数少7位。 2 ~ 2相差128.0,它们对应的整数为31位有效数字,这些浮点数输入plc后,因为浮点数的有效位数只有24位,它们的尾数相同,对应的十六进制表示的浮点数均为16#4EFF FFFF,或2.17484e+009(注意有效尾数为十进制7位,而不是对应的整数的10位)。所以转换为双整数后均为。 ktissot网友说:“这就像看一片湖水一样,你可以看到水和浪花,但是**看不到水分子。”由于有效位数较小,浮点数不能分辨“水分子”2 ~ 2,我们只能看到“浪花”(16#7FFF FF80)。 如果浮点数较小,例如小于16777215(16#FF FFFF),整数部分只有24位,转换后就没有上述的误差了。在此基础上增大,整数部分的位数越大,误差越大。 因为有效位数相差7位,在接近双整数*大值的区段,浮点数的尾数相差一个数时,转换为双整数后,相差128。2的7次方等于128。 4.高端转换出错的原因分析 为什么*高端大于2的数不能正确地转换呢?请注意小于2到大于2这段范围刚好是64.0(128.0的一半)。RND指令在转换时将这段范围的尾数四舍五入后,尾数的*低位加1,相当于转换后的整数加128(16#80),由上述的16#7FFF FF80()加16#80后变为16#,超出了双整数整数的允许范围,产生了溢出,所以转换出错。 |