论文部分内容阅读
CAN总线作为工业现场中优秀总线的代表,自诞生以来就得到了快速的发展,在工业现场、汽车电子以及航天航空等各个领域都得到了广泛应用。但由于其接口与数据报文的特殊性,其数据格式并不能被PC机识别,因此在数据采集、性能调试以及故障分析等方面并不方便,这在一定程度上阻碍了CAN总线更大规模的普及。因此设计出一种能够将CAN总线数据转换为能被PC机识别信号的系统就显得十分有必要。传统的借助于ISA以及PCI板卡方式的数据转换设备虽然能达到这个目的,但由于接口复杂、不支持Laptop、数据传输速度慢以及造价昂贵等缺点,并不适合在工业现场中推广。而USB接口具有接口简单、支持热插拔、使用方便、数据传输速度快等优点,现已成为PC机的标准接口之一。基于以上的这些前提,本文以FPGA作为主控制器,设计出了一种基于FPGA的CAN-USB协议转换系统。本文从四个方面对整个系统的设计提出了完整的方案,分别是协议转换方案的提出、系统的硬件设计、系统的软件设计以及系统的仿真与调试。在整个系统中,设计了以FPGA为主控制器,SJA1000为CAN控制器,CY7C68013为USB控制器的协议转换系统。该协议转换系统根据现场总线中的命令要求来对源协议数据进行采集,采集到的数据存储在FPGA的异步FIFO中进行源协议的解码以及目标协议的重新编码,最终在时钟的控制下通过目标协议的数据传输方式送至用户或现场总线节点。在该系统的设计中充分考虑到了CAN总线协议的发展,通过对CAN数据统一编码再重新解读的方式,系统不但适用于传统的Basic CAN模式,也适用于更高级的PeliCAN模式,在系统的兼容性上,所设计的系统充分达到了现场总线的应用要求。除此之外,由于系统采用了FPGA来作为系统的主控制器,基于其高速的数据采集能力和通信能力,可以在系统的基础上进行拓展,使得系统不单单可以进行协议的转换,还可以实现工业现场视频数据、设备运行参数的监控,这使得系统的可扩展性得到了大大地提高。仿真结果表明系统具有硬件设计简单、系统集成度高、易扩展以及成本低廉等优点,同时由于在设计中引入了信号可靠性的概念,系统具有较强的稳定性,具有较高的应用和推广价值。