虚拟数字信号逻辑分析仪设计与实现
2018-04-02
(中车青岛四方机车车辆股份有限公司 山东 青岛 266000)
一、前言
本文中虚拟逻辑分析仪的硬件系统是基于AVR单片机的数据采集系统,软件系统是以LabVIEW软件为核心构建逻辑分析的虚拟仪器平台。
二、虚拟数字信号逻辑分析仪整体设计
数据采集技术研究信息数据的采集、处理、传输、储存以及控制等方面的技术。本系统的数据采集是多路模拟信号和数字信号获取的过程
三、虚拟逻辑分析仪硬件系统设计
本数据采集系统的主要核心就是AVR单片机,在数据采集系统中,AVR单片机就是担当控制中心,以单片机为核心拓展和配置整个硬件系统。整个数据采集系统的各拓展电路包括运算放大电路、信号检测保护电路、光耦隔离电路、串口通信电路等。
(一)模拟信号采集设计
对于典型的模拟信号采集系统,是包括信号输入、信号调理、采样保持、信号转化、信号传输等部分的。在本虚拟逻辑分析仪的下位机信号采集系统中,分辨率、分辨率、通道数、检测速度或吞吐量、信号电平及其处理这些都影响着采集系统的采集效率。
(二)数字量信号采集设计
数字量信号是指在信号变化中是离散的信号,也就是指数字量信号的自变量和因变量都是离散的一种整数信号[2]。在以单片机为核心的数字量信号采集系统中,单片机的I/O可以直接检测和接收外界输入的开关量信号,虚拟逻辑分析仪的开关量信号输入就是16路开关电路的按键输入,由16个按键控制的开关电路,开关电路通过按键的断开和闭合将高低电平通过单片机的引脚传输到单片机中。
(三)串口通信设计
通信技术就是信息的传输和交流的技术。因为单片机的内部集成一个USART接口,即通用异步串行接收/发送接口,所以单片机也就有串行和并行两种通信方式。串口通信是单片机和计算机之间连接的核心[3]。AVR单片机内部自带的串口通信模块就是串行口。单片机通过串行通信接口,可以将其配置成与串行ADC等芯片之间通信的系统。
(四)电路隔离设计
考虑到电源和开关之间的电气隔离和抗干扰的问题,电路中采用光电耦合隔离技术,光电耦合隔离技术就是光电耦合器利用发光二极管和光敏三极管的特性将输入信号和内部电路隔离,这种隔离技术有着极强的抗干扰能力。
四、虚拟逻辑分析仪程序设计
(一)虚拟逻辑分析仪下位机程序设计
对于软件的程序设计,下位机中基于ATmega128(L)单片机的数据采集系统中包括单片机的端口初始化、ADC初始化和USART0模块初始化以及数据采集程序,数据传输部分的程序。程序的设计利用循环语句,将单通道数据采集转换为八通道的数据采集。
(二)虚拟逻辑分析仪上位机程序设计
本仪器采用LabVIEW软件进行设计,LabVIEW的编程过程采用了图形化编程语言,它包含了大量控件、工具和函数。
1.虚拟逻辑分析仪控制面板设计
利用LabVIEW软件可以构建一个显示8路转换后的模拟信号和16路数字量信号的虚拟逻辑分析仪的前面板。前面板部分虚拟逻辑分析仪的面板设计程序如下:
(1)首先添加一个串口资源检测控件:控件(Controls)→新式(Modern)→I/O→VISA资源名称(VISA resource name)。
(2)添加11个数值显示控件:控件(Controls)→数值(Numeric)→数值显示控件(Numeric indicator),并将其中的八个分别用通道1至通道8标记,其余的标记为数值、开关量和读取1。
(3)添加两个字符串显示控件:控件(Controls)→新式(Modern)→字符串与路径(String & Path)→字符显示控件(String Indicator),并将两个控件分别标记为读取缓冲区和字符串1。
2.虚拟逻辑分析仪程序设计
(1)数据读取模块程序设计。
①添加一个串口配置函数:编程(Programming)→仪器I/O(Instruments I/O)→串口(Serial)→VISA配置串口(VISA Configure Serial Port)
②添加4个数值常量函数:编程(Programming)→数值(Numeric)→数值常量(Numeric Constant),并将四个数值常量分别按照数据传输的参数标记,分别是波特率9600、数据位为8、没有校验位、1个停止位。
(2)数据截取分道模块
①添加九个截取字符串函数:编程(Programming)→字符串(String)→字符串截取(String Subest)。将每一个截取控件分配到九个显示面板上。
②添加九个数值/字符串转换函数:编程(Programming)→字符串(String)→数值/字符串转换(String/Number Conversion)→十六进制数字符至数值转换。
五、虚拟逻辑分析仪调试
(一)虚拟逻辑分析仪下位机测试
虚拟逻辑分析仪下位机是利用双路跟踪稳流稳压电源和示波器对硬件系统进行调试和功能实现,将稳压电源作为硬件系统的整体电源输入和模拟信号输入,对硬件进行单片机最小系统测试,再将程序写入单片机,根据拟定好的信号输入幅值表依次对每个通道进行信号采集的测试,然后进行数字量信号测试,所有的测试结果均是由示波器来进行显示。
(二)虚拟逻辑分析仪上位机测试
上位机是利用串口调试助手进行测试,模拟数据采集系统的数据传输,将利用USB下位机转换串口将数据传输到虚拟逻辑分析仪,根据设定好的数据协议将数据分次传递到逻辑分析仪,逻辑分析仪对数据进行接收、读取、处理、显示,实现虚拟逻辑分析仪的功能。
在串口调试助手中分四次发送数据,打开LabVIEW中的逻辑分析仪,点击连接接口的刷新,选择VISA串口资源检测控件自动检测出来的LPT1或者COM3。然后点击面板的运行按钮,开始程序的运行。然后观察缓冲区和各个通道的数据显示。
六、总结
本文研究的是虚拟数字信号逻辑分析仪的设计与实现,相比较于传统的仪器仪表,可以通过计算机来进行一些仪器的功能模拟,完成仪器的功能。虚拟逻辑分析仪的实现使得其数据采集处理能力和数据传输能力得到大幅度的提高,而且虚拟逻辑分析仪的优越的操作性能、强大的功能和低廉的成本,使得虚拟逻辑分析仪在仪器仪表等领域越来越受欢迎。