花生点播机器人项目【内附源码下载链接】

本文介绍了花生点播机器人的概念,它通过专用设计加速花生播种,利用物联网技术和自动化机械臂,旨在每天处理大量花生,减少人工劳动并提高花生芽产量。项目关注效率提升、管理简化、成本节约和设备的可靠性和安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

花生点播机器人项目-概念

1. 项目背景

      花生芽是一种新兴的健康食品,由于富含白藜芦醇,营养价值极高。花生芽是通过避光水培的方式生产的,培养及生长原理都类似于豆芽。花生芽的常见种植环境为,在完全避光、25℃恒温、自动补水的水培盘环境中生长7~9天即可收获,1千克花生(约1000颗),可收获约5千克花生芽。

  

2. 需求概述

      本项目的工作环境是一个水培花生芽室内农场,水电便利,地面找平,网络通畅,有信息管理系统及规范的管理流程。花生种可人工添加给点播机器人,水培盘由工人负责移动,水培箱可自动定量加水。

      本项目需要解决的主要问题是使用点播机器人加快花生的点播速度,并实现不间断自动点播。作业对象是花生种子和水培盘。

      水培花生的点播一般采用经过恒温30℃浸种5小时后出芽的、颗粒饱满、外皮完整的花生种子。

      把出芽花生按照芽冲下的方向放置到水培盘里。

      常见的水培盘有点播盘、条播盘和撒播盘,花生芽水培工序一般使用点播盘或条播盘,本项目将针对点播盘进行设计。

点播盘

条播盘

撒播盘

      本项目将开发一种专用的水培花生点播机器人,代替人工完成花生颗粒的方向识别和高速自动点播,从而提升种植效率。期望每天能够点播500千克——大约50万颗的花生,最终可生产约2500千克花生芽。

3. 设计目标

(1)提升工作效率

      筛选点播一体化,尽可能减少工作人员的工作量,简化人员工作流程,同时机器人可以不停机连续运转。

(2)节省管理精力

      设备可以支持网络接入农场原有管理系统,节省人工管理成本,也可以提供新的实时监控和工作日志,有效规避人为产生的错误和风险。

(3)降低人力成本

      一次性投入的机器人可以有效地分担工作人员部分重复枯燥的工作,让现有人员可以把精力投入到更能创造价值的有效工作之中。

(4)保证较好的柔性和扩展性

      设备在设计过程中不应拘泥于固定不变的工作流程中,需要做到可配置、可调试、适应性强,以满足随时可能产生变化的真实需求,保证良好的柔性和扩展性。

(5)保证可靠性

      设备集成丰富的内部、外部传感器,实时监控自身工作状态和周围环境的变化,部分核心零部件适当冗余处理,保证尽可能不出错误,出现错误立即发现,发现错误立即停机上报。

(6)保证安全性

      机器人在运行过程中需要保证周围协同工作的人员以及环境中物品设备的安全,从软件硬件多方面进行安全防护,运转安全高于一切工作任务。

4. 设计思路

       我们将该机器人的设计分为两个主要部分:①分拣系统;② 人机交互系统。

      ①分拣系统是设备本体的主要构成部分,搭载了设备的控制器与核心电源电路。有一个进料仓,可以容纳经过排列方向正确的花生种,并联机械臂将花生芽摆放至点播盘的坑位内。

      ②人机交互系统是机器人与工作人员互动的媒介。功能上需要对作业进行计数,并在屏幕上进行显示。

5. 概念模型

      机器人计划采用2自由度并联结构,该结构多用于绘图机器人,电机负载小、灵活、速度快。

 

 6. 工作流程

 花生点播机器人项目-0.1版

花生点播机器人

1. 成品图片

 

2. 物料清单(不完整)

名称图片数量
一体化电机PJ-MP470/122
电动夹爪爪模组1
单节铰链模组2
双节铰链模组1
12102基架型材130-45
12116型材角件-46
32401T型转接件-43
32403短管12-42
32404连接盘-41
32425同轴输出轴心-42
22203轮架顶板-41
32424驱动端盖-42
32421皮带轮-4(削齿)1
32422皮带轮挡环-41

3. 配套电子模块

名称数量
电机连接线4
通信转接板1
typec数据线1
Jetson Nano1
Jetson Nano 壳体1
wifi网卡+天线1
tf卡1
主控制器电源1
供电电源1
机械爪驱动板1

4. 功能演示

(1)识别点播盘轮廓并模拟点播

(2)实际点播测试

5. 源代码

(1)机械臂驱动程序(arm_device.py)

 (2)工作程序(peanut_arm.ipynb)

from arm_device import DoubleArm

arm=DoubleArm()

import numpy as np

import time

import math

arm.enable()   #机械臂使能

#初始化部分

acc_up = 2

acc_down = 2

vel_speed = 0.22

arm.write_position_traj_mode(0, vel_speed, acc_up, acc_down)

arm.write_position_traj_mode(1, vel_speed, acc_up, acc_down)

arm.set_stepper_vel_acc_limit(8, 3.14/2, 3.14/2 ) #设置步进电机最大速度、加速度

arm.motors[2].get_pos(0.3)

arm.peanut_jump(50)

arm.peanut_jump(0)

arm.motors[3].get_pos(0.3)

arm.motors[2].set_pos(0)

arm.motors[2].set_pos(0)

arm.stepper_position(1.5)

arm.stepper_position_reset()

arm.stepper_position(-0.8)

arm.disable()   #机械臂失能

from ipywidgets import interact

from math import pi

@interact(a1=(-pi, pi, 0.01), a2=(-pi, pi, 0.01), a3=(-2*pi, 4.0, 0.01), a4=(-2*pi, 2*pi, 0.01))

def calibrate(a1=-0.03, a2=0.22, a3=0.0, a4=0.0):

    arm.set_motor_pos(0, a1)

    arm.set_motor_pos(1, a2)

    arm.set_motor_pos(2, a3)

    arm.set_motor_pos(3, a4)

arm.init()

### 读取电机速度电流限制(速度、电流)

arm.read_motor_get_limits()

### 设置电机默认最大速度及最大电流(30, 10)

arm.set_motor_vel_inter(30,13)

arm.set_position_fliter_mode(0,4)

arm.set_position_fliter_mode(1,4)

### 读取当前电机模式

arm.read_get_motor_mode()

### 读取轨迹模式参数(最大速度、加速度、减速度)

arm.set_motor_get_traj_mode_params()

arm.get_motor_position_message() #获取电机位置信息

arm.set_motor_get_traj_mode_params()

arm.input_position_message(0,50)

arm.input_position_message(0,60)

arm.peanut_jump(0)

arm.input_position_message(0,60)

arm.input_position_message(0,48)

arm.input_position_message(0,48)

arm.input_position_message(0,48-2.8)

6. 资料下载

资料内容

OSR003花生点播机器人0.1版-例程

OSR003花生点播机器人3D文件

下载途径https://www.robotway.com/h-col-143.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值