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

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...

ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...

面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...