设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
SCL语言FOR指令进阶应用:位置批量赋值
返回列表
发新帖
[西门子]
SCL语言FOR指令进阶应用:位置批量赋值
[复制链接]
37353
|
0
|
2024-3-15 07:47:23
|
显示全部楼层
|
阅读模式
PART.1
需求描述
在一个锂电池的企业中,有一个自动上下料的设备。该设备需要将生产好的锂电池,一个一个摆放到托盘当中。
该托盘为5*4的矩阵,其每个穴位的位置由X轴和Y轴的坐标确定。由于该产线会生成不同型号的产品,不同的产品会使用不同的托盘。要求通过位置1的坐标,快速得到2~20的坐标值。
PART.2
需求分析
在该托盘中,每个穴位在X方向和Y方向的间隔一致,X方向每个穴位间隔10mm,Y方向每个穴位间隔5mm。X方向的位置1~位置5的坐标为5、15、25、35、45,其规律为{X基准坐标+X间距*穴位间隔数}。Y方向的位置1、6、11、16的坐标为5、10、15、20,其规律为{Y基准坐标+Y间距*间隔层数}。
穴位的间隔数,可使用序号的余数可得,而层数的间隔,可使用序号的商可得。具体实现的思路,可以使用SCL语言的FOR循环指令进行位置批量赋值实现。
PART.3
项目编程
项目编程分为以下几个步骤:新建FB块、在FB添加变量、编写FB程序、调用FB程序。
(1)新建FB块
在博图的新建项目中,项目树下选择“添加新块”,选择“函数块”,在命名为“位置批量赋值”,选择语言为“SCL”,点击“确定”则实现了FB的SCL块的添加。如图1所示。
图1新建FB块
(2)在FB中添加变量
在“Static(静态变量)”中添加一个Real数据类型的二维数组,其中“0…19”表示的是1-20的位置,其中“0…1”表示的是X轴和Y轴的坐标。在“Temp(运行变量)”中添加一个Int数据。如图2所示。
图2在FB中添加变量
(3)编写FB程序
在SCL的编程区中,编写控制程序。如图3所示。
图3编写FB程序
(4)调用FB程序
将编写好的FB1块拖动到OB1中,会自动生成一个背景数据块。如图4所示。
图4调用FB程序
(5)调试仿真
仿真调试后,监控背景数据块,数组的状态如图5所示。
图5状态监控
PART.4
经验总结
本文通过SCL的FOR循环指令,实现了位置的批量赋值。使用FOR循环指令,可以实现批量性的、有规律的数据处理。以上就是本文的全部内容,更多关于本文的介绍、资料,请关注技成培训网S7-1200的进阶直播课程。
文章来源:技成培训网原创,作者:刘郴;未经授权禁止转载,违者必究!
扫描下方二维码↓↓↓免费获取【西门子全套】
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
babywalf
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』