一种基于can的运动控制系统建立及其仿真建模方法

文档序号:9726691阅读:508来源:国知局
一种基于can的运动控制系统建立及其仿真建模方法
【技术领域】
[0001 ]本发明涉及CAN通讯系统,尤其涉及一种基于CAN的运动控制系统建立及其仿真建 模方法。
【背景技术】
[0002] CAN(Controller Area Network),即控制器局域网。CAN总线传输方式能够有效解 决传统数据交换方法(即点对点的传输方式)无法满足现代汽车中所使用的大量电子控制 系统和通讯系统的通信要求的问题。
[0003] CANopen是基于CAN总线的应用层的网络协议,是由CAL协议扩展而来的。自从发布 以来就得到广泛的认可。这个协议的两种传输机制为CAN传输8字节以上数据提供了一套解 决方案。通过CANopen协议及其设备子协议,例如数字和模拟输入输出模块子协议,驱动子 协议,操作设备子协议,控制器,编码器子协议等。这使得多家制造商的产品能够用于任何 CANopen网络,解决一致性、互用性及互换性问题。最初CANopen主要是用于嵌入式工业控制 系统中,因为它的协议精炼、透明、便于理解,又具有较高的实时性和可靠性、数据传输的速 率高,组网成本低等优点[5],近年来,被应用到各个行业。CAN总线在我国的应用已经比较 广泛,但还停留在较低层次的应用上,并且都是自己定义的一些简单的应用层的协议,没有 和国际标准的CAN总线的高层协议兼容。

【发明内容】

[0004] 本发明所要解决的技术问题是提供一种基于CAN总线的运动控制系统及基于EDF 动态优先级调度算法建立CAN总线仿真模型的方法,解决目前运动系统中CAN总线的通信能 力差,吞吐能力低,实时性能差的问题。
[0005] 本发明解决上述技术问题的技术方案如下,一种基于CAN总线的运动控制系统,其 特征在于:包括控制单元,整流单元,逆变单元、执行电机、工控机、CAN卡、物理层模块、数据 链路层模块、应用层模块及硬件接口模块;所述物理层模块包括CAN物理通信介质及CAN收 发器,所述CAN物理通信介质用于完成信号传输,所述CAN收发器提供对总线的差动发送和 接收功能;所述数据链路层模块包括CAN核心控制器,所述CAN核心控制器包括发送模块、接 收模块、仲裁模块及验收滤波模块,所述发送模块用于将信息帧发往物理层,所述接收模块 用于从物理层获取信息帧,所述仲裁模块用于对发送出的与接收到的信息帧进行仲裁,所 述验收滤波模块从数据链路层接收帧信息,通过验收屏蔽码和验收码过滤本节点需要的数 据;所述应用层模块包括模拟中心计算机,用于模拟节点设备仿真模型,应用层协议采用 CANopen协议;所述硬件接口模块用于硬件与物理层之间的通信。
[0006] 进一步,所述控制单元采用⑶320-2DP控制单元;所述整流单元采用智能型电源模 块,所述智能型电源模块将三相交流电整流成直流电,并将直流电回馈到电网,所述智能型 电源模块和所述控制单元通过Dr ive-CLiQ保持通信;所述逆变单元和控制单元之间通过 Drive-CLiQ接口,进行快速数据交换;所述逆变单元的编码器通过Drive-CLiQ电缆连接,将 编码器的反馈信号反馈给控制单元;所述工控机包括主机、显示器、鼠标和键盘;所述CAN卡 采用XJA1000CAN控制器作为主控芯片。
[0007] 进一步,所述发送模块包括组帧模块、信号发送模块和发送控制器,发送控制器通 过总线与组帧模块和信号发送模块连接;当接收到相应信号时,组帧模块将完整的信息帧 传输给信号发送模块,信号发送模块将当前数据位发送给CAN总线。
[0008] 进一步,所述应用层模块还包括模拟执行设备。
[0009] 进一步,所述应用层模块采用C语言作为开发工具,通过在Bor land C++2.0编译环 境下编译构建。
[0010] 一种基于EDF动态优先级调度算法建立CAN总线仿真模型的方法,其特征在于:首 先在Stateflow环境下使用状态、迀移和条件建立涉及通信活动部分的节点模型;所述节点 模型包括节点发送部分、数据缓冲部分和数据产生部分;将时间基准、输入输出变量、 Statef low环境下的16个节点子模块及总线仲裁子模块组成仿真模型母模块。
[0011] 进一步,所述总线仲裁子模块在通信过程中,具有空闲状态、忙状态和帧间隔状态 三种状态;当总线没有信号传输时,总线处于空闲状态状态;当有节点发送的信号时,经过 仲裁函数的仲裁,仲裁结束后,总线开始传输节点的信息,总线处于忙状态;当节点信息传 送完成后,总线再经过一个帧间隔状态之后在回到空闲状态;在仿真过程中,总线的仲裁是 由仲裁函数实现,且各个节点的优先级为节点1优先级高,节点16最低;所述仲裁函数通过 判断节点号当前状态是否是1而决定是否仲裁成功,若为1则仲裁成功。
[0012] 进一步,所述节点发送部分包括无任务状态、等待仲裁状态、传输状态、帧间隔状 态和状态迀移线;其状态转换的流程是节点首先处于无任务状态,等待数据进入缓冲区,退 出这个状态进入等待仲裁状态,这时候开始监测总线是否是空闲状态,如果是则参加总线 的竞争,如果在总线竞争中获胜,则将采集到的数据发送出去,发送完成则重新回到无任务 状态;所述帧间隔状态和部分所述状态迀移线完成系统各个任务优先级的分配工作;所述 节点发送部分还包括重发机制,通过判断截止期为小于〇的数来确定总线上的数据是否重 发;
[0013] 所述数据缓冲部分包括缓冲器空和非空两个状态,容量设置为1,当有新数据进入 缓冲器时旧的数据丢失;信息量设为固定值lOObits,采用bl记录节点每次运行完成后向总 线上成功发送的总帧数;
[0014] 所述数据产生部分包括数据的产生和组帧两个状态,其中数据来自所述仿真模型 母模块的随机函数部分,采用Pi来记录节点每次运行产生的帧的个数。
[0015] 进一步,所述节点子模块、总线仲裁子模块都为并行结构。
[0016] 本发明的有益效果是:本发明提供硬件接口模块,将待测节点的物理设备直接接 入本发明,即可实现在无需完整物理系统的环境下对接入节点设备的性能测试;应用层模 块还包括模拟执行设备,模拟执行设备用来代替其他未生产出硬件设备的节点,构成完整 的CAN通信系统,此时CAN通信系统为软硬件联合仿真系统;本发明对CAN通信系统的设计和 分析提供了有用的工具,可以有效地降低总线节点的设计、开发和测试成本,缩短研发周 期。EDF动态优先级调度算法更能改善总线的通信能力,提高总线的吞吐能力,进而可以改 善总线系统的实时性能。
【附图说明】
[0017] 图1为本发明智能型电源模块的结构框图;
[0018] 图2为本发明SD0读写对象字典操作流程框图;
[0019] 图3是本发明roo报文的发送和接收流程框图;
[0020] 图4是本发明CAN总线仿真模型母模块示意图;
[0021 ]图5为本发明仲裁判断函数的结构示意图;
[0022]图6为本发明节点模块的结构框图;
[0023]图7为发明采用EDF调度算法总线仿真模型示意图;
[0024] 图8为本发明采用固定优先级算法的实验仿真结果图;
[0025] 图9为本发明采用EDF调度算法的实验仿真结果图;
[0026]图10为本发明采用固定优先级算法与采用EDF调度算法的实验仿真结果对比图。
[0027] 图中1,节点发送部分;2,数据缓冲部分;3,数据产生部分;4,空闲状态;5,忙状态; 6,帧间隔状态。
【具体实施方式】
[0028] 以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并 非用于限定本发明的范围。
[0029]本发明的实施例以Sinamics S120系统为例进行说明。
[0030] -种基于CAN总线的运动控制系统,其特征在于:包括控制单元,整流单元,逆变单 元、执行电机、工控机、CAN卡、物理层模块、数据链路层模块、应用层模块及硬件接口模块; 所述物理层模块包括CAN物理通信介质及CAN收发器,所述CAN物理通信介质用于完成信号 传输,所述CAN收发器提供对总线的差动发送和接收功能;所述数据链路层模块包括CAN核 心控制器,所述CAN核心控制器包括发送模块、接收模块、仲裁模块及验收滤波模块,所述发 送模块用于将信息帧发往物理层,所述接收模块用于从物理层获取信息帧,所述仲裁模块 用于对发送出的与接收到的信息帧进行仲裁,所述验收滤波模块从数据链路层接收帧信 息,通过验收屏蔽码和验收码过滤本节点需要的数据;所述应用层模块包括模拟中心计算 机,用于模拟节点设备
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1