APP下载

DSC的USB多通道同步数据采集系统设计*

2016-11-26李红波李盛陈恒

单片机与嵌入式系统应用 2016年10期
关键词:端点上位芯片

李红波,李盛,陈恒

(西京学院 控制工程学院,西安 710123)

DSC的USB多通道同步数据采集系统设计*

李红波,李盛,陈恒

(西京学院控制工程学院,西安710123)

为了降低USB多通道同步数据采集系统的设计难度和复杂度,本文利用单一DSC(数字信号控制器)芯片设计了一款USB四通道同步数据采集系统。通过软件编程DSC内设的ADC、定时器和USB2.0通信模块等,实现同步采集并实时上传采集数据到Lab VIEW上位机。本文结合三相有功功率测量实例,详细介绍了该同步数据采集系统的设计过程,为多通道同步数据采集系统设计提供了一种理想方案。

同步采集;DSC;Cortex-M4;Lab VIEW

引 言

目前,设计USB多通道同步数据采集的方案较多。上位机软件较多采用VC++、VC.NET或Lab VIEW等软件来设计,其中基于图形化编程方法的Lab VIEW软件专业易用,应用较多。下位机硬件较多由高性能控制器和同步采样芯片进行组合设计,但因其在采样速度、集成度、设计复杂度和调试难度等的不同,主要有4种方案:第一种,采用USB单片机和同步采样芯片构成的方案[7],这种方案设计简单,但由于数据采用串行输出,采样速度低,不适合高速实时采样的场合。第二种,采用ARM处理器、USB接口芯片和同步采样芯片构成的方案[3],该方案集成度不高,设计复杂。第三种,采用高性能FPGA/CPLD作为同步采样芯片和USB接口芯片的时序发生器和逻辑控制器的数据采集系统[2,5-6],设计较复杂,调试较困难。第四种,FPGA/CPLD、32位控制器和同步采样芯片构成的数据采集系统[1],该设计灵活性高,但设计复杂,调试困难,性价比低。本文利用单片DSC进行设计,不仅保证了性能,而且大大降低了数据采集系统的设计难度、复杂度和调试难度,缩短了开发周期。

1 DSC数字信号控制器

DSC数字信号控制器是意法半导体公司生产的基于Cortex-M4核的高性能片上系统控制器,专门为解决模数混合信号的控制应用问题而推出的。该控制器内部带有DSP扩展、FPU浮点运算单元和高级模拟外设。4个独立的12位ADC转换器支持超高速双模式操作,使得6位采样时,速度高达18 Msps;12位采样时速度高达10 Msps。另外,全速USB2.0通信接口,支持DMA双缓冲区工作,使数据传输速率达到了最高极限。该主控器不仅可以方便地用来设计三相电能表、三相电机控制器、传感器以及音视频滤波等混合信号电路系统,而且还可广泛应用于医疗、便携式设备的场合,成为测控领域的集成解决方案。

2 系统硬件设计

2.1 系统构成

系统主要由4路信号输入电路、4路信号调理电路、

DSC控制器和Lab VIEW上位机组成,多通道数据采集系统框图如图1所示。

图1 多通道同步数据采集系统框图

其中,被测模拟信号接入信号输入电路,完成4路信号隔离输入;信号调理电路完成4路输入信号的放大和极性变换功能,以满足ADC转换器的信号输入要求;DSC控制器作为系统主控,负责定时采集和USB数据通信; Lab VIEW上位机负责接收采集数据,及时处理后将数据显示出来并存储,完成采集的目的。

2.2 信号输入电路

高电压大电流交流信号经过电压互感器TV1~TV3和电流互感器TA1~TA3隔离输入后,信号被衰减到一定的范围内。信号输入电路如图2所示,其中uia、uib和uic分别是电流互感器的二次电流在负载Ra、Rb和Rc上的压降,输出取样电压范围为-0.5~+0.5 V。uva、uvb和uvc是电压互感器的二次输出电压,输出取样电压范围-1.5~+1.5 V。

图2 信号输入电路

2.3 信号调理电路

从信号输入电路来的信号,再经过后级运算放大器放大,其中电流信号增益为3;然后通过运算放大器把双极性信号变换到单极性信号0~3.0 V以内,以适应ADC量程,可以保证采样精度。信号调理电路如图3所示。由于3路的电压电流信号调理电路基本相同,图中仅给出了1路的电流电压调理电路图。

图3 信号调理电路

2.4 ADC转换器

DSC控制器内设的4个ADC转换器,最多可连接16路外部模拟输入信号,模拟输入通道只有被编入规则组或注入组的才能被采集。独立的ADC在双模式工作时ADC1(主)和ADC2(从)组成一组,ADC3(主)和ADC4(从)组成二组。工作时每个ADC又有4种采样模式选择:单次、连续、扫描和间断模式,但当工作于双模式时,从ADC采样模式服从主ADC采样模式,并且主从ADC支持同步数据采集。当两组ADC在同一个触发信号和相同的时钟驱动下时,就可实现四通道数据同步采集。同步采集ADC结构示意图如图4所示。同步时钟由系统时钟经过分频器后提供。

ADC转换器共有11路的触发源,分别是定时器触发/捕获比较事件信号(TIM1_CC3、TIM1_TRGO、TIM1_TRGO2、TIM2_TRGO、TIM3_TRGO、TIM4_ TRGO、TIM8_TRGO、TIM8_TRGO2、TIM15_TRGO)和外部中断线输入信号(EXTI Line2和EXTI Line 11),它们分别被连接到EXT2~EXT14上。

2.5 USB2.0通信接口

USB2.0接口工作于全速模式,支持高达12 Mbps的数据传输率。该接口通过和控制器共享一块512字节的片内RAM缓冲区(包缓冲区)实现上位机内存和控制器内存进行数据交互,最多支持8个端点,每个端点最多可使用64字节缓冲区。片内专设了Arbiter部件和双缓冲区操作的DMA机制,使得主机与控制器可以进行零迟延的高速访问,提高了传输效率。通信接口USB2.0结构示意图如图5所示。

图4 同步采集ADC结构示意图

图5 USB2.0通信接口结构示意图

3 系统软件设计

系统软件设计包括设备固件程序设计和上位机Lab-VIEW应用程序设计。

3.1 设备固件程序设计

设备固件程序设计是基于CMSIS(Cortex Micro Controller Soft Ware Interface Standard)软件架构标准设计的,主程序通过调用STM32库函数完成程序设计。该程序主要包括ADC配置、定时器T1定时触发配置和USB端点配置等三部分。

(1)ADC配置

工作在双模式时,4个ADC模块,形成两组同步采集组,每组在同步触发信号下,同时启动主从ADC转换器,实现4路同步数据采集。本系统采用TIM1_CC3事件作为同步触发信号,ADC配置的主要代码如下:

(2)定时器T1定时触发配置

TIM1_CC3事件是由Timer1定时器的比较输出单元产生的,所以需要配置定时器1的比较输出单元。配置的主要代码如下:

(3)USB端点配置

在本系统中,采用端点0进行控制传输,用于USB设备枚举。端点1为IN批量上传端点,用来把采集后的数据上传至Lab VIEW上位机。端点2为OUT批量传输端点,用来接收上位机的命令,实现上位机对数据采集过程的管理与控制。根据固件范例,进行修改相关描述符(设备描述符、接口描述符、端点描述符等)、设备接口函数和USB通信代码等,可方便地进行USB设备固件开发。

端点1和端点2的主要配置代码如下:

3.2 上位机应用程序

上位机软件采用Lab VIEW进行设计,利用LibUSBWin32驱动程序可方便地实现Lab VIEW与USB设备的互联通信。LibUSB-Win32是一个开源的通用USB设备驱动程序。该驱动程序允许使用者在不写任何一行核心驱动程序代码的情况下,可以访问Windows系统上的任意一个USB设备。该驱动程序支持批量和中断传输,支持USB规范中定义的所有标准设备请求和支持USB设备制造商的自定义请求。LibUSB-Win32遵守LGPL和GPL许可协议,不只用于开源软件而且允许用于商业软件。

图6是该系统的二瓦计法测量三相电路有功功率的实验系统界面。

图6 三相电路有功功率测量实验系统界面

二瓦计法测量有功功率需要4个参量,本实验在50 ksps采样速度下,对Uab、Ia、Ubc和Ib进行同步采样,并在Lab VIEW中进行数据处理,绘制实时曲线和及时显示平均值、有效值、基波频率和相位等相关参数。实验证明:本系统具有构建简单、数据采集精度高,上传速度快,开发调试方便等特点。

结 语

本系统采用单芯片设计,结合外部信号输入电路和调理电路就可完成采集系统的构建,通过Lab VIEW上位机实时显示数据信息,无需外扩USB接口芯片和同步采样芯片,从而降低了设计难度和复杂度,提高了系统稳定性。

[1]林伟,王毅男.基于FPGA与STM32的低功耗数据采集系统[J].化工自动化及仪表,2015,43(2):210-214.

[2]刘文斌,朱名日,郑丹平,等.基于FPGA的大容量数据采集系统设计[J].计算机测量与控制,2014,22(11):3751-3753.

[3]潘玲娇,张自嘉.嵌入式16通道同步数据采集系统设计[J].仪表技术与传感器,2013(11):91-92.

[4]张旭,亓学广,李世光,等.基于STM32电力数据采集系统的设计[J].电子测量技术,2010,33(11):90-91.

[5]候朝勇,胡学浩,庄童.基于FPGA的多路同步实时数据采集系统[J].电子技术应用,2009(10):103-104.

[6]李朋勃,张洪平.基于USB2.0的高速数据采集系统[J].电子技术应用,2009(10):109-111.

[7]刘红梅,李平舟,郭志华.基于USB2.0的同步数据采集系统的设计[J].现代电子技术,2007(9):136-137.

李红波(讲师),主要研究方向为数据获取与控制、嵌入式技术;李盛(副教授),主要研究方向为生物医学信号处理与仪器、虚拟仪器技术;陈恒(副教授),主要研究方向为电能变换与质量检测、机器人技术。

USB Multi-channel Synchronous Data Collection System Based on DSC

Li Hongbo,Li Sheng,Chen Heng

(College of Control Engineering,Xijing University,Xi’an 710123,China)

In order to reduce the difficulty and complexity of USB multi-channel synchronous data collection system,a new kind of fourchannel USB data synchronous collection system is proposed using only one DSC(Digital Signal Controller)chip.The system can collect four-channel data and upload to the Lab VIEW synchronously,which is composed of ADC which is embedded in DSC,the timer and the USB 2.0 communication module.The design method of the three-phase active power measurement is introduced in detail,which provides a better resolution for the multi-channel synchronous data collection system.

synchronous sampling;DSC;Cortex-M4;Lab VIEW

TN273

A

国家自然科学基金(典型非对称声带发声机制的空气动力学建模及高速摄影研究,61371163)。

(责任编辑:杨迪娜2016-05-30)

猜你喜欢

端点上位芯片
芯片会议
非特征端点条件下PM函数的迭代根
关于射频前端芯片研发与管理模式的思考
不等式求解过程中端点的确定
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
多通道采样芯片ADS8556在光伏并网中的应用
基丁能虽匹配延拓法LMD端点效应处理
以新思路促推现代农业上位