跳过主要内容

AN-1132 8通道数字输出数据采集卡使用LabVIEW

内容

参考文献

有关文件及软件,请浏览:

//www.wsdof.com/雷电竞官网登录products/greenpak

下载我们的免费GreenPAK设计软件[1],打开。gp文件[2],并使用GreenPAK开发工具[3]在几分钟内将设计冻结到您自己的定制IC中。

雷竞技电竞平台Dialog Semiconductor提供了一个完整的应用笔记[4]库,包括设计示例以及Dialog IC内的功能和模块的说明。

  1. GreenPAK设计软件,软件下载和用户指南,对话框半导体雷竞技电竞平台
  2. AN-1132 8通道数字输出数据采集卡使用LabView.gp,绿派克设计文件,Dialog半导体雷竞技电竞平台
  3. GreenPAK开发工具, GreenPAK开发工具网页,Dialog半导体雷竞技电竞平台
  4. GreenPAK应用笔记,绿派克应用笔记网页,对话半导体雷竞技电竞平台
  5. SLG46620数据表,对话框半导体雷竞技电竞平台
  6. 使用LabVIEW的优点:http://www.ni.com/white-paper/8534/en/#toc7
  7. 国家仪器签证:https://www.ni.com/visa/

介绍

数据采集(DAQ)硬件作为计算机和外部信号之间的接口。它将数据(数字和模拟)从计算机传输到安装在现场的设备。DAQ卡对于工业、研究和开发以及其他许多应用都具有基础性的重要性。雷竞技安卓下载

本应用笔记展示了如何将数字数据从计算机(使用LabVIEW)传输到GreenPAK SLG46620V[5],然后驱动额定220VAC / 10A接点的继电器。采用GreenPAK SLG46620V的数据采集系统具有8个数字输出通道,成本低,效率高。

还示出了通过使用USB到TTL模块(FT232RL)在LabVIEW和GreenPak SLG46620V之间建立的界面。8中继通过LabVIEW GUI控制。小尺寸的GreenPak4 SLG46620V为DAQ卡提供了便携式解决方案。

LabVIEW和NI-VISA简介

LabVIEW.

LabVIEW软件广为人知并用于各种工业应用。雷竞技安卓下载LabVIEW是一个高效的开发环境,用于创建与实际数据或不同字段中的现实数据或信号交互的自定义​​应用程序。雷竞技安卓下载

使用LabVIEW的好处是更短的编程和调试时间、图形化编程、广泛的承包商网络和高质量的结果。

在不同的行业中,不同项目所需的工具和组件差别很大,要找到并使用所有这些不同的项可能是一项具有挑战性的任务。

LabVIEW是独一无二的,因为它在单一环境中提供了各种各样的工具,确保了兼容性,就像在功能之间画线一样简单。

LabVIEW与大多数其他通用编程语言的区别主要体现在两个方面。

  1. 编程是将图形图标连接在一起,然后直接编译成机器代码,以便计算机处理器执行。虽然用图形而不是文本表示,但它包含在大多数传统语言中发现的相同编程概念。
  2. 第二个主要区别在于,LabVIEW代码是根据数据流规则执行的,而不是按顺序执行的命令。

这种区分使程序的不同部分之间的数据路径成为开发人员的主要焦点。LabVIEW程序中的不同功能具有输入,过程数据和产生输出。一旦所有输入包含有效数据,该函数执行其逻辑,生成输出数据,并将该数据传递给DataFlow路径中的下一个函数。从另一个函数接收数据的函数只能在其他功能完成执行之后执行。

倪签证

虚拟仪器软件体系结构(VISA)是一种标准,用于配置、编程和故障诊断仪器系统,包括GPIB、VXI、PXI、串行、以太网和USB接口。VISA提供了硬件与LabVIEW之间的编程接口。NI-VISA是国家仪器实施的VISA I/O标准。NI-VISA包括软件库,交互实用工具和VISA交互控制,以及通过测量和自动化Explorer配置程序,以满足所有开发需求。

DAQ硬件设计

完整的8-Ch DO DAQ硬件原理图如图1所示。

图1. 8-Ch DO DAQ原理图

FT232RL USB to TTL模块

图2。FT232RL USB to TTL模块

FT232RL USB为FT232RL的串行分支是一个小型电路板,内置于USB的串行UART接口。此小突破由FTDI的FT232RL IC围绕FTDI,内置振荡器构建。

板上有一个跳线,用于设置3.3V或5V电压水平。我们使用5V,并连接这个板的Tx引脚到GreenPAK开发工具包的pin 10。PIN 10将被编程为GreenPAK代码中的Rx PIN,以接收LabVIEW中的串行数据。

当模块插入PC的USB端口时,它会在设备管理器中被检测为COM端口。

配置COM端口

当在设备管理器中检测到模块为COM端口时,需要通过NI MAX进行配置。

配置包括设置波特率、校验、数据位数和流量控制。我们使用COM端口的默认参数。这些参数也可以在稍后的LabVIEW编程中更改。

四通道5V继电器模块板

每个模块板有四个Songle继电器(SRD-05VDC-SL-C),每个继电器由一个817C光耦合器驱动。其优点是可以与地面隔离。外部5V电源用于VCC和接地引脚。SLG46620V数字引脚接口在板上的“IN”引脚。

GreenPAK设计规范

写在COM端口上的串行数据由GreenPak SLG46620V的引脚10接收,数据被发送到SPI块MOSI输入。

在GreenPak设计器中,SPI块模式属性设置为S2P,CPHA和CPOL属性都设置为“0”。字节选择属性是[7:0],并且串行数据设置为来自引脚10。

现在串行数据(总共10位,一个开始位,8位数据位和一个停止位)到达SPI块需要转换成并行位。为此目的,我们需要设置SPI块的SCLK,以便它匹配9600bps的波特率(这是在LabVIEW中设置的)。通过LabVIEW传输串口数据时,需要启动SCLK。

图3。四通道5V继电器模块板

此外,开始和停止比特需要与数据位分开。起始位首先在数据包中,并且SPI最后收到停止位。此外,当没有接收到数据时,SPI存在连续的高信号。

捕获串行数据的起始位

当数据从LabVIEW发送到串口时,位于包开始位置的起始位是LOW,最先到达。因此,我们可以通过检测PIN 10输入数据的下降边缘来检测新数据包的到达。这是通过输入PIN 10到P DLY0块来完成的,该块被配置为检测输入的下降边。因此,每当数据包到达时,P DLY0块检测到下降沿(起始位),并将输出设置为一个周期的HIGH。

下一步是在P DLY0输出处锁存脉冲。信号发送到DFF 0的CLK输入端。D输入被VDD信号设置为高,所以当时钟(从P DLY0输出)的正边到达时,它将D输入的high存储到DFF 0的输出。

重置锁存器以存储下一个周期的起始位

为了在进入数据的第二周期之前重置DFF 0,将DFF 0锁存输出发送到时间延迟CNT5 / DLY5的输入。该块配置为924微秒的时间延迟。9600 BPS的每个周期对应于104微秒,因此在输入数据几乎9个周期之后,延迟块重置DFF 0。

图4. SPI块属性

CNT2/DLY2和DFF 0锁存器都通过相同的信号复位(串行数据结束)。Pipe Delay 0模块在重置DFF 0之前提供了3个2MHz时钟周期的额外延迟,这只是为了确保在重置CNT2/DLY2计数器之前,第9个数据位被加载到SPI块中。

串行数据端信号低应使SPI块NCSB输入,然后在传入数据的第9周期之后,信号变为高,SPI块被禁用。

在SPI块中加载串行数据

图5。P DLY0块属性
图6。CNT5/DLY5和管道延迟0特性

锁存器(DFF 0)高输出也用于在SPI块的MOSI输入处加载串行数据。为了在SCLK中间存储串行数据,需要为SCLK输入9600bps半周期的延迟。9600bps的半周期对应的时间大约是52微秒。这个时间延迟是通过CNT6/DLY6将DFF 0的输出传递来实现的。block的输出与振荡器时钟out1信号并送至CNT2/DLY2 block的时钟信号。时钟使能信号确保计数器CNT2/DLY2在开始位到达之前不会开始计数。CNT2/DLY2输出是SPI块(SCLK)的时钟信号。它帮助加载串行数据到SPI块,一旦10位周期完成,SPI块转换串行数据到SPI并行输出块端口。

图7. CNT6 / DLY6块属性
图8。CNT2 / DLY2块属性

数字输出引脚处的串口数据

串行8位数据(LabVIEW的D1, D2…D8按钮)将根据它们的加权顺序出现在SPI Parallel Output块的PAR OUT引脚上。四个数据位直接发送到数字输出引脚,其他四个数据位通过逆变器和“与”门与数字输入引脚互锁。

因此,可以设置一个联锁与这四个数字输入和联锁条件将覆盖相应的数字输出命令从LabVIEW。例如,我们启动继电器按按钮' DO 1 '在LabVIEW,这将使PIN 12低。当我们停止继电器从相同的按钮在LabVIEW GUI, PIN 12走高。但这是可能的,只有当数字输入PIN 2保持低。如果PIN 12是高(由于一些过程条件,如高温等),从LabVIEW的DO 1命令将不会被执行。

运行LabVIEW GUI

现在插入FT232RL模块并进入前面板。单击“选择COM端口”下拉菜单,按“刷新”,选择COM端口。这里是COM6(在你的情况下可能是其他号码)。

选择COM端口后,按“连续运行”.它在面板的右上角。

图9.在LabVIEW中选择COM端口

必须注意,必须在持续运行之前选择COM端口,否则程序将不行动,然后必须从任务管理器关闭。

同时,模块的Tx引脚应连接到GreenPAK开发工具包的pin 10。通过在前面板上点击不同的按钮(DO 1, DO 2,…,DO 8), GreenPAK开发套件相应的LED将开关ON/OFF。

例子

重型交流负载可以通过将它们连接到5v继电器的接触端来控制。继电器触点将作为负载的“开关”,从LabVIEW GUI控制。

对应于LabVIEW中的DO ' x '按钮的SLG 46620V的数字输出将向下拉并吸收来自继电器板上的光耦合器的电流。因此,GreenPAK芯片的DO没有引出VDD电流。光耦开关为ON (GreenPAK开发板对应的LED为OFF),继电器板光耦对应的LED为ON。光耦合器接通后,由外部电源驱动相应的5V继电器。不要直接使用GreenPAK芯片的VDD驱动继电器,因为有可能超过最大电流和电压额定值。

继电器的接触侧可用于驱动高达220V和10A的AC负载。如果需要驱动甚至更大的载荷,则根据需要连接接触侧以驱动更大的继电器的线圈。

一个视频是可用的,显示如何八个5v继电器开关ON/OFF从LabVIEW GUI按按钮D0 1, D0 2 ....做8。

限制

该设计提供了一个低成本的DAQ解决方案,仅限于DO通道,并且DO更新速率被限制在COM端口波特率9600bps(约9600bps)。10 khz)。

由于数字引脚的电流驱动能力有限,GreenPAK输出不能直接驱动这些继电器。它们需要一个光耦合器或继电器驱动器,以及一个外部电源来驱动继电器。

结论

本申请说明仅展示了专门为工业控制的频道的有用性。虽然它无法更新超过10kHz,但Windows应用程序通常需要200毫秒才能更新。雷竞技安卓下载因此,9600 BPS的COM港波特兰相对充足。

这种设计的成本优势使它成为专用控制的一个有吸引力的选择,允许更多的安装。此外,使用SLG46620V的设计可以非常紧凑,这允许放置一般DAQ简单不适合的地方。

附录:LabVIEW编程指南(用于本应用注意参考)

创建一个空白的VI后,到NI LabVIEW前面板,右键单击,控制窗口打开。选择Modern >> I/O >> VISA Resource。

图10。在LabVIEW前面板中添加COM端口
图11。在LabVIEW前面板中添加按钮

现在用于添加8个数字输出的3个按钮,再次右键单击,选择Express >>按钮和交换机>>按钮。重复此过程8次以添加8个按钮。

图12。在LabVIEW前面板中添加滑动开关

在LabVIEW前面板中再次右键,选择快捷>>按钮和开关>>滑动开关。

这些按钮、开关和COM端口的文本可以通过双击进行编辑。

LabVIEW编程中的下一步是加入这些组件,将串行数据传输到GreenPak SLG46620V。为此转到框图,(按Ctrl + E在前面板时,Ctrl + E在前面板和框图之间切换屏幕)。

它显示8个按钮,一个滑动开关,和一个选择COM端口窗口。在框图中添加数字常量,乘法,布尔到整数,大小写结构,VISA串行,VISA写,VISA关闭,复合算术(加法),构建数组和字节数组到字符串。可以在右上角的搜索框中搜索这些组件,然后逐个添加到框图中。

首先,COM端口的配置如下图所示。连接只需将鼠标悬停在连接上,然后左键单击并将鼠标拖向目标连接即可完成。

图13. LabVIEW中的COM端口配置

在这里,我们可以更改NI Max中设置的默认COM端口设置。

启用DAQ操作按钮用于选择CASE结构。下一步是配置CASE结构的TRUE窗口。当建立COM端口的连接时,控制被转移到这个窗口,并通过点击DO按钮将数据写入COM端口。

图14. LabVIEW中的COM端口配置

在此按钮(从运行操作期间从LabVIEW GUI)提供Boolean 1并在按下(从运行操作期间从LabVIEW GUI)提供Boolean零。该1或零被转换为整数,然后乘以加权编号(对应于字节中的位置)。这里做1是LSB,DO 8是MSB。

把这8次乘法的乘积相加。然后使用这个数字作为输入来构建数组块,然后通过将字节数组传递给字符串函数将结果转换为字符串,然后将字符串函数输入到VISA写块。将整数数据转换为字符串的原因是VISA写只在其输入处接受字符串数据。

将数据写入COM端口后,关闭COM端口,使其可以被其他应用程序使用而不退出LabVIEW。雷竞技安卓下载