基于嵌入式平台的EtherCAT主站实现研究
| 摘要 | 第4-5页 |
| Abstract | 第5-6页 |
| 1 引言 | 第13-16页 |
| 1.1 研究背景与意义 | 第13-14页 |
| 1.2 国内外研究现状 | 第14-15页 |
| 1.3 论文的组织安排 | 第15-16页 |
| 2 EtherCAT协议介绍 | 第16-34页 |
| 2.1 EtherCAT帧结构 | 第16-19页 |
| 2.2 寻址模式 | 第19-22页 |
| 2.2.1 广播寻址 | 第19页 |
| 2.2.2 增量寻址 | 第19-20页 |
| 2.2.3 配置地址寻址 | 第20页 |
| 2.2.4 逻辑寻址 | 第20-22页 |
| 2.3 EtherCAT的通信模式 | 第22-26页 |
| 2.3.1 非周期性数据通信 | 第22-24页 |
| 2.3.2 周期性过程数据通信 | 第24-26页 |
| 2.4 分布时钟 | 第26-33页 |
| 2.4.1 时钟同步 | 第26-27页 |
| 2.4.2 分布式时钟同步机制原理 | 第27-31页 |
| 2.4.3 ESC时间控制环以及漂移补偿 | 第31-33页 |
| 2.5 本章小结 | 第33-34页 |
| 3 SOEM库架构分析 | 第34-40页 |
| 3.1 抽象层 | 第35-38页 |
| 3.1.1 操作系统抽象层 | 第35-36页 |
| 3.1.2 硬件抽象层 | 第36-38页 |
| 3.2 中间层 | 第38页 |
| 3.3 应用层 | 第38-39页 |
| 3.4 本章小结 | 第39-40页 |
| 4 移植SOEM到嵌入式平台STM32F | 第40-56页 |
| 4.1 以太网口电路 | 第40-41页 |
| 4.2 主站时钟优化 | 第41-42页 |
| 4.3 网络驱动移植 | 第42-45页 |
| 4.3.1 DMA和MAC介绍 | 第43页 |
| 4.3.2 STM32HALeth驱动及使用 | 第43-44页 |
| 4.3.3 lw_emac模块 | 第44-45页 |
| 4.4 硬件初始化 | 第45-51页 |
| 4.4.1 RMII外设初始化 | 第45页 |
| 4.4.2 混杂模式 | 第45-46页 |
| 4.4.3 DMA描述符和数据缓冲区初始化 | 第46-50页 |
| 4.4.4 EtherMAC的初始化 | 第50-51页 |
| 4.5 MAC帧发送 | 第51-53页 |
| 4.6 MAC帧接收 | 第53-55页 |
| 4.7 nicdrv模块对驱动模块的调用 | 第55页 |
| 4.8 本章小结 | 第55-56页 |
| 5 主站软件系统测试 | 第56-71页 |
| 5.1 配置主站逻辑地址空间 | 第56-57页 |
| 5.2 从站过程数据 | 第57-59页 |
| 5.3 从站过程数据到主站逻辑空间的映射 | 第59-61页 |
| 5.4 过程数据的发送和接收 | 第61-64页 |
| 5.5 应用逻辑的状态机 | 第64-69页 |
| 5.5.1 对EtherCAT从站网络的配置 | 第65-66页 |
| 5.5.2 控制驱动器上电 | 第66-67页 |
| 5.5.3 控制电机运行 | 第67-69页 |
| 5.6 EtherCAT帧周期测试 | 第69-70页 |
| 5.7 本章小结 | 第70-71页 |
| 6 总结与展望 | 第71-73页 |
| 6.1 总结 | 第71页 |
| 6.2 展望 | 第71-73页 |
| 参考文献 | 第73-76页 |
| 附录A | 第76-81页 |
| 个人简历、在学期间发表的学术论文 | 第81-82页 |
| 致谢 | 第82页 |