雷赛运动控制卡编程(2)限位设定与回原方式、脉冲模式设置

一、限位开关及急停开关的设置

限位开关的设置

            //设置限位开关// dmc_set_el_modeushort _cardNo=0;ushort _axisNo = 0;ushort _enable = 1;  // 正负限位使能 ushort _elLogic = 0;  // 正负限位 低电平 有效ushort _model = 0;//  正负限位停止方式为立即停止LTDMC.dmc_set_el_mode( _cardNo, _axisNo, _enable, _elLogic, _model);

急停开关设置

            // 急停设置LTDMC.dmc_set_emg_mode(_cardNo, _axisNo, _enable, _elLogic);

二、回原点设置

回原点的步骤

回原点运动主要步骤如下:
1)使用 dmc_set_home_pin_logic 函数设置原点开关的有效电平;
2)使用 dmc_set_homemode 函数设置回原点方式;
3)设置回原点运动的速度曲线;
4)设置回零偏移量、回零完成是否清零及非限位回零方式遇限位是否反找;
5)使用 dmc_home_move 函数执行回原点运动;

回原方式

方式 0:一次原点回零

适合于行程短、安全性要求高的场合。动作过程为:电机从初
始位置以恒定速度向原点方向运动,当到达原点开关位置,原点信号被触发,电机立即停止(过
程 0);将停止位置设为原点位置

 方式 1:一次原点回零加回找

该方式先进行方式 0运动,完成后再反向回找原点开关的边缘位置,当原点信号第一次无
效的时候,电机立即停止;

 方式 2:两次原点回零

该方式为方式 0和方式1的组合。先进行方式 1 的回零加反找,完成后再 进行方式 0的一次回零

 方式 3:一次原点回零后再同向找 1 个 EZ 信号后回零

该方式在回原点运动过程中,当找到原点信号后,还要等待该轴的 EZ 信号出现,此时电
机停止

 方式 4:记 1 个 EZ 信号回零

方式 5:一次原点回零再反找 EZ 信号 

该方式在回原点运动过程中,当找到原点信号后,减速停止,然后以反找速度反向找到 EZ 生效此时电机停止

 方式 6:原点锁存

电机先以设定速度回原点,当原点开关边沿触发时,将当前位置锁存下来, 同时电机减速停止。电机减速停止完成后再反向回找锁存位置,运动到锁存位置,电机停止

 方式 7:原点锁存加同向 EZ 锁存

该方式先以方式 6 执行一次原点锁存回零,完成后继续沿设定回零方向运行到 EZ 信号产
生, EZ 信号产生时锁存当前位置并执行减速停,电机减速停止之后再反向回找 EZ 的锁存位
置,运动到锁存位置,电机停止

方式 8:单独记一个 EZ 锁存

在回零过程中检测到 EZ 有效边沿出现,锁存当前位置,执行减速停,电机减速停止之后 再反向回找 EZ 的锁存位置,运动到锁存位置,电机停止

 方式 9:原点锁存加反向 EZ 锁存

该方式先以方式 6 执行一次原点锁存回零,完成后以与设定回零方向相反的方向运行到 EZ 信号产生, EZ 信号产生时锁存当前位置并执行减速停,电机减速停止之后再反向回找 EZ 的锁存位置,运动到锁存位置,电机停止

方式 10:一次限位回零

该方式以设定速度回原点;适合于行程短、安全性要求高的场合。动作过程为:电机从初
始位置以恒定速度向限位方向运动,当到达限位开关位置,限位信号被触发,电机立即停止(过
程 0);将停止位置设为原点位置

 方式 11:一次限位回零加回找

三、 脉冲模式设置

指令脉冲输出模式

 设置指定轴的脉冲输出模式

 读取指定轴的脉冲输出模式设置

四、函数测试

初始化板卡

 控制卡关闭

控制卡硬件复位函数 

获取控制卡硬件 ID 号

获取控制卡固件版本号

获取控制卡硬件版本号

 Code

        private void InitBtn_Click(object sender, EventArgs e){short res;res = LTDMC.dmc_board_init();if (res <= 0 || res > 8){Console.WriteLine("shibai");return;}// 获取轴卡上所有的ID号和固件版本号ushort cardNumber = 0;uint[] CardTypeList = new uint[8];ushort[] CardIdList = new ushort[8];res = LTDMC.dmc_get_CardInfList(ref cardNumber, CardTypeList, CardIdList);if (res == 0){// 卡号_CardNo = CardIdList[0];// 版本}uint axises = 0;// 卡的轴数short res2=  LTDMC.dmc_get_total_axes(CardIdList[0], ref axises);if(res2==0){Movtion_Number.Items.Clear();for (ushort i = 0; i < axises; i++){Axises[i] = i;Movtion_Number.Items.Add(Axises[i]);}Movtion_Number.SelectedItem = 0;_Init_flag = true;}}private void ClosedBtn_Click(object sender, EventArgs e){if (_Init_flag){LTDMC.dmc_board_close();}}

限位开关设置

 设置 EL 限位信号

设置软限位

 

回原 

设置 ORG 原点信号  

读取 ORG 原点信号

*设置回原点模式(重点)

注意
1)当回零模式 mode=4 时,回零速度模式将固定为低速回零
2)DMC3C00 后四轴只支持 0、1、2、10、11、12 六种回零模式
3)后三种回零模式最新固件(3XX201611 及以后固件)才支持。正向回零时进行正限
位回零,负向回零时进行负限位回零; 若开始回零时处于限位信号中,会先向设置的
回零方向的反向运动,移出限位信号范围后,再变向,找相应的限位信号;一次限位回
零遇到限位信号后急停;一次限位回零加反找在反找阶段遇到限位信号后急停;二次限
位回零在第二次遇到限位信号后急停;

 读取回原点模式

回零遇限位是否反找

 读取回零遇限位是否反找

设置回零偏移量及清零模式

读取回零偏移量及清零模式

设置开启限位反找偏移距离

读取限位反找偏移距离

回原点运动

读取回零执行状态

  public int GoHome(){//设置原点信号的有效电平ushort _cardNo = 0;ushort _axisNo = 0;ushort _org_log = 0;  // 原点信号低电平有效double filter = 0.4;  //保留参数LTDMC.dmc_set_home_pin_logic(_cardNo, _axisNo,_org_log,filter);// 选择回原的模式ushort _home_dir = 0;  //负方向回零double _vel = 0;   //回零速度模式为低速ushort _mode = 1;  //回零模式为方式 1,一次回零ushort _EZ_count = 2;//保留参数LTDMC.dmc_set_homemode(_cardNo, _axisNo, _home_dir, _vel, _mode, _EZ_count);// 设置回零遇限位是否反找ushort _enable = 0;LTDMC.dmc_set_home_el_return(_cardNo, _axisNo, _enable);// 设置回零偏移量及清零模式LTDMC.dmc_set_home_position(_cardNo, _axisNo,_enable,-19);// 按指定的方向和速度方式开始回原点LTDMC.dmc_home_move(_cardNo, _axisNo);// 读取回零状态ushort _statble = 0;LTDMC.dmc_get_home_result(_cardNo, _axisNo,ref  _statble);return 0;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/871931.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

构建实用的NLP应用程序:重塑人类与计算机的协同工作方式

文章目录 一、NLP技术的核心价值二、构建实用NLP应用程序的关键步骤三、NLP应用程序在协同工作中的创新应用《赠ChatGPT中文范例的自然语言处理入门书》编辑推荐内容简介作者简介精彩书评目录前言/序言获取方式 在数字化时代&#xff0c;自然语言处理&#xff08;NLP&#xff0…

手机数据恢复:适用于 Android 的 4 大数据恢复应用程序

没有人希望丢失设备上的重要数据。如果发生这种情况&#xff0c;请不要惊慌。以下是可帮助您恢复丢失或删除的数据的 Android 数据恢复应用程序列表。 有多种方法可以恢复已删除或丢失的 Android 数据&#xff0c;最简单、最快捷的方法是使用第三方恢复应用程序。这些应用程序会…

Transformer模型:Postion Embedding实现

前言 这是对上一篇WordEmbedding的续篇PositionEmbedding。 视频链接&#xff1a;19、Transformer模型Encoder原理精讲及其PyTorch逐行实现_哔哩哔哩_bilibili 上一篇链接&#xff1a;Transformer模型&#xff1a;WordEmbedding实现-CSDN博客 正文 先回顾一下原论文中对Posit…

[Windows] 号称最快免费小巧的远程桌面 AnyDesk v8.0.11单文件版

描述 对于经常在互联网上进行操作的学生&#xff0c;白领等&#xff01; 一款好用的软件总是能得心应手&#xff0c;事半功倍。 今天给大家带了一款高科技软件 虽然 QQ 拥有远程协助功能&#xff0c;但很多时候连接并不够流畅&#xff0c;而且被控电脑那方也必须要有人操作才行…

电脑关机被阻止

1. winR输入regedit进入注册表 2. 选择HKEY_USERS-》.DEFAULT-》Control Panel-》Desktop 3. 右键DeskTop新建字符串值&#xff0c;命名为AutoEndTasks&#xff0c;数值设置为1

C++中链表的底层迭代器实现

大家都知道在C的学习中迭代器是必不可少的&#xff0c;今天我们学习的是C中的链表的底层迭代器的实现&#xff0c;首先我们应该先知道链表的底层迭代器和顺序表的底层迭代器在实现上有什么区别&#xff0c;为什么顺序表的底层迭代器更加容易实现&#xff0c;而链表的底层迭代器…

不会编程怎么办?量化交易不会编程可以使用吗?

量化交易使用计算机模型程序代替人工进行交易&#xff0c;一般需要投资者自己编写程序建模&#xff0c;然后回测无误之后再进行实盘交易&#xff0c;那么不会编程的投资者能使用量化软件进行量化交易吗&#xff1f; 不会编程使用量化软件有两种方法 一种是请人代写代码&#x…

Java软件设计模式-单例设计模式

目录 1.软件设计模式的概念 2.设计模式分类 2.1 创建型模式 2.2 结构型模式 2.3 行为型模式 3.单例设计模式 3.1 单例模式的结构 3.2 单例模式的实现 3.2.1 饿汉式-方式1&#xff08;静态变量方式&#xff09; 3.2.2 懒汉式-方式1&#xff08;线程不安全&#xff09; 3.…

职场新人感受

互联网职场感受 阶段介绍 24届6月底毕业生&#xff0c;之前从未实习过。 岗位是后端开发&#xff08;JAVA&#xff09;&#xff0c;目前已经上班三周&#xff08;前两周看文档和做了半个简单需求&#xff0c;第三周脱产新人培训&#xff09;。 职场体验 职场和想象中的工作…

c++ 网络编程udp协议 poco模块

官网资料(需要梯子)&#xff1a;https://pocoproject.org/slides/200-Network.pdf 1、poco是在原生socket之上的封装&#xff0c;底层还是socket&#xff0c;性能低于socket&#xff0c;安全性和实用性高于socket&#xff0c;即使用简便&#xff0c;接口简单 2、udp协议是&…

办公灯多普勒雷达模组感应开关,飞睿智能24G毫米波雷达超低功耗uA级,节能LED灯新搭档

在科技日新月异的今天&#xff0c;节能、环保已经成为我们生活和工作中不可或缺的一部分。作为新时代的办公人&#xff0c;我们不仅要追求高效的工作方式&#xff0c;更要关注我们所使用的设备是否足够环保、节能。今天&#xff0c;我们就来聊聊一个令人兴奋的创新——飞睿智能…

COMX-P2020、COMX-P1022 vxWorks系统开发主机

提供vxworks6.9开发环境和BSP源码&#xff0c;具有千兆以太网&#xff0c;调试串口&#xff0c;4个PCIe插槽&#xff0c;支持PCIe 1.0a和msi中断&#xff0c;底板板载一块Xilinx CPLD XC95144&#xff0c;提供ISE14.7安装包和verilog源码。可定制开发基于PCIe接口和fpga的拓展接…

多语言环境大师:在PyCharm中管理多个Python解释器

多语言环境大师&#xff1a;在PyCharm中管理多个Python解释器 PyCharm作为业界领先的Python集成开发环境&#xff08;IDE&#xff09;&#xff0c;支持多种Python解释器的配置和管理&#xff0c;使得开发者可以针对不同项目使用不同的Python环境。本文将详细介绍如何在PyCharm…

如何30分钟下载完368G的Android系统源码?

如何30分钟下载完368G的Android系统源码&#xff1f; Android系统开发的一个痛点问题就是Android系统源码庞大&#xff0c;小则100G,大则&#xff0c;三四百G。如标题所言&#xff0c;本文介绍通过局域网高速网速下载源码的方法。 制作源码mirror 从源码git服务器A&#xff0c…

推荐系统:从协同过滤到深度学习

目录 一、协同过滤&#xff08;Collaborative Filtering, CF&#xff09;1. 基于用户的协同过滤2. 基于物品的协同过滤 二、深度学习在推荐系统中的应用1. 深度学习模型的优势2. 深度学习在推荐系统中的应用实例 三、总结与展望 推荐系统是现代信息处理和传播中不可或缺的技术&…

【话题】破茧而出:打破AI“信息茧房”,捍卫信息自由与多样性

目录 AI发展下的伦理挑战&#xff0c;应当如何应对&#xff1f; 方向一&#xff1a;构建可靠的AI隐私保护机制 方向二&#xff1a;确保AI算法的公正性和透明度 方向三&#xff1a;管控深度伪造技术 AI发展下的伦理挑战&#xff0c;应当如何应对&#xff1f; 在人工智能&…

Tita的OKR:高端制造行业的OKR案例

高端设备制造行业的发展趋势&#xff1a; 产业规模持续扩大&#xff1a;在高技术制造业方面&#xff0c;航空、航天器及设备制造业、电子工业专用设备制造等保持较快增长。新能源汽车保持产销双增&#xff0c;新材料新产品生产也高速增长。 标志性装备不断突破&#xff1a;例如…

数据结构第27节 优先队列

优先队列&#xff08;Priority Queue&#xff09;是在计算机科学中一种非常有用的抽象数据类型&#xff0c;它与标准队列的主要区别在于元素的出队顺序不是先进先出&#xff08;FIFO&#xff09;&#xff0c;而是基于每个元素的优先级。具有较高优先级的元素会比低优先级的元素…

论文写作经验-摘要1

小王搬运工 时序课堂 2024年07月15日 13:10 新疆 本人菜鸡一名&#xff0c;最近几篇论文实验跑的比较顺利&#xff0c;结果也很不错&#xff0c;奈何于自己写作能力巨差&#xff0c;导致文章屡屡被拒。当前正在跟一位非常牛的老师学习写作技巧&#xff0c;我将一些心得体会和技…

MySQL教程 | 笔记 (包含数据库、表设计,数据库的增删改查操作;数据库优化等知识点)

SQL简介 一门操作关系型数据库的编程语言&#xff0c;定义操作所有关系型数据库的统一标准 通用语法&#xff1a; 可以单行或者多行书写&#xff0c;以分号结尾&#xff1b; 可以使用空格 / SQL语句可以使用空格/缩进来增强语句的可读性。 MySQL数据库的SOL语句不区分大小…