随笔 - 11  文章 - 0  评论 - 0  阅读 - 2749

【问题记录】Twincat与ROS不同设备上的Ads通信

配置具体方法参照该博客,足够详细路由配置方面仅作些许补充→ TwinCAT3与ROS之间的ADS通信实现_sjtu_way的博客

环境信息 Ubuntu18.04  win10 twincat2/3都通信成功


 

【路由配置】

ubuntu在设置中写好静态ip,此处无图可参看顶部博客,足够详细,保证和windows处于同一网段

windows上在  按win+i打开设置→网络和Internet→以太网→更改适配器选项 找到对应的网口设置ipv4

   →

 

 

Twincat2/3静态路由设置方法参照↓

 

 

 


 

【Ads库文件】 

根据顶部博客配置好后,在github下载 Beckhoff/ADS: Beckhoff protocol to communicate with TwinCAT devices. (github.com)其文件库。

 

 

 使用meson编译,unbuntu可直接用sudo apt-get install安装,需要以来ninja与python3.7+,但本机python3.6也正常完成编译,。


 

 【ROS】参考github上的 lemanhtrung/twincat_talker: ROS interface for Beckhoff TwinCAT PLC (github.com)

根据自己的需求改写CMakeLists和库文件。

可能出现的问题

①port不对

AdsDevice route{remoteIpV4, remoteNetId, AMSPORT_R0_PLC_TC3}; //第三个参数通常TC3 AMSPORT_R0_PLC_TC3 对应port 851 ; TC2 AMSPORT_R0_PLC 对应801

②一直卡在上面这句代码,之后屏幕上输出 Socket connect fail, 关闭Windows的防火墙即可。

③Ads operation error code 1797 : template里的数据类型不对。如读写INT,需uint8_t  ,uint32_t即会报错。具体原因带查询即可知道如何使用

④Ads operation error code 1808: 就是没找到你要操作的变量

 

posted on   Isaac0617  阅读(635)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示