西门子NC采集需要进行数据搬运,操作起来非常复杂,而NCK采集是直接报文方式进行采集,能简化用户对PLC程序的操作。文章赋有Demo程序。
一、通讯连接
通讯连接包含一下三步
1、连接到目标主机和端口,也就是直接建立socket
2、发送COTP连接请求参数
3、发送S7Comm连接请求参数
COTP报文和S7Comm报文不需要改动,直接请求
socket.setProxy(QNetworkProxy::NoProxy);
// 连接到目标主机和端口
socket.connectToHost(ui->m_ipEdit->text(), 102);
// 发送的COTP连接请求参数
const char connectionRequestData[] = {
0x03, 0x00, 0x00, 0x16, // TPKT
0x11, // COTP Header Length
0xe0, // Connect Request
0x00, 0x00, // Destination Reference
0x00, 0x01, // Source Reference
0x00, // Flags
0xc1, // Parameter Code (src-tasp)
0x02, // Parameter Length
0x04, 0x00, // Source TASP

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



