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

    文章

    618

    浏览量

    30238
  • 驱动安装
    +关注

    关注

    0

    文章

    13

    浏览量

    8611
  • 华穗科技
    +关注

    关注

    2

    文章

    15

    浏览量

    282

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    无网络环境如何安装反射内存卡的驱动

    反射内存卡在无网络环境安装 具体解决电脑在缺少插件NET Framework 3.5 sp1无法安装驱动 提供win7、win10的
    发表于 05-18 11:06

    电子工程师必看:LDM - 12457NI 器件特性与设计要点

    电子工程师必看:LDM - 12457NI 器件特性与设计要点 作为电子工程师,在设计过程中,对器件的特性和参数有深入了解至关重要。今天我们就来详细探讨一 LDM - 12457NI 这款器件
    的头像 发表于 05-17 13:40 82次阅读

    电子工程师视角的VFD - C - C - PD设计解析

    电子工程师视角的VFD - C - C - PD设计解析 在电子工程领域,设计工作常常涉及到众多的细节和规范。今天,我们就来深入探讨一与VFD -
    的头像 发表于 05-13 16:30 104次阅读

    NI-PCIE-8510 在Ni-linux-rt系统上怎样可以被正确识别。

    有一张PCIE-8510的CAN卡,目的是想在NI-linux-rt(2022Q3)系统上使用;已查过硬件兼容性,该CAN卡兼容2022Q3版本的NI-linux-rt系统;对该
    发表于 04-03 15:35

    PI7C8152A与PI7C8152B 2端口PCI - PCI桥接器:设计利器

    与模式 同步模式 :PI7C8152A和PI7C8152B的主端口和次端口都支持32位/66MHz或33MHz的运行频率,且在同步模式,主、次端口必须以相同频率运行。 异步模式 :只有PI7
    的头像 发表于 03-31 16:05 218次阅读

    2026年美国服务器安装配置宝塔面板完整教程:从安装到建站

    Linux命令的用户。 一、安装宝塔面板之前 系统要求 ●推荐系统CentOS 7.x 或 Ubuntu 20.04/22.04,宝塔对这
    的头像 发表于 03-26 16:07 432次阅读

    如何在LabVIEW环境中通过NISoftMotion驱动配置与运用NI9512

    NI 9512是C系列步进电机驱动接口模块,采用NI-RIO、NI-SoftMotion驱动,可
    的头像 发表于 01-30 17:34 4012次阅读
    如何在LabVIEW环境中通过NISoftMotion<b class='flag-5'>驱动</b>配置与运用<b class='flag-5'>NI</b>9512

    探索TCA6507:低电压7位I²C和SMBus LED驱动器的卓越性能与应用

    探索TCA6507:低电压7位I²C和SMBus LED驱动器的卓越性能与应用 在电子设备的设计中,LED驱动器扮演着至关重要的角色,它直接影响着LED的发光效果和
    的头像 发表于 12-26 11:30 535次阅读

    labview调用pylon库函数失败

    在labview中去调用pylon库函数。labview2018(32位),pylon(202506),ni vas,ni vdm均安装。dll文件为runtime文件
    发表于 12-11 13:20

    CentOS 7MySQL 8双主热备高可用架构全解

    https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm sudo rpm -Uvh mysql80-community-release-el7-7.noarch.rpm ​ ⚠️ 注意: 确认
    的头像 发表于 08-12 17:08 1065次阅读

    Centos7分用户记录历史命令至日志文件教程

    在企业级Linux运维中,实时记录用户操作历史是审计排查的关键步骤。本文华纳云针对CentOS7系统,提供三种高效方案实现分用户日志记录+防篡改管理。所有步骤均经过实际验证,代码段内含执行逻辑剖析。
    的头像 发表于 06-28 14:50 1095次阅读

    GM9-5601欧拉系统安装英伟达驱动的步骤

    :NVIDIA-Linux-x86_64-550.142.run 安装步骤 1.更新插件 yum -y update 2.安装驱动相关依赖 yum install gcc make dkms gcc-
    的头像 发表于 06-24 11:36 1312次阅读
    GM9-5601欧拉<b class='flag-5'>系统</b><b class='flag-5'>安装</b>英伟达<b class='flag-5'>驱动</b>的步骤

    怎样安装cy7c68013的虚拟串口win10驱动

    怎样安装cy7c68013的虚拟串口win10驱动?How to install cy7c68103\'s virtual UART win10 driver to make the
    发表于 06-04 06:33

    请问在Windows10可以安装USB2.0驱动么?

    请问在Windows10可以安装USB2.0驱动么?为什么HID的实例无法运行,且用烧录程序后,这样显示,能具体告知如何正确导入hid_kd程序么,如何让CY7C68013实现HID
    发表于 06-03 10:22

    如何安装 CY7C65213 的驱动程序?

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