基于DSP和FPGA的总线故障注入系统的制作方法

文档序号:12463962阅读:209来源:国知局
基于DSP和FPGA的总线故障注入系统的制作方法与工艺

本发明涉及故障注入技术,特别是一种基于DSP和FPGA的总线故障注入系统。



背景技术:

近几来,RS-422、RS-485总线,因其高实时性和高灵活性被广泛采用,但是在实际应用中,要保证总线系统的高可靠性,总线测试必不可少。

现有的测试方法大多采用正向测试的模式,针对输入的激励,测试输出的响应;即使现有的一些采取故障注入的测试方法,也仅仅是进行物理层次和协议层次的故障模拟,对信号注入短路、断路、串/并阻抗、信号替换、信号延时等数字部分故障,对信号的模拟部分的故障注入覆盖不全面,而实际总线运行中会面对各种各样的状态及环境变化。



技术实现要素:

本发明的目的在于提供一种基于DSP和FPGA的总线故障注入系统,能够模拟总线通信时硬件在实际运行过程中发生的故障。

实现本发明目的的技术解决方案为:一种基于DSP和FPGA的总线故障注入系统,包括DSP主处理器、FPGA、上位机、以太网接口模块、DA模块、RS422接口模块、RS485接口模块、继电器网络、电阻网络和存储模块;

所述RS422接口模块和RS485接口模块设置在串口总线和FPGA之间,用于接收串口总线上的数据,并发送给FPGA;

所述FPGA通过数据总线、地址总线与DSP主处理器相连,将接收的数据发送给DSP主处理器;

所述DSP主处理器通过以太网接口模块与上位机连接,接收上位机发送的故障指令,根据对应的故障指令对接收的数据进行故障注入,生成故障注入后的数据;

所述FPGA通过DA模块与设备端连接,DA模块用于将故障注入后的数据转换为模拟量输出;

所述继电器网络和电阻网络设置在DA模块与设备端之间,通过FPGA控制继电器断开和连接,所述电阻网络用于模拟串行阻抗或并行阻抗。

本发明与现有技术相比,其显著优点为:1)本发明在不改变提供激励源的测试设备与被测设备信号的前提下,通过串接在总线系统中的故障注入单元来进行所需故障的配置,改变通信信号,实现在总线设备正常通信中加入各种故障的功能;2)本发明采用硬件故障注入方法,由模拟量输出故障注入后的信号,模拟硬件在实际运行过程中发生的故障;3)本发明在应用中可以根据约定的波特率,通过上位机人机交互界面设置串行接收波特率,可以直接作为一个模块灵活应用于不同的波特率通信系统,具有很强的灵活性;4)本发明具有良好的可视化界面,通过以太网通信,可以传输故障注入命令,可以实时的注入故障;5)本发明通过FPGA直接控制各个模块,降低了系统成本,简化了电路设计,具有较高的性价比。

附图说明

图1是本发明基于DSP和FPGA的总线故障注入系统整体结构图。

图2是本发明基于DSP和FPGA的总线故障注入系统的硬件结构图。

图3是本发明基于DSP和FPGA的总线故障注入系统的RS422接口模块原理图。

图4是本发明基于DSP和FPGA的总线故障注入系统的继电器输出原理图。

图5是本发明基于DSP和FPGA的总线故障注入系统的继电器、电阻网络示意图。

图6是本发明基于DSP和FPGA的总线故障注入系统的DA模块原理图。

图7是本发明基于DSP和FPGA的总线故障注入系统的上、下位机流程图。

具体实施方式

结合图1、图2,本发明的一种基于DSP和FPGA的总线故障注入系统,包括DSP主处理器、FPGA、上位机、以太网接口模块、DA模块、RS422接口模块、RS485接口模块、继电器网络、电阻网络和存储模块;

所述RS422接口模块和RS485接口模块设置在串口总线和FPGA之间,用于接收串口总线上的数据,并发送给FPGA;

所述FPGA通过数据总线、地址总线与DSP主处理器相连,将接收的数据发送给DSP主处理器;

所述DSP主处理器通过以太网接口模块与上位机连接,接收上位机发送的故障指令,根据对应的故障指令对接收的数据进行故障注入,生成故障注入后的数据;

所述FPGA通过DA模块与设备端连接,DA模块用于将故障注入后的数据转换为模拟量输出;

所述继电器网络和电阻网络设置在DA模块与设备端之间,通过FPGA控制继电器断开和连接,所述电阻网络用于模拟串行阻抗或并行阻抗。

进一步的,以太网接口模块采用W5300芯片,DSP嵌入式处理器为ADSP-BF532芯片。

进一步的,RS422接口模块、RS485接口模块均包括65LBC184接口芯片和光耦芯片6N137,65LBC184接口芯片用于RS422电平与TTL电平转换,光耦芯片6N137用于与FPGA的信号隔离。

进一步的,DA模块包括4通道的AD5544转换芯片和OP2177运算放大器,4通道的AD5544转换芯片用于数模转换,OP2177运算放大器用于电压幅度调节、共模电压调节。

进一步的,继电器网络由TPIC6B595芯片驱动继电器,实现并行输出;通过FPGA控制继电器的通断,实现物理层次的短路、断路、串/并行阻抗的故障注入。

进一步的,FPGA直接控制RS422/RS485模块、DA模块、继电器网络,实现RS422/RS485串行信号的接收,并将其转换成并行信号交于DSP处理;FPGA采用三线串行方式控制输出状态,输出串行数据转换时钟、TPIC6B595的片选信号以及串行输出数据,通过TPIC6B595芯片实现并行输出;FPGA采用四线串行方式控制DA模块,输出串行数据时钟、AD5544的片选信号、串行输出数据以及串行数据加载信号。

本发明通过串接在总线中来进行所需故障的配置,由RS422/RS485接口模块接收总线上的信号,经过DSP处理后,通过FPGA控制DA模块输出注入故障后的信号,实现在总线设备正常通信中实时加入各种故障。

为了使本发明的目的、技术方案及优点更加清楚明确,结合附图和实施例对本发明进行详细介绍。

实施例

如图1所示,基于DSP和FPGA的总线故障注入系统,在不改变提供激励源的测试设备与被测设备信号的前提下,通过挂接在总线系统中的故障注入单元来进行所需故障模式的配置,改变通信信号,实现在总线设备正常通信中实时加入各种故障的功能。

如图2和图7,基于DSP和FPGA的总线故障注入系统包括上位机和下位机两个部分,上位机利用组态王设计提供人机交互界面,用来接收操作人员下达的故障命令,并将故障命令发送给下位机。下位机上电之后首先对DSP、FPGA、W5300等进行初始化,接着根据实际通信波特率设置串行信号接收波特率,等待上位机故障注入命令,接收到故障命令后,根据故障要求通过控制DA模块,继电器网络,输出故障注入后的信号。

如图2所示,一种基于DSP和FPGA的RS422/RS485总线故障注入系统,包括DSP主处理器、FPGA协处理器、上位机、以太网接口模块、DA模块、RS422接口模块、RS485接口模块、继电器网络和电阻网络。DSP主处理器通过以太网接口模块与上位机连接,接收上位机发送的故障命令,与FPGA通过数据总线、地址总线相连;RS422接口模块、RS485接口模块作为串口通信模块,连接在FPGA与串行总线之间;RS422接口模块、RS485接口模块与FPGA通过电平转换芯片LVC4245A连接,实现5V与3.3V电平转换;继电器网络、电阻网络以及DA模块与FPGA连接,由FPGA控制输出。

结合图2、图3和图6,RS422/RS485接口模块采用65LBC184接口芯片,完成RS422电平与TTL转换,并通过光耦芯片6N137实现与FPGA的信号隔离;DA模块采用4通道的AD5544转换芯片,完成数模转换,选择OP2177运算放大器,完成电压幅度调节、共模电压调节,从而实现电气层次的故障注入;继电器网络经过TPIC6B595芯片驱动继电器实现并行输出,通过FPGA控制继电器的通断,实现物理层次的短路、断路、串/并行阻抗的故障注入。

结合图2-图4,FPGA内部RS422/RS485模块软件设计,包括串行波特率生成单元,串行接收单元和串行发送单元,实现串行收发模块功能,接收串行信号波特率,可以根据实际接收信号的波特率,由上位机人机界面设置,通过对时钟信号分频实现。串行接收单元采用多级D触发器串接,将接收到的输入串行数据流转换为并行数据后,进行后续的处理;FPGA内部输出模块采用三线串行方式控制输出状态,输出串行数据转换时钟、TPIC6B595的片选信号以及串行输出数据,通过TPIC6B595芯片驱动继电器并行输出;通过FPGA控制不同继电器的通断,可以在线路不同部位间连接电阻,从而实现RS422/RS485总线短路、断路、串/并行阻抗等物理层次的故障注入。

结合图2和图5,FPGA内部DA模块采用四线串行方式控制DA模块,输出串行数据时钟、AD5544的片选信号、串行输出数据以及串行数据加载信号,控制AD5544的两个通道分别输出不同的电压值作为差分信号对,可以灵活的进行电压值的设定,从而实现RS422/RS485总线电压幅度调节、共模电压调节,输入电压阈值调节等电气层次的故障注入。同时通过FPGA,将接收的数据存入其FIFO模块实现延时故障;将接收的数据替换成不同的数据,如第一位数据位翻转,再由DA输出,实现数据替换;或者改变DA模块输出速率实现传输速率的调节,进行协议层次的故障注入。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1