收藏 分销(赏)

项目数据类型和寻址方式.doc

上传人:a199****6536 文档编号:2678619 上传时间:2024-06-04 格式:DOC 页数:11 大小:178KB 下载积分:8 金币
下载 相关 举报
项目数据类型和寻址方式.doc_第1页
第1页 / 共11页
项目数据类型和寻址方式.doc_第2页
第2页 / 共11页


点击查看更多>>
资源描述
项目3 数制、数据类型和寻址方式 1. 数制 所有的数值在PLC中都是以二进制形式表示的,数据的长度和表示方式称为数据格式。S7-200 PLC 的指令对数据格式有一定的要求,指令与数据之间的格式一致才能正常工作。矚慫润厲钐瘗睞枥庑赖。 1) 计数体制 常用的技术体制有十进制、二进制、十六进制等。 (1) 十进制数 在十进制数中,用0,1,2,3,4,5,6,7,8,9这十个不同数码按照一定的规律排列起来表示数值的大小,其计数规律是“逢十进一”。十进制数是以10为基数的计数体制。聞創沟燴鐺險爱氇谴净。 各位数表示的数值就是该位数码(系数)乘以相应的权。按此规律,任意一个十进制数(N)都可以写成按权展开式残骛楼諍锩瀨濟溆塹籟。 = = (2) 二进制 二进制是以2为计数的计数体制。它只有0和1两个数码,采用“逢二进一”的计数规律。任意一个二进制数都可以写成按权展开式酽锕极額閉镇桧猪訣锥。 = 二进制数比较简单,只有0和1两个数码,并且算术运算也很简单。 (3) 十六进制数 十六进制数是以16为基数的计数体制,它用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F这16个数码表示,采用“逢十六进一”的计数规律。四位二进制码可以用一位十六进制码来表示。任意十六进制数可以写成按权展开式彈贸摄尔霁毙攬砖卤庑。 = 表1 几种数制对照表 十进制数 二进制数 十六进制数 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F (4) 数制转换 1) 二进制数转换成十进制数 例如:将二进制数转换成十进制数 = 2) 十进制数转换成二进制数 例如:将45转换成二进制数 用短除取余法 数值从下往上记 3) 十六进制数转换成十进制数 例如:将十六进制数转换成十进制数 = 4) 十进制转换成十六进制数 10进制数转换成16进制的方法,和转换为2进制的方法类似,唯一变化:除数由2变成16。 同样是45,转换成16进制则为: 2DH 5)  二进制数转换成十六进制数 二进制数要转换为十六进制,就是以4位一段,分别转换为十六进制。   如:上行为二制数,下面为对应的十六进制;   1111 1101 , 1010 0101 , 1001 1011    F D , A 5 , 9 B 2#111111011010010110011011=16#FDA59B 6) 十六进制数转换成二进制数 反过来,当我们看到 FDA59BH时,如何迅速将它转换为二进制数呢?    F D A 5 9 B 1111 1101 1010 0101 1001 1011 16#FDA59B=2#111111011010010110011011 (5) 奇偶校验码 数码在传送和存取过程中,会发生将“1”码误成“0”码、“0”码误成“1”码的错误。为了。为了检查出这种错误,可采取奇偶校验码的编码方式。代码有两部份组成:一部分是信息位,一部分是检误位。若加上去的检误位中的“1”码的个数和信息位中的“1”码的个数之和为奇数个,则为奇校验码,否则为偶校验码。謀荞抟箧飆鐸怼类蒋薔。 例如,对8位一组的二进制码来说,若低7位为信息位,最高位位检误位,码组1011011的奇校验码为01011011,而偶校验码为11011011。厦礴恳蹒骈時盡继價骚。 在代码传送过程中,对所收到的码组中“1”码的个数进行计算,如“1”码的个数与预定的不同,则可判断已经产生了误码。茕桢广鳓鯡选块网羈泪。 (6)机器数的编码及运算 对带符号数而言,有原码、反码、补码之分,计算机内一般使用补码。 1) 原码 将数“数码化”,原数前“+”用0表示,原数前“-”用1表示,数值部分为该数本身,这样的机器数叫原码。 设X——原数;则[X]原 = X(X 0) [X]原 = 2n-1 – X (X 0),n为字长的位数。 如,[+3]原 = 00000011B [-3]原 = 27 - (-3) = 1000,0011B 0有两种表示方法:00000000 +0 , 10000000 -0 原码最大、最小的表示:+127、-128鹅娅尽損鹌惨歷茏鴛賴。 2)反码 规定正数的反码等于原码;负数的反码是将原码的数值位各位取反。 [X]反 = X (X 0) [X]反 =(2n –1)+ X (X 0) 如:[+4]反 = [+4]原 = 0000,0100 B [-4]反 = 1111,1011 B 反码范围:-128 ~ +127 两个0; +0 —— 00000000 B , -0 —— 11111111 B 3) 补码 补码的概念:现在是下午3点,手表停在12点,可正拨3点,也可倒拨9点。即是说-9的操作可用+3来实现,在12点里:3、-9互为补码。 运用补码可使减法变成加法。 规定:正数的补码等于原码。 负数的补码求法:1)反码 + 1 2)公式:[X]补 = 2n + X (X<0) 如:设X = - 0101110 B , 则[X]原 = 10101110 B 则[X]补 = [X]反 + 1 = 11010001 + 00000001 = 11010010 B 如:[+6]补 = [+6]原 = 00000110 B [-6]补 = 28 + (-6) = 10000000 – 00000110 = 11111010 B籟丛妈羥为贍偾蛏练淨。 位补码的范围 –128 ~ +127。 0 的个数:只一个,即00000000 而10000000 B是-128的补码。 原码、反码、补码对照表:表1-2 P10 預頌圣鉉儐歲龈讶骅籴。  4)补码的运算 当X≥0时,[X]补= [X]反=[X]原 [ [X]补]补 = [X]原 [X]补+ [Y]补 = [ X+Y ]补 [ X-Y ]补= [ X+(-Y)]补 例:已知 X=52 Y=38 求X-Y渗釤呛俨匀谔鱉调硯錦。 计算机在做算术运算时,必需检查溢出,以防止发生错误 5)运算的溢出问题 资料字长(位数)有一定限制,所以资料的表示应有一个范围。 如字长8位时; 补码范围-128~+127 若运算结果超出这个范围,便溢出。铙誅卧泻噦圣骋贶頂廡。 错:两个负数相加和为正数。 可见:结果正确(无溢出)时,Cs+1 = Cs 结果错误(溢出)时,Cs+1 ≠ Cs 溢出判断:溢出 = Cs+1 Cs(即结果是0为无溢出;1为有溢出)擁締凤袜备訊顎轮烂蔷。 (7)BCD码 BCD码是Binary Coded Decimal Numbers(二进制编码的十进制数)的缩写。BCD码用四位二进制数的组合来表示1位十进制数。贓熱俣阃歲匱阊邺镓騷。 例如:十进制数23对应的BCD码为16#23,或2#00100011, BCD码常用于输入输出设备,例如拨码开关输入的是BCD码,送给七段显示器的数字也是BCD码。 表2 BCD码和十进制数 十进制数 BCD码 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 BCD码的运算: 1) BCD码加法规则 两个BCD数相加时,“某位”的和小于10则保持不变; 两个BCD数相加时,“某位”的和大于9,则和数应加6修正。坛摶乡囂忏蒌鍥铃氈淚。 2)BCD码减法规则 两个BCD数相减时,“某位”的差未发生借位,则差数保持不变; 两个BCD数相减时,“某位”发生了借位,其差应减6修正。 这里“某位”指BCD数中的“个位”、“十位”、“百位”、……蜡變黲癟報伥铉锚鈰赘。 (9)负数的表示方法 PLC一般采用二进制补码来表示有符号数,其最高位为符号位,最高位为0时为正数,最高位为1时为负数,最大的16位正数为16#7FFF(即32767)。正数的补码是它的本身,将正数的补码逐位取反(0变为1,1变为0)后加1,得到绝对值与它相同的负数的补码。将负数的补码的各位取反后加1,得到它的绝对值。買鲷鴯譖昙膚遙闫撷凄。 例如:十进制正整数35对应的二进制补码为2#00100011,十进制数-35对应的二进制补码为2#11011101。不同数据的取值范围如下表。綾镝鯛駕櫬鹕踪韦辚糴。 数据的位数与取值范围 数据的位数 无符号整数 有符号整数 十进制 十六进制 十进制 十六进制 B(字节),8位值 0~255 0~FF -128~127 80~7F W(字)16位值 0~65535 0~FFFF -32768~32767 8000~7FFF D(双字)32位值 0~4294967295 0~FFFFFFFF -2147483648~2147483647 8000000~7FFFFFFF (10)用1位二进制数表示开关量 二进制数的1位(bit)只有0和1两种不同的取值,可以用来表示开关量的两种不同的状态。如果该位为1,梯形图中对应的元件的线圈“通电”,其常开触点接通,其常闭触点闭合。如果该位为0,则编程元件的线圈和触点的状态与上述相反。驅踬髏彦浃绥譎饴憂锦。 (11)位 S7-200 的位存储单元的地址由字节和位地址组成,例如:I 3.2,其中的区域标识符“I”表示输入(Input),字节地址为3,位地址为2。这种存取方式称为“字节。位”寻址方式。猫虿驢绘燈鮒诛髅貺庑。 (12)字节 8位二进制组成一个字节(Byte)。其中的第0位为最低有效位(LSB),第7位为最高有效位(MSB)。输入字节IB3(B是Byte的缩写)是由I3.0,I3.1,I3.2,I3.3,I3.4,I3.5,I3.6,I3.7 这8位组成。锹籁饗迳琐筆襖鸥娅薔。 VB100 MSB LSB構氽頑黉碩饨荠龈话骛。 V100.7 V100.6 V100.5 V100.4 V100.3 V100.2 V100.1 V100.0 (13)字 相邻的两个字节组成一个字,VW100是由VB100和VB101组成的一个字,V为区域标识符,W表示字(Word),100为起始字节的地址。注意:VB100是高位字节。輒峄陽檉簖疖網儂號泶。 VW100 MSB LSB 15 0 V100.7----V100.0 V101.7---V101.0 (14)双字 相邻的4个字节组成一个双字,VD100是由VB100---VB103组成的双字,V为区域标识符,D表示双字(Double Word), 100为起始字节的地址。注意:VB100是高位字节。尧侧閆繭絳闕绚勵蜆贅。 VD100 MSB LSB 31 0 VB100 VB101 VB102 VB103 2. CPU存储区 (1) 输入过程映像寄存器(I) 输入过程映像寄存器是PLC接收外部输入的数字量信号的窗口。PLC通过光电偶合器,将外部信号的状态读入并存储在输入过程映象寄存器中,外部输入电路接通时对应的映像寄存器为ON(1状态),反之为OFF(0状态)。输入端可以外接常开触点或常闭触点,也可以接多个组成的串、并联电路。在梯形图中,可以多次使用输入位的常开触点和常闭触点。识饒鎂錕缢灩筧嚌俨淒。 (2) 输出过程映像寄存器(Q) 在扫描周期尾部,CPU将输出过程映像寄存器的数据传送给输出模块,再由后者驱动外部负载。在梯形图中,每一个输出位的常开触点和常闭触点都可以多次使用。凍鈹鋨劳臘锴痫婦胫籴。 (3) 变量存储区(V) 变量(Variable)存储器用来在程序执行过程中存放中间结果,或者用来保存与工序或任务有关的数据。 (4) 位存储区(M) 位存储器类似于继电器控制系统中的中间继电器,用来存储中间控制状态或其它控制信息。虽然名为“位存储区”,但是也可以按字节、字或双字来存取。恥諤銪灭萦欢煬鞏鹜錦。 有些编程人员习惯于用M区来作为中间地址,但是S7-200 的M区只有32个字节。如果不够用可以用V存储区来代替M存储区。可以按位、字节、字、双字来存储V区数据。如:V10.1,VB20,VW100,VD200等鯊腎鑰诎褳鉀沩懼統庫。 (5) 定时器存储区(T) 定时器相当于继电器控制系统中的中间继电器。S7-200 有3种定时器,他们的时间基准分别为1ms,10ms,100ms。定时器的当前值是16位有符号整数,用于存储定时器累计的时间基准量值(1-32767)。硕癘鄴颃诌攆檸攜驤蔹。 (6) 计数器存储区(C) 计数器用来累计其计数输入脉冲电平由低到高的次数。CPU提供加计数器、减计数器、加减计数器。计数器的当前值为16位有符号整数,用来存放累计的脉冲数(1-32767)。当计数器的当前值大于或等于设定值时,计数器被置为1。用计数器地址(例如C20)来存取当前值和计数器位。带位操作数的指令存取计数器位,带字操作数的指令存取当前值。阌擻輳嬪諫迁择楨秘騖。 (7) 高速计数器(HC) 高速计数器用来累计比CPU的扫描速率更快的事件,计数过程与扫描周期无关。其当前值与设定值为32位有符号整数,当前值为只读数据。(HC2)氬嚕躑竄贸恳彈瀘颔澩。 (8) 累加器(AC) 累加器是可以像存储器那样使用的读/写单元,例如可以用他来向子程序来传递参数,或从子程序返回参数,以及用来存放计算的中间值。CPU 提供4个32位的累加器(AC0、AC1、AC2、AC3),可以按字节、字、双字来存取累加器中的数据。按字节、字只能存取累加器中的低8位或低16位,按双字存取全部的32位,存取的长度由所用的指令决定。釷鹆資贏車贖孙滅獅赘。 例如在指令“MOVW AC2,VW100”中,AC2按字(W)存取。 (9) 特殊存储器(SM) 特殊存储器用于CPU与用户之间的交换信息,例如:SM0.0一直为1状态。 (10) 局部存储器(L) S7-200 有64个字节的局部(Local)存储器,其中60个可以作为暂时存储器,或者给子程序传递参数。如果用梯形图编程,编程软件保留局部存储器的后4个字节。如果用语句表编程,可以使用所有的64个字节。怂阐譜鯪迳導嘯畫長凉。 主程序、子程序、中断程序简称为POU(Program Organizational Uint,程序组织单元),个POU都有自己的局部变量表,局部变量只在它被创建的POU中有效。谚辞調担鈧谄动禪泻類。 (11) 模拟量输入(AI) S7-200将连续变化的模拟量用A/D转换成一个字长为(16位)的数字量。用区域表示符AI、和表示长度的W和起始字节的地址来表示模拟量输入的地址。因为模拟量输入是一个字长,应从偶数字节地址开始存放。例如:AIW2,AIW4等等,模拟量输入只为只读数据。嘰觐詿缧铴嗫偽純铪锩。 (12) 模拟量输出(AQ) S7-200将一个字长的数字用D/A转换成连续变化的模拟量,用区域标示符AQ、表示数据长度的W和字节起始地址来表示存储模拟量输出的地址。因为模拟量输出是一个字长,应从偶数字节开始存放。例如:AQW2、AQW4等等。模拟量输出值是只写数据,用户不能读取模拟量数值。熒绐譏钲鏌觶鷹緇機库。 (13) 顺序控制继电器(S) 顺序控制继电器(SCR)用于组织设备的顺序操作,与顺序控制继电器指令配合使用。 (14) 常数的表示方法和范围 常数值可以是字节、字、双字,CPU以二进制方式存储常数,常数也可以用十进制、十六进制、ASCII码或浮点数形式来表示。鶼渍螻偉阅劍鲰腎邏蘞。 表3 常数表示方式 常数 举例 十进制常数 20047 十六进制常数 16#4E4F ASCII码常数 ‘Text’ 实数或浮点数格式 23.5 -1.175E-20 二进制格式 2#10110101 (15) 实数 实数(REAL)又称浮点数,可以表示为,其中尾数M和指数E均为二进制数,E可能是正数,也可能为负数。 标准格式的32位实数可以表示为浮点数,式中指数e=E+127(1《e〈〈254)为8位正整数。 实数最高位(第31位)为符号数,最高位为0时为整数,为1时为负数。因为规定为数的整数部分总是为1,只保留了尾数的小数部分m(0~22位)。纣忧蔣氳頑莶驅藥悯骛。 浮点数的表示范围是。 (16) 字符串的格式 ASCII(美国信息交换标准码)是一种字符编码格式,用一个字节中不同的二进制值代表不同的字符。例如字母“A”的ASCII值为十六进制数41H,数字5的ASCII值是35H。颖刍莖蛺饽亿顿裊赔泷。 字符串由若干个ASCII码字符组成,每个字符占一个字节。字符串的第一个字节定义了字符串的长度(0-254),即字符的个数。一个字符串的最大长度是255,一个字符串常量的最大长度是128字节。濫驂膽閉驟羥闈詔寢賻。 字符串也能包括汉字编码,每个汉字的编码占两个字节。 3. CPU存储器的范围与特性 表:S7-200 CPU存储器的范围与特性 描述 CPU221 CPU222 CPU224 CPU224XP CPU226 输入映像寄存器 I0.0~I15.7 输出映像寄存器 Q0.0~Q15.7 模拟量输入(只读) AIW0~AIW30 AIW0~AIW62 模拟量输出(只写) AQW0~AQW30 AQW0~AQW62 变量存储器(V) VB0~VB2047 VB0~VB8191 VB0~VB10239 局部变量存储器(L) LB0~LB63 位存储器(M) M0.0~M31.7 特殊存储器(SM) SM0.0~SM179.7 SM0.0~SM299.7 SM0.0~SM549.7 特殊存储器(只读) SM0.0~SM29.7 SM0.0~SM29.7 SM0.0 SM0.0~SM29.7 定时器(T) T0 ~T255 计数器(C) C0~C255 高速计数器(HC) HC0~HC5 顺序控制继电器 S0.0~S31.7 累加寄存器 AC0~AC3 跳转/标号 0~255 调用/子程序 0~63 0~127 中断子程序 0~127 正负跳变 256 PID回路 0~7 串行通信口 端口0 端口0,1 表 3 S7-200 操作数范围 寻址方式 CPU221 CPU222 CPU224 CPU224XP CPU226 位存取 I0.0~I15.7 Q0.0~Q15.7 M0.0~M31.7 S0.0~S31.7 T0~T255 C0~C255 L0.0~L63.7 V0.0~V2047.7 V0.0~V8191.7 V0.0~V10239.7 SM0.0~SM165.7 SM0.0~SM299.7 SM0.0~SM549.7 字节存取 IB0~IB15 QB0~QB15 MB0~MB32 SB0~SB31 LB0~LB63 AC0~AC3 SMB0~165 SMB0~299 SMB0~549 字存取 IW0~IW14 QW0~QW14 MW0~MW30 SW0~SW30 T0~255 C0~255 LW0~LW62 AC0~AC3 VW0~2046 VW0~8190 VW0~10238 SMW0~164 SMW0~298 SMW0~548 AIW0~30 AQW0~30 AIW0~62 AQW0~62 双字存取 ID0~12 QD0~12 MD0~28 SD0~28 LD0~60 AC0~3 HC0~5 VD0~2044 VD0~8188 VD0~10236 SMD0~162 SMD0~296 SMD0~546
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服