基于CAN总线的温室测控系统的研究与设计
2011-08-13 17:02:18来源:21IC

  CAN(Controller Area Network)总线又称为控制局域网,是一种多主方式串行通信协议,能有效地支持具有很高安全等级的分布实时控制。由于CAN总线具有造价低、通信速度快、可靠性高、实时性强等突出优点,在汽车行业、机械工业、家用电器及传感器等领域应用广泛。

  温室控制技术是农业现代化的重要内容,在目前的温室系统中主要是靠RS-485总线来组成控制网络,将采集到的数据和信息传送到主控机中。其通信速率、节点连接数目都受到一定的限制。

  本文提出了以CAN总线构成现场控制网络。CAN总线的通信速率最高可达1 Mbps/40 m,挂接的设备可达110个。另外信号的传输采用短帧结构,这样传输时间短,受干扰的概率低。并且一旦网络中某个节点故障时,该节点具有自动关闭输出功能,以主动切断该节点与总线的联系,使网络上其他节点及通信不受影响,具有较强的抗干扰能力,降低了恶劣环境对于温室系统的影响,提高了系统的实时性、可靠性和扩充性。

  1 系统总体设计

  温室测控系统采用分布式多主方式进行通信。系统主要由主控上位机、CAN总线和多个智能测控模块组成(注意:各个智能测控模块之间存在强烈的相互关系)。通过对温室内外,特别是温室内部各种影响作物生长的要素用相应智能传感器进行测量,然后通过CAN总线传送给主控上位机,上位机进行数据打印、分析和处理、参数设置并且控制有关设备等工作,从而实现对温室要素的调控,保证了作物生长所需的环境。系统上任何节点均可在任意时刻主动向其他节点发出信息,支持点对点、一点对多点和全局广播方式接受和发送数据。图1是温室测控系统总体设计图。


  2 硬件平台设计

  温室测控系统的硬件平台主要由多个CAN智能节点构成,如图2所示。本系统节点采用总线型拓扑结构,两芯电缆(CANH和CANL)双绞线连接。主要由微控制器MC68S08QG8,CAN通信控制器MCP2515和CAN收发器TJA1050组成。本文中微控制器MC68S08QQ8与控制器MCP2515是通过SPI口连接,测控节点通过微控制器MC68S08QG8的IIC口来连接的。智能节点的个数是由温室内外所测控的环境要素来决定的,但是任意智能节点均可以像以太网节点那样直接挂接在CAN总线网络上,即在不牺牲可靠性的前提下进一步扩展现场测控节点的数量。


  2.1 芯片介绍

  选择一款合适的MCU是系统稳定的重要保障。综合功耗、性能和价格等各种因素的考虑,本系统采用Freescale公司的MC68S08QG8(以下简称为QG8)作为系统控制信号采集的芯片。MC68S08QG8单片机采用高性能、低功耗HCS08飞思卡尔8位微控制器为内核,是一款集成度高、结构紧凑、功能丰富、适用于各种场合的低价位单片机。MC68S08QG8除了提供Freescale丰富的外围接口与HCS08内核卓越性能的多功能组合外,还包括更长的电池寿命(即使工作电压低至1.8 V,也能发挥最大效能)、业界领先的Flash技术、3个通信接口(SCI、SPI和IIC)以及创新的开发支持等其他系列单片机不可比拟的优势。

  智能节点中CAN控制器完成了CAN协议中数据链路层和物理层的所有功能,保证通信质量。本系统选用了一种独立的CAN协议控制器——Microchip公司的MCP2515。MCP2515完全支持CAN V2.0B技术规范,MCP2515还包含3个发送缓冲器和2个接受缓冲器,减少了单片机的管理负担。与传统上使用的CAN控制器SJA1000相比较,它与MCU的连接是通过行业标准串行外设接口(SPI)来实现的,这样可以减少芯片使用的引脚,简化CAN总线的电路的连接,提高了系统稳定性。

  CAN总线收发器提供CAN控制器与物理总线之间的接口,是影响CAN总线网络安全性、可靠性和电磁兼容性的主要因素。本系统采用Phlips公司的TJA1050作为总线收发器。TJA1050有两种工作模式:高速和待机,其中待机模式可以防止由于CAN控制器失控而造成的网络阻塞。并且在TJA1050中还设计了一个超时定时器,用以对TXD的低电压(此时CAN总线上为显性位)进行监视。该功能可以避免由于系统硬件或者软件故障而造成TXD端长时问为低电位时总线上所有其他节点也将无法通信的情况出现。

免责声明:本文仅代表作者个人观点,与自动化网无关。对本文及其中内容、文字的真实性、完整性、及时性,本站不作任何保证或承诺。请读者仅供参考。