LabVIEW开发图像采集和基于颜色的隔离
LabVIEW开发图像采集和基于颜色的隔离
在当今的工业和工厂中,准确性和精度是决定特定行业生产力的两个重要关键点。为了优化生产力,各行各业正在从手动操作转向自动操作和控制。机器人技术在工业过程中的出现为人类提供了机械辅助。机器视觉在工业机器人中的应用使机器具有更好的工艺精度和详细的工艺检查。本文涉及使用使用机器视觉的气动机器人手动系统分拣具有不同颜色的小工件的工业应用。该项目旨在实现工业应用,可以帮助需要将不同颜色的药品分类到各自包装和不同包装行业的制药公司。所提出的分选过程基于涉及图像采集的机器视觉,其算法是在NI软件LabVIEW上设计的。需要分拣的工件放置在滑杆上,滑杆从那里滑到配备传感器的平台,该传感器确定是否存在要分拣的工件。因此,旨在使系统自主,消除完成的额外工作。系统首先检测工件的存在,然后连接到夹持器的网络摄像头获取工件的实时图像并处理图像。最后,机械臂根据LabVIEW中设计的算法检测的颜色进行“拾放和放置”操作。
FESTO气动搬运站是一台配备柔性两轴搬运装置的机器。处理装置的一个臂负责水平方向的运动,并具有气动线性轴,具有灵活的终端位置调整,另一个臂负责垂直方向的运动。
负责垂直运动的臂在自由端连接了一个气动线性夹具。夹持器的工作原理是单作用气缸。它有2个工作职位;一个是夹持器打开,第二个是闭合以夹持工件。外部摄像头连接到处理设备的臂上,可在垂直方向上提供提升。相机负责工件的实时图像采集,以检测其颜色以进行偏析,并且可以将工件放置在各自的滑块上。
数据采集是指测量物理现象,如压力、电压等。用电脑。数据采集(DAQ)系统是硬件和软件的集合,在工业中用于测量或控制现实世界中机器/设备的物理特性和过程参数。
为了将LabVIEW与气动处理站连接,使用信号调理器对气动处理站中的传感器产生的反馈产生的电信号进行调理。然后,调理后的模拟信号通过数据采集设备中的内置ADC转换为数字信号。该设备用于测量转换后的信号,以表示集成在机器中的传感器的状态变化。
计算机上的LabVIEW软件从NIDAQ9425读取数据,分析传感器的状态,负责控制机器的虚拟仪器采取必要的措施。数字输出由计算机发送到数据采集设备,数据采集设备也负责其调节并将其转换为模拟信号,由机器处理。NIDAQ9472用于数字输出。
气动搬运站的机械臂与LabVIEW软件连接。一旦工件被放置在支架上,平台中内置的光学漫射传感器就会改变其状态(True),并将其传输到安装在计算机中的LabVIEW软件。传感器逻辑状态的传输是在DAQ9425的帮助下完成的。为控制机器而创建的虚拟仪器启动手臂在平台方向上的运动。移动到指定位置后,当相应传感器的值因物体的存在而改变时,夹持器会进行垂直位移。当工件被夹住时,连接到夹具上的相机开始工作,以进行实时图像采集。

该系统由具有两轴搬运装置的气动控制机器人搬运站组成。需要分拣的工件放置在滑杆上,滑杆从那里滑到装有传感器的平台,该传感器确定是否存在要分拣的工件。抓取系统在气动夹持器的帮助下拾取工件。处理站由PicAlfa模块组成526215配备三个终端位置传感器,因此我们可以隔离三个不同颜色的工件。
在夹具上附有网络摄像头,有助于捕获不同颜色工件的图像。为了处理工作站与计算机接口,为了使用实验室视图程序对其进行控制,所提出的系统使用两个数据采集卡,即DAQ9425(数字输入)和DAQ9472(数字输出)。
通过数据采集(DAQ),我们正在用计算机测量电气或物理现象,例如电压,电流。NI9472是一款8通道、100μs源数输出模块。每个通道兼容性为6V至30V信号,输出通道和背板之间具有2,300Vrms瞬态过压保护。每个通道还有一个LED,用于指示该通道的状态。类似地,NI9425是一款32通道、7μs灌入数字输入C系列模块。每个通道兼容24V电平,并具有从通道到接地的1,000Vrms瞬态过压保护。
该系统使用实验室视图中设计的图像采集算法来分离不同颜色的工件。网络摄像头感知到的工件的颜色由工件反射的光的波长决定。因此,在本文中,使用IMAQ视觉工具箱创建了一个子VI,该工具箱以更高的效率提供了一套完整的数字图像处理和采集功能。
随着机器视觉与机器人搬运站的进一步集成,提高了拾取和放置机构的效率,并使系统更加自主。机器视觉算法还使用NILabVIEW软件进行设计,并成功与拾放算法集成,将该算法用作主程序的子VI,使整个过程按顺序进行。因此,这两种算法都已成功实现。每个拾取和放置操作周期平均需要4秒的时间。
使用气动搬运站和LabVIEW成功实现了工件的图像采集和基于颜色的分离。外部USB摄像头已用于工件的图像采集和颜色检测。该机器已与LabVIEW软件连接。
该项目在化学和制药行业等各个工业部门都有应用,在这些行业中,产品的颜色是确定其是否经过正确加工技术或有缺陷并需要从最终批次中移除以供应市场的重要参数。
这是LabVIEW的一个应用,更多的开发案例,欢迎登录官网,了解更多信息。有需要LabVIEW项目合作开发,请与我们联系。
相关文章:
LabVIEW开发图像采集和基于颜色的隔离
LabVIEW开发图像采集和基于颜色的隔离 在当今的工业和工厂中,准确性和精度是决定特定行业生产力的两个重要关键点。为了优化生产力,各行各业正在从手动操作转向自动操作和控制。机器人技术在工业过程中的出现为人类提供了机械辅助。机器视觉在工业机器人…...
站长公益主机,免费主机➕免费域名➕博客申请➕论坛申请
站长公益主机,免费主机➕免费域名➕博客申请➕论坛申请 在出教程之前准备好久,测试搭建轻量论坛无压力 选用稳定免费域名➕免费主机分销给,可以套CDN使用 坚持免费时间是大厂不能媲美,刚开始做网站时用的是这个分销,独…...
【PRO-UPDATE】自动更新程序图形小记
大纲流程 设计流程 v0.1 v1.0...
flume系列之:监控Systemctl托管的flume agent组
flume系列之:监控Systemctl托管的flume agent组 一、需求背景二、相关技术博客三、远程登陆flume机器四、发送飞书告警五、监控flume agent组状态一、需求背景 flume接kafka集群,一个kafka集群对应一个flume agent组,会把一组flume agent用systemctl托管每接一个kafka集群会…...
16.3.1 【Linux】程序的观察
既然程序这么重要,那么我们如何查阅系统上面正在运行当中的程序呢?利用静态的 ps 或者是动态的 top,还能以 pstree 来查阅程序树之间的关系。 ps :将某个时间点的程序运行情况撷取下来 仅观察自己的 bash 相关程序: p…...
HarmonyOS 设置全屏NoTitleBar
这篇很有用:玩转HarmonyOS 状态栏&标题栏&导航栏相关操作方法整理 配置页面全屏显示(在config.json中配置): "metaData": {"customizeData": [{"name": "hwc-theme","value": "androi…...
Java 模块解耦的设计策略
Java 平台模块系统 (JPMS) 提供了更强的封装、更高的可靠性和更好的关注点分离,有些同学可能没注意到。 不过呢,也是有利有弊。由于模块化应用程序构建在依赖其他模块才能正常工作的模块网络上,因此在许多情况下,模块彼此紧密耦合…...
支持https访问
文章目录 1. 打开自己的云服务器的 80 和 443 端口2. 安装 nginx3. 安装 snapd4. 安装 certbot5. 生成证书6. 拷贝生成的证书到项目工作目录7. 修改 main.go 程序如下8. 编译程序9. 启动程序10. 使用 https 和端口 8081 访问页面成功11. 下面修改程序,支持 https 和…...
JavaScript 中常用简写技巧总结
平时我们写代码时最高级的境界是自己写的东西别人看不懂!哈哈哈!分享一些自己常用的js简写技巧,长期更新,会着重挑选一些实用的简写技巧,使自己的代码更简洁优雅~ 这里只会收集一些大多数人不知道的用法,但…...
第15集丨Vue 江湖 —— 组件
目录 一、为什么需要组件1.1 传统方式编写应用1.2 使用组件方式编写应用1.3 Vue的组件管理 二、Vue中的组件1.1 基本概念1.1.1 组件分类1.1.2 Vue中使用组件的三大步骤:1.1.3 如何定义一个组件1.1.4 如何注册组件1.1.5 如何使用组件 1.2 注意点1.2.1 关于组件名1.2.2 关于组件标…...
【JVM】CPU飙高排查方案与思路
文章目录 CPU飙高排查方案与思路 CPU飙高排查方案与思路 1.使用top命令查看占用cpu的情况 2.通过top命令查看后,可以查看是哪一个进程占用cpu较高,上图所示的进程为:40940 3.查看进程中的线程信息 4.可以根据进程 id 找到有问题的线程&a…...
使用公网访问内网IIS网站服务器【无需公网IP】
使用公网访问内网IIS网站服务器【无需公网IP】 文章目录 使用公网访问内网IIS网站服务器【无需公网IP】前言1. 注册并安装cpolar2. 创建隧道映射3. 获取公网地址 前言 这里介绍通过内网穿透,实现公网访问内网IIS网站服务器。 都知道,现在基本不会被分配…...
Vim学习(二)—— 编译C程序
打开终端,这里以MobaXterm为例, 邮件创建新的空文件并命名, 然后cd到对应路径下,用 vim hello.cvim打开创建的文件,进入编辑模式,编辑完程序后按Esc退出编辑模式,输入 :wq保存并退出…...
【maven】常见命令
文章目录 1. 打包编译时跳过测试2.显示maven依赖树3. 显示maven依赖列表4. 下载依赖包的源码5. 安装本地jar到本地仓库 1. 打包编译时跳过测试 mvn clean install -DskipTests mvn clean install -Dmaven.test.skiptrueDskipTests,不执行测试用例,但编译…...
vue单项数据传输流式回复功能,post传值可关闭请求(@microsoft/fetch-event-source)
需求:实现一个类似于文心一言ai回复功能,一个字一个字往外蹦,不使用websocket还有什么其他方案呢?经过查询有一个 microsoft/fetch-event-source单向传输协议(服务端传输客户端)。废话不多说,上…...
“深入探究JVM内部机制:理解Java虚拟机的工作原理“
标题:深入探究JVM内部机制:理解Java虚拟机的工作原理 摘要:本文将深入分析Java虚拟机(JVM)的工作原理,包括类加载、内存管理、垃圾回收和即时编译等方面。通过详细解释这些概念,并给出示例代码…...
ubuntu18.04下配置muduoC++11环境
1.安装muduo依赖的编译工具及库 Cmake sudo apt-get install cmakeBoost sudo apt-get install libboost-dev libboost-test-devcurl、c-ares DNS、google protobuf sudo apt-get install libcurl4-openssl-dev libc-ares-dev sudo apt-get install protobuf-compiler libp…...
leetcode 力扣刷题 数组交集(数组、set、map都可实现哈希表)
数组交集 349. 两个数组的交集排序+双指针数组实现哈希表unordered_setunordered_map 350. 两个数组的交集Ⅱ排序 双指针数组实现哈希表unordered_map 349. 两个数组的交集 题目链接:349. 两个数组的交集 题目内容如下,理解题意:…...
JVM元空间溢出的排除思路
背景: java的应用我们为了防止元空间的无限扩展,一般都会设置MaxMetaSpace参数,一般来说只要这个值是512M或者1G左右就足够了,不过今天遇到一个meta空间溢出问题,简单记录下排除的思路 meta元空间溢出 最开始的现象…...
vue+java实现在线播放mp4视频
java: 读取本地视频文件的流然后给response的输出流 File file new File("/Users/zhangqingtian/Documents/水库/Floodforecast/static/" videoName);BufferedInputStream inputStream new BufferedInputStream(new FileInputStream(file));response.setContentT…...
python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
拉力测试cuda pytorch 把 4070显卡拉满
import torch import timedef stress_test_gpu(matrix_size16384, duration300):"""对GPU进行压力测试,通过持续的矩阵乘法来最大化GPU利用率参数:matrix_size: 矩阵维度大小,增大可提高计算复杂度duration: 测试持续时间(秒&…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
关于uniapp展示PDF的解决方案
在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项: 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库: npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...
华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...
