📱 手机上看不到完整课程(数字人讲师需要电脑浏览器的 3D 支持)。下面是这节课的图文讲解 + 音频,内容完全一样,手机上也能完整学完。想体验完整课程,用电脑打开这一页即可。
仍然在手机上试试完整课程
开场承接
0:37本节要做什么
- 数字写死了走多长、做几个、延时几秒都刻在程序里,改一次就要重下载一遍
- 数据寄存器用 D 存这些数字 —— 改参数只改一个数,程序一行都不动
- 改参数这是设备好不好用的分水岭:改参数不动程序
上一节的步进程序 · 数字还是写死的
前面五节,我们从一个按钮一个灯,做到启保停、定时器、计数器,上一节还用步进指令把上料、加工、下料串成了一条自动线。可是有个问题一直没解决:那条线里所有的数字,走多长、做几个、延时几秒,都是直接写在程序里的。哪天客户说标准长度从五十改成六十,就得打开电脑改程序、重新下载一遍。这一节我们讲数据寄存器,也就是 D,专门用来存这类数字。参数存进 D,改参数就只是改一个数,程序一行都不用动。
D 就是一个存数字的盒子
0:36D 是什么
- 数据寄存器一排排存数字的盒子,每个十六位(-32768~32767),编号 D0~D7999
- MOV放数字用 MOV K50 D10 —— 把 50 送到 D10
- 顺序前一个是要送的值、后一个送到哪儿,写反了直接报错
MOV K50 D10:把 50 送进 D10
先说 D 是什么。D 叫数据寄存器,说白了是一排排存数字的盒子,每个盒子十六位,能放负三万二千七百六十八到三万二千七百六十七之间的整数,编号从 D0 一直到 D7999。往盒子里放数字用 MOV 指令:MOV K50 D10,念作把五十送到 D10,前面是要送的值、后面是送到哪儿,顺序写反了程序直接报错。下面把这段程序下载进去,按一下运行,看看 D10 里是不是真的出现了五十。
参数与实测值分开存
0:38参数与实测值分开存
- 参数标准值放 D10、实测值放 D0,两个盒子分开互不打扰
- SM2首扫脉冲:只在上电第一个扫描周期接通,参数只装载一次
- 参数表改参数不动程序,靠的就是这套
参数 D10 与实测值 D0 分开存
刚才那个五十,其实就是一条参数。现场真正量出来的数,得另找一个盒子放,比如 D0,两个盒子互不打扰。图上第一行 LD SM2,SM2 是上电后第一个扫描周期才接通的首扫脉冲,用它把标准值 K50 装载进 D10,只装一次,以后你从面板上把 D10 改成六十,程序也不会给你刷回去。先按一下运行,再按一下 X0,量到的六十就写进 D0。参数一个盒子、实测值一个盒子,这就是数控设备里最常见的参数表。
怎么比(一)触点比较
0:38怎么比:触点比较
- 触点比较LD> 大于、LD= 等于、LD< 小于 —— 比较式直接画成触点
- 分选超长 Y0、合格 Y1、偏短 Y2,三个条件互斥只亮一个
- 改参数把 D10 从 50 改成 70,三个判断一起平移
触点比较:D0 与 D10 比出三档
数字会存了,接下来是怎么比。信捷有一类触点比较指令,把比较式直接画成触点:LD> 是大于、LD= 是等于、LD< 是小于。图上这几行就是一台分选机的逻辑。一开始 D0 是六十八,比参数 D10 的五十大,Y0 亮,判超长;让 D0 变成三十五,它就比五十小,Y2 亮,判偏短;回到五十,正好等于,Y1 亮,判合格,三个条件互斥。整套程序里唯一的数字就是 D10,改它一个,三个判断一起平移。
怎么比(二)CMP
0:36怎么比:CMP 指令
- CMPCMP D0 D10 M0 —— 一次把三个比较结果都给出来
- M0M0 大于 / M1 等于 / M2 小于,谁成立谁亮
- 两种写法触点比较直观,CMP 一次给全,现场两种都在用
CMP 一次给出 M0/M1/M2 三个结果
触点比较是一个条件一个触点,三个判断就要写三行。还有更省事的写法:CMP 指令。CMP D0 D10 M0,把 D0 和 D10 比一下,结果一次放进三个位里:M0 代表大于、M1 代表等于、M2 代表小于,谁成立谁亮,再拿它们驱动 Y0 到 Y2。一开始 D0 是六十八,M0 亮;变成三十五,换成 M2 亮;回到五十,M1 亮。触点比较直观,CMP 一次给全三个结果,两种写法现场都用。
三个坑 + 预告
0:38三个坑 + 预告
- 十六位最大 32767,K40000 会翻成负数 —— 大数要用双字 DMOV
- 不保持断电或停机就清零,要留住得用 HD 或 FD
- 参数表下一节:定时器和计数器的设定值也搬进 D
坑一:40000 进了十六位的 D0 变成负数
最后三个坑。第一,D 是十六位的,最大三万二千七百六十七。K40000 硬写进去,会翻成负的二万五千五百三十六,程序算出来全不对;要大数就用双字 DMOV,占两个相邻的盒子。第二,D 是不保持的,一断电、或者从运行切到停止,里面的数全清零,要记住的参数得用掉电保持的 HD,或者写进 FD。第三,D 存数字、M 存通断,别混着用。下一节我们做一张真正的参数表,把定时器和计数器的设定值也搬进 D。