技术频道

娓娓工业
您现在的位置: 中国传动网 > 技术频道 > 技术百科 > 雷赛运动控制卡基于Linux系统使用

雷赛运动控制卡基于Linux系统使用

时间:2024-01-24 15:55:29来源:深圳市雷赛智能控制股份有限公司

导语:?Linux系统是一款完全免费开源、基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,可以简化开发过程,使系统具有较强的移植性。

  Linux系统是一款完全免费开源、基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,可以简化开发过程,使系统具有较强的移植性。

  今天我们就来讲讲雷赛控制运动控制卡Linux系统的开发应用教程。本教程是在ubuntu 18.04系统下,以DMC-E3032总线控制卡作为主控,用Qt进行开发。控制卡驱动支持的Linux内核版本:2.6.0-5.14.11,建议用户使用的系统版本以及内核版本与上述版本匹配。

运动控制

  一、运动控制卡驱动安装说明

  01、编译驱动源码生成ko驱动文件

  (1)在要运行的Linux电脑上解压安装文件中的DMC3K5K.rar压缩包。进入文件夹目录./DMC3K5K/dmc3k5k_installation

  (2)输入指令:sudo chmod 777–R redist修改文件夹权限。

  (3)输入指令:cd 存放路径/redist进入redist目录。

  (4)在此目录下,调出终端,输入指令:sudo./configure 生成编译文件。

  (5)输入指令:sudo make编译.ko文件和对应的wdreg文件。

  (6)输入指令:sudo make install安装驱动(注意:电脑重启后,控制卡驱动会自动卸载,需进行步骤二)。

  (7)指令:sudo chmod 777/dev/DMC3K5K设置文件权限。

  (8)将生成的wdreg文件和DMC3K5K.ko文件(在新生成的文件夹中)放到redist目录下,驱动就编译完成了。

  02、设置开机后自动安装驱动

  在启动脚本/etc/rc.local中加载驱动模块,每次开机都自动安装DMC3K5K驱动模块,并修改DMC3K5K的访问权限,设置为所有用户对DMC3K5K都有完全的权限。

  (1)Ctrl+Alt+T调出终端

  下载vim编辑器

  指令:sudo apt-get install vim

  (2)进入etc文件夹

  指令:cd/etc

  (3)使用vim编辑器打开rc.local

  指令:sudo vim rc.local

运动控制

  在弹出的界面中选择(E)dit anyway

运动控制

  (4)点击键盘字母i,插入指令,在文件/etc/rc.local中的指令exit 0之前添加:

  指令:cd存放路径/redist(定位到文件目录下)

  指令:sudo make install(安装驱动)

  指令:sudo chmod 777/dev/DMC3K5K(设置文件权限)

  (5)按ESC键,输入:wq,按Enter键,保存退出文件

  (6)重启电脑,开机自动安装运动控制器驱动,成功后,可以使用ls命令列出/dev文件夹下DMC3K5K的详细信息,查看DMC3K5K的访问权限

  指令:sudo ls-l/dev

  可以看到有DMC3K5K这个设备,并且DMC3K5K的权限为crwxrwxrwx

运动控制

运动控制

  添加rc.local文件的方法

  在比较新的Linux系统中已经没有rc.local文件,通过vim生成的文件并没有自启动服务,可通过以下方法执行后再编辑rc.local文件:

  (1)设置rc-local.service

运动控制

  (2)激活rc-local.service

运动控制

  (3)添加启动服务

  手工创建或者拷贝已有的/etc/rc.local,并赋予执行权限

运动控制

  运动控制卡驱动卸载说明

  删除自启动脚本文件

  输入指令:sudo rm/dev/rc.local删除自启动脚本文件。

  删除控制卡驱动模块

  输入指令:sudu rm/dev/DMCSK5K

  二、工程构建

运动控制

  01、新建项目

  (1)打开“Qt”软件,点击菜单中的“文件”①;点击“新建文件或项目”②;如下图所示:

运动控制

  (2)弹出新建项目弹窗,在“项目”中选择“Application(Qt)”①;选择支持桌面平台的所有图形用户的应用程序“Qt Widgets Application”②;点击“choose”③;如下图所示:

运动控制

  (3)进入工程配置窗口中的“Location”①;输入工程名称“DMC-Demo”②(注意:Qt这里不能使用任何的中文,不然有可能会出现编译问题);点击“浏览”选择工程创建的路径③;点击“下一步”④;如下图所示:

运动控制

  (4)进入“Build System”中①;选择默认的“qmake”②(qmake是一个协助简化跨平台进行专案开发的构建过程的工具程式);点击“下一步”③;如下图所示:

运动控制

  (5)进入“Details”中①;在“Class”中可使用默认的“MainWindow”名称作为主窗体名称,也可自行命名②;在“QMainWindow”主窗口类作为基类③(主窗口具有主菜单栏、工具栏和状态栏,类似与一般的应用程序的主窗口);勾选“Generate form”复选框④(这个选项如果勾选,就会由Qt Creator创建用户界面(User Interface,UI)文件,否则需要自己手动创建UI界面);点击“下一步”⑤;如下图所示:

运动控制

  进入“Translation”中①;在“Language”中可使用默认的“”②;点击“下一步”③;如下图所示:

运动控制


  (6)进入“Kits”中①;选择“Desktop Qt 5.12.12 GCC 64bit”②;点击“下一步”③,如下图所示:

运动控制

  (7)进入“Summary”中①;可查看要添加的文件的详细信息,确认信息无误 ②;点击“完成”③,如下图所示:

运动控制

  (8)完成以上新建项目的步骤后,会进入代码编辑界面,在左侧项目栏中可以看到“DMC-Demo”的项目文件夹,其中包括了4个子文件夹,以下对这4个子文件夹进行简单介绍:

  ①“DMC-Demo.pro”是项目管理文件,包括一些对项目的设置项;

  ②“Headers”分组,该节点下是项目内的所有头文件(.h);

  ③“Sources 分组”,该节点下是项目内的所有 C++源文件(.cpp),下图项目中有两个 C++源文件,“main.cpp”是主函数文件,也是应用程序的入口;“mainwindow.cpp”是主窗口类的实现文件,与“mainwindow.h”文件对应;

  ④“Forms”分组,该节点下是项目内的所有界面文件(.ui),如下图所示:

运动控制

  02、添加头文件

  (1)将“LTDMC.h”头文件复制到刚刚新建的好的工程文件夹下,如下图所示:

运动控制

  (2)进入Qt程序编辑界面中,鼠标右键单击“DMC-Demo”项目文件夹下的“Headers”①;点击“添加现有文件”②,如下图所示:

运动控制

  (3)将会弹出“添加现有文件”弹窗,进入文件夹“DMC-Demo”中;选择“LTDMC.h”文件①;点击“Open”②,如下图所示:

运动控制

  (4)等待加载完成后,在“项目”的“Headers”下可以看到添加的“LTDMC.h”头文件;双击进入后可以看到控制卡定义的函数,如下图所示:

运动控制

  03、添加函数库

  下面以添加64位函数库为例详细介绍如何添加函数库:

  (1)进行调试,按编辑页面左下角的按钮①,如下图所示:

运动控制

  (2)等待调试完成之后,会弹窗“MainWindow”,如下图所示:

运动控制

  (3)将libLTDMC.h文件复制到“DMC-Demo”文件夹中,如下图所示:

运动控制

  (4)进入Qt程序编辑界面中,鼠标右键单击“项目”下的“DMC-Demo”①;点击“添加库”②,如下图所示:

运动控制

  (5)弹出“添加库”弹窗,进入“Type”库类型中①;勾选“外部库”②;点击“下一步”③,如下图所示:

运动控制

  (6)进入“Details”中①,确认“Library type”中选择的为“Linux(lib*.so lib*.a)”类型②;点击“库文件”右方的“浏览”按钮③;在弹出“选择文件”弹窗中进 入文件夹“DMC-Demo”文件夹,选择“libLTDMC.so”文件④;点击“打开”⑤,如下图所示:

运动控制

运动控制

  (7)“库文件”与“包含路径”会同时加载信息①;点击“下一步”②,如下图所示:

运动控制

  (8)进入“汇总”中,确认信息无误①;点击“完成”②;最后点击“ ” 进行程序的编译,如下图所示。至此工程构建就已经完成了。

运动控制

  三、综合例程编程详解

  01、添加控制卡命名空间

  打开Qt程序,双击“DMC-Demo”项目文件夹下的“Headers”①下的“mainwindow.h”②进入Qt程序编辑界面;在代码文件开头处添加代码“#include "LTDMC.h" ③;如下图所示:

运动控制

  02、初始化模块

  控制卡的初始化及获取卡信息,具体写法如下图所示:

运动控制

运动控制

运动控制

  03、定长运动模块

  选择“DMC-Demo”项目文件夹下的“Forms”,双击“mainwindow.ui”,进入UI编辑界面;在左侧工具栏中选择控件进行UI编辑,如下图所示:

运动控制

运动控制

  最后效果及主要代码如下图所示:

运动控制

运动控制

  04、插补运动模块

  本例展示的是轴0和轴1进行两轴直线插补运动,最后效果及主要代码如下图所示:

运动控制

运动控制

  05、回零运动模块

运动控制

运动控制

  06、获取状态信息

  (1)首先要构造一个定时器,并且声明定时器的槽函数;写入“#include”包含QTimer的头文件”①;写入“QTimer *timer;”②;写入“void slot_TimeEvent();”③;如下图所示:

运动控制


  (2)双击“DMC-Demo”项目文件夹下的“Sources”下的“mainwindow.cpp”进入Qt程序编辑界面①;在程序初始化中创建定时器;设置定时周期;当达到超时时间,则发射信号,执行定时器槽函数;开启定时器,1ms触发定时器②,如下图所示:

运动控制

  (3)写入定义定时器槽函数①;在定时器槽函数中读取信息;如下图所示:

运动控制

运动控制

  07、例程综合展示

运动控制

  雷赛控制DMC-3000/5000系列运动控制卡都已支持Linux系统开发,若需要相关资料可联系我们。

-END-

标签: 雷赛智能运动控制

点赞

分享到:

上一篇:国产XXX69麻豆国语对白平台的意义是什么?

下一篇:工程塑料滑动轴承的利与弊深...

中国传动网版权与免责声明:凡本网注明[来源:中国传动网]的所有文字、图片、音视和视频文件,版权均为中国传动网(www.chuandong.com)独家所有。如需转载请与0755-82949061联系。任何媒体、网站或个人转载使用时须注明来源“中国传动网”,违反者本网将追究其法律责任。

本网转载并注明其他来源的稿件,均来自互联网或业内投稿人士,版权属于原版权人。转载请保留稿件来源及作者,禁止擅自篡改,违者自负版权法律责任。

网站简介|会员服务|联系方式|帮助信息|版权信息|网站地图|友情链接|法律支持|意见反馈|sitemap

中国传动网-工业自动化与99无码熟妇丰满人妻啪啪的全媒体“互联网+”创新服务平台

网站客服服务咨询采购咨询媒体合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版权所有 粤ICP备 14004826号 | 营业执照证书 | 不良信息举报中心 | 粤公网安备 44030402000946号