0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

电子设计 来源:郭婷 作者:电子设计 2019-01-10 09:28 次阅读

CAN Bus(Controller Area Network),控制器区域网,起源于80年代,由国际标准化组织(ISO)所发布,因为利用双线差动(two-wired differential),使其即使在电器条件恶劣环境下,也可正常运作的一种传输总线。又因双线沟通的特性,大幅缩减了其应用线路的使用量,也降低传统线路复杂易造成错误的发生机会。

基于以上特性,CAN Bus一大应用层面即被导入于汽车工业,因传统的汽车使用线路复杂,使得早期汽车内部线路易于发生故障时且较难以排除。因此双线差动讯号式CAN Bus的电器特性即被快速导入并广泛运用在各交通工具领域(航空、轮船与汽车)或是工业控制。

强健的协议与其编码格式

CAN Bus基本的协议可分为CAN2.0A与CAN2.0B两个版本,A版与B版的主要差别在于识别子(ID)长度分别为11位与29位。如图1所示为一个CAN 2.0协议传输的数据封包(Data Frame)。

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

图1. CAN协议编码格式图

图1为一个CAN数据封包的格式,可分为起始域、仲裁域、控制域、数据域、CRC域、应答域和结束域。每个封包(Frame)最长可达128位,以下分别说明各域的意义,其它详细资料可参考BOSCH公司的相关CAN Bus技术文件。

●起始域(SOF, Start of Frame):该值必为0,表示封包的开始。

●仲裁域(Arbitration Field):用于确定封包的优先级,由11位或29位识别子(ID)加上一位的RTR(Remote Transfer Request),当RTR为0时,表示传出资料;RTR为1则表示为接收资料。

●控制域(Control Field):包含两个保留位(一般为0)和表示数据域内的数据长度DLC0~DLC3共有4位。

●数据域(Data Field):0~8个Byte的被传送数据

●CRC域(CRC Field):从SOF到Data Field的CRC验证码,用于检测传输上的错误,共有15位的长度。

●应答域(ACK Field):确认对方接收是否正常,若接收成功则会回传1。

●结束域(EOF, End of Frame):表示封包的结束,为7位连续的1。

CAN Bus的特征与优点

●CAN Bus可透过简单的信息滤波设定实现点对点、一对多个点或全网络广播等资料的传输方式。

●没有特定的主从端,且可以以多个主端方式工作,因此Bus上各节点均可在任一时刻主动发送信息至其它节点。

●藉由封包内仲裁域内的识别子来判定优先权,而非藉由地址,因CAN Bus为非破坏性的总线仲裁之技术,当优先层级不同的事件发生,层级低的节点会主动放弃总线访问的权利,而高优先层级的可继续传输而不受影响。

●因具有优先层级之特性,大幅节省了当总线发生冲突时的仲裁时间,提升系统的实时性,而不会出现网络瘫痪的机会。

●具有良好的扩充性,因CAN Bus协议是定义信息,非以站台方式定义,因此可不需为软件硬件做修改即可增加站台。

●传输的距离与传输速度成反比,当传输距离达10km时传输速率约为5Kbps,若需较高的传输速率1Mbps,此时的传输距离为40m。

●在CAN Bus上的每个封包具有强大的CRC检验与防错机制,大幅降低了资料的出错率。

●CAN Bus的通讯介质可为光纤、同轴电缆与常见的双绞线,相较其它通讯方式较为弹性。

CAN Bus的架构与输出准位

CAN Bus为利用一种双线的差动讯号传输规格,典型的CAN节点皆会由一个机械控制单元(Micro Controller Unit,MCU)来做控制,如图2所示,MCU中CAN Controller透过CAN_TX与CAN_RX传送/接收讯号至CAN Transceiver转换成差动讯号CAN_H与CAN_L。而终端电阻120欧姆能有效的吸收CAN网络上的反射波,有效地增强信号

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

图2. CAN Bus架构图

图3为CAN Bus输出准位图,当CAN_H与CAN_L均为2.5V时,数据值为逻辑1(隐性);而CAN_H = 3.5V与CAN_L = 1.5V时,数据值为逻辑0(Dominant)。

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

图3. CAN Bus输出准位图

强大且可靠的自我检测能力

CAN Bus协议中具有五种错误侦测的方法,其中三个是属于信息(Message)层级,而另外两个位(Bit)层级的检查。当一个信息发生错误,使该节点不接收这个信息,并产生一个错误的封包,而发送端会尝试重新发送新的一个信息。通过以下的侦错方法使CAN Bus的错误率低于4.7x10-11.

1. CRC:循环冗余校验,CRC检查为一个15位的CRC,计算其传送讯息结尾的FCS(Frame Check Sequence)并进行比对,如果不同则为CRC错误。

2. ACK Errors:接收的一端在接收讯息后会发送ACK告知发送端,如果发送讯息的一端没有收到则为ACK错误。

3. Frame Check:检查封包中的几个特定位,来验证内容是否正确。

4. Monitoring:将一个位的资料写至CAN Bus在读回来验证是否发生错误。

5. Bit Stuffing:用于讯号同步使用。

基于优先权的仲裁特色解决多节点发生冲突的问题

CAN Bus采用了非破坏性的仲裁(Non-Destructive Bitwise Arbitration),因为每个讯息封包都具其优先权,而优先权由仲裁域内部的识别子决定。当许多结果同时发送讯息时,只有发送高优先权的封包的节点才能成为CAN Bus上的主站。

基于在各优先层级的仲裁来自于识别子与跟随在识别子后的传送请求(RTR)决定,具有两个不同识别子的封包中,较高优先权的识别子具有较低的二进制数值。因此注意到的是,在一个系统中每条讯息都需给予唯一的是识别子;具有指定的识别子和Data Length Code (DLC)的数据封包仅可由一个节点所激活。

当CAN Bus闲置时呈现隐性电压准位,这时任何一个节点都可以发送一个显性电压准位做为一个封包的开始;若有两个以上的节点发送,即产生了竞争,而CAN Bus解决的方式为对识别子进行仲裁,各发送节点除了一边向CAN Bus发送电压准位,同时与回收CAN Bus进行比较,若电压准位相同,则继续发送下一位,若电压准位不同则不向下发送,退出竞争。因此识别子为隐性准位时,竞争的优先级就较低,而最高优先级的识别子应该全是显性准位。

以NUC240/NUC140/NUC130作为电梯控制器和监测应用设计的解决方案

NUC240 CAN Bus的特色

在实现电梯控制器和监测的设计模块应用,选择的解决方案为***新唐科技的NUC240、NUC140与NUC130,新唐科技于2012年年底推出NUC200系列MCU,其中NUC240为NUC200系列中富含最多周边的产品系列,也是少数具有两组CAN信道的MCU厂商。使用者亦可透过Nu-LB-NUC240学习板搭配BSP链接库(Board Support Package)即可简易地对相关周边上手。

NUC240 CANBus特色如下:

●支持CAN的协议规范2.0 A和2.0 B.

●传输速率最快可达1 MBit/s.

●32个讯息目标

●每一个讯息目标都有自己的识别子屏蔽。

●可程序化的FIFO模式(链接讯息目标)

●可作为屏蔽中断。

●对时间触发的CAN应用关闭自动重传模式。

●自我检测时具可程序化的look-back模式。

●16-bit模块接口至AMBA APB Bus.

●支持MCU由熟睡模式中唤醒功能。

NuMicro MCU CAN Bus方块图

图4为NuMicro MCU内部CAN模块的内部架构,主要包含CAN Core、Message RAM、Module Interface和Message Handler四个部分,其中CAN Core负责错误侦测与处里,是CAN的主要核心;Message RAM为传送与接收的缓冲器;Module Interface为与CAN Core与CPU沟通的主要接口。Message Handler则为传送与接收命令控制中枢。

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

图4. NuMicro MCU CAN Bus方块图

电梯控制系统方块图说明

由图5电梯控制系统图得知,在各楼层皆需要一个MCU来做为楼层信息的判断或是错误的回报,故选具有一组CAN功能的NUC130作为各楼层的MCU配置。依序将电梯楼层编号1-1~1-7与第二栋楼层编号2-1~2-7以CANBus连至一起,形成一个网络系统(A1)。同理楼层编号3-1~3-7与4-1~4-7形成另一CAN网络系统(A2),每一栋电梯皆有其独立的步进马达来控制电梯的包厢。

在此选用具有两组CAN Bus信道的NUC240做为电梯系统主要的运算处理与马达控制器,其一信道为连接两栋电梯大楼间的CANBus;另一信道(B)则连接至另一电梯控制器以及中控室的部分。最后中控室可透过USB方式与PC端连接,做为显示监控接口或除错处里。

NUC240/NUC140/NUC130在电梯控制器和监测的应用设计

图5. 电梯控制与监测系统图

电梯模块运作流程说明

电梯的运作行为可以很多种方式呈现,但主要的目的皆来自于接获各楼层乘客指令,平安地送达至指定楼层。如同搭乘百货大楼电梯,于楼层显示面板(NUC130)按下上(下)楼按键,此时因CAN Bus网络特性,可发现不同栋而相同楼层之上下楼按键会同时显示灯号,并且所有楼层与NUC240皆显示当下电梯厢之楼层;待电梯移至被按下上(下)按键之楼层,乘客进入后再按下指定前往楼层按键即可。另外当电梯发生故障时,位处中控室之管理员亦可透过简单的人机接口以简单的USB连接计算机与NUC140将其资料读出。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    16167

    浏览量

    177301
  • 汽车电子
    +关注

    关注

    3023

    文章

    7852

    浏览量

    166183
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2711

    浏览量

    463296
收藏 人收藏

    评论

    相关推荐

    新唐电竟方案 键鼠方案 水冷系统 NUC1263 M252SE3AE

    NUC1263 针对DDR5电竞模块提供1.0V I3C接口以及高效电竞灯光控制LLSI接口应用 新唐科技推出NUC1263系列32位Arm Cortex-M23微控制器 台湾新竹 -
    的头像 发表于 11-05 15:25 132次阅读
    新唐电竟方案 键鼠方案 水冷系统  <b class='flag-5'>NUC</b>1263  M252SE3AE

    为保计算领域领导地位,英特尔放弃NUC

    英特尔停止投资NUC业务的决定引起了广泛关注。NUC作为小尺寸准系统电脑的先驱,自2012年推出以来,市场上取得了一定的成功。然而,近年来随着市场竞争的加剧和消费者需求的变化,NUC
    的头像 发表于 02-27 17:54 406次阅读
    为保计算领域领导地位,英特尔放弃<b class='flag-5'>NUC</b>?

    新唐科技推出NUC1263系列微控制器

    新唐科技,一家领先的微控制器制造商,近日宣布推出其首款支持DDR5模块的微控制器NUC1263系列。这款新品不仅具备强大的性能,还拥有独特的接口技术,旨在满足电竞市场的需求。
    的头像 发表于 01-30 11:02 831次阅读

    NUC130RE3CN初始化进行到SPI时候,会发生Hardfault问题怎么解决?

    使用NUC130RE3CN这个控制器的时候,用库函数编写程序。初始化进行到SPI时候,他会发生Hardfault问题。
    发表于 01-18 06:06

    NUC505(M4)为什么无法烧录nulink?

    之前安装过NUC100(M0)的nulinkme驱动安装正常 也已经下载最新版的nulink也读到NUC505(M4)的ICE了 但烧录时出现 Error : Flash Download
    发表于 01-17 08:33

    NUC972 USB做ESD测试时如何防护?

    NUC972 USB做ESD测试时如何防护
    发表于 01-17 07:32

    ifconfig can0 up为什么无法启动nuc972的can?

    自己做的板子,用的can1,管脚是ph14,ph15。 命令行里输入ifconfig can0 up后,打不开can。 root@nuc972 /# ifconfig can0 up
    发表于 01-17 07:12

    请问如何在Linux下取得NUC980 CPU频率?

    如何在Linux下取得NUC980 CPU频率?
    发表于 01-17 07:01

    NUC980怎么把Uboot和kernel的输出改到其它串口?

    使用的NUC980官方固件 板子只引出了PA1和PA0 没有把UART0引出 请问应该怎么把Uboot和kernel的输出改到其它串口
    发表于 01-17 06:52

    NUC505软件开发包为什么不能下载?

    NUC505 软件开发包不能下载
    发表于 01-17 06:35

    NUC505虚拟串口工作不正常的原因?怎么解决?

    使用新唐提供的例程(NUC505BSPV3.01.000 中), 联机后出现虚拟串口,但是上面有个黄色问号,表示没有正常安装成功。 人工将其“停用”/“启用”后,黄色问号消失。 PC机可以打开这个串口,但是向NUC505发送数据,没有任何反应。 我用的XP 系统。
    发表于 01-17 06:26

    nuc240 uart1可以传送却无法接收是为什么?

    由 PC 端用 RS232 通讯, 根据测试 NUC240 传送没问题, 却无法收到讯息, 不知为何, 恳请各方前辈高手不吝帮忙,谢谢: 以下是我改的程式: #include
    发表于 01-15 06:54

    NUC220VE3AN如何做到USB HOST?

    现时我使用NUC220VE3AN并想储存它的AD数据USB随身碟,但我不知道如何修改,使它可以做到USB HOST的功能,令我可以读写USB随身碟。请各位多多指教。
    发表于 01-15 06:29

    Intel迷你机后继有人!首款ROG NUC亮相

    硬件世界拉斯维加斯现场报道:CES 2024大展上,华硕首次展示了全新迷你主机ROG NUC,传承于Intel NUC,拥有超小的体积、超强的性能。
    的头像 发表于 01-12 10:26 709次阅读

    nuc980双网卡开机启动

    nuc980双网卡开机启动
    的头像 发表于 12-07 18:25 1380次阅读
    <b class='flag-5'>nuc</b>980双网卡开机启动