【贝加莱PLC基础教学】2.5.AutiomationStudio基础编程与仿真

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

 系列文章目录

【贝加莱PLC基础教学】1.AutiomationStudio软件安装_学不会编程炸糕的博客-CSDN博客

【贝加莱PLC基础教学】2.AutiomationStudio软件组态-CSDN博客

【贝加莱PLC基础教学】2.5.AutiomationStudio基础编程与仿真_学不会编程炸糕的博客-CSDN博客

【贝加莱PLC基础教学】3.AutiomationStudio编程基础-CSDN博客

【贝加莱PLC基础教学】4.AutiomationStudio界面交互与仿真-CSDN博客

【贝加莱PLC基础教学】Q&A_Simulink生成AutomationStudio代码常见问题-CSDN博客


前言

        显然,绝大多数时候,我们并非都是在联机环境上进行编程。所以,有效的掌握仿真技能格外重要。接下来将从组态开始到编程实现来简要的了解仿真的一系列操作,有助于读者更好的了解和使用贝加莱AS仿真功能。


表1.文章修改记录表
时间内容
2023.10.14初次撰写仿真基础功能
2023.10.15

1.修改了ST语言代码部分的错误:IF iNum=100 THEN 而不是 IF iNum :=100 THEN

2.加入了连接仿真器的步骤;

3.修改部分错别字

2023.11.16

1.强调了创建工程时路径的规范性,避免汉字,避免数字开头

2.加入了系列文章目录,方便跳转

一、组态

组态就是在软件上描述硬件配置的信息。硬件配置和计算机配置一样,一般包括CPU处理器,显示屏以及其他从站模块等。

【贝加莱PLC基础教学】2.AutiomationStudio软件组态-CSDN博客 文章内容中描述了AS软件如何进行硬件组态的方法,这里再简要的提及一下:

以仿真而言,并不需要多么完备的组态,但是如果是需要和实机通讯一定要选择正确且完备的组态!以某大学自动化学院实验室为例,实机组态如下:

其中对应的各实体设备如下:

在本次仿真实验中,可以使用该硬件组态,一劳永逸;也可以选择先创建一个屏和一个CPU简单练习。本次先简单练习一下。

1.1 简单组态练习

首先第一步,如果没有新建工程就新建工程,如下。如果有工程比如已经按【贝加莱PLC基础教学】2章节中完成了组态配置的可以使用对应工程,即可跳过简单组态练习。(避免路径中出现数字开头的不规范命名,应采用字母或者下划线开头的正确路径

第二步,选择Define a new hardware configuration manually,手动定义配置;或者选择导入一个存在的配置(在其他Project工程中选择hw文件即可,实验室实体设备上做不同项目使用较多)。

第三步,找到5AP1130.156C这个型号的屏,可通过Panel PC3100标签过滤。

第四步,找到5PPC3100.KBU1型号的CPU处理器。再点击Finish即可。

对于仿真而言,以上内容已经完全足够。甚至可以选择任意处理器等,本次仿真练习很简单,基本不需要硬件约束,意思就是选啥都可以。

二、编程

编程教学一些比较简单的内容,主要是学习基础方法。

2.1 选择编程块

不同编程块最本质的区别在于语言和语法的不同。其次是Init

第一步,选择左侧LogicalView视图,点击上面空白处。

第二步,在右侧Toolbox中找到Program。

第三步,选择其中某个Program,双击或者向左拖动到LogicalView视图中。普通Program和All In One Program的区别在于主要函数(Init函数、Cyclic函数以及exit函数)是否在同一个文件中,这里推荐使用普通Program,因为函数以文件形式分开,有利于代码复杂时浏览。这里将以C++Program为例,也会使用贝加莱PLC主推的ST语言进行举例。

2.2 添加局部变量

局部变量即只能在该Program中使用的变量,在该Program变量表中定义的变量无法在其他Program中使用。

第一步,选中变量表Variables.var在右侧弹出的窗口中右键选择添加变量Add Variable。

第二步,我们在此处添加局部变量 iNum、bLight 如下(其中Constant为常量勾选;Retain为掉电保持,即PLC断电再上电后变量将继续当前值,并非从初始值重新开始;Value为默认值设置)定义变量后一定记得全部保存!随手保存是一个好习惯!很多设置都需要保存或者保存后关闭重开窗口刷新才能生效

第三步,我们可以尝试定义一下全局变量,在Logical View的Global.var中定义一个无符号整型giCount。

2.3添加库和使用库函数

使用库函数可以简化很多的底层代码编写,其中有的库函数比较复杂需要利用Help文档来学习。先介绍Help文档的使用方法:主流的一种是在最上方菜单栏中选择Help和Search,然后搜索关键词即可。或者是鼠标悬停在不懂的地方然后按F1也可以快速跳转到Help

再介绍如何添加库和如何使用库函数。

第一步,在logicalView中点击空白或者Libraries。然后选择B&R Libraries,从中找到MTBasic库,其中内置PID函数,对控制工程十分重要。

第二步,添加库以后我们可以利用库函数完成功能编写。比如在Program的cyclic.cpp函数中我们可以点击编码窗口左上角FB来加入库函数:

2.4 基础编程

正常按C语言或者ST语言编程即可。如下展示一份Cyclic.cpp文件中相关代码,功能为按Program循环周期计数加一,到100时清零并计数。

void _CYCLIC ProgramCyclic(void)
{
	// Insert code here 
	iNum = iNum + 1;
	if(100==iNum)
	{
		giCount += 1;
		iNum = 0;
	}

}

ST语言的编程如下所示:


PROGRAM _CYCLIC
	(* Insert code here *)
	iNum := iNum + 1;
	IF iNum=100 THEN
		iCount:=iCount+1;
		iNum:=0;
END_PROGRAM

三、仿真 

简单介绍仿真和监视变量的功能以及操作,这是后续HMI练习与仿真的基础。

第一步,开启仿真ARsim。

 第一点一步,(连接仿真器),点击上方菜单栏中的Online--Setting,然后点击类似放大镜找芯片一样的图标(就在OnlineSetting下方),然后选择这个127.0.0.1的仿真器右键Connect,这样连接以后才能检查仿真是否开启。

第二步,检查仿真是否开启,出仿真启动完成的标志为AS软件右下角的OFFLINE变为如下图所示的 ARsim RUN。

第三步,在电脑底端窗口栏右侧小图标处应出现相关的ARsim仿真图标,记得ARsim仿真需要每四小时重启一次,如果代码有问题导致仿真卡死也最好重启,然后检查代码。

第四步,下载代码到仿真器中。选择Transfer按钮(在工具栏Tools下方)或者按Ctrl+F5,然后在弹出的页面中选择Transfer即可。

第五步,选择Monitor按钮进入监控模式,此时AS软件整体界面会变为深灰色。

第六步,监控变量,监控变量的方法有两种,第一种是在监控模式下鼠标悬停在变量上即可监控看到变量的值;第二种需要在LogicalView视图的Program上右键选择Open--Watch,然后将变量表中的变量拖入Watch窗口中。

监控结果在Watch弹窗中如下所示:


总结

        本文仅仅简单介绍了AS软件基础编程和仿真的使用,AS软件中很多的按钮和窗口可以在学习的过程中自己去探索。

组态练习方面可以参考【贝加莱PLC基础教学】2.AutiomationStudio软件组态-CSDN博客 其中涉及到软件包升级的内容可以先无视,从仿真出发提高对软件的了解,本文相对来说较为简单适合入门。

还有一些关于软件安装和联机编程验证的参考如下:

【贝加莱PLC基础教学】3.AutiomationStudio编程基础-CSDN博客

【贝加莱PLC基础教学】1.AutiomationStudio软件安装_学不会编程炸糕的博客-CSDN博客

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值