当前位置: 首页 > news >正文

MotoSimEG-VRC教程:动态输送带创建以及示教编程与仿真运行

目录

任务描述

简易输送带外部设备创建

输送带模型添加与配置

工件安装到输送带

输送带输送工件程序编写与仿真运行


任务描述

在MotoSimEG-VRC中创建1条输送带,并且能够实现将工件从输送带起始点位置处输送到结束点位置处。

简易输送带外部设备创建

在MotoSimEG-VRC中支持创建输送带设备,并且能够自动生成简易的输送带模型。

新建虚拟仿真项目,在软件“Controller”菜单栏下的“External Device”命令组中,点击“New”命令按钮,在其下拉菜单中点击“Conveyor”,弹出Conveyor Installation对话框。

在对话框的No功能区下点选输送带编号,本例中选择“No1”,点选完编号后在Name下的显示框内自动生成输送带名称,Joint Num下点选输送带旋转轴编号,这里选择“1”,如下图所示,点击“OK”按钮。

此时弹出Conveyor Setting对话框,在对话框中可以设置输送带模型的尺寸参数与运动参数,各个参数的详细说明如下。

No:显示或指定要设置参数的输送带编号。

Model in fo:设置输送带模型的尺寸参数,包括输送带长度(L)、宽度(D)、高度(H)以及原点位置(Org)。

Motion in fo:设置输送带的运动参数,包括输送带的运行速度(Speed)、输送起始点位置(Start)和输送结束点位置(End)。

Make model:设置是否生成默认输送带模型。

当然,输送带参数配置也可以在后续单独完成。因此,这里保持默认,直接点击“OK”按钮。

软件虚拟仿真环境中出现简易输送带模型,如下图所示,其中深绿与浅绿相间的是简易输送带台面,蓝色的箭头是输送带的移动标记,深绿与浅绿的分界线位置是输送带的原点位置,箭头所在的位置是输送带的输送起始点位置,箭头所指方向就是工件输送的正方向。

同时,在左侧的Cad Tree中出现输送带模型文件,其名称就是Conveyor Installation对话框中Name下显示的输送带名称,如下图所示。

与冲压机、龙门架一样,输送带也可以通过“Position Panel”进行手动运行,其操作方法也一样,这里不再赘述。

同样的,输送带的自动运行程序也是在“Job Panel”中进行示教,示教编程方法可以参考冲压机的示教编程步骤,这里也不再过多介绍。

默认情况下,简易输送带创建完成后,Job Panel中会自动创建出工件在输送带上移动的2条运动程序,如下图所示。

关于输送带手动运行与示教编程的详细操作步骤,可以参考之前发过的文章《MotoSimEG-VRC软件:冲压机添加以及与机器人信号交互虚拟仿真》。

输送带模型添加与配置

简易输送带虽然也可以仿真运行,但是看起来并不是那么逼真。为了能够再现真实的输送带运行效果,还需要添加输送带模型。

在Cad Tree中选择世界坐标系作为参考对象,然后从MotoSimEG-VRC的内置模型库(Model Library)中导入输送带模型,本案例导入的输送带模型名称为Conveyor-roll-400W_1500L_700H。

从输送带的名称中可以发现,输送带的长度为1500mm,宽度为400mm,高度为700mm,可以根据这些尺寸参数设置简易输送带的尺寸参数。

在软件“Controller”菜单栏下的“External Device”命令组中,点击“Conveyor Settings”命令按钮,再次弹出Conveyor Setting对话框。

在对话框中,设置简易输送带模型的尺寸参数与运动参数,如下图所示。

为了能够让添加的输送带模型具备运动特性,还需要将其与简易输送带进行关联。

首先将输送带模型绕Z轴旋转-90°(Rz=-90),然后将简易输送带整体向上移动600mm,这样简易输送带模型的台面就与输送带模型的台面重合了,其效果如下图所示。

在Cad Tree中,使用“Set Parent”命令设置输送带模型的父级参考对象为简易输送带下的“CONVEYOR-NO1_rm”,如下图所示。

然后在Cad Tree中右击“CONVEYOR-NO1_rm”,在弹出的快捷菜单中依次选择“Hide/See”→“Model”,将简易输送带台面模型隐藏,如下图所示。

这样,添加的输送带模型就与简易输送带关联了起来,也就具备了运动特性。

工件安装到输送带

在MotoSimEG-VRC中,利用软件自带的模型创建工具创建1个长方体,并将其命名为“Work”,作为输送带要输送的工件。

在Cad Tree中,使用“Pos”工具,将工件放置到输送带输送起始点位置处(蓝色箭头处)如下图所示。

再使用“Set Parent”命令,将工件的父级参考对象设置为输送带模型的“CONVEYOR-NO1_tcp”,这样工件就能够在输送带上移动了。

最后,在Cad Tree中右击“CONVEYOR-NO1_link1”,在弹出的快捷菜单中依次选择“Hide/See”→“Model”,将简易输送带模型的移动标记隐藏。

输送带输送工件程序编写与仿真运行

在MotoSimEG-VRC中,先使用Position Panel将工件手动移动到输送带输送的结束点位置处,如下图所示。

然后,打开Job Panel,将第2条运动程序示教为当前位置。选择程序时可以先取消勾选左侧的“Sync”,这样工件就不会同步运动到程序的示教点位处了。

程序编写完成后对其仿真运行,运行效果如下方动态图所示,可以看到工件从输送带起始位置处输送到了结束位置处。

 The End


上一篇:MotoSimEG-VRC软件:龙门架外部设备添加以及示教编程与仿真运行

相关文章:

MotoSimEG-VRC教程:动态输送带创建以及示教编程与仿真运行

目录 任务描述 简易输送带外部设备创建 输送带模型添加与配置 工件安装到输送带 输送带输送工件程序编写与仿真运行 任务描述 在MotoSimEG-VRC中创建1条输送带,并且能够实现将工件从输送带起始点位置处输送到结束点位置处。 简易输送带外部设备创建 在MotoS…...

PyTorch 并行训练 DistributedDataParallel完整代码示例

使用大型数据集训练大型深度神经网络 (DNN) 的问题是深度学习领域的主要挑战。 随着 DNN 和数据集规模的增加,训练这些模型的计算和内存需求也会增加。 这使得在计算资源有限的单台机器上训练这些模型变得困难甚至不可能。 使用大型数据集训练大型 DNN 的一些主要挑…...

Golang实现ttl机制保存内存数据

ttl(time-to-live) 数据存活时间,我们这里指数据在内存中保存一段时间,超过期限则不能被读取到,与Redis的ttl机制类似。本文仅实现ttl部分,不考虑序列化和反序列化。 获取当前时间 涉及时间计算,这里首先介绍如何获取…...

js中数字运算结果与预期不一致的问题和解决方案

本文主要是和大家聊聊关于js中经常出现数字运算结果与预期结果不一致的问题,与及解决该问题的的方案。 一、问题现象 如:0.1 0.2的预期结果是0.3,但是在js中得到的计算结果却是0.30000000000000004,如下图所示 如:0…...

C++ Primer Plus 学习笔记(一)——基本类型

字节与字符 计算机内存的基本单位是位(bit),字节(byte)通常指的是8位的内存单元,从这个意义上来说,字节指的就是描述计算机内存量的度量单位。 C对字节的定义则有些不同,C字节由至…...

ChatGpt与Google 谁能给出最好的回答

ChatGPT由于其先进的会话和技术功能而越来越受欢迎。你可以问聊天机器人任何你想问的问题,它会在几秒钟内输出答案。虽然它不是一个搜索引擎,你应该使用ChatGPT作为你的信息来源而不是谷歌,百度吗? 我们来根据国外的一场测试来看一下 ChatG…...

【Redis】一、CentOS64 安装 Redis

1.下载redis https://download.redis.io/releases/2.将 redis 安装包拷贝到 /opt/ 目录 最好自己创建一个文件夹 3.解压 tar -zvxf redis-6.2.1.tar.gz4. 安装gcc yum install gcc5. 进入目录 cd /opt/redis/redis-6.2.1/6. 编译 make7.执行 make install 进行安装 8. …...

Redis底层原理(持久化+分布式锁)

Redis底层原理 持久化 Redis虽然是个内存数据库,但是Redis支持RDB和AOF (Redis Database Backup file(Redis数据备份文件),也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘中 ;Appen…...

Spring Cloud Nacos实战(八) - Nacos集群配置

Nacos集群配置 更改Nacos启动命令配置原理 我们现在知道,想要启动Naocs只需要启动startup.sh命令即可,但是如果启动3个Nacos那?所以如果我们需要启动多个Nacos,其实Nacos本身默认启动就是集群模式。 注意点:如果是l…...

什么是低代码-甲骨文对低代码的定义

什么是低代码平台?低代码阶段使用简化的界面,允许开发人员构建应用程序和软件 既用户友好又响应迅速。而不是编写几行复杂的代码和语言结构, 您可以快速轻松地利用低代码来构建具有用户界面的整体应用程序, 组合和信息。低代码可以…...

shell编程之循环语句

typora-copy-images-to: pictures typora-root-url: …\pictures 文章目录typora-copy-images-to: pictures typora-root-url: ..\..\pictures一、for循环语句1. for循环语法结构㈠ 列表循环㈡ 不带列表循环㈢ 类C风格的for循环2. 应用案例㈠ 脚本计算1-100奇数和① 思路② 落地…...

神经动力学-第一章-神经动力学基础-神经系统的元素

神经元和数学 本章的主要目的是介绍神经科学的几个基本概念,尤其是动作电位、突触后电位、触发阈值、不应期和适应性。基于这些概念,建立了神经元动力学的初步模型,这个简单的模型(漏积分-火模型)将作为本书主题——广义积分-火模型的起点和参考,在第二部分和第三部分进…...

【力扣-LeetCode】64. 最小路径和 C++题解

64. 最小路径和难度中等1430收藏分享切换为英文接收动态反馈给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例 1:输入&#xff…...

Mysql数据库事务

数据库事务 数据库事务由一组sql语句组成。 所有sql语句执行成功则事务整体成功;任一条sql语句失败则事务整体失败,数据恢复到事务之前的状态。 Mysql 事务操作 开始事务 start transaction;- 或 begin;事务开始后,对数据的增删改操作不…...

【opencv源码解析0.3】调试opencv源码的两种方式

调试opencv源码的两种方式 上两篇我们分别讲了如何配置opencv环境,以及如何编译opencv源码方便我们阅读。但我们还是无法调试我们的代码,无法以我们的程序作为入口来一步一步单点调试看opencv是如何执行的。 【opencv源码解析0.1】VS如何优雅的配置ope…...

Xcode Archives打包上传 / 导出ipa 发布至TestFlight

Xcode自带的Archives工具可以傻瓜式上传到App Store Connect分发这里以分发到TestFlight为例进行操作。 环境:Xcode 14 一:Archives打包 选择Xcode菜单栏的Product,Archives选项,需要等待编译完成,进入如下界面&…...

RNN GRU模型 LSTM模型图解笔记

RNN模型图解引用RNN模型GRULSTM深度RNN双向循环神经网络引用 动手学深度学习v2–李沐 LSTM长短期记忆网络3D模型–B站up梗直哥丶 RNN模型 加入了一个隐变量(状态),隐变量由上个隐变量和上一个输入而更新,这样模型就可以达到具有短期记忆的效…...

西电_数字信号处理二_学习笔记

文章目录【 第1章 离散随机信号 】【 第2章 维纳滤波 】【 第3章 卡尔曼滤波 】【 第4章 自适应滤波 】【 第5章 功率谱估计 】这是博主2022秋季所学数字信号处理二的思维导图(软件是幕布),供大家参考,如内容上有不妥之处&#xf…...

[ vulhub漏洞复现篇 ] Drupal 远程代码执行漏洞(CVE-2018-7602)

🍬 博主介绍 👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 养成习…...

MySQL最佳实践

一、MySQL查询执行过程 1.MySQL分层结构 MySQL8.0没有查询缓存的功能了,如果频繁修改缓存,将会损耗性能查询流程就按照分层结构就可以清楚,只要了解各个组件的各自功能就行分析器主要分析语法和词法是否正确优化器主要优化SQL语句 二、MySQL更新执行过程 更新主要涉及两个重…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...

什么是EULA和DPA

文章目录 EULA(End User License Agreement)DPA(Data Protection Agreement)一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA(End User License Agreement) 定义: EULA即…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)

前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块&#xff0c…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...