【贝加莱PLC基础教学】3.AutiomationStudio编程基础

1.确认连接

是否连接PLC并非编程的必要选项,但是建议完成组态后就连接PLC并下载,确保组态正确性。

在我们通过online和setting连接到PLC后,在AS软件右下角会出现明显标志:绿色RUN。
在这里插入图片描述
如果出现的是OFFLINE,说明未连接上PLC:在这里插入图片描述
如果出现的是红色SERV,说明PLC故障,需要排查:
在这里插入图片描述
SERV状态排查方法:
点击Tools中的System Diagnostics Manager(SDM)
在这里插入图片描述
即可跳转到对应网页并展示设备状态:
在这里插入图片描述
点击HardWare中的error可发现缺失设备,再检查网线确实有断开,即PowerLink未与X20BC1083连接。
在这里插入图片描述
如果在SDM中发现没有明显Error,可以通过热重启或者冷重启来重新连接试试。

下面是热冷重启按钮:
在这里插入图片描述

2.拖入编程项目

点击左侧逻辑视图空白区域后,在右侧Toolbox中,找到Program并勾选,即可筛选出编程项目。
将自己需要的语言的编程项目拖入左侧逻辑视图即可。
在这里插入图片描述
这样Program和Program All in One的区别在于:
一个是初始化程序、循环执行程序和结束执行程序放置在不同cpp文件(推荐);而另一个是放置在同一个cpp文件。具体用法差别不大。
在这里插入图片描述
另外需要介绍的是,贝加莱中C或者C++编程和传统C和C++编程最不一样的是:
传统C语言一定有Main函数,而且从Main函数开始执行,但是贝加莱中是先执行Init函数,再一直执行Cyclic函数,最后执行Exit函数。
在这里插入图片描述

3.变量定义

插入项目后,我们需要定义变量(建议变量尽量定义在变量表中,因为程序中未在变量表中定义的临时变量无法被监视,难以查找bug,而且尽量定义在变量表中可以避免 变量重名的风险隐患。)

在Variables.var处右键可选择变量定义模式,可以选择自己喜欢的定义方法(比如表格也就是类似C语言定义 或者 文本也就是类似西门子数据块定义),可以自己尝试,这里使用表格举例。
在这里插入图片描述

打开Variables.var后右键添加变量Add Variable:
在这里插入图片描述
可以通过直接在Type处输入定义类型,也可以通过右侧小点的弹窗来选择类型:
在这里插入图片描述
简要介绍一下常用的类型和命名规范:

Type意义变量命名前缀命名示例(变量类型+意义)
INT整型iiNum
UINT无符号整型uiuiGrade
REAL浮点型r或者frCurrent
STRING字符串strstrSchoolName
BOOL布尔型bbIsTrue
全局变量ggTime
结构体变量结构体名结构体名_VariableName
指针变量ppRegister
数字量输入didiCurrent
数字量输出dodoCurrent
模拟量输入aiaiCurrent
模拟量输入aoaoCurrent

除了内置类型外,我们还可以封装自己定义的类型,比如结构体类型。
点击Types.typ,然后右键空白处,选择AddStructureType:
在这里插入图片描述
创建StructType后继续右键添加成员变量Add TypeMember:
在这里插入图片描述
比如定义如下MyTimeStruct变量:
在这里插入图片描述
记得定义以后,一定要Save All或者save,保存!否则在变量表中找自定义类型时可能没有。

定义完成以后我们需要去变量表中去定义它:
点击变量表,添加新变量,再点击类型中的省略号,在窗口中选择StructureType,右侧找到自己定义的MyTime,点击下面OK即可。
在这里插入图片描述
再点击保存。

4.使用变量

打开某cpp,比如Cyclic.cpp,在其中会一直循环执行的函数void _CYCLIC ProgramCyclic(void)中将,Variable.var展开的变量拖入cpp函数体中即可(或者手敲打字也可),结构体的成员变量需要使用成员变量指向符“.”来使用。
结果如下:
在这里插入图片描述
对于Cyclic的周期,可以通过在物理视图中,双击5PPC3100来修改,在右侧弹出中,拖动Program到对应Cyclic下保存即可。
在这里插入图片描述
一切都准备完成后可以下载:
在这里插入图片描述

下载完成后:
在这里插入图片描述

5.监视变量

打开监测模式
在这里插入图片描述
将鼠标置于变量上方即可监视变量数值:
在这里插入图片描述
或者是在程序中点击变量然后选择Open然后选择Watch,打开Watch窗口
在这里插入图片描述
再将变量拖入Watch窗口即可,如右侧所示(但是如果只看到变量,没看到Value,最大可能是Watch栏Name栏太宽,把分割线往左拉一下即可:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值