1.D元件简介
前面一章节写过了,复制上来……
D元件就是数据寄存器,一个D元件能装下16位的数据。咱们小型PLC中数值都是带符号的。所以1个D元件示意的数据范畴就是:-2^15 到 2^15 -1也就是-32768到32767,超越这个范畴的一个D元件就装不下了。
数据类型 | 说明 | 数据范畴 |
---|---|---|
16位整型 | 占1个D元件 | -2^15-2^15-1 |
32位整型 | 占2个D元件 | -2^31-2^31-1 |
32位浮点型 | 占2个D元件 | 范畴很大,有兴味自行百度…… |
若驳回32bit 指令,则智能将相邻的2 个寄存器组成为32bit 寄存器经常使用,地址较低的为低字节,而地址较高的为高字节。例如将100000放到D200数据寄存器中,实践上数据寄存在D200,D201中,其中D200为低,D201为高。
低位可用奇数或偶数的恣意一种软元件编号指定,思考到中心设施的监督配置, 倡导低位驳回偶数软元件编号。
H3U的:
普通咱们只罕用D元件启动名目编程,当D元件不够用的时刻,可以思考经常使用R元件(和D用法如出一辙)。变址寄存器我目前名目中素来都没用到过,到目前为止我做的名目中D元件数量没用到超越50%的,所以普通状况下D元件是够用的。
SD元件为不凡寄存器(不凡状况用),见《H3U系列可编程逻辑管理器指令及编程手册》P677页,便捷看一下即可……
不同型号寄存器数量是有区别的,详细请查阅用户手册
经过参数可设置掉电坚持范畴(PS我也没找到哪个参数设置……)普通状况自动即可, 关于H2U和H3U自动就是D0-D511都是掉电坚持的。
1.注:具备CANlink3.0配置的H1U-XP(26128版本及以上)和H2U-XP(24137版本及以上)以及H3U,因该配置占用D7000-D7999的D元件,D7000-D7999不准许用户经常使用!
2.以下一切软元件其接点信号(常开型、常闭型,回升沿,降低沿)在用户程序中都可有限次经常使用。
2.最罕用MOV赋值指令简介(必用)
MOV指令是“传送指令”,也可了解成“赋值指令”。MOV A B,意思就是把十六位整型数据A的值赋值给B(把A的值复制给B),相似于C言语中的 “ = ”或许ST文本中的“ := ”。
2.1 十六位整型赋值指令MOV
H123U/H123S/H5U通用指令
,其 DMOV S D,指令中的 数据源和目标地寄存器 范畴分歧,可以是D,R,SD,KnX,KnY,KnM,T,C……如上图箭头所示
2.2 三十二位浮点赋值传送指令DEMOV
32位浮点型传送指令是DEMOV, 注:带灰色底纹软元件,示意可支持。数据类型 | 指令 | 经常使用 | 说明 |
---|---|---|---|
十六位整型数据 | MOV K20 D100 | 把十进制数据20赋值给D100数据寄存器(占1个D元件) | |
32位整型数据 | DMOV K100 D102 | 把十进制数据100赋值给D102,占2个D元件(低16位D102,高16位103) | |
32位浮点型数据 | DEMOV E200.0 D104 | 把浮点数200.0赋值给D104寄存器(占2个D元件) |
2.3 罕用数据进制标识前缀
数据位数 | 标识 | 说明 |
---|---|---|
十进制 | 放在数字前面,代表前面的数值十进制 | |
十六进制 | 放在数字前面,代表前面的数值是十六进制 | |
浮点数 | 放在数字前面,代表前面的数值是浮点数 |
3.其余适用传送指令(用的较少,偶然用)
3.1批传送BMOV(手册P166)
3.2数据一对多传送FMOV(手册P167)
更多详细传送指令常识,请参考《H3U系列可编程逻辑管理器指令及编程手册》P163
4.经常使用D元件保留数据### 4.1保留整型、浮点型到D寄存器【见例程网络1】
十进制数据用K扫尾,十六进制数据用H扫尾,浮点型数据用E扫尾。关于进制关系消息,请参考第二章节 H300124,为十六进制数据,经常使用win7自带的计数器,转换成十进制为K3146020。
MOV : 16位整型数据传送指令(16位整数赋值指令)DMOV :32位整型数据传送指令(32位整数赋值指令)DEMOV:32位浮点型数据传送指令(32位浮点型数据赋值指令)
M8000代表着小型PLC系统底层程序初始化终了,系统运转反常标记。这里是将放在D元件里的值,赋值到另一个D元件。须要留意的是“目标D元件”与“源D元件”的数据类型应当是分歧的,不然或许会在后续的程序运转中造成程序出错。
4.2将位元件形态传送到D寄存器
MOV K4M0 D30,意思是从M0开局到M15为止,总共16个M位元件,组成一个16位整型数据赋值给M30。
K1M0,代表的就是M0,M1,M2,M3K2M0,代表的就是M0,M1,M2,M3,M4,M5,M6,M7组成的数据K3M0,代表的就是M0,M1,M2,M3,M4,M5,M6,M7……,M10,M11组成的数据K4M0,代表的就是M0,M1,M2,M3……M14,M15组成的数据……K7M0,代表的就是M0……M31组成 的数据。
这里须要留意的是小型PLC中1个D元件代表的是16位有符号整型数据,最高位也就是bit15代表的是符号位。2个D元件,32位数据的bit31代表的是符号位。
D30对应的数据是K16424,转换成二进制数据为:100000000101000,对应的bit3,bit5,bit14均为1即为程序set M3,SET M5,SET M14
MOV指令为16位整型数据赋值,DMOV为32位整型数据赋值。关于位操作而言,不存在将位数据转换到浮点数中。
〔MOV D10 K4M80〕另外还支持逆操作,可以将16位D元件内的数据转换到M位元件中
4.3定时器、计数器赋值到D寄存器
这种用法很少用,普通名目中都不经常使用。。仅通知大家有此用法
4.4批传送与1对多传送案例
用的比拟少,仅做了解,失掉更多常识,请参考手册
5.练习题
1.汇川小型PLC中1个D元件保留的数值范畴是多少?2.16位数据的占几个D元件,范畴是多少?3.浮点数占几个D元件?4.将K40000,保留到D200寄存器,用哪个指令?占几个D元件,其范畴是多少?5.DMOV H16 D20,D20中保留的数据换成十进制后是多少?
发表评论