基于pc104总线的canopen主控设备及控制方法

文档序号:8360620阅读:789来源:国知局
基于pc104总线的canopen主控设备及控制方法
【技术领域】
[0001]本发明涉及基于CANOPEN网络技术的机车车辆的网络控制装置技术,尤其涉及一种基于PC104总线的CANOPEN主控设备及控制方法。
【背景技术】
[0002]由于可靠性、实时性、低成本、抗干扰性、兼容能力等多个方面的优势,CAN-bus (CAN-BUS即CAN总线技术,全称为“控制器局域网总线技术Controller AreaNetwork-BUS^Can-Bus总线技术最早被用于飞机、坦克等武器电子系统的通讯联络上,将这种技术用于民用汽车最早起源于欧洲,在汽车上这种总线网络用于车上各种传感器数据的传递。)与其高层协议CANOPEN(是一种架构在控制局域网路“Control Area Network,即CAN”上的高层通讯协定,包括通讯子协定及设备子协定常在嵌入式系统中使用,也是工业控制常用到的一种现场总线)已成为了车辆数据通信系统的标准,并普遍应用于所有的可移动设施,例如地铁火车、船舶舰艇、升降电梯、重载车辆、工程机械、运动系统、分布式控制网络等。大部分的通用1/0模块、驱动器、智能传感器、PLC的生产厂商都提供支持CAN-bus与CANOPEN标准的产品。只要符合CANOPEN协议标准及其设备协议子集标准的系统,就可以在功能和接口上保证各厂商设备的互用性和可交换性。
[0003]CANOPEN标准定义了应用层、通信子协议以及各种应用规范,CANOPEN的主控设备及从设备均需要满足这些规范。
[0004]现有的CANOPEN主控设备一般采用自带CAN协议控制器的处理器或者由可编程逻辑器件完成外置CAN协议控制器时序转换的处理器;自带CAN协议控制器的处理器处理能力不足,很难超过100MIPS,而且RAM,flash等外设资源有限;由可编程逻辑器件完成外置CAN协议控制器时序转换的处理器通过可编程逻辑器件程序的更新以满足CAN协议控制器读/写周期时序,需要更新处理器和可编程逻辑器件两处程序,可维护性不强。

【发明内容】

[0005]本发明提供一种基于PC104总线的CANOPEN主控设备及控制方法,用于克服现有技术中的缺陷,大大增强主控设备的可维护性。
[0006]本发明提供一种基于PC104总线的CANOPEN主控设备,包括:
[0007]PC104单板计算机,通过PC104总线与CANOPEN主站通信卡连接;
[0008]所述CANOPEN主站通信卡,包括PC104总线接口电路、地址转换器、锁存器、缓存器和CANOPEN协议控制器,所述PC104总线接口电路、地址转换器、锁存器、缓充器由逻辑门电路形成;所述PC104总线接口电路输入端连接所述PC104总线,输出端分别连接所述地址转换器、锁存器、缓存器和所述CANOPEN协议控制器;
[0009]电源板,输入端连接外部电源,输出端分别连接所述PC104单板计算机和CANOPEN主站通信卡,用于将外部电源转换成工作电压向PC104单板计算机和CANOPEN主站通信卡供电。
[0010]本发明还提供一种基于PC104总线的CANOPEN控制方法,包括写卡步骤和读卡步骤,其中:
[0011]所述写卡步骤包括以下步骤:
[0012]步骤SI,PC104单板计算机根据操作者的输入生成控制信号,所述控制信号通过PC104总线传输至PC104接口电路输入端,所述控制信号中包含用于控制所述CANOPEN协议控制器时序的控制指令、用于指定所述CANOPEN协议控制器接收的识别地址信息和用于操作者指定访问的设备的访问地址信息;
[0013]步骤S2,所述地址转换器从所述PC104接口电路输入端获取所述控制信号,并比较所述识别地址信息与预设地址信息是否相同,如果相同则同时导通PC104接口电路输出端与所述锁存器及PC104接口电路输出端与所述缓存器,进行下述步骤;如果不同则同时断开PC104接口电路输出端与所述锁存器及PC104接口电路输出端与所述缓存器;
[0014]步骤S4,所述锁存器记录所述识别地址信息,并把该识别地址信息传送给所述CANOPEN协议控制器;
[0015]步骤S5,所述缓存器将接收到的所述控制指令写入所述CANOPEN协议控制器中;
[0016]所述读卡步骤包括以下步骤:
[0017]步骤Wl,所述CANOPEN协议控制器接收来自于外部设备的反向控制信号;
[0018]步骤W2,所述反向控制信号经所述缓存器读入所述PC104接口电路,进而读入PC104总线;
[0019]经过多次上述写卡步骤和读卡步骤的交替循环最后在CANOPEN协议控制器中形成用于控制外部设备的控制命令。
[0020]本发明提供的基于PC104总线的CANOPEN主控设备及控制方法,通过在PC104单板计算机上,扩展一个通用具有PC104总线接口的CANOPEN主站通信卡,从而实现具有CANOPEN主控能力的设备,完成CANOPEN的总线主功能;其中CANOPEN协议控制器可采用独立CAN控制器的芯片,CANOPEN协议控制器控制时序完全由逻辑门电路完成,无需可编程设备参与,方便更新和维护。
【附图说明】
[0021]图1为本发明实施例一提供的主控设备的硬件结构框图;
[0022]图2为本发明实施例一提供的主控设备的信号流程图;
[0023]图3为本发明实施例一提供的主控设备的电路图;
[0024]图4为本发明实施例二提供的主控设备的信号流程图;
[0025]图5为本发明实施例二提供的主控设备的电路图;
[0026]图6为本发明实施例一提供的主控设备的软件流程图。
【具体实施方式】
[0027]实施例一
[0028]如图1-3所示,本发明实施例提供一种基于PC104总线的CANOPEN主控设备,包括PC104单板计算机1、CAN0PEN主站通信卡2和电源板3,PC104单板计算机I通过PC104总线与CANOPEN主站通信卡2连接;PC104总线包括控制总线41、地址总线42和数据总线43 ;CANOPEN主站通信卡2包括PC104总线接口电路21、地址转换器22、锁存器23、缓存器24和CANOPEN协议控制器25,PC104总线接口电路21、地址转换器22、锁存器23、缓充器24均由逻辑门电路形成;PC104总线接口电路21输入端连接PC104总线,PC104总线接口电路21输出端分别连接地址转换器22、锁存器23、缓存器24和CANOPEN协议控制器25 ;电源板3输入端连接外部电源,电源板3输出端分别连接PC104单板计算机I和CANOPEN协议控制器,用于将外部电源转换成工作电压向PC104单板计算机和CANOPEN主站通信卡2供电。CANOPEN主站通信卡2上设有CANOPEN接口 20,CANOPEN接口 20用于通过CAN总线与外部设备连接。
[0029]电源板实现外部DC110/24V与工作电压DC5V之间的转换,给PC104单板计算机I及CANOPEN主站通信卡2供电;PC104单板计算机实现CANOPEN主控代码集成,实现主控代码的应用层,同时通过控制总线、地址总线、数据总线访问CANOPEN主站通信卡2 ;基于CANOPEN主站通信卡2实现CANOPEN协议控制器25的物理层和数据链路层。
[0030]地址转换器22从PC104总线上获取控制信号的读写地址等,经过逻辑转换控制锁存器及缓存器从PC104接口电路中分别获取指定访问的设备的访问地址和控制指令,经锁存器及缓存器输出的访问地址和控制指令即可以访问CANOPEN协议控制器SJA1000,从而完成CANOPEN协议的数据链路层和物理层。本发明中的SJA1000通信接口卡内部没有可编程逻辑器件,完全有74系列门电路完成芯片控制逻辑。
[0031]上述基于PC104总线的CANOPEN主控设备通过以下控制方法实现对外部设备的控制,包括写卡步骤S和读卡步骤W,其中:
[0032]写卡步骤S如图2中实心箭头所示,包括以下步骤:
[0033]步骤SI,PC104单板计算机I根据操作者的输入生成控制信号,控制信号通过PC104总线传输至PC104接口电路21输入端,控制信号中包含用于控制CANOPEN协议控制器时序的控制指令、用于指定CANOPEN协议控制器接收的识别地址信息和用于操作者指定访问的设备的访问地址信息;
[0034]控制指令通过数据总线43向缓存器24传送;识别地址信息通过控制总线41向地址转换器22传送,访问地址信息通过地址总线42向锁存器23传送;
[0035]步骤S2,地址转换器22从PC104接口电路21输入端获取识别地址信息,并比较识别地址信息与预设地址信息是否相同,如果相同则同时导通PC104接口电路21输出端与锁存器23及PC104接口电路21输出端与缓存器24,进行下述步骤;如果识别地址信息与预设地址信息不同则同时断开PC104接口电路输出端与锁存器及PC104接口电路输出端与缓存器;
[0036]预设地址信息来源于地址转换器22提供的1/0端地址,
[0037]步骤S3,锁存器23记录识别地址信息,并把该识别地址信息传送给CANOPEN协议控制器25 ;
[0038]步骤S4,缓存器24将接收到的控制指令写入CANOPEN协议控制器25中;
[0039]读卡步骤W如图2中空心箭头所示,包括以下步骤:
[0040]步骤Wl,CANOPEN协议控制器25接收来自于外部设备的反向控制信号;
[0041]步骤W2,反向控制信号经缓存器24读入PC104接口电路21,进而读入PC104总线.
[0042]经过多次上述写卡步骤S和读卡步骤W的交替循环最后在CANOPEN协议控制器25中形成用于控制外部设备的控制命令。
[0043]CANOPEN协议控制器25采用NXP公司生产的半导体芯片SJA1000,SJA1000为地址总线、数据总线分时复用,PC104接口电路具有专用的地址总线42和数据总线43,PC104总线对芯片SJA1000的访问,需要通过两次次PC104总线操作,完成一次对芯片SJA1000的读或写操作。
[0044]第一次访问将要访问的外部设备的地址送入地址总线,经锁存器锁存该地址;第二次访问将数据(控制指令)经缓存器缓存,并写入芯片SJA1000,完成一次对芯片SJA1000
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1