前言

  前面使用485和网口与台达成功建立通讯,但是485是使用用的ASICC模式,多数情况下是使用RTU模式提升通讯效率。

 

下载安装台达ISPSoft软件

  官网下载地址:https://downloadcenter.delta-china.com.cn/DownloadCenter?v=1&q=ISP&sort_expr=cdate&sort_dir=DESC
  配置需要通过网线,使用HWCONFIG软件进行配置:
  
  (先安装前面的commgr通讯管理软件)
  下载后,如下图:
  
  安装后,如下图:
  

 

配置之前测试

使用485测试ASCII通讯方式

  

使用485测试RTU通讯方式

  
  (端口默认是ASCII方式,RTU方式会返回一个固定长度固定的数据,应该是错误检测)

使用ISPSoft软件配置台达PLC的485由ASCII转为RTU

步骤一:打开软件

   

步骤二:创建工程

  
  

步骤三:打开网络配置HWCONFIG

  
  

步骤四:配置COM1口等参数(ASCII改为RTU)

  
  (若没有之前使用网线连接,会出现提示,之前是需要先网线连接到PLC的)
  
  正在下载,提示处理中,如下图:
  
  下载超时,是需要使用网口连接的。

步骤五:使用网线方式连接PLC

  
  
  

步骤六:再次下载新的配置(原先为485现在为网线IP)

  
  
  
  

步骤七:下载成功,使用485RTU进行测试

  (为hex了,不是acsii了,成功)
  

 

入坑

入坑一:使用Qt的modbus485读取失败

问题

  Qt的modbus全方面测试读取M、D、Y、X对应的寄存器附近几个值都为0。

解决

  直接使用modbus rtu测试

  是没有问题的,但是Qt返回值依然是:

  其他部分在此尝试过了,总共四种类型,相关的M、D、X、Y变量都设置过类似的,全部读取成功,但是值都为0与实际不符,好像架空了一样。

论证(2021年04月25日补充)

  测试单个线圈,使用libmodbus可以读出来
  
  测试单个线圈,使用QModbus还是无法读出
   
  测试读取寄存器,使用libmodbus可以读出
  
  测试读取寄存器,使用QModbus可以读出
  

结论

  Qt有些东西确实鸡肋,没必要死磕。

台达PLC开发笔记(二):台达PLC设置主机通讯参数为RTU并成功通讯的更多相关文章

  1. Django开发笔记二

    Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.xadmin添加主题.修改标题页脚和收起左侧菜单 # ...

  2. 台达PLC开发笔记(一):台达PLC连接介绍,分别使用485、网口与台达PLC建立连接

    前言   台达AS系列,型号为AS322P.     物理设备连接            使用WPL Editor连接PLC 使用RS485口当作RS232口连接PLC             注意: ...

  3. SDL开发笔记(二):音频基础介绍、使用SDL播放音频

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  4. EasyUI 开发笔记(二)

    接上篇 :EasyUI 开发笔记(一)  (http://www.cnblogs.com/yiayi/p/3485258.html) 这期就简单介绍下, easyui 的 list 展示, 在easy ...

  5. Vue-cli开发笔记二----------接口调用、配置全局变量

    我做的一个项目,本身是没用任何框架,纯手写的前端及数据交互,项目已经完结.最近学Vue,于是借用这个项目,改装成vue项目. (一)接口问题:使用axios的调用方法,proxyTable解决开发环境 ...

  6. 痞子衡嵌入式:超级下载算法(RT-UFL)开发笔记(4) - 轮询Flash配置参数

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是超级下载算法开发笔记(4)之轮询Flash配置参数. 文接上篇 <超级下载算法(RT-UFL)开发笔记(3) - 统一FlexSP ...

  7. Java开发学习(二十四)----SpringMVC设置请求映射路径

    一.环境准备 创建一个Web的Maven项目 参考Java开发学习(二十三)----SpringMVC入门案例.工作流程解析及设置bean加载控制中环境准备 pom.xml添加Spring依赖 < ...

  8. odoo开发笔记 -- 单台物理服务器上,利用docker部署多套odoo应用

    部署结构: 待更新! ----服务器硬件配置: 操作系统:ubuntu16.04-64bit CPU/内存:4核8G 1. 基础环境安装 nginx离线安装: docker环境安装: 2. 官方容器镜 ...

  9. 西门子PLC开发笔记(一):PLC介绍,西门子S1200系列接线、编程、下载和仿真

    前言   西门西PLC.台达触摸屏.法兰克机床等等多年以前玩得比较多,改造机床.维修机床.给机床编程等等,没事还能扯个零件啥的,之前也没总结过,有时间就重新整理下.  本章后面以西门1200实物为例, ...

随机推荐

  1. [刷题] 77 Combinations

    要求 给出两个整数n和k,在n个数字中选出k个数字的所有组合 示例 n=4 , k=2 [ [ 1, 2 ] , [ 1, 3 ] , [ 1, 4 ] , [ 2, 3 ] , [ 2, 4 ] , ...

  2. Linux服务之Samba服务篇

    Samba服务 桑巴Smb是基于cs架构 作用:用于跨平台进行文件共享 优点:兼容性好,较为安全(具备身份验证) 缺点:仅限内网环境使用 应用:一般在办公环境下使用 rz 也是一种可以在Windows ...

  3. mysql的示例及练习

    示例及练习1-MOSHOU.hero.txtcreate database MOSHOU;use MOSHOU;create table hero(id int,name char(15),sex e ...

  4. Winsock2使用记录

    本文地址:https://www.cnblogs.com/oberon-zjt0806/p/14814144.html WinSock 2 MSDN文档:https://docs.microsoft. ...

  5. 浅谈:@RequestBody,@ResponseBody 和 @RequestParam

    1. @RequestBody @RequestBody:主要用来接收前端传递给后端的json字符串中的数据的(请求体中的数据) GET方式无请求体,所以使用@RequestBody接收数据时,前端不 ...

  6. [Django高级之Auth模块]

    [Django高级之Auth模块] auth模块 ←详情点击查看 1.Auth模块是什么 Auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统 ...

  7. ubuntu16.04服务自启动(弹控制台)

    一.设置root桌面用户登录 1.vim  /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf 在最后一行添加greeter-show-manual-lo ...

  8. GO语言面向对象06---面向对象练习01

    package main import "fmt" /* 定义动物接口:死.活着 定义动物实现类:鸟.鱼.野兽(跑.捕食) 继承野兽:实现老虎,实现人 业务场景:工作日所有动物都活 ...

  9. TVM性能评估分析(二)

    TVM性能评估分析(二) Figure 1.  A bird's eye view of the µTVM + AutoTVM infrastructure Figure 2.  A standard ...

  10. 无人驾驶汽车发展需要激光雷达和V2X技术

    无人驾驶汽车发展需要激光雷达和V2X技术