「 C++ TwinCAT3 」倍福 ”AmsNetID参数“讲解

本文详细介绍了AmsNetID参数的功能与使用方法,包括其作为类似IP地址的字符串形式,如何查看与修改本机AmsNetID,以及在远程和本地ADS通信中的具体应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言        

       将AmsNetID参数简单理解为一个地址。

二、讲解

     1. 参数功能

  • AmsNetID 该参数是包含六个数字类似于IP地址的字符串形式,例如"10.61.113.64.7.1",如果为空字符串,则默认使用本机的AmsNetID。

     2. 参数使用     

        AmsNetID

     (1) 原型:

TYPE T_AmsNetId : STRING(23);
END_TYPE

     (2)官方解释:                                   

     (3)查看本机AmsNetID方式:

            鼠标右击倍福图标,点击About TwinCAT,截图如下:

                                                                  

     (4)修改本机AmsNetID方式:

            鼠标右击倍福图标,鼠标滑动到Router,点击Chang AMS NetId 截图如下:

                                           

            在弹出的窗口中,修改确认即可,截图如下:                                                      

                                           

     (5)实例:

          远程ADS通信代码:

bool CTCCOMM:: ConnectToTC()
{
	
    //建立路由、获取NetID、设置PLC端口号
	pAddr = &Addr;
	nPort = AdsPortOpen();
    
    //设置AmsNetID
    pAddr->netId .b [0]=169;
    pAddr->netId .b [1]=254;
	pAddr->netId .b [2]=63;
	pAddr->netId .b [3]=114;
	pAddr->netId .b [4]=1;
	pAddr->netId .b [5]=1;

    //确定端口号
	pAddr->port =851;
	AfxMessageBox(_T("连接倍福成功!"));
	return true;
}

             本地ADS通信代码:

bool CTCCOMM:: ConnectToTC()
{
	
    //建立路由、获取NetID、设置PLC端口号
	pAddr = &Addr;
	nPort = AdsPortOpen();
    
   if (AdsGetLocalAddress(pAddr))//为0时无错误
	{
		AfxMessageBox(_T("无法获取本地地址"));
		return false;
	}

    //确定端口号
	pAddr->port =851;
	AfxMessageBox(_T("连接倍福成功!"));
	return true;
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Robot_Starscream

祝好!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值