新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于总线的分布式水下航行器控制器设计

基于总线的分布式水下航行器控制器设计

作者: 时间:2013-10-21 来源:网络 收藏

4 数据存储模块
数据存储模块使用Nand Flash与微控制器接口来实现。Nand Flash内存是flash内存的一种,在嵌入式系统中的地位和PC机上的硬盘是类似的。具有容量大、改写速度快、系统掉电后数据不会丢失等优点,适用于大量数据的存储。Nand Flash的接口本质上是一个I/O接口,数据总线宽度8bit,没有地址总线。CLE和ALE这两条信号线用于区分总线上的数据类别。当系统对Nand Flash设备数据访问的时候,需要先向Nand Flash设备发出相关的命令和参数,然后再读出需要的数据。在连接中,注意用NXP2478的地址线A19与A20连接ALE和CLE引脚,这种连接方式必须在配置总线速度的时候使NXP2478总线速度和Nand Flash时序相匹配。电路中R/-(-相)引脚和写保护引脚直接接上拉电阻。此外还有一种方案是把R/-(-还)引脚与GPIO口相连,主要目的是当读写Nand Flash操作完成时,这可以通过中断来判断一次的读或者写完成的时刻。Nand Flash接口电路如图4所示。

d.JPG



5 通讯模块
5.1 CAN通信模块
是目前广泛应用于汽车和飞机工业上的一种现场总线。具有以下特点:1)多主控制,在总线空闲时,所有单元都可以开始发送消息,通过冲突检测,最先访问总线的单元获得发送权。如果多个主机同时发送,则优先级较高的主机获得发送权,这就是CAN的仲裁机制。2)可发送远程帧,主动请求远程主机的数据。3)CAN协议具有完善的差错功能,帧格式中含有纠错编码,进一步增强容错性。4)错误发现功能,所有总线上的单元都可以检测错误,并且检测出错误的单元会立刻通知其他单元(错误通知功能)。正在发送消息的单元一旦检测出错误,会强制结束并重新发送。直到发送成功为止。5)故障关闭功能,可以判断出错误的类型是总线上暂时的数据错误还是持续的数据错误(如某个节点硬件故障)。当总线上发生持续的数据错误时,可将引起故障的单元从总线上隔离出去。这些特点使得CAN特别适用于分布式现场控制。一个控制器要接入,需要CAN控制器和CAN收发器。典型的CAN控制器有Philips公司的SJA1000,它支持CAN2.0协议,包括标准的和扩展的数据和远程帧;位速率可编程控制,有可编程时钟输出;有扩展的64字节FIFO接收缓冲器;除了BasicCAN操作模式以外,还增加了一种新的操作模式——PeliCAN。在电气特性方面,SJA1000的引脚特性与PCA200兼容,通信速率可达1 Mbps。CAN接口电路如图5所示。AD0—AD7与微控制器的数据端口连接,片选信号与GPIO口连接,晶振使用的是12M无源晶振,另外还要设置附加的滤波电容。SJA1000的输出还要接入CAN收发器PCA82C250,最后才接入CAN总线中。

e.JPG


5.2 无线通信接口
无线接口用于的远程控制,当航行器浮上水面时可以使用。采用基于2.4 GHz射频收发芯片nRF2401的无线通讯子系统,工作时功耗低,所需外围元器件很少。可配置鞭型天线或者环形天线,通讯距离约为100 m左右。可良好的满足工作需要。无线通信芯片接口如图6所示。

f.JPG



6 结束语
文中讨论了一种以NXP2478为控制核心,扩展了多个I/O接口,基于CAN总线的系统节点。搭载多种导航设备与传感器,有很强的数据处理和通信能力,系统功耗小、灵活性高、扩展方便。用于的控制系统中,可作为主控节点或现场控制节点。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭