0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

博途用户自定义库的使用

jf_61nrsJTz 来源:方正智芯 2023-12-25 10:08 次阅读

博途官方提供了很多库,比如:基本函数库、通信库、安全库、驱动库等等,用户可以使用库中的函数/函数块来完成具体的控制任务。除了官方的库,我们也可以创建自己的库(用户自定义库)。比如,把项目中经常使用的函数/函数块/数据类型等存放到自定义库中,方便自己使用及与别人共享。博途具有很强的库管理功能,包括:库版本管理,库的更新及清扫等等。本系列文章我将给大家介绍项目库、全局库、库的更新/清扫等功能,今天这篇文章,我们先来介绍项目库。

博途的库可分为两类:项目库和全局库。

项目库:顾名思义,与具体的项目相关联。打开任意一个博途项目,在其右侧的“库”任务卡中都有一个“项目库”的窗格(虽然它可能是空的)。项目库随着博途项目的打开而打开,随着项目的关闭而关闭,它没有单独的存放路径;

全局库:顾名思义,在全局范围可用,它并不属于某个项目。全局库有单独的存放路径,可被打开/关闭,也能像博途项目一样归档(后续文章详细介绍);

项目库和全局库在“库”任务卡中的布局如下图所示:

00418bb6-a2b2-11ee-8b88-92fbcf53809c.png

在上图的【项目库】中 ,我们看到有两个节点:类型和模板副本。

1、类型(types)

类型是一种模板,在其中可以存放函数/函数块/用户自定义数据类型。“模板”就像一个模具,由它复刻出的函数/函数块/用户自定义类型等被称为其“实例”。如果你有面向对象编程的基础,可以把这里的“类型”理解为面向对象编程的“类”,由它复刻的即为其“实例”。将项目中的函数/函数块/数据类型通过拖拽的方式放到【类型】节点就会自动创建其“类型”。反之,从【类型】节点中将元素拖放到项目中会自动创建其“实例”。比如下面这张图是我自定义的库,其中“类型”中很多函数/函数块来自我之前文章的用SCL语言编写的代码:

004f2104-a2b2-11ee-8b88-92fbcf53809c.png

注意:这里的函数/函数块图标的右上角都有一个小的黑色三角形,与普通的函数/函数块图标是不同的,表示这是一个“类型”。顺便说一句,我之前写的SCL函数/函数块的名称都是以“FBxxx_<功能描述>”的格式命名,其中“xxx”表示函数块的编号,比如“FB5011_BubbleSort”。这种命名格式其实是延续经典Step7的风格,因为在经典Step7环境下,函数/函数块的编号是比较重要的,不能有重复。但是在博途环境下,即使函数/函数块的编号有重复,编译时开发环境也会自动帮我们处理(重新编号)。因此,函数/函数块的编号已经不太重要的,更关心其名称。所以,在我的用户库中我采用了新的命名规则,采用小写单词+下划线的方式命名(也被称为下划线命名法)。另外博途还支持分组,可以把功能类似的指令放到同一组,方便管理。

类型中的实例不能单独修改,需要修改时要对模板进行修改,然后发布新的版本。

2、模板副本(Master Copies)

模板副本就是项目中函数/函数块/数据类型的副本(拷贝),从项目中将相应的元素拖放到【模板副本】节点就自动创建一个同名的副本,其作用相当于备份。与类型不同,模板副本可被单独修改,当其对应的函数/函数块/数据类型发生变更时它也不会自动更新。

当项目库创建完成后,可以通过更新的方式将其同步到指定的全局库中。关于项目库就先介绍到这里,下一篇文章介绍全局库。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61309
  • 代码
    +关注

    关注

    30

    文章

    4555

    浏览量

    66767
  • SCL
    SCL
    +关注

    关注

    1

    文章

    238

    浏览量

    16875

原文标题:博途用户自定义库的使用(1)-项目库

文章出处:【微信号:方正智芯,微信公众号:方正智芯】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    NIOS II自定义指令设计之实例篇

    在【原创】SOPC用户自定义指令设计之软件篇  和【原创】SOPC用户自定义指令设计之硬件篇 中分别讲述了自定义指令在软
    发表于 03-27 17:56 3025次阅读
    NIOS II<b class='flag-5'>自定义</b>指令设计之实例篇

    Maxwell中两种用户自定义材料库的实现方法

    Maxwell支持两种用户自定义材料库。一种是User Library(UserLib),另一种是Personal Library(PersonalLib)。UserLib通常是一个网络存储库,企业
    的头像 发表于 12-14 17:33 2203次阅读
    Maxwell中两种<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>材料库的实现方法

    Zynq Petalinux编译用户自定义系统

    Design Flow Step Hardware Platform Creation Create PetaLinux Project Initialize PetaLinux Project Configure System-level Options Create User Components Configure the Linux Kernel Configure the Root Filesystem Build the system Test the System Deploy the System Tool/Workflow Vivado petalinux-create -t project petalinux-config --get-hw-description petalinux-config petalinux-create -t COMPONENT petalinux-config -c kernel petalinux-config -c rootfs petalinux-build petalinux-boot petalinux-package If you are using a 64-bit Linux host, you must install the appropiate 32-bit compatablelibraries. Ple
    发表于 02-08 01:17 303次阅读

    特斯拉允许其用户自定义喇叭声

    几十年不变枯燥单调的汽车喇叭声,终于要有新鲜感了。
    的头像 发表于 12-27 10:27 2063次阅读

    ADG5243F 用户自定义故障保护和检测、 0.8 pC Q INJ 、三通道单刀双掷开关

    ADG5243F 用户自定义故障保护和检测、 0.8 pC Q INJ 、三通道单刀双掷开关
    发表于 03-21 14:39 6次下载
    ADG5243F <b class='flag-5'>用户</b><b class='flag-5'>自定义</b>故障保护和检测、 0.8 pC Q INJ 、三通道单刀双掷开关

    ADG5462F:用户自定义故障保护和检测、 10 RON、四通道保护器

    ADG5462F:用户自定义故障保护和检测、 10 RON、四通道保护器
    发表于 03-21 14:43 0次下载
    ADG5462F:<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>故障保护和检测、 10  RON、四通道保护器

    最新DLSS SDK更新支持新用户自定义选项,提供Linux支持并简化访问

    如今,NVIDIA能让开发者比以往任何时候都更加容易、灵活地访问深度学习超级采样(DLSS)并将这项技术应用到他们的游戏中。最新DLSS SDK更新(2.2.1版)支持新用户自定义选项,提供
    的头像 发表于 08-04 09:28 1465次阅读

    Nodemcu上使用Mongoose OS:用户自定义配置

    通过http使用RPC服务
    发表于 12-17 18:01 0次下载
    Nodemcu上使用Mongoose OS:<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>配置

    苹果WWDC22:iOS 16支持用户自定义锁屏界面

    苹果推出iOS 16,新增自定义锁屏功能,用户只需长安便可以自由定义锁屏界面的元素,包括锁屏壁纸、字体样式、应用小组件等。 来源:苹果WWDC22
    的头像 发表于 06-07 09:42 1008次阅读
    苹果WWDC22:iOS 16支持<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>锁屏界面

    如何自定义函数或局部脚本

    系统函数是所有随 WinCC 一同提供的函数。系统函数可应用在函数列表、用户自定义函数或局部脚本中。
    的头像 发表于 10-10 10:45 1066次阅读

    用户自定义类型

    SystemVerilog还为工程师定义新的数据类型提供了一种机制。用户定义的数据类型允许从现有数据类型创建新的类型定义
    的头像 发表于 02-09 14:53 787次阅读
    <b class='flag-5'>用户</b><b class='flag-5'>自定义</b>类型

    博途PLC1200/1500PLC用户自定义数据类型(UDT)

    用户自定义的数据类型可以包含基本数据类型(例如,INT bool string),以及 数组 ,结构体,以及PLC的专有数据类型等,而且用户自定义数据类型中也可以再包含另外一个
    发表于 04-20 09:46 5次下载
    博途PLC1200/1500PLC<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>数据类型(UDT)

    创新发布|Moku:Pro云编译实现用户自定义仪器测量功能!

    Liquid instruments推出创新功能云编译, 用户可通过此功能对Moku:Pro的FPGA进行编程,编写自己的VHDL代码在Moku:Pro 平台上实现自定义数字信号处理。与基于CPU
    的头像 发表于 03-16 13:49 238次阅读
    创新发布|Moku:Pro云编译实现<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>仪器测量功能!

    博途用户自定义库的使用之全局库

    有两个子节点:类型及模板副本。类型是一种模板,相当于面向对象编程中的“类”,模板副本是项目代码的拷贝;
    的头像 发表于 01-08 09:35 271次阅读
    博途<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>库的使用之全局库

    博途用户自定义库的使用-库的编辑及管理

    前面两篇文章我们介绍了项目库及全局库。项目库没有单独的存放路径,它随项目创建而创建,随项目保存而保存。全局库有单独的存放路径,可被保存、归档及解压缩等。
    的头像 发表于 01-24 10:45 299次阅读
    博途<b class='flag-5'>用户</b><b class='flag-5'>自定义</b>库的使用-库的编辑及管理