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

    文章

    567

    浏览量

    26911
  • 驱动安装
    +关注

    关注

    0

    文章

    9

    浏览量

    8368
  • 华穗科技
    +关注

    关注

    1

    文章

    8

    浏览量

    46

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

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

收藏 人收藏

    评论

    相关推荐

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

    要在CentOS上切换命令行和桌面环境,您可以通过以下步骤进行: 1、安装桌面环境:如果您的CentOS VPS上还没有安装图形桌面环境,您需要安装
    的头像 发表于 04-10 17:41 194次阅读

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

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

    如何安装CY7C65213的驱动程序?

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

    记录RocketMQ在centos7上的安装过程

    本文记录RocketMQ在centos7上的安装过程,没有技术的探讨,仅仅是安装记录,以作备忘。
    的头像 发表于 01-02 11:41 265次阅读
    记录RocketMQ在<b class='flag-5'>centos</b>7上的<b class='flag-5'>安装</b>过程

    LabVIEW在不同操作系统上使VI、可执行文件或安装程序

    都能运行,包括Windows 7、Windows 8和Windows10。LabVIEW为Windows提供了本地支持,用户可以直接在Windows环境中安装和运行LabVIEW。 macOS: NI
    发表于 12-02 21:47

    怎么下载centos镜像文件

    CentOS 是一个基于 Linux 的操作系统,它是一种稳定、强大且易于使用的发行版。CentOS 镜像文件是用于安装和部署 CentOS
    的头像 发表于 11-23 10:48 506次阅读

    CentOS7系统网络配置命令

    们来配置网络接口、IP地址、网关、DNS服务器等。 查看网络接口(ifconfig命令): ifconfig命令用于查看和配置网络接口。在CentOS 7中默认不安装ifconfig,但可以使用ip命令代替。 示例:输入以下命令查看网络接口: ip addr show 这
    的头像 发表于 11-17 11:07 2643次阅读

    sc5安装指南

    Linux header,导致编译失败,建议安装centos7.9 ; 某些内核版本导致我们的驱动编译不过,需要我们改驱动源码。这种情况
    发表于 09-19 06:46

    关于CentOS与程序ABI版本的问题

    1. 在CentOS7.6上使用gcc 6.5编译程序链接BM-OpenCV库时报找不到符号链接的错误 答:Centos下直接安装的编译器,所有版本默认都是
    发表于 09-19 06:39

    Linux内核中系统调用详解

    Linux内核中设置了一组用于实现各种系统功能的子程序,称为系统调用。用户可以通过系统调用命令在自己的应用程序中
    发表于 08-23 10:37 619次阅读
    Linux内核中<b class='flag-5'>系统</b><b class='flag-5'>调用</b>详解

    系统调用:用户栈与内核栈的切换(上)

    当发生系统调用、产生异常,外设发生中断等事件时,会发生用户栈和内核栈之间的切换, 本文从系统调用角度分析用户栈与内核栈的切换。 系统
    的头像 发表于 07-31 11:27 590次阅读
    <b class='flag-5'>系统</b><b class='flag-5'>调用</b>:用户栈与内核栈的切换(上)

    Linux开发_CentOS7.4服务器搭建NFS、NGINX服务器,安装ffmpeg、Qt环境

    CentOS7.4服务器版本的环境下搭建NFS服务器、安装ffmpeg、安装nginx服务器、部署Qt编译环境。
    的头像 发表于 07-14 13:45 940次阅读
    Linux开发_<b class='flag-5'>CentOS</b>7.4服务器搭建NFS、NGINX服务器,<b class='flag-5'>安装</b>ffmpeg、Qt环境

    Linux系统调用的实现与应用

    在计算机科学中,系统调用(System Call)是一种操作系统提供的服务,它允许应用程序通过软件中断的方式访问操作系统内核中的函数。这些函数提供了一系列与硬件相关的服务,例如文件
    发表于 06-14 11:46 363次阅读

    LINUX安装Centos系统

    前排提示,本系列文章全部在VM虚拟机中进行操作,物理机操作在安装操作系统时建议使用光盘、U盘或IPMI(智能平台管理接口)等方式进行安装
    的头像 发表于 06-13 14:30 826次阅读
    LINUX<b class='flag-5'>安装</b>(<b class='flag-5'>Centos</b><b class='flag-5'>系统</b>)

    如何将CentOS 7升级到CentOS 8.5版本

    在本文中,您将学习如何将CentOS 7升级到CentOS 8.5版本。 ## 第 1 步:安装 EPEL 存储库 首先,通过运行以下命令安装EPL存储库:
    的头像 发表于 05-12 16:25 1193次阅读
    如何将<b class='flag-5'>CentOS</b> 7升级到<b class='flag-5'>CentOS</b> 8.5版本