基于AnyControl环境下ModBusRTU通信协议的夹爪控制算法库封装与调用

本文主要是介绍基于AnyControl环境下ModBusRTU通信协议的夹爪控制算法库封装与调用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、首先打开anycontrol软件,新建一个库工程—>用户库

2、工程管理树—>程序组织单元—>新建一个POU,POU的语言、类型以及名称可以根据自己的需要进行更改

3、这里我在一个程序组织单元下面建立两个脚本一个是控制夹爪开关的,另一个是判断夹爪是否开关完毕的。

3、由上图我们可以看到我一共定义了4类(w、r、x、d)十二种变量(wn、rn、xn、dn;n=1,2,3),其中w,r为全局变量这是为了以后modbusrtu的从站IO口的变量映射做准备,而x,d为输入变量作为可被赋值的变量展现给用户。其中变量w与变量x代表写寄存器的变量,变量r与变量d代表读寄存器的变量

做到这里基本基本上我们的用户库就封装结束了,下面是调用过程。这里要注意的是我们封装的用户库是一个算法库。

4、首先我们还是新建一个工程—>工程管理树—>程序组织单元—>新建POU(我选择的是cfc、st这两个)—>配置com口—>配置modbusrtu主站和从站;此步骤详情请参考我的上一篇博客phttp://t.csdn.cn/s3Dl1 

与之前不同的是从站的配置,这里我们不在需要配置初始化指令配置,而是需要设定一下基本配置和设定读写两个通道指令配置,另外,还需要配置IO映射配置:将通道0(写寄存器通道)的三个寄存器通道分别命名为w1、w2、w3,并勾选上映射;将通道1(读寄存器通道)的三个寄存器通道分别命名为r1、r2、r3,并勾选上映射;这里我们会发现我们给这六个寄存器定义的变量与之前我们封装用户库的时候定义的全局变量的名称是相同的,这是因为配置IO映射配置时,需要使用同一个变量时需要进行映射操作,而映射的作用是,只有映射了算法库的全局变量,我才可以通过算法库对IO进行读写操作。

 5、上述操作完成后,工程的基本配置就完成了,接下来需要将我们封装好的用户库添加到算法库中:工程管理树—>双击库管理—>点击添加,找到刚才刚才封装用户库的存储路径,将其添加进来就可以了

添加成功可以在右侧的算法库任务栏找到我们封装好的库,同时可以在库管理器中看到封装好的库的变量信息和图形信息

 接下来我们对算法库进行调用,直接将我们封装好的库从算法库中拖拽到POU中即可

ST格式:

CFC格式:

接着进行编译—>运行windows运行时—>下装到夹爪中 最终效果如下图

这篇关于基于AnyControl环境下ModBusRTU通信协议的夹爪控制算法库封装与调用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/728243

相关文章

SpringBoot中封装Cors自动配置方式

《SpringBoot中封装Cors自动配置方式》:本文主要介绍SpringBoot中封装Cors自动配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot封装Cors自动配置背景实现步骤1. 创建 GlobalCorsProperties

在C#中调用Python代码的两种实现方式

《在C#中调用Python代码的两种实现方式》:本文主要介绍在C#中调用Python代码的两种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#调用python代码的方式1. 使用 Python.NET2. 使用外部进程调用 Python 脚本总结C#调

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

Vue 调用摄像头扫描条码功能实现代码

《Vue调用摄像头扫描条码功能实现代码》本文介绍了如何使用Vue.js和jsQR库来实现调用摄像头并扫描条码的功能,通过安装依赖、获取摄像头视频流、解析条码等步骤,实现了从开始扫描到停止扫描的完整流... 目录实现步骤:代码实现1. 安装依赖2. vue 页面代码功能说明注意事项以下是一个基于 Vue.js

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

讯飞webapi语音识别接口调用示例代码(python)

《讯飞webapi语音识别接口调用示例代码(python)》:本文主要介绍如何使用Python3调用讯飞WebAPI语音识别接口,重点解决了在处理语音识别结果时判断是否为最后一帧的问题,通过运行代... 目录前言一、环境二、引入库三、代码实例四、运行结果五、总结前言基于python3 讯飞webAPI语音