EtherCAT SDO分段下载/上传说明
ETherCAT COE (CANOpen)的 SDO 属于应用层通讯协议,基于同步管理器(SM)的邮箱实现的,主站可以通过SDO实现一下功能。
对应邮箱消息数据格式如下
其中分段下载和分段上传请求和响应较为特殊,ETG 1000-4手册上对整个通讯过程讲解不够清晰,下面是我个人的理解。
分段下载的过程
①. 客户端发送“常规下载请求”,包含数据(写满SM设定缓存区)给服务器 --> 服务器接收到数据后,判断 Complete Size > Size,且数据包完整无逻辑错误(发送的数据长度必须等于SM设定缓存,否则视为错误),断定客户端还有数据未发出(标记下一接收为 “段下载请求”),保存接收到的数据并发送“常规下载请求响应”通知客户端。
②. 客户端发出 "段下载请求"给服务器,标记Toggle = 0 ,Follows = TRUE(还有下一帧,否则为FALSE最后一帧)--> 服务器接收到数据后,下载数据,发送应答(toggle = 0)。
③. 客户端发出 "段下载请求"给服务器,标记Toggle = 1 (翻转),Follows = TRUE(还有下一帧,否则为FALSE最后一帧)--> 服务器接收到数据后,下载数据,发送应答(toggle = 1)。
....
⑥. 客户端发出 "段下载请求"给服务器,标记Toggle = (-1)^(n-1) (翻转),Follows = FALSE(最后一帧)--> 服务器接收到数据后,下载数据,合成并解析数据到对应的对象字典,再发送应答(toggle)。
以上是我阅读ETG1000协议的学习理解,欢迎指正。
EtherCAT SDO分段下载/上传说明相关推荐
- java下载上传远程文件
利用的是SMB协议从远程服务器下载上传文件 可以在本地做一个共享文件夹放点东西来测试下 这是用到的jar包[jcifs-1.2.3.jar],不能设置0积分有点可惜.(https://download ...
- 黑马物联PLC远程下载神器 彻底解决您外地PLC下载 上传 监控 修改程序**
**黑马物联PLC远程下载神器 彻底解决您外地PLC下载 上传 监控 修改程序** 设备发往外地后,客户需要修改程序,怎么样才能快速的解决,这一直是设备人设备公司最纠结最心烦的问题. 派一个技术工程师 ...
- 网易自媒体视频,批量修改md5采集下载上传,批量自动去水印加水印软件 今日头条自媒体视频,youtubu...
网易自媒体视频,批量修改md5采集下载上传,批量自动去水印加水印软件 今日头条自媒体视频,youtubu 视频去重,批量自动去水印加水印软件 快视频,视频消重技术去水印去logo字幕工具 搜狐自媒体视 ...
- ubuntu 搭建一个没有上传限制,支持多用户访问,管理用户下载上传,界面优雅,文件互通的网盘(支持nas)
一个没有上传限制,支持多用户访问,管理用户下载上传,界面优雅,文件互通的网盘! (Alist + Samba) 运行环境 ubuntu 20.04 Alist `Alist` 官网 https:// ...
- 腾讯云服务器带宽Mbps下载上传速度表(附计算公式)
腾讯云服务器1M公网带宽下载速度是128KB/秒,5M带宽下载速度是512KB/s,腾讯云10M带宽下载速度是1.25M/秒,腾讯云百科来详细说下腾讯云服务器不同公网带宽实际下载速度及上传速度对照表: ...
- WP8.1 Study17:网络之后台下载/上传及HttpClient
一.后台下载/上传 1.简介 使用BackgroundTransferGroup可以十分方便操作上传及下载文件,BackgroundDownloader和BackgroundUploader类中的方法 ...
- linux登录百度网盘下载上传文件
这里写自定义目录标题 linux登录百度网盘下载上传文件 linux登录百度网盘下载上传文件 参考一下的三个地址: 1.https://blog.csdn.net/huojiahui22/articl ...
- 一行代码实现Okhttp,Retrofit,Glide下载上传进度监听
2019独角兽企业重金招聘Python工程师标准>>> 发表上篇文章 我一行代码都不写实现Toolbar!你却还在封装BaseActivity? 已是一个月前的事情~ 上篇文章的研究 ...
- Android 利用an框架快速实现网络请求(含下载上传文件)
作者:Bgwan 链接:https://zhuanlan.zhihu.com/p/22573081 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. an框架的网络框架 ...
最新文章
- VS编译duilib项目时候的错误解决方法整理
- 在liferay strut2中如何使用session
- Lync2013 升级错误总结2 Lync2013 PC和手机客户端登录无法验证
- linux was8.5 配db2数据源配置,DataStage v8.5对于db2 v8数据库的支持问题
- [No0000F9]C# 运算符重载
- 学会这 6 招,网页搜索一秒就能搜到你想要的【老司机必备神技】
- 向数据源DataTable 中添加新的一列,并向其赋值
- mysql 版本_mysql各个版本介绍
- 内存碎片与malloc(转)
- 微信小程序TabBar的使用
- js 内置对象常用方法
- VMware16阿里云盘
- JAVA 实现《萝卜勇者》游戏
- Word2010如何隐藏去掉回车符
- Qt编写的复杂象棋程序 chessbroad.cpp 错误比较多
- FOC 电流采样为什么不准?你忽略了这个细节
- 央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家
- 浪潮超融合服务器虚拟机管理,浪潮联合VMware发布新一代超融合一体机
- 2023重庆理工大学计算机考研信息汇总
- python开发ps插件_你还在用PS?Python 20行代码批量抠图