全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > MEMS传感器 >

STL步进顺序程序的示例

时间:2023-08-10 14:07

人气:

作者:admin

标签: 步进控制  累加器  传感  STL 

导读:下图显示了一个站,用于将玻璃容器从托盘上移走。传送带再将托盘传送到站。...

编写步进顺序程序

下图显示了一个站,用于将玻璃容器从托盘上移走。传送带再将托盘传送到站。

当载有玻璃容器的托盘到达站时,传送带将停止运动,一个夹持器将从其基准位置 (P0) 移动到托盘上方的位置 (P2)。

当夹持器移动到托盘上方时,夹钳会打开,同时下降夹持器。

传感器将检测夹持器的实际位置和夹钳的状态。

在本示例中,夹持器的运动顺序由一个步进顺序程序进行控制。

当然,也可以编写更多的步骤,拿走这些瓶子,并在另一条传送带上传送。

b3b04862-373d-11ee-9e74-dac502259ad0.png

实施

下表列出了 PLC 变量表中所用操作数的声明:

名称 数据类型 备注
NUMBER INT 步进编号
Tag_Error BOOL 当步进编号大于 3 或其中一个步骤未执行时,将置位该操作数。

下表列出了代码块的块接口中所用操作数的声明:

名称 声明 数据类型 备注
POS_0 Input BOOL 夹持器位于基准位置 (P0)
POS_1 Input BOOL 夹持器位于位置 1 (P1)
POS_2 Input BOOL 夹持器位于位置 2 (P2)
GRIPPER_OPEN Input BOOL 夹钳打开
OUT_POS_1 Output BOOL 夹持器移动到位置 1
OUT_POS_2 Output BOOL 夹持器移动到位置 2
OUT_GRIPPER Output BOOL 打开夹钳
OUT_POS_3 Output BOOL 夹持器移动到位置 3

以下 STL 程序说明了如何实现此示例:

STL 说明
L "NUMBER" //将步进编号加载到累加器 1 中。
JL END //跳转列表开始
JU POSITION_0 //累加器 1 的值为“0”时,将跳转到跳转标签“POSITION_0”处。
JU POSITION_1 //累加器 1 的值为“1”时,将跳转到跳转标签“POSITION_1”处。
JU POSITION_2 //累加器 1 的值为“2”时,将跳转到跳转标签“POSITION_2”处。
JU POSITION_3 //累加器 1 的值为“3”时,将跳转到跳转标签“POSITION_3”处。
END: JU ERROR //跳转列表结束
//步进编号大于 3 时,将跳转到跳转标签“ERROR”处。
POSITION_0: A #POS_0 //跳转标签“POSITION_0”
//扫描检查夹持器是否位于基准位置 (P0)。
= #OUT_POS_1 //如果是,则置位输出“OUT_POS_1”并将夹持器移动至位置 1 (P1)。
JCN ERROR //RLO 为“0”时,将跳转到跳转标签“ERROR”处。
JC NEXT //RLO 为“1”时,将跳转到跳转标签“NEXT”处。
POSITION_1: A #POS_1 //跳转标签“POSITION_1”
//扫描检查夹持器是否位于位置 1 (P1)。
= #OUT_POS_2 //如果是,则置位输出“OUT_POS_2”并将夹持器移动至位置 2 (P2)。
JCN ERROR //RLO 为“0”时,将跳转到跳转标签“ERROR”处。
JC NEXT //RLO 为“1”时,将跳转到跳转标签“NEXT”处。
POSITION_2: A #POS_2 //跳转标签“POSITION_2”
//扫描检查夹持器是否位于位置 2 (P2)。
= #OUT_GRIPPER //如果是,则复位输出“OUT_GRIPPER”并打开夹钳。
JCN ERROR //RLO 为“0”时,将跳转到跳转标签“ERROR”处。
JC NEXT //RLO 为“1”时,将跳转到跳转标签“NEXT”处。
POSITION_3: A #POS_2 //跳转标签“POSITION_3”
//扫描检查夹持器是否位于位置 2 (P2)。
A #GRIPPER_OPEN //扫描检查夹钳是否打开
= #OUT_POS_3 //如果是,则置位输出“OUT_POS_3”并将夹持器移动至位置 3 (P3)
JCN ERROR //RLO 为“0”时,将跳转到跳转标签“ERROR”处。
JC NEXT //RLO 为“1”时,将跳转到跳转标签“NEXT”处。
NEXT: INC 1 //跳转标签“NEXT”
//将累加器 1 中的步进编号加 1。
T "NUMBER" //将步进编号传送到操作数“NUMBER”中。
L 3 //将当前的步进编号移送到累加器 2 中。
//将值 3 加载到累加器 1 中。
>I //扫描检查当前的步进编号是否大于 3。
JC RESET_NUMBER //如果扫描结果为“1”,则跳转至跳转标签“RESET_NUMBER”处并继续进行程序处理
BEU //块结束
RESET_NUMBER: L 0 //跳转标签“RESET_NUMBER”
//将值“0”加载到累加器 1 中。
T "NUMBER" //将值“0”分配给操作数“NUMBER”(步进编号)。
BEU //块结束
ERROR: NOT //跳转标签“ERROR”
= "Tag_Error" //将 RLO 取反后分配给操作数“Tag_Error”。
BEU //块结束






审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信