C++ modbus TCP 协议跟PLC通信
modbus 用的是git上的开源代码,地址:https://github.com/stephane/libmodbus
讲一下基本使用(给指定地址发送 on/off命令以及读取):
modbus_t *ctx = NULL;
ctx = modbus_new_tcp("127.0.0.1", 502);//填写的是plc的ip、port
if (ctx == NULL)
{
cout << "Unable to allocate libmodbus context" << endl;
return -1;
}
//modbus_set_debug(ctx, TRUE);
if (modbus_connect(ctx) == -1)
{
cout << "Connection failed: " << modbus_strerror(errno) << endl;
modbus_free(ctx);
return -1;
}
/* WRITE BIT */
int rc = modbus_write_bit(ctx, addr, value); //addr: 0x6000 value:true
if (rc != 1)
{
cout <<"ERROR modbus_write_bit "<< rc << endl;
}
uint8_t tab_rp_bits[4] = { 0 };
rc = modbus_read_bits(ctx, addr, 1, tab_rp_bits);
if (rc != 1)
{
cout <<"ERROR modbus_read_bits "<< rc << endl;
}
/* Close the connection */
modbus_close(ctx);
modbus_free(ctx);
C++ modbus TCP 协议跟PLC通信相关推荐
- C#实现Modbus协议与PLC通信
项目需要用C#写一个上位机,用Modbus/TCP协议与PLC通信,控制伺服电机的启停.转速等.D:\Code\C#\ConsoleApp1 1. 获取PLC的IP地址 待续... 2. " ...
- C#上位机与台达PLC通信,modbus TCP协议
C#上位机与台达PLC通信,modbus TCP协议. 1.真实使用项目,该程序框架完整,适合在此基础上开发项目. 2.使用VS2019开发. 3.项目还涉及到halcon视觉检测功能. YID:76 ...
- 力控 串口服务器 虚拟串口,M4系列串口服务器与力控组态软件MODBUS TCP 协议通信--有人物联网.pdf...
M4系列串口服务器与力控组态软件MODBUS TCP 协议通信--有人物联网.pdf M4 系列串口服务器与力控组态软件MODBUS TCP 协议通信 M4系列串口服务器与力控组态软件MODBUS T ...
- ModBus/TCP协议分析
ModBus/TCP协议分析 一.术语 1 word = 2 byte; 1 byte = 8 bit. 校验码:校验码是由前面的数据通过某种算法得出的,用以检验该组数据的正确性.代码作为数据在向计算 ...
- MODBUS TCP协议实例数据帧详细分析
MODBUS TCP协议实例数据帧详细分析 1.简介 2.ModbusTCP数据帧 2.1.报文头MBAP 2.2.帧结构PDU 3.ADU详细结构 3.1. 0x01:读线圈 3.2. 0x02:读 ...
- Modbus和Modbus/TCP协议
Modbus和Modbus/TCP协议 文章目录 Modbus和Modbus/TCP协议 一. 概述 二. 协议规范 (1) Modbus应用协议 (2)通用Modbus帧结构--协议数据单元(PDU ...
- C# modbus TCP协议应用
C# modbus TCP协议应用 协议简介 Modbus由MODICON公司(现施耐德公司)于1979年开发,是一种工业现场总线协议标准.主要分为了RTU,ASCII,TCP三种协议类型.本文我们只 ...
- DI计数器Modbus TCP协议2路PWM输出WiFi模块
产品特点: ● 3路开关量输入,2路开关量输出 ● DI每一路都可用作计数器或者频率测量 ● DO每一路都可独立输出PWM信号 ● 支持Modbus TCP 通讯协议 ● 内置网页功能,可以通过网页查 ...
- 3路DI计数器,2路PWM输出,Modbus TCP协议,WiFi模块WJ165
产品特点: ● 3路开关量输入,2路开关量输出 ● DI每一路都可用作计数器或者频率测量 ● DO每一路都可独立输出PWM信号 ● 支持Modbus TCP 通讯协议 ● 内置网页功能,可以通过 ...
最新文章
- 智慧校园“手环考勤”已成为学校常态
- java文件编译_【java】javac编译多个有依赖关系的java文件为class文件
- IBASE handle free after save - buffer table cleared
- 2 JVM 运行机制
- Qemu-KVM基本工作原理分析
- 关于特殊的LCS问题的优化
- 查看pcl版本 linux,成功安装 linux pcl (1.8.1版本) python-pcl
- 每个tabpage中都有一个dategridview_宇宙中每个原子里都隐藏着一个巨大的秘密
- 国家开放大学2021春1076常微分方程题目
- 分析java 嵌套类与内部类
- 最近好颓废啊,改过自新就从收拾自己的东西开始吧
- 点云配准(四) 四元数与旋转变换
- 存储器类型与S3C2440启动地址
- MAC 无法重启或关机
- java 获取星期几_java中获取日期是星期几的两种方法
- Vue实现一键截屏功能
- 记一次小米2S的刷机过程
- sftp命令复制文件
- 外贸软件之冷冻食品进口贸易管理系统
- 使用Sportsvu数据创建NBA动作视频
热门文章
- win8系统安装配置python_win8下python3.4安装和环境配置图文教程
- 天冕数据开发平台通过信通院“大数据产品能力评测”
- Schizophrenia Bulletin: 精神分裂症的潜在临床-结构维度
- 网易16年春季实习生招聘的一道算法题
- 创建阿里云ecs实例Linux系统教程-Unirech阿里云代充
- [从头读历史] 第246节 夏商与西周
- 【JavaScript】DOM编程-DHTML与Windows对象
- uC/OS-II任务调度之就绪表及最高优先级任务判定算法
- 《python3网络爬虫开发实战》学习笔记:pc与安卓代理证书都安装好但是无法监听——记自己的踩坑路径
- 微信小程序之callout自定义气泡