Delta DMV1000技术手册:机器视觉系统详解

需积分: 15 12 下载量 20 浏览量 更新于2024-07-25 收藏 12.97MB PDF 举报
"Delta DMV1000产品说明书提供了全面的机器视觉系统组件、规格、输入输出接口、基本操作以及设置检验流程的详细指南。" Delta DMV1000是一款先进的机器视觉系统,其技术手册包含了丰富的信息,帮助用户理解和使用该设备。在手册的第1章“组件和规格”中,详细列出了包装和可选部件,包括控制器包装、相机(可选第二个相机)、镜头(可选)和LED光源。这些组件是构建高效视觉检测系统的基础。 控制器单元是系统的核心部分,其规格详细说明了其性能参数。相机和镜头部分则深入探讨了它们的配置和功能,这对于获取高质量图像至关重要。选择合适的镜头和相机可以确保系统的分辨率、帧率和色彩还原达到预期标准。 第2章“输入和输出接口”介绍了I/O终端块,包括9针输入和输出终端以及50针混合I/O终端,这些接口用于连接外部设备和控制系统。接地和安装指导确保了系统的稳定运行和电气安全,遵循正确的接地和安装步骤能避免潜在的干扰和故障。 第3章“基本操作”讲解了如何使用控制器键盘进行操作。ROI(区域感兴趣区)是机器视觉中的关键概念,用户可以通过设定ROI来关注图像的特定部分。手册详细介绍了如何绘制各种形状的ROI,如矩形、圆形、多边形、椭圆、环形、弧形和旋转矩形,并提供了缩放ROI的操作说明。 第4章“设置检验过程的步骤”引导用户创建和管理项目。项目列表包括项目的基本概念和设置方法,这使得用户能够定制和保存不同的检查流程,适应不同的检测任务需求。通过这些步骤,用户能够根据具体应用需求配置和优化DMV1000的检测能力。 Delta DMV1000产品说明书是一份详尽的指南,它涵盖了从硬件配置到软件操作的所有方面,对于想要有效利用机器视觉技术的工程师和操作员来说,是一份宝贵的参考资料。通过学习这份手册,用户可以熟练掌握DMV1000的使用,从而实现精准、高效的自动化检测。

static int pd_eval_src_caps(struct usbpd *pd) { int i; union power_supply_propval val; bool pps_found = false; u32 first_pdo = pd->received_pdos[0]; int pdo_select = -1; u32 mv_select = 0, ma_select = 0; if (PD_SRC_PDO_TYPE(first_pdo) != PD_SRC_PDO_TYPE_FIXED) { usbpd_err(&pd->dev, "First src_cap invalid! %08x\n", first_pdo); return -EINVAL; } pd->peer_usb_comm = PD_SRC_PDO_FIXED_USB_COMM(first_pdo); pd->peer_pr_swap = PD_SRC_PDO_FIXED_PR_SWAP(first_pdo); pd->peer_dr_swap = PD_SRC_PDO_FIXED_DR_SWAP(first_pdo); val.intval = PD_SRC_PDO_FIXED_USB_SUSP(first_pdo); power_supply_set_property(pd->usb_psy, POWER_SUPPLY_PROP_PD_USB_SUSPEND_SUPPORTED, &val); /* Check for PPS APDOs */ if (pd->spec_rev == USBPD_REV_30) { for (i = 1; i < PD_MAX_DATA_OBJ; i++) { if ((PD_SRC_PDO_TYPE(pd->received_pdos[i]) == PD_SRC_PDO_TYPE_AUGMENTED) && !PD_APDO_PPS(pd->received_pdos[i])) { pps_found = true; break; } } } val.intval = pps_found ? POWER_SUPPLY_PD_PPS_ACTIVE : POWER_SUPPLY_PD_ACTIVE; power_supply_set_property(pd->usb_psy, POWER_SUPPLY_PROP_PD_ACTIVE, &val); /* First time connecting to a PD source and it supports USB data */ if (pd->peer_usb_comm && pd->current_dr == DR_UFP && !pd->pd_connected) start_usb_peripheral(pd); /* Select the first PDO (vSafe5V) immediately. */ pdo_select = select_match_pdo(pd,&mv_select,&ma_select); if (pdo_select == -1) { usbpd_dbg(&pd->dev, "%s, invaild pdo select\n",__func__); pd_select_pdo(pd, 1, 0, 0); } else { usbpd_dbg(&pd->dev, "%s, pdo_select = %d, mv= %dmV, ma = %dmA\n",__func__,pdo_select + 1,mv_select,ma_select); pd_select_pdo(pd, pdo_select + 1, mv_select * 1000, ma_select * 1000); } return 0; }代码分析

2023-06-09 上传