PLC编程基础——进制介绍
1 PLC编程基础
1.1 数据格式及要求
数据格式:即指数据的长度和表示方式。
要求:S7-200 SMART对数据的格式有一定的要求,指令与数据之间的格式一致才能正常工作。
用一位二进制数表示开关量
一位二进制数:一位二进制数有0(OFF)和1(ON)两种不同的取值,分别对应于开关量(或数字量)的两种不同的状态。
位数据的数据类型:布尔(Bool)型。
位地址:由存储器标识符、字节地址和位号组成,如I3.4等。
其它CPU存储区的地址格式:由存储器标识符和起始字节号(一般取偶字节)组成,如V B 100、V W 100、V D 100等。
1.1.1 十进制数
包含0~9共10个数字,以上10个数可以任意组合。规则:逢十进一。例:9+1=10,19+1=20,99+1=100.
1.1.2 八进制数
包含0~7共8个数字,以上8个数可以任意组合。规则:逢八进一。例:7+1=10,17+1=20,77+1=100。注意:S7-200 PLC的输入输出点都是按八进制进行排列。例如:I0.0~I0.7,I1.0~I1.7
1.1.3 二进制数
包含0~1共2个数字,以上2个数可以任意组合。
规则:逢二进一。 例:1+1=10,,11+1=100。二进制又叫计算机语言或机器码数及数制:数用于表示一个量的具体大小。根据计数方式的不同,有十进制(D)、二进制(B)、十六进制(H)和八进制等不同的计数方式。
二进制数的表示:在S7-200中用2#来表示二进制常数,例如 “2# 10111010 ”。
二进制数的大小:将二进制数的各位(从右往左第n位)乘以对应的位权(×2n-1),并将结果累加求和可得其大小。
例如:2# 10111010 = 1×2 8-1 +0×2 7-1 +1×2 6-1 +1×2 5-1 +1×2 4-1 +0×2 3-1 +1×2 2-1 +0×2 1-1 = 1861.1.4 十六进制数
包含0~9共10个数字加上A、B、C、D、E、F共6个字母,合计一起总共16个符号,以上16个数可以任意组合。规则:逢十六进一。例:9+1=A,F+1=10,1F+1=20,FF+1=100 。
十六进制数的引入:将二进制数从右往左每4位用一个十六进制数表示,可以实现对多位二进制数的快速准确的读写。
十六进制数的表示:在S7-200中用16#来表示十六进制常数,例如 “2# 1010 1110 1111 0111 可转换为16# AEF7 ”。
十六进制数的大小:将十六进制数的各位(从右往左第n位)乘以对应的位权(×16n-1),并将结果累加求和可得其大小。例如:16#2F = 2×16 2-1 +15×16 1-1 = 47
1.1.5 BCD码
BCD码释义:BCD码就是用四位二进制数的组合来表示1位十进制数,即用二进制编码的十进制数(Binary Coded Decimal Number)缩写。 例如 十进制数 23 的BCD码为 2# 0010 0011 或表示为 16# 23 ,但其8421码为 2# 00010111 。
BCD码的应用:BCD码常用于输入输出设备,例如拨码开关输入的是BCD码,送给七段显示器的数字也是BCD码。
1.1.6 负数(有符号数)的表示方法
负数的表示:PLC一般用二进制的补码来表示有符号数,其最高位为符号位(0 ——正数、1 ——负数)。
绝对值相等的正负有符号数间的关系:正数的补码是它本身。
举例说明PLC编程中的进制数,新手也能看懂的基础
想着手编程,那进制数是不可缺少的一节,比较常见的就是二、十、十六进制数,PLC也是一台微电脑,想要对PLC进行编程,其中许多功能指令离不开进制转换,虽然现在有很多机器可以直接转换,但为了增加程序的可读性,有效提升自身的编程水平,治标且治本的话,那么必须得清楚数制的设置以及转化和对应的符号。今天就给大家说说数制的问题。
都是比较基础的知识点,新手也能看得懂。
以十进制举例,MSD表示高位,LSD表示低位,0、5叫做低两位,6、5叫做高两位。如下图:
如果是二进制,十六进制,它的位是一样的,但数和权就不一样了,二进制的权就是20 21 22 23..,十六进制亦然。如果是八位,那就是低4位,高四位、十六位亦然。
PLC中最常用的是二、十、十六进制数、八进制已经不常用了,它仅用于PLC的输入输出口的编制上,如下图:
n次方表示在哪一位,在0位就是80,在1位是81…
在十六进制中,0-9只是10个数,但十六进制是逢十六进一,A表示10、B表示11…以此例推
例如: 1001,可能以前你会读作一千零一,但作为数制就不一样了。
首先得清楚它属于哪个进制
十进制就是一千零一,
二进制的话:B1001
十六进制就是:H1001
注: 二、十六进制一般在各种PLC中都可用B、H表示
十进制:K6505
注: 在三菱PLC中一般用K表示十进制,其他PLC不定,在一般数字电路的书籍中一般用D来表示十进制。
八进制在数字电路中一般用O来表示,
在国外,表示十进制的方法是:(1001)10、八进制就是(1001)8、
例如:
B1011=1×23+0×22+1×21+1×20=8+0+2+1=11=K11
往期优秀文章回顾: 电气人口中的PLC是什么?在电气行业有什么用?
(关注我,更多电工PLC知识趣闻等着你~)
相关问答
plc编程常用的三种进制?
PLC说完了,那么大家就会问了:二进制、十进制、十六进制又与PLC有啥关系呢?二进制、十进制、十六进制就是计算机程序指令的表达形式,它们之间可以相互转换。...
PLC编程中常用的进制类型?
在PLC编程中,常用的进制类型有以下三种:1.二进制:是一种基本的计算机数据表示方法,仅包含“0”和“1”这两个数字。在PLC编程中,二进制通常用于表示某个输...
PLC编程为什么要使用进制法?
在PLC编程中,使用进制法是因为它能够更方便地表示和处理二进制数据。PLC是一种数字电路,其输入和输出信号通常是二进制的,使用进制法可以直接将二进制数表示为...
PLC几进制什么意思?
只是一种数值的进位方式,不管是二进制、十进制和十六进制都是一样的,它们的值是一样的,只是不一样的表现形式,例如:十个人,十进制写作:10;十六进制写作:...只...
plc是7进制的吗?
PLC(可编程逻辑控制器)是一种专门用于工业自动化控制的设备。常见的PLC采用的是16进制或10进制数值系统表示其内部状态和运算结果,而不是7进制数值系统。7进...
plc的地址是用哪种进制存储的?
PLC的地址通常使用十六进制存储。PLC(可编程逻辑控制器)是一种专门用于工业自动化控制的计算机控制系统,其中的地址用于指示设备、输入输出和存储器等不同的控...
西门子300的PLC,十进制数,十六进制数,二进制数表示,怎么把十进制数20移位到MW1?
西门子300的PLC,十进制数,十六进制数,二进制数表示,把十进制数20移位到MW1的方法是:10进制常数20直接输入20即可。16进制数20输入16#20二进制数20输入2#1010...
台达plc程序中怎么把十六进制数变成十进制数啊?
这个不管16进制还是十进制,对于PLC处理来说都是一样的你如果要显示出来,如在触摸屏上显示,只要编辑好你的数据显示器就行了这个不管16进制还是十进制,对于PL...
plc怎样把16进制换成32位?
采用数据类型转换,比如前面的数是16位的整数后面是32的实数,可以使用转换块,INTTOREAL,输入连接的是整数,输出连接的是实数。在UnityProXL里面是这么...
三菱plc2进制转10进制指令?
二进制转十进制方法:二进制基数乘以2的权位数n-1次方之和,例如:二进制数(1101)1*2(4-1)+1*2(3-1)+0*2(2-1)+1*2(1-1)=1*23+1*22+0*21+1*...