首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
» 基于S3C2440的Ethercat实时
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于S3C2440的Ethercat实时
发短消息
加为好友
我是MT
当前离线
UID
1023166
帖子
6651
精华
0
积分
3328
阅读权限
90
来自
燕山大学
在线时间
230 小时
注册时间
2013-12-19
最后登录
2016-1-5
论坛元老
UID
1023166
性别
男
来自
燕山大学
1
#
打印
字体大小:
t
T
我是MT
发表于 2014-6-7 10:12
|
只看该作者
基于S3C2440的Ethercat实时
Internet
,
以太网
,
成本
,
工业
,
技术
1 引言
工业以太网由于低成本、易于组网和具有相当高的数据传输速率、资源共享能力强以及易于Internet连接等特点[1],使其在工业中应用越来越多。Ethercat技术是德国BECKHOFF公司提出的实时工业以太网技术,它基于标准的以太网技术,具备灵活的网络拓扑结构。系统配置简单,具有高速、有效数据率高等特点,全双工特性完全得以利用[2]。
2 Ethercat技术介绍
2.1 Ethercat的系统组成及运行原理
Ethercat采用了主从介质访问方式,在基于Ethercat的通信系统中,主站控制从站发送或接收数据。主站发送数据帧,从站在数据帧经过从站时读取相应报文中的输出数据。同时,从站的输入数据插入到同一数据帧的相关报文中。当该数据帧经过所有从站并与从站进行数据交换后,由Ethecat系统中末端从站将数据帧返回[3]。图1由一个主站和3个从站组成的线性拓扑结构的简单Ethercat系统。
2.2 Ethercat协议
Ethercat以标准以太网技术为基础,在MAC(媒体访问层)增加了一个确定性调度的软件层,该软件层实现了通信周期内的数据帧的传输。Ethercat采用标准的IEEE802-3以太网帧,帧结构如图2。Ethercat在标准以太网帧结构中使用了一个特殊的以太网帧类型0x88A4,采用这种方式可以使控制数据直接写入以太网帧内,并且可以与遵守其它协议的以太网帧在同一网络中并行。一个Ethercat帧中可以包含若干个Ethercat子报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,由FMMU(Fieldbus Memory Management Unit)寄存器和SM (SyncManager)寄存器定义,该区域最大可达4GB字节。Ethercat报文由一个16位的WKC(Working Count)结束,其数据区最大长度可达1486个字节。在报文头中由8位命令区数据决定主站对从站的寻址方式,由于数据链独立于物理顺序,因此可以对Ethercat从站进行任意的编址[4]。
图2 Ethercat帧结构
2.3 Ethercat性能
Ethercat整个协议处理过程都在硬件中进行。EtherCAT在网络性能上达到了一个新的高度。1000个分布式I/O数据的刷新周期仅为30μs,其中包括端子循环时间。通过一个以太网帧,可以交换高达1486字节的过程数据,几乎相当于12000个数字量I/O。而这一数据量的传输仅用300μs。100个伺服轴的通讯只需100μs[5]。在此期间,可以向所有轴提供设置值和控制数据,并报告它们的实际位置和状态。分布式时钟技术保证了这些轴之间的同步时间偏差小于1μs [6]。
3 基于ARM的从站节点控制器的硬件设计
Ethercat从站节点的协议部分可以直接利用BECKHOFF公司的从站控制器ESC。ESC从站控制器提供3种接口规范如表1,具体采用哪一种方式可以设置控制器的EEPROM来选择。
表1 接口规范
本文设计的Ethercat从站节点硬件包括从站协议控制器、从站CPU和网络接口等部分组成。Ethercat从站中最关键部分是Ethercat协议控制器,它实现Ethercat的物理层与数据链路层的协议。现在市场上有多种Ethercat协议控制器可供使用,如FPGA实现和ASIC实现。从站CPU采用ARM920T核的S3C2440芯片。接口连接方式采用16位异步微处理器方式[7]。从站的硬件实现如图3所示。
其中ARM控制器实现Ethercat对现场任务的收集与调度;Ethercat从站控制器实现Ethercat协议;EEPROM用于保存从站配置数据和从站描述数据;网络接口用于主从站之间或从站与从站之间的连接,根据Ethercat从站控制器的不同网络接口可以分别为2-4个,网络接口采用标准以太网物理层器件就可以。
图3 从站节点结构框图
4 数据交换
主从站之间交换的数据主要分两种形式:一种是周期性数据;另一种是非周期性数据。周期性数据传输可以根据任务的紧迫性划分其优先级,通过采用EDF算法调度任务,把划分好优先级的任务放入缓冲区供系统调用。缓冲区为在内存中分配的一段空间,两端都可以访问缓冲区中的数据;非周期性数据采用邮箱方式传输,此时一端写入数据到内存,且只有此段内存写满后另一端才能开始从内存中读取数据,并且只能当内存中的数据全部读出时,才能重新写入数据。针对这两种数据通信方式,从站程序可以对非周期性数据通信采用查询方式,对周期性通信采用中断方式,程序流程图如图4、图5所示[8]。
图4 中断方式
图5 查询方式
5 最小截止优先(EDF,Earliest Deadline First)算法
系统对周期性任务采用最小优先级优先算法进行调度,调度算法在ARM微控制器中实现。处理器对紧迫性事件的处理能力决定了系统处理突发事件的能力,把系统各种需要调度的任务按照紧迫程度用优先级来划分,通过采用最小截止期优先算法来动态优先处理突发事件,很好地提高了Ethercat网络实时性能。
EDF(Earliest Deadline First)是一种动态可抢占优先级实时调度,所有实时任务必须满足以下限制条件:
(1)所有实时任务均为周期任务,且周期大于或等于截止期。
(2)所有实时任务必须在其截止期到来前结束。
(3)所有实时任务相互独立。
(4)所有实时任务具有恒定的运动时间。
任务按周期由大到小排列为
EDF以任务的截止期与当前时刻的距离确定任务优先级(称这一距离为时限距离),距离越近,优先级越高,因此,EDF总是选择当前最迫切需要完成的任务获得处理器。Liu和Layland证明如下:
对于由n个周期任务组成实时任务集,当且仅当:
其中Ci为计算机时间,该任务集能够由EDF调度。
EDF是最优动态可抢占优先级调度,对于任何实时任务集,只要存在可行的动态调度算法,则必可由EDF调度。需要注意的是,EDF只在出现任务实例就绪时调整任务的优先级。因为在其它时刻,任务实例按时限距离的长短的排序关系不变,因此任务间优先级的排序不变[9]。
6 结束语
EDF算法是对周期性任务的动态优先级调度算法,存在以下缺点:①调度算法是针对周期性任务而言的,没有考虑对实时系统中突发任务(非周期性任务)的调度,且周期任务要求彼此独立。②调度算对周期和时限宽度相同的同步周期任务,即使在处理器利用率很低的情况下,也可能产生不了合理的调度。因此在这种情况下,必须进行调度算法的可行性分析[10]。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议