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…...

手机两个卡槽的正确使用方法,您用对了吗?
手机上有两个卡槽,该如何搭配才能使话费降到最低?你又是怎么搭配的? 这篇文章小编就来告诉你,如何在不换号的情况下,将自己的话费降到最低。 首先卡槽一我们就用8元保号套餐。 卡槽二,我们就可以办理一张…...

PyTorch翻译官网教程-NLP FROM SCRATCH: CLASSIFYING NAMES WITH A CHARACTER-LEVEL RNN
官网链接 NLP From Scratch: Classifying Names with a Character-Level RNN — PyTorch Tutorials 2.0.1cu117 documentation 使用CHARACTER-LEVEL RNN 对名字分类 我们将建立和训练一个基本的字符级递归神经网络(RNN)来分类单词。本教程以及另外两个“from scratch”的自然…...

基于注意力神经网络的深度强化学习探索方法:ARiADNE
ARiADNE:A Reinforcement learning approach using Attention-based Deep Networks for Exploration 文章目录 ARiADNE:A Reinforcement learning approach using Attention-based Deep Networks for Exploration机器人自主探索(ARE)ARE的传统边界法非短视路径深度强化学习的方…...

Martin_DHCP_V3.0 (DHCP自动化泛洪攻击GUI)
Github>https://github.com/MartinxMax/Martin_DHCP_V3.0 首页 Martin_DHCP_V3.0 自动化DHCP洪泛攻击 Martin_DHCP_V3.0 使用方法 安装三方库 #python3 1.RunMe_Install_Packet.py 攻击路由器 #python3 Martin_DHCP_Attack.py 填写网卡 填写攻击次数 开始运行...

vscode vue3+vite 配置eslint
vue2webpackeslint配置 目前主流项目都在使用vue3vite,因此针对eslint的配置做了一下总结。 引入ESlint、pritter 安装插件,执行以下命令 // eslint // prettier // eslint-plugin-vue // eslint-config-prettier // eslint-plugin-prettier yarn ad…...

【C++学习手札】一文带你初识运算符重载
食用指南:本文在有C基础的情况下食用更佳 🍀本文前置知识: C类 ♈️今日夜电波:クリームソーダとシャンデリア—Edo_Ame江户糖 1:20 ━━━━━━️💟──────── 3:40 …...

javaScript:数组检测
目录 一.前言 二.数组检测方法 1.every() 2.some() 3.filter() 一.前言 数组检测是指在编程中对数组进行验证和检查的过程。数组检测可以涉及以下方面: 确定数组的存在:在使用数…...

【JavaEE基础学习打卡02】是时候了解Java EE了!
目录 前言一、为什么要学习Java EE二、Java EE规范介绍1.什么是规范?2.什么是Java EE规范?3.Java EE版本 三、Java EE应用程序模型1.模型前置说明2.模型具体说明 总结 前言 📜 本系列教程适用于 Java Web 初学者、爱好者,小白白。…...

LeetCode 2813. Maximum Elegance of a K-Length Subsequence【反悔贪心】2582
本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…...

日常BUG——SpringBoot模糊映射
😜作 者:是江迪呀✒️本文关键词:日常BUG、BUG、问题分析☀️每日 一言 :存在错误说明你在进步! 一、问题描述 SpringBoot在启动时报出如下错误: Caused by: java.lang.IllegalStateExceptio…...