当前位置:首页 > 工业控制 > 工业控制
[导读]讨论以PHILIPS公司的SJA1000型控制器为核心、基于CAN总线的深海测控系统的设计过程,围绕C8051F020型单片机与SJA1000型控制器详细阐述测控系统的性能要求、组成、硬件连接和软件设计。

摘要:讨论以PHILIPS公司的SJA1000型控制器为核心、基于CAN总线的深海测控系统的设计过程,围绕C8051F020型单片机与SJA1000型控制器详细阐述测控系统的性能要求、组成、硬件连接和软件设计。该系统具有结构简单、价格低和可靠性等优点。
关键词:SJA1000;控制器;深海;测控;应用

1 引言
      为了开发海洋资源,人类必须首先了解海底环境。然而,海底环境十分复杂,对海底探测的要求很高,深海环境下需要采集的参数比较多,包括深度、温度、盐度、PH值、溶解氧及各种化学元素等。

     
深海测控系统工作时需要接收来自甲板控制中心的命令,同时要将采集到的数据反送到甲板控制中心,二者之间的最大通信距离大于5km,因此,它们之间的通信要求很高。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。CAN的直接通信距离最远可达10km(速率在5kb/s以下),报文采用短帧结构,传输时间短,受干扰概率低,保证了数据出错率极低。为此,笔者采用CAN总线作为通信方式。

深海测控系统的基本组成
     
深海测控模块由二大部分组成:测控子模块和通信子模块。测控子模块的主要功能是根据甲板控制中心的命令启动系统并完成参数提取、转换、数据处理、存储及发送等操作。通信子模块的功能是完成甲板与水下测控系统的通信。

     
测控子模块以Cygnal公司的C8051F020型单片机为核心,扩展信号调理电路及与CAN总线的接口。通信子模块是Philips公司的SJA1000CAN控制器。

2.1
测控子模块
     
深海测控子模块由微控制器系统和I/O系统组成。

     
微控制器是Cygnal公司的C8051F020型单片机。C8051F020采用CIP51型微控制器内核及流水线指令结构,70%的指令执行时间为1个或2个系统时钟周期,峰值速度达到25MI/s,能满足深海环境下多路数据的快速采集与分析。C8051F020型单片机内部集成1128通道带可编程增益放大器的A/D转换器和188通道A/D转换器,能满足深海多路环境参数采集;212位电压输出D/A转换器;16位可编程定时/计数器阵列PCA可用于输出PWM以控制步进电机的运转;64个耐5V电压的通用I/O口可控制开关器件的启动和停止。


      
微控制器系统还包括了单片机的一些基本外围电路。系统还开展了1片容量达64Mbyte的串行Flash存储器,用以保存采集到的数据,以避免CAN通信不畅时造成数据丢失。使用时只要微控制器外接相应的传感器、继电器、电机等就可以完成各种环境下参数的采集及相应的控制

2.2
通信子模块
      SJA1000
PHILIPS公司推出的一款独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制。它是PCA82C200CAN控制器(BasicCAN)的替代产品,而且增加了一种新的操作模式--PeliCAN,这种模式支持具有很多新特征的CAN2.0B协议。

    SJA1000的基本特征如下:

  ·引脚与PCA2C200CAN控制器兼容。
 
·有扩展的接收缓冲器(64字节,先进先出FIFO)。
   
·支持CAN2.0ACAN2.0B协议。
    ·支持11位和29位标识码。
    ·通信位速率可达1Mb/s
    ·可与不同的微处理器接口。
    ·可编程的CAN输出驱动器配置。
   
     SJA1000
的引脚排列如图1所示,主要引脚的功能如下所述。 

    AD7AD0:地址数据复用线。
    ALE/AS
ALE输入信号(Intel模式)或AS输入信号(Motorola模式)。
    CS
:片选信号,低电平允许访问SJA1000
    RD/E
:来自微控制器的RD信号(Intel模式)或E使能信号(Motorola模式)。
    WR
:来自微控制器的WR信号(Intel模式)或RD/WR使能信号(Motorola模式)。
    CLKOUT
SJA1000产生用于微控制器的时钟输出信号;时钟信号由内置晶体振荡器通过可编程除法器产生;时钟除法寄存器中的时钟停止位能使该引脚无效。
    VDD1
VSS1:逻辑电路5V电源和逻辑电路地。
    XTAL
:晶体振荡器放大器输入,外部晶体振荡器信号由该脚输入。
    XTAL2
:晶体振荡器放大器输出,当使用外部晶体振荡器信号时,该输出引脚必须开路。
    VDD3
VSS3:输出驱动5V电源和输出驱动地。
    TX0
TX1CAN输出驱动器01输出到物理总线。
    INT
:中断输出,用于触发微控制器中断;内部中断寄存器的任何位置位,INT将低电平输出;INT为开环输出;该引脚为低电平将电路从睡眠状态激活。
    RST
:复位输入,用于复位CAN接口(低电平有效)。
    VDD2
VSS2:输入比较器5V电源和输入比较器地。

    RX0RX1:从物理CAN总线输入到SJA1000的输入比较器。
    SJA1000
与微处理器的接口非常简单,微处理器以访问外部存储器的方式来访问SJA1000。由于SJA1000的内部寄存器分布在连续的地址内,所以完全可以把SJA1000当作外部RAM。在设计接口电路时,SJA1000的片选地址应与其他外部存储器的片选在逻辑上无冲突。

系统设计
      SJA1000
CAN控制器兼容CAN2.0ACAN2.0B二种规范。CAN2.0B具有二种不同的帧格式:标准帧和扩展帧,前者为11位标识符,后者为29位标识符。前者的标识符比后者的标识符少2个字节。深海测控系统的CAN节点数量少,只有上位机节点和水下测控中心节点,所以即使距离比较远,对传输数据速度和可靠性的影响也不是很大。

3.1
单片机与CAN控制器的硬件设计
       
2C8051F020型单片机与SJA1000型控制器的硬件连接电路原理。SJA1000占用了0x80000x80FF的外部RAM空间。当单片机访问以上空间时片选信号会选中SJA1000

      C8051F020有高低2个外部存储器接口。因此,SJA1000AD0AD7连接到C8051F020的高端口P7口,CS连接到基址为0x8000的外部存储器片选信号。当C8051F020访问地址0x80000x80FF时,CPU可对SJA1000执行相应的读/写操作。SJA1000RDWRALE分别与C8051F020的对应引脚相连,INTC8051F020INT0引脚,于是C8051F020可通过中断方式访问SJA1000SJA1000的复位信号RST为低电平有效。C8051F020AD0AD7口用于地址/数据的输入/输出,将其配置为漏极开路方式,利用4.7kΩ上拉电阻器拉至5V。通过设置数字交叉开关,将C8051F020的外部中断引脚配置到P2.7口。

        CAN
能够使用多种物理介质,例如双绞线和光纤等。该设计方案采用双绞线。信号以差分电压传送,2条信号线为CAN_HCAN_L,静态时为2.5V,此时状态表示逻辑"1",也叫做"隐性"CAN_HCAN_L高,表示逻辑"0",称为"显性",此时CAN_H3.5VCAN_L1.5VTJA1050CAN总线收发器是CAN协议控制器和物理总线之间的接口,CAN总线上二端节点须加60Ω电阻器和47nF电容器将信号吸收,以避免信号反射。为了增强CAN总线节点的抗干扰能力,SJA1000TX1RX1通过6N137型高速光耦后与TJA1050相连。这样就很好地实现了总线上各CAN节点间的电气隔离。其中,光耦部分电路的2个电源VCCV_CAN必须完全隔离,否则采用光耦就是失去了意义。电源的完全隔离可采用小功率电源隔离模块和通过带多个5V隔离输出的开关电源模块实现。

3.2
软件设计
     
通信协议采用"ID+命令+数据+校验"的形式,其中ID为网络设备的标识符,采用ID.18ID.20。标识符ID.21ID.28作为固定命令,不参与验收滤波。数据表示通信的具体内容。校验为1个字节,采用校验和的形式,由于CAN总线本身具有15CRC校验,并且该系统节点数少,竞争不会很激烈,通信可靠性比较高。

    软件设计思想为系统上电后C8051F020先对自身和SJA1000进行初始化以确定工作主频、波特率和输出特性等,然后接收来自甲板上位机的控制命令,同时将获取的采样参数通过SJA1000传送到CAN总线上或备份到Flash存储器中;对SJA1000的初始化设计是重点,也是难点,必须对写入每个寄存器的内容进行仔细和全面考虑,否则系统将无法正常运行。可设上位机SJA1000适配卡的ACRxx20AMRFF00。水下测控中心SJA1000ACRxx40AMRFF00
遵循上述思路,笔者采用C51编写了应用软件,下面是部分程序清单。

    初始化部分:

    void CAN_Init(void)

    { CANMODE=0x09;//进入复位模式,单向验收滤波,对SJA1000初始化

    CANCDR=0x88;  //选择PeilCAN模式

    CANIER=0x1A;  //开放接收中断、超载中

   

    
     
由于深海测控系统对通信的实时性要求很高,一旦接收到甲板上传来的控制命令就必须及时响应,为此从CAN总线上接收信息采用中断方式。即SJA1000无错地接收到消息后使INT变为低电平,下降沿触发C8051F020的外部中断0,使其进入中断服务程序。其流程如图3所所示。  

    如果要向CAN总线发送数据,则必须将符合PeilCAN帧格式的一组数据写入SJA1000的发送缓冲区,然后调用发送子函数。这里笔者采用查询方式来实现发送。流程如图4所示。  

结束语
      
基于SJA1000CAN控制器的深海测控系统基本上满足了功耗低、体积小、重量轻、易扩展的要求,同时与甲板上位机之间的通信可靠,完全能满足深海探测的需要,并能广泛应用于海洋油、气田作业,海洋污染监控和防治,海上渔业生产等,前景广阔。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

柏林2025年9月9日 /美通社/ -- 2025年9月5日,纳斯达克上市公司优克联集团(NASDAQ: UCL)旗下全球互联品牌GlocalMe,正式亮相柏林国际消费电子展(IFA 2025),重磅推出融合企...

关键字: LOCAL LM BSP 移动网络

深圳2025年9月9日 /美通社/ -- PART 01活动背景 当技术的锋芒刺穿行业壁垒,万物互联的生态正重塑产业疆域。2025年,物联网产业迈入 "破界创造"与"共生进化" 的裂变时代——AI大模型消融感知边界,...

关键字: BSP 模型 微信 AIOT

"出海无界 商机无限"助力企业构建全球竞争力 深圳2025年9月9日 /美通社/ -- 2025年8月28日, 由领先商业管理媒体世界经理人携手环球资源联合主办、深圳•前海出海e站通协办的...

关键字: 解码 供应链 AI BSP

柏林2025年9月9日 /美通社/ -- 柏林当地时间9月6日,在2025德国柏林国际电子消费品展览会(International Funkausstellung...

关键字: 扫地机器人 耳机 PEN BSP

武汉2025年9月9日 /美通社/ -- 7月24日,2025慧聪跨业品牌巡展——湖北•武汉站在武汉中南花园酒店隆重举办!本次巡展由慧聪安防网、慧聪物联网、慧聪音响灯光网、慧聪LED屏网、慧聪教育网联合主办,吸引了安防、...

关键字: AI 希捷 BSP 平板

上海2025年9月9日 /美通社/ -- 9月8日,移远通信宣布,其自研蓝牙协议栈DynaBlue率先通过蓝牙技术联盟(SIG)BQB 6.1标准认证。作为移远深耕短距离通信...

关键字: 蓝牙协议栈 移远通信 COM BSP

上海2025年9月9日 /美通社/ -- 为全面落实党中央、国务院和上海市委、市政府关于加快发展人力资源服务业的决策部署,更好发挥人力资源服务业赋能百业作用,8月29日,以"AI智领 HR智链 静候你来&quo...

关键字: 智能体 AI BSP 人工智能

北京2025年9月8日 /美通社/ -- 近日,易生支付与一汽出行达成合作,为其自主研发的"旗驭车管"车辆运营管理平台提供全流程支付通道及技术支持。此次合作不仅提升了平台对百余家企业客户的运营管理效率...

关键字: 一汽 智能化 BSP SAAS

深圳2025年9月8日 /美通社/ -- 晶泰科技(2228.HK)今日宣布,由其助力智擎生技制药(PharmaEngine, Inc.)发现的新一代PRMT5抑制剂PEP0...

关键字: 泰科 AI MT BSP

上海2025年9月5日 /美通社/ -- 由上海市经济和信息化委员会、上海市发展和改革委员会、上海市商务委员会、上海市教育委员会、上海市科学技术委员会指导,东浩兰生(集团)有限公司主办,东浩兰生会展集团上海工业商务展览有...

关键字: 电子 BSP 芯片 自动驾驶
关闭