0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CentOs 7系统下的NI驱动安装及C范例调用

华穗科技 来源:华穗科技 作者:华穗科技 2022-11-18 10:19 次阅读

一般大家都是在Windows系统下进行NI硬件的应用,但是使用Linux系统并用C语言进行数采的用户也不在少数。

Linux操作系统具有支持多用户,多进程,多线程,多平台,良好的界面与丰富的网络功能等优点。以CentOS 7为例,怎么在Linux系统下进行NI 驱动的安装和C范例的调用呢?

本文教程

CentOs 7系统下的NI驱动安装及C范例调用

一、设备及环境

硬件:PXIe-8135,PXIe-1071,PXIe-4081,PXIe-4082。 系统:CentOS 7 二、 如何选择NI驱动安装包前面我们得知了嵌套操作者传送消息的方式是抽象消息,那么接下来,小编将手把手教你如何在LavVIEW中创建抽象消息。

1. 确定NI设备与系统的兼容性

下载Linux系统,确定使用的NI 设备可以在什么版本的Linux系统下使用。

搜索NI设备所需要的驱动与系统的兼容性,如下图所示:

528f92b8-66e6-11ed-8abf-dac502259ad0.png

选择Linux CentOS 7作为操作系统。

2. 下载Linux CentOS7

下载链接:http://isoredirect.centos.org/centos/7/isos/x86_64/ 选择安装镜像的版本,如果可以联网一般选择DVD.ISO,不可联网选择Everything.ISO。

52b76e82-66e6-11ed-8abf-dac502259ad0.png

3.安装Linux CentOS 7系统

选择桌面Gnome安装。于网络与设备中识别到该控制器的网卡。

4.下载NI 驱动

根据所选板卡,需要于NI官网查看系统与驱动的兼容性。这点非常重要,不然一系列操作完成之后,发现无法识别板卡又需要从头开始安装驱动了。 由PXI-4081的系统支持表可知,CentOS7系统下4081的使用需要安装20.1以上的NILinux驱动。

52c97618-66e6-11ed-8abf-dac502259ad0.png

NI Linux驱动包下载链接:https://www.ni.com/zh-cn/support/downloads/drivers/download.ni-linux-device-drivers.html#409880

下载并解压2021Q3的NI Linux驱动包,并通过刻录软件刻录于CD中。

二、 安装NI驱动

1.拷贝NI 驱动

利用光驱将CD内的安装文件复制到Linux的文件夹中。

安装文件中共有六个rpm文件, 在CentOS7系统中,需安装第三个NI Linux 驱动包。

52e02cc8-66e6-11ed-8abf-dac502259ad0.jpg

2.下载NI驱动

右键驱动所在文件夹,选择在终端打开。

输入su进入root模式。

530abfc4-66e6-11ed-8abf-dac502259ad0.jpg

输入sudo yum update以更新系统内核。

53310800-66e6-11ed-8abf-dac502259ad0.png

输入yum install ni-rhel7centos7-drivers-2020.rpm

539a5594-66e6-11ed-8abf-dac502259ad0.png

注意,遇到Y/D/N的时候都输入Y以进行下一步。

3.安装DMM驱动

Linux中NI驱动的名字如下图所示。

541b9992-66e6-11ed-8abf-dac502259ad0.png

根据需要选择Linux大包驱动里的子驱动,由于本教程以DMM板卡为例,故需要安装NI-PXI Platform Services、NI-DAQmx、NI-DMM。

下载NI-PXI Platform Services,则于终端中输入:

yuminstall ni-pxiplatformservices

54388f70-66e6-11ed-8abf-dac502259ad0.png

下载NI-DAQmx,则于终端中输入:

yum install ni-daqmx

54b7e702-66e6-11ed-8abf-dac502259ad0.png

下载NI-DMM,则于终端中输入:

yum install ni-dmm

yum install ni-dmm-daqmx

5687a4dc-66e6-11ed-8abf-dac502259ad0.png

启动NI内核驱动程序,于终端中输入: sudo dkms autoinstall 遇到Y/N都输入Y。 注意啦,安装完毕后需要重启控制器或设备哦! 三、验证驱动是否安装成功

驱动安装成功后,需要验证DMM卡是否可以正常识别。

于计算机中var/lib/ni-dmm/nidmm408x.config里可以看见当前已识别到的408x系列DMM卡,如下图所示。

57091cba-66e6-11ed-8abf-dac502259ad0.jpg

该文档中可以看见机箱PXI插槽中插入的两张DMM板卡,并且列出了其SN号和序列号。当看到该配置文件里面列出来实际的板卡时,就证明当前安装的驱动识别到了板卡,驱动安装成功。 注意,DMM板卡的识别是通过config文件来得知的,而一般的DAQ数采板卡可以通过指令nilsdev – verbose来识别NI设备。下图展示了通过指令来识别PXIe-5112的终端界面。

572f02d6-66e6-11ed-8abf-dac502259ad0.jpg

四、试跑DMM范例

安装好驱动并识别到板卡后,要怎么使用板卡进行数据采集呢?接下来我们来试跑一下DMM的范例,看一下在Linux系统下使用数采板卡的C范例位置和使用方法吧。 于计算机中usr/share/nidmm-devel/examples中可以看到DMM的C范例。

57562adc-66e6-11ed-8abf-dac502259ad0.png

在这里以直流电压单点采集为例,打开Single_Point/Measure_DC_Volts。一个为makefile一个为单点采集直流电压的范例。

5ed9c2aa-66e6-11ed-8abf-dac502259ad0.png

于文件中下右键打开终端,进入root模式(代码su),输入make编译makefile文件。Make后文件夹中会多出两个文件,其中带齿轮的文件为可执行文件。

5f389690-66e6-11ed-8abf-dac502259ad0.png

在root模式下输入 ./Meaure_DC_Volts 运行可执行程序,并输入DMMconfig文件中板卡的名字,即可运行范例,并读取当前输入的电压值。

5f6e2b2a-66e6-11ed-8abf-dac502259ad0.png

63eaab06-66e6-11ed-8abf-dac502259ad0.jpg

我们可以看到信号发生器输出的5V电压,通过DMM卡的电压输入端口准确采集到了,并且在单点数据采集范例中的reading行显示当前单点电压为5.000661V。

以上就是如何在CentOS7系统下安装NI驱动并调用C程序进行数据采集的教程啦。

在Linux系统下的NI驱动安装和Windows系统下的安装大相径庭,运用终端操作台和指令进行不同驱动安装的过程中会发生各种问题,有的是系统内核没有更新的问题,有的是驱动不匹配系统导致的,有的是网络没有连接导致的。在Linux系统下运用NI数采设备也是一门大学问,多多学习多多运用吧!

对NI知识感兴趣的工程师们,欢迎持续关注、留言和点赞,也可以私信小编各位的威廉希尔官方网站 困惑和威廉希尔官方网站 需求,以获取参加免费线下培训和威廉希尔官方网站 交流的机会哦。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux系统
    +关注

    关注

    4

    文章

    593

    浏览量

    27382
  • 驱动安装
    +关注

    关注

    0

    文章

    10

    浏览量

    8406
  • 华穗科技
    +关注

    关注

    1

    文章

    12

    浏览量

    78

原文标题:教程 | CentOS 7系统下的NI驱动安装及C范例调用

文章出处:【微信号:华穗科技,微信公众号:华穗科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    pcie设备驱动程序安装步骤

    设备能够正常工作的重要步骤。 1. 准备工作 在开始安装PCIe设备驱动程序之前,需要做一些准备工作: 确认设备兼容性 :确保你的PCIe设备与你的操作系统兼容。 备份数据 :在安装
    的头像 发表于 11-13 10:32 455次阅读

    TLV320AIC3262 win7系统,DFUUSB的驱动不能安装,开发板识别不出来,是什么原因导致的?

    win7 系统,DFUUSB的驱动不能安装,开发板识别不出来,是win7
    发表于 10-30 08:15

    CentOS中使用tcpdump抓包

    CentOS中使用tcpdump抓包
    的头像 发表于 10-28 14:48 207次阅读

    常用CentOS命令总结

    CentOS(Community ENTerprise Operating System)是基于Red Hat Enterprise Linux(RHEL)的自由和开源的企业级操作系统,旨在提供一个
    的头像 发表于 08-07 15:35 297次阅读

    请问CY7C65213-28PVXI是否有针对win7系统的32位驱动程序?

    我的电脑是 Win7-32 位的,无法安装 CY7C65213 驱动程序(从网站下载的版本是 64 位的)。 有谁有CY7C65213-28
    发表于 07-24 07:39

    请问如何安装Espressif CDC Device驱动

    S3的开发板,用usb连接电脑后提示安装Espressif CDC Device驱动,Windows7系统,请问要如何安装
    发表于 07-01 08:01

    求助,关于鼠标范例中的ep端点模式疑问求解

    我使用了hid 标准鼠标的范例范例的内容大致是将0x81 IN端点设置成INT模式,然后通过感应GPIO的按,模拟鼠标左键的按,从而让EP IN端点输入了大量的数据(应该是坐标数
    发表于 05-23 06:58

    在不重新安装Vivado的情况,是否能够安装线缆驱动器?

    如果 Xilinx USB/Digilent 线缆驱动器在安装 Vivado 设计套件时还没有安装,或者 Xilinx USB/Digilent 线缆驱动器被禁用,在不全面重新
    的头像 发表于 05-16 11:21 628次阅读

    香港vps的centos如何切换命令行和桌面?

    7及更高版本中,默认情况系统可能配置为以命令行模式启动。您可以使用systemctl命令来更改默认的启动目标(target)。要将
    的头像 发表于 04-10 17:41 620次阅读

    如何安装cy7c68013的虚拟串口win10驱动

    怎样安装cy7c68013的虚拟串口win10驱动? 我自己做了一块板,在win7能正确安装
    发表于 02-29 08:12

    如何安装CY7C65213的驱动程序?

    无法连接 teraterm。 我尝试安装 CypressDriverInstaller_1,但是驱动程序没有更新。 你能指导如何安装 CY7C65213 的
    发表于 02-23 06:03

    总线上的音频设备驱动怎么安装

    驱动之前,我们首先需要了解为什么需要安装这些驱动程序。计算机的音频设备驱动程序是为了与操作系统(如Microsoft Windows、Mac
    的头像 发表于 01-24 13:44 949次阅读

    Linux内核中信号相关的系统调用

    正如我们所知,运行在用户态的程序可以发送和接收信号。这意味着必须定义一组系统调用来允许这类操作。不幸的是,由于历史原因,有些系统调用可能功
    的头像 发表于 01-20 09:34 680次阅读

    如何把Centos7的ens33改为eth0

    最近有不少小伙伴遇到修改网卡名称不成功的,求助我怎么回事。经过了解,他们是想把Centos7默认的类似ens33网卡名称改为eth0这种格式。本文就将针对网卡名修改做一个简单教程,给大家避坑。
    的头像 发表于 01-17 10:43 1330次阅读
    如何把<b class='flag-5'>Centos7</b><b class='flag-5'>下</b>的ens33改为eth0

    记录RocketMQ在centos7上的安装过程

    本文记录RocketMQ在centos7上的安装过程,没有威廉希尔官方网站 的探讨,仅仅是安装记录,以作备忘。
    的头像 发表于 01-02 11:41 1536次阅读
    记录RocketMQ在<b class='flag-5'>centos7</b>上的<b class='flag-5'>安装</b>过程