CAN总线最早是德国的BOSCH公司为处理轿车的监测,操控体系而规划的。现在,已由轿车行业扩展到进程工业,机械工业,机器人和楼宇主动化等范畴。总结各个范畴中的运用实例,CAN通讯规划的关键在于各个通讯模块的规划与完成。通讯信号一般有模仿量输入/输出(电压电流收集模块),开关量输入\输出,数字量输入\输出(如计数器模块)等。本文要点就模仿量输入模块和开关量输入模块的规划,选用具有CAN接口的C8051F550单片机作为体系规划的从节点,用来收集模仿量和开关量,完成与上位机中心操控器的通讯。
1 CAN总线通讯网络体系
如图1所示,本规划中经过带有终端器(120欧电阻)的通讯介质(双绞线)将上位机和底层模块衔接起来。试验中,终端电阻和双绞线阻抗的匹配保证了数据信号不会在总线的两头反射。上位机(主节点)选用USB—CAN接口适配器(类型GYB507),使PC机直接经过USB接口就可连入CAN总线网络,成为一个规范的CAN节点。合作总线通讯测验软件CANtool的运用,可直接装备PC机的发送与接纳状况,通讯速率和报文滤波功用等。一起,还可实时监测显现网络中各从节点与PC机的数据通讯,运用简略、便利。
图1 CAN总线通讯网络结构
2 智能节点硬件规划
传统的从节点规划是将CPU与CAN总线操控器和总线收发器相连后再连入总线网络,这样使CPU外围电路复杂化,整个体系受外部影响较大。为了处理这一问题,许多单片机厂商都将CAN操控器集成在单片机上。本文中选用C8051F550该单片机,它是内部集成的CAN操控器,彻底依照BoshchCAN全功用的CAN模块完成,契合CAN2.0B协议,作业位速率可达1Mpbs。操控器包括有一个CAN内核,音讯缓冲区,报文处理状况机和CAN操控寄存器。通讯操控器有32个音讯目标,能够装备为发送或接纳数据。输入数据,音讯目标及其标识符存储在CAN音讯缓冲区中,能完成CAN协议的数据链路层的悉数功用及物理层大部分功用。CIP-51CPU可经过特别功用寄存器直接或直接拜访CAN操控寄存器(CANOCN),测验寄存器(CANOTST)和状况寄存器(CANOSTA)。一切其它寄存器只能经过CANOADR,CANODATH和CANOTAL寄存器以地址索引方法直接拜访。
CAN总线的驱动器选用阻隔CAN总线收发器CTM1050,通讯速率1Mbps,至少可衔接110个节点。内部集成的电气输入级阻隔电路,可阻隔高达2 500V的直流电压。输入级兼容3.3V和5V的CAN操控器,输出级驱动具有温度保护,内部TVS管可防止总线过压功用。与传统的PCA82C250总线收发器比较,首要长处是无需外加光耦可直接运用,外围电路简略,安全,可满意工业现场恶劣条件的运用。图2所示为C805117550与CTM1050的接口电路。
图2 C805F550与CTM1050的接口电路
3 智能节点软件规划
图1中三个节点与上位机的通讯方法选用的是节点1、3与上位机完成点对点通讯作业方法。节点1、3的微处理器C8051F550上电复位后,主动收集模仿电压信号,经过C8051F550内部集成的12位A/D转化,将数字量发送到上位机。上位机实时进行数据监控,假如收到的数据呈现过错,能够经过CANtool软件,发送自定义的过错数据标识给两个节点,两节点收到该数据后,中止A/D采样作业。节点1、3与节点2是主从作业方法。当节点2的开关量有按键按下时,1、3节点将实时收集到的数据在发送给节点2,并在节点2的LCD上显现。