查看: 1173|回复: 7
收起左侧

[综合] 通用中型PLC软件入门教程-库文件介绍

lirui 2020-2-23 16:48:23 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
本帖最后由 lirui 于 2020-2-23 21:23 编辑

image.png image.png
image.png

1.1 初识库文件
在InoProShop中常会遇到的一个问题是,一些函数或功能块能够找到并可调入编辑区,但打开后发现是一个空框,输入/输出引脚没有对应,甚至有时根本就没有输入/输出引脚。其根本原因就是库文件问题所致。在编程中库文件的调用非常重要。
先认识一下哪些是库文件。首先,用户在使用LD语言(梯形图)编程时,最右边工具箱中的指令块就是库文件的内容,只是以组件的形式表现。
image.png
其次,使用ST语言编程时,会用右键到跳转指令查找功能块或函数变量申明的类型,比如跳转到MC_Power的申明,再次跳转,即可找到该功能块对应的库文件夹列表 ,如下图所示。
image.png
库文件用于存放InoProShop中可多次使用的程序组织单元(POU)。这些POU可以从已有的项目中复制到库中, 用户也可以直接新建库项目,在项目中自己定义库。项目中使用的库文件通过库管理器进行管理。如果在InoProShop下的库中存放有用户希望多次调用的功能块、函数或程序时,可以节省大量的编程时间,并提高效率。 InoProShop标准软件包中已经包括标准库文件,双击库管理器如图所示。
image.png

1.2 库文件及其分类
库文件除了是函数、 功能块和程序的集合, 其中还包含一些特殊定义的结构体,枚举类型等。
从功能上分可以将库文件分为系统库文件、应用库文件以及厂家自定义库文件。默认的函数库文件是“.library*”,加密库的扩展名为*.compiled-library。
1)系统库文件
该库文件是一个支持InoProShop软件系统的文件,它包括对软件结构和语法编写的支持以及标准I/O的支持。通常该文件库会在软件启动后自动导入到控制器中,不需要手动添加。
2)应用库文件
Util:包含了各种数学运算功能,位操作指令及控制器等功能。
Standard:包括定时器、计数器、边沿检测及双稳态触发器等函数及功能块。
该功能是作为一台PLC必备的功能,因此在打开InoProShop后会自动调入该库文件。其他的一些需按要求导入的应用库文件如:Toolbox、PLCopen等,这些库文件都需要用户根据实际需求来进行添加。如下图所示。
image.png
3)厂商自定义库文件
它是根据不同生产厂商硬件设备的环境而配置的应用库。通常,只有使用该生产厂商的硬件才能匹配对应的库文件。故使用前需要详细阅读该库文件的说明文档。

1.3 库文件的管理
        库管理器显示与当前项目有关的所有库。库的POU、数据类型和全局变量,都可以像用户定义的POU、数据类。库管理器通过“Library Manager”(库管理器)命令打开,包括库在内的有关信息和项目一起进行保存。
(1)库文件的安装
        如需安装计算机上的库文件或供应商所提供的库文件进行调用,则需要使用到库文件管理。库文件管理是通过使用菜单命令“工具”-->“库”来定义的,下图为库文件管理视图。
image.png
在图中的主窗口显示的是目前已安装的库文件,并可以看到提供这些库文件的供应商。已安装的库文件已按功能类型进行分组,罗列的有应用类、通讯类、控制器类、设备类、系统类等。
在使用一个库文件之前,必须先在“库”对话框中对其进行“安装”。安装后,才可以在项目中调用该库。共有三种类型的库文件可供用户安装,如图。
image.png
其中CodeSys库文件是为了版本向下兼容,可加载V3.0版本以下的库文件。另外两种库文件的区别如下:
1)编译的库文件
        “*.compiled-library”是被保护的库文件,供应商由于出于对源代码知识产权的保护,编程人员不能直接打开库文件获取其源代码,但拥有权限正常调用库中所有的函数及功能块。
2)标准库文件
        所有包含外部指令和内部功能块的执行代码都存放在“*.library”之中,该库文件格式也是InoProShop标准类型的功能库文件格式。可使用CoDeSysV3.x打开库文件对其中的功能块或外部指令的执行程序进行修改。但当相应库装载到PLC中后,占用用户程序空间较大。
(2)库文件的添加
安装过库文件后,需要在项目中对库文件进行添加才能调用其中的函数或功能块等,此时需要使用库管理器实现此功能。
image.png
需要注意的是有些库的有很多对应版本,通过添加之后需要查看当前安装的库是否是新装入的库,如果不是,可以通过占位符进行修改,如下图。 image.png
1.4 创建自定义的库文件
除了生产厂商提供的库文件,用户自己也可以根据工作经验,把常用的函数或功能块整理出来,建立属于自己的库文件,便于应用至其他项目,具体创建库文件的步骤如下:
(1)建立库文件的准则。
1、定义一个合适的库文件名
2、基于CoDeSysV3.x的库开发模板进行开发,以保持库文件格式的一致性
3、尽可能的输入详细的工程信息
4、合理的借鉴其他已有的库文件格式及规范
5、开发是需要设计可供外部和内部使用的接口
6、加载用户界面友好的故障处理
7、选择合适的手段保护开发者的源代码
8、变量名应遵循匈牙利命名法,使程序更整洁及保持一致性
9、当需要修改库文件时,在编译新版本之前,需要考虑到I/O接口的兼容性问题,防止使用新库文件时,I/O接口不匹配,导致编译出错
(2)开始创建库文件项目
使用菜单命令“文件”-->“新建工程”-->“函数库”-->“Inovance Library”,在图中的“3”处输入库的名称,选择完毕后,点击“确定”后则会自动生成一个新的库文件,具体步骤如图所示。
image.png
(3)进入设置主界面
建立库文件后,则可显示主界面,其框架主要包括枚举数据类型,功能块,函数全局变量,接口,结构体等,用户可以基于该结构在其文件夹下进行内容的扩展,如图。
image.png
(1)库管理器,用户也可以在此添加和调用其他的库文件。
(2)工程信息设置,双击““项,可以编辑库文件的所属公司、库文件标题,版本号,作者名和库的简要说明等信息,如下图所示。
image.png
(4)建立POU
如图所示,在库文件中建立自己的函数及功能块:编程人员可在标准库模板框架下将自己编写好的库文件对应内容添加在其对应文件夹下。
将用户自定义的计数功能块FB_COUNT添加在Function Block文件夹下,该文件夹名可以根据编程人员实际分类进行编辑。以FB_COUNT计数功能块为例,如图所示。
image.png
(5)编译检查及保存
a)“编译”-->“检查所有池对象”,检查是否有语法等其他编译错误。
image.png

b)确定没有错误后,点击如图中的黄色按钮“安装”,保存工程,并装入库后,即可实现对库文件的保存,保存后的文件格式为“. library ”,该文件安装添加后可以在用户工程中打开FB_COUNT功能块的实现内容(如图)。
image.png
c) 文件-将工程保存为编译库,保存后的文件格式为”.compiled-library”(该文件安装添加后在用户工程中不能打开具体的实现内容)。
d)上述步骤完成后,即可保存库文件,并退出。在新的项目中即可安装此库文件,通过选择“工具”菜单中的“库”来进行安装。(注意安装两种格式文件的区别)
image.png
安装完毕后,需要在项目中的库管理器中进行添加,添加后可以可根据名称分类,来最终选择要添加的库。添加后即可在项目中查看自定义库中的功能块,如图所示。
image.png
(6)在用户程序中调用创建的FB_COUNT功能块,调试结果如下。
image.png


InoProShop库文件.pdf

2.67 MB, 下载次数: 41

售价: 3 水滴  [记录]

<
回复 邀请回答送花

使用道具 举报

曾雪峰 2020-2-23 18:41:51 来自手机 | 显示全部楼层
实用,经常来学习
回复 送花

使用道具 举报

Inovance 2020-2-23 19:49:30 | 显示全部楼层
支持支持
回复 送花

使用道具 举报

wenpian 2020-2-24 08:07:32 | 显示全部楼层
先收藏,说不定以后用上
回复 送花

使用道具 举报

zhu 2020-3-10 20:27:58 | 显示全部楼层
收藏一下
回复 送花

使用道具 举报

likun8526 2020-5-17 23:00:53 | 显示全部楼层

实用,经常来学习
回复 送花

使用道具 举报

15122486688 2020-5-18 15:58:05 | 显示全部楼层
支持!!!
回复 送花

使用道具 举报

a53336 2020-5-19 19:13:20 | 显示全部楼层
实用,经常来学习
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

汇川控制技术 公众号

全国服务热线:8:30-17:30

400-777-1260

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市宝安区留仙二路6号鸿荣源鸿威工业区E栋

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部