490 likes | 744 Views
Lars-Berno Fredriksson Kvaser AB lars-berno.fredriksson@kvaser.com. Kvaser 里程碑. 1985 由 Fredriksson, Lennartsson and Claesson 建立 -87 年基于 ROVAC 经验运用于第一个机器人项目 -88 年基于 CAN 开始开发 -90 年 CanKingdom, 世界上第一个 CAN 高端协议 -94 年在 Scandinavia 成为 Vector 的经销商 -97 年 US 海军决定使用 CanKingdom
E N D
Lars-Berno Fredriksson Kvaser AB lars-berno.fredriksson@kvaser.com
Kvaser 里程碑 1985由Fredriksson, Lennartsson and Claesson建立 -87年基于 ROVAC经验运用于第一个机器人项目 -88 年基于CAN开始开发 -90 年CanKingdom, 世界上第一个CAN高端协议 -94 年在Scandinavia成为Vector的经销商 -97 年US海军决定使用CanKingdom -98年成为Vector的最大经销商, 拥有除德国以外的最大市场 -99年和Vector合作开发CANcardX/LAPcan, Mercury决定在SmartCraft上使用CanKingdom
Kvaser 里程碑 2002年独立于Vector公司,投放了 Navigator 和Creator与CANalyzer和 CANoe竞争 -03年 Vector公司购买Kvaser的 Navigator和Creator Vector 发行的Kvaser Memorator和USBcan II,支持另外的 Kvaser接口,Kvaser专注于开发接口 -04 年Kvaser 建立了技术合作者和授权经销商网络 -05 年开发了Leaf Series, 发明了Magisynch
分布式嵌入式控制系统 简介
ROVAC (RObot in VACuum) 1980
7个不同的控制系统要被连接起来 • 主要的需求是把机器人运动,材料运送和模具运动配合起来 • 第二个需求是包括缓慢的闭合电路控制回馈,如树脂温度,树脂压力,桶架等,和开路,如输送者,门和真空泵等. • 第三个需求是优化机器提高产品质量 Robot Mold positioner Resin flow (pumps) Glass cutter Resin Temperature Control Mold conveyor system Vacuum control
分布式嵌入式控制系统 1982 ROVAC 机器人系统 μC board 9600 bits/sek 同样颜色 –同样ECU 适用于按照启动顺序排列的参数 25 Hz Board Computer 25 Hz 25 Hz PC 5 Hz
数据 • 处理器: Hitachi HD63B701VOP 1 MHz, CMOS (Heftiest MC at time) • 内存: 8kB EPROM, 128 B RAM • 闭合回路反馈频率.: 400 Hz • 通讯: 9600 Bit/s • 编程教授, 如,操作工通过实时张力测量柄来控制机器人运动 当一个工人在操作时不需要太多带宽!
分布式嵌入式控制系统 基础
通过线路基础来控制 • 巢控制回路: 人/机 • 人工回路回馈: Sight approx. 4 Hz Tactile, hearing approx. 10 Hz • 机器设定点更新: min. 20 Hz Robot 25 Hz, Jet fighter 40 – 50 Hz
分布式嵌入式实时系统 设计是简单的如果: • 系统设计师对系统负责任 • 模块设计师对模块负责 • 两个设计师之间保持一定的距离
分布式嵌入式实时系统 设计是复杂的如果: • 没有明确的系统设计师 • 模块设计师还负责系统部分 • 系统设计和模块设计是混合的 • 依靠RTOS (实时操作系统)
一个分布式嵌入式控制网络 作用于一个应用中 集中系统 应用 应用模块1 应用模块2 应用模块3 应用模块 4 系统应用
运用在MACHINES的 嵌入式分布式控制系统 • 控制行为 • 合作行为 • 完全可预测的系统行为 • 用bit流代替声波和电子信号 This is the same as a Controller Area Network!
局域控制网络 并不是 • 办公室 LANs • 电话系统 • 平行的计算机系统
实时定义 • 可预测和计算在系统内信息发布和执行的最长时间. 硬件实时系统 - 定义总是正确的 软件实时系统 - 定义有时候是正确的 不精确系统 - 对于系统中重要安全的部分,定义是正确的 - 非重要安全的部分不正确
人与人交流基本上不可预测 • 网络提供服务和模块 (NSM) • 点对点连接, 会议连接, 等等. • 系统不关心传出的信息 电信网络工程师在解决这方面问题做的很好 机对机通讯是可以预测的 • 模块给网络提供服务 (MSN) • 网络是系统的脊梁 • 对传出去的信息有既定的兴趣 • 任何通讯是事先确定的 我们必须找到自己的解决方案!!
局域网控制 不是电信或办公室网络! OSI模块不包括时间限制 时间限制是CAN 系统的核心部分 OSI Model 不可预测的系统 非实时系统
CAN 提供 • 消息传输 • 接收消息 • (消息请求) • 冲突分解 • 错误处理
CAN消息包括 11 - 93 有用的 bits in 47 -160 bit 包裹 on the bus 11 or 29 bit 0 - 8 byte 仲裁领域
CAN 既无地址也无标识符! • 生产者/消费者模块 • 生产者和消费者注重系统层面 • CAN ID 领域只用于信息冲突解析的仲裁领域 • 数据在CAN ID领域节省带宽 • 当CAN ID包括数据的时候 CAN控制可作为协处理器 • 冲突不需要!
传达消息,一次一条! 大家聆听! 何种语言? 何种内容? 对象? 问题? 答案? 时间? 等等.
完整协议上缺失的部分 (通常是系统的细节部分) • 总线访问方式 • 网络管理 • 信息安排 • 数据形式 • 物理连接 CAN 需要更高层的协议!
CAN 是 • 很高效 -传输速度大约是以太网的100倍 • 非常健康的 • 非常适合于时间引发系统 • 非常适合于时间和事件引发的混合系统 • 以时间引发来安排事件 • 以事件引发来取消事件
保持简单! • 尽可能多的离线处理 -象处理数字和规则这样的微处理器 • 降低宽带需求 • -让每个模块修正数据 • 多种简单模块 • 在模块和系统的层面上诊断
提前思考! • 事先一小时的思考相当于事后8小时的工作 • - 定时需求 • - 系统是否被正确分割 • - 什么需要修改 • - 怎样预测失败 • - 针对失败如何应对
提前思考! • 计划 • - 没有按照实际情况计划 • 会导致消息不畅通 - 优化 bit率 • 低 bit率 -> 少问题 • - 使用信息作为触点 • - 定义未被计划的事件 (警报) • - 避免消息雪崩
提前思考! • 维护 • - 简单错误查询 • - 通知驱动器! • - 简单的软件升级 • - 简单模块交换 • - 少数灵活的模块类型 • 查证和确认
用CAN设计嵌入式分布式实时系统 非常简单如果: • 您花时间学习和掌握 CAN • 让系统设计师关心CAN信息构架 • 模块设计师把数据整合进CAN消息
系统设计概念 • 系统层面和模块层面是分开的 • 系统是通过CAN总线来控制的 • 更象一个沟通协议 • 系统在运行时仍可以下指令System commands can be made during runtime • 提高系统查错能力和优雅的降低系统 • 系统设计师在系统层面上完全掌控 • 持续监控系统性能 • 在系统层面上控制失败模式 • 模块设计师在模块层面上完全掌控 • 无需知道系统 • 无需对系统变化有任何反馈,无需从系统层面下指令,无需在启动或 运行的时候
平行的发展过程 工作 粗略的 模块规格 系统 规格 和系统在同时准备好 更新的模块 规格 最终 规格和产品 模块由系统信息通过CAN来完成 模块 Time
一个分布式嵌入式控制网络 作用于一个应用中 集中应用系统 应用模块1 应用模块2 应用模块 3 应用模块4 系统应用
模块 I/O 部分 数据输入 数据输出 主要应用 系统适应 参数 自测 消息构造器 CAN
模块举例 • 通过Leine&Linde实现解码 • CPU 80C51, 8kb EPROM • C code • 支持一个全球时钟 • 协议编码 approx. 3 kbyte • 协议RAM approx. 100 byte
不要低估主体电子系统! • 比驱动线更复杂 • - 一些状态关系 • - 一些模式 • - 检验困难 • - 问题解答困难 • - 失败导致电池耗尽!
CAN 错误不易发现 (因为CAN允许出错) • 总线反射 • 振荡器频率偏离 • 错误的 bit注册设置 • - 样点位置 • - 同步跳跃宽度
启动诊断 • 模式自测 • 系统检查 - 每个节点表现,在正确的位置健康正确的设定
在运行时诊断 • 模式检查 - 收到合理值 - 根据系统规则的失败报告和动作 • 系统检查 - 在合理的时间用合理的数据得到合理的信息 - 没有未知信息 - 在能接受范围内的错误比例 (< 1 in 10.000 消息)
规范诊断 • 放在系统模式里 - 实时需求低 - 无论如何系统节点会有数据 - 简化其他模式 无需额外协议 无需高标准认证 - 简化系统设计 自由散布数据资源 只有一个系统模式来测试和认证
高质量系统设计的关键是 • 开发成本低 • 开发时间短 • 产品成本低 • 高性能 • 高可靠性 • 高灵活性 • 低维护成本 高质量!
Kvaser 在中国的商业目标 我们的目标是希望在以下领域能够建立以Kvaser CAN为代表的技术 • 客车 Passenger cars • 重卡Heavy Duty Trucks • 工业自动控制Industrial automation • 大动力的电机High power electrics
Kvaser 在中国的战略 • 使用Kvaser’的硬件 • 在Kvaser Sweden 建立”the CAN university”为名的大学 • 培养和教育中国合作伙伴 • 和中国的合作者密切合作开发CAN项目 • 通过政府,大学和各行各业寻找实际的商业模式
Kvaser´s 商业模式 Kvaser拥有开放的思维,并通过以下标准来实现 我们的商业概念: • 通过透视全球市场来保持公司利于不败之地 • Kvaser硬件的销售 • 交流技术知识,资金流正常 • 一个战略伙伴