三菱Q系列PLC以太网TCP通讯FB块源码

三菱Q系列PLC的tcp通讯,客户端和服务器两个变量好用的FB块,调用块就可以实现通讯连接,不需要自己写程序,简单配置引脚就可以。该块还集成了断网,连接错误,发送接收数据错误报警等功能。具体功能见下面介绍.

  1. 客户端Active FB块使用方法,源码+葳:1357448516

动作流程:

  1. 设置PLC通信通道/端口,对方设备IP/端口号等参数
  2. 置位通道打开请求
  3. 打开动作正常完成后,”打开完成标志位”置位。

通道打开失败时,“通道打开错误”标志位置位,“通道打开错误代码”中存储相关错误代码。

  1. 准备发送数据,写入“发送数据”存储区(Word Unsinged型数组),数组第1个Word为发送数据长度(字节数)、第2个Word开始为实际发送数据。
  2. 置位发送请求。正常发送完成后,“发送完成标志位”置位。发送异常时,“数据发送错误”标志位置位,“数据发送错误代码”中存储相关错误代码。
  3. 接收到对象设备返回的数据包后,“接收完成标志位”置位,接收到的数据存储在“接收数据”存储区(Word Unsinged型数组),数组第1个Word为接收数据长度(字节数)、第2个Word开始为实际接收到的数据。
  4. 接收异常时,“数据接收错误”标志位置位,“数据接收错误代码”中存储相关错误代码。
  5. “链接状态”标志位代表TCP通信连接状态,当TCP通道断开时,该标志位置位。

“通信通道打开”标志位为电平触发方式,请在通信过程中始终保持置位状态。

“数据发送请求”标志位为边沿触发方式,每发送一次数据,需要导通一次该标志位。

  1. 服务器Unpassive FB块使用方法

动作流程:

  1. 置位通道打开请求
  2. 客户端连接成功后,”打开完成标志位”置位。

连接失败时,“通道打开错误”标志位置位,“通道打开错误代码”中存储相关错误代码。

  1. 准备发送数据,写入“发送数据”存储区(Word Unsinged型数组),数组第1个Word为发送数据长度(字节数)、第2个Word开始为实际发送数据。
  2. 置位发送请求。正常发送完成后,“发送完成标志位”置位。发送异常时,“数据发送错误”标志位置位,“数据发送错误代码”中存储相关错误代码。
  3. 接收到对象设备返回的数据包后,“接收完成标志位”置位,接收到的数据存储在“接收数据”存储区(Word Unsinged型数组),数组第1个Word为接收数据长度(字节数)、第2个Word开始为实际接收到的数据。
  4. 接收异常时,“数据接收错误”标志位置位,“数据接收错误代码”中存储相关错误代码。
  5. “链接状态”标志位代表TCP通信连接状态,当TCP通道断开时,该标志位置位。

“数据发送请求”标志位为边沿触发方式,每发送一次数据,需要导通一次该标志位。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/578447.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

每日学习笔记:C++ STL迭代器种类与辅助函数

头文件 一般在声明容器头文件即可&#xff0c;特殊的迭代器需要声明<iterator> 迭代器种类 输出迭代器 输入迭代器 向前迭代器 双向迭代器 随机访问迭代器 Vector迭代器递增递减 使用std::next(coll.begin())替代coll.begin() 迭代器辅助函数 advance() next() …

深入MNN:开源深度学习框架的介绍、安装与编译指南

引言 在人工智能的世界里&#xff0c;深度学习框架的选择对于研究和应用的进展至关重要。MNN&#xff0c;作为一个轻量级、高效率的深度学习框架&#xff0c;近年来受到了众多开发者和研究人员的青睐。它由阿里巴巴集团开源&#xff0c;专为移动端设备设计&#xff0c;支持跨平…

拆分巨石:将MVPS和MVAS应用于遗留应用程序——可持续架构(六)

前言 MVP 和 MVA 的概念不仅适用于新应用程序&#xff1b;它们提供了一种新颖的方式来审视对遗留系统的范围变更&#xff0c;以防止过快地承担过多的变化 - 参见图1。MVA 可以帮助组织评估和更新其技术标准&#xff0c;通过展示新技术如何真正对支持 MVP 至关重要。创建 MVA 可…

327京东一面

1.项目相关 2.手撕SQL 两道 3.JMeter性能测试 首先&#xff0c;进行基准测试&#xff1a; 单用户测试&#xff08;单用户循环多次得到的数据&#xff09;&#xff1b;为多用户并发执行提供参考 其次&#xff0c;进行负载测试&#xff1a; 通过逐步增加系统负载&#xff0…

Flutter环境搭建及版本管理

前言 Flutter已成为移动应用开发的主流选择&#xff0c;其跨平台优势日益凸显&#xff0c;使学习Flutter成为现代开发者的必备技能。越来越多的公司和团队选择Flutter构建应用&#xff0c;这为开发者提供了更广阔的就业机会和职业发展空间。Flutter的热度源自其强大的特性和生…

Android Studio 2023.2.1版本 kotlin编译报错踩坑

1、需求 由于最近在整理项目&#xff0c;做一些公共基础组件Maven仓库封装&#xff0c;由于之前项目jar包和kotlin版本很老&#xff0c;kotlin版本1.3.72版本 Gradle使用5.4.1 Android Studio版本是2023.2.1&#xff0c;分别依次顺序如下图所示。 如下图所示 2、分析编译报错…

(一)Python+GDAL实现BSQ,BIP,BIL格式的相互转换

环境&#xff1a;Windows10专业版 PyCharm2022.2.3 Python3.9.1 GDAL(GDAL-3.4.3-cp39-cp39-win_amd64) 系列文章&#xff1a; &#xff08;一&#xff09;PythonGDAL实现BSQ&#xff0c;BIP&#xff0c;BIL格式的相互转换 &#xff08;二&#xff09;BSQ,BIL,BIP存储格式的…

vue2处理跨域问题

vue中访问springboot中的RestController中的服务 &#xff08;vue.config.js不生效-CSDN博客&#xff09; 1、创建项目 使用vue init webpack my_frontend 创建vue项目 在HelloWorld.vue文件中添加内容&#xff1a; HelloWorld.vue 文件内容&#xff1a; <template>&…

多视图三维重建-SFM简介

背景 掌握传统的多视图三维重建基本流程 总体流程 多视图三维重建的Pipieline如下图&#xff0c;总共分为四个步骤&#xff1a; 拍摄场景多视角的图像建立这些图像之间的联系&#xff08;Data Association&#xff09;SFM稀疏重建MVS稠密重建 Data Association 建立图像…

数据可视化Grafana Windows 安装使用教程(中文版)

1.跳转连接 天梦星服务平台 (tmxkj.top)https://tmxkj.top/#/site?url 2.下载应用程序 官网地址&#xff1a;Grafana get started | Cloud, Self-managed, Enterprisehttps://grafana.com/get/ 3.修改配置文件 grafana\conf\defaults 4.启动\bin\目录下serve应用程序 浏…

PyCharm中配置PyQt5并添加外部工具

Qt Designer、PyUIC和PyRcc是Qt框架下的三个重要工具&#xff0c;总的来说&#xff0c;这三个工具各司其职&#xff0c;相辅相成&#xff0c;能显著提升Qt开发的速度与效率。 Qt Designer&#xff1a;是一个用于创建图形用户界面的工具&#xff0c;可轻松构建复杂的用户界面。…

政安晨:【Keras机器学习实践要点】(九)—— 保存、序列化和导出模型

政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras机器学习实战 希望政安晨的博客能够对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff01; 这篇文章是保存、序列化和导出模型的完整指南。 …