机器人制作开源方案 | 家庭清扫拾物机器人

news2024/11/26 5:26:08

作者:罗诚、李旭洋、胡旭、符粒楷

单位:南昌交通学院 人工智能学院

指导老师:揭吁菡

      在家庭中我们有时无法到一些低矮阴暗的地方进行探索,比如茶几下或者床底下,特别是在部分家庭中,如果没有及时对这些阴暗低矮的地方进行清扫,则会导致这些地方不干净与不整洁;还有在平时生活中手机钥匙等物品可能会掉落床底等低矮阴暗的角落,不方便拾取;综合多种情况下考虑,我们设计了这款家庭清扫拾物机器人,来解决我们生活中的这些烦恼。

1. 作品细节图

正视图
侧视图
俯视图
后视图

① 该机器人装备了履带,可以更好地跨越低矮的障碍物。

履带设计模块

② 该机器人前身部分设计了铲夹结合功能,可以实现对物品进行铲取和夹取功能。

夹取设计模块
铲取设计模块

③ 铲取模块中正常情况下进行平铲,此机器人也设计了可以实现抬铲与低铲功能,更方便的铲取物品。

抬铲设计模块
低铲设计模块

④ 前身部分的铲子下方添加了拖地模块,可以实现在道路上进行拖地操作,达到清扫功能。

拖地设计模块

⑤ 该机器人在尾部部分参考了道路清扫车,设计了清扫功能,可以对前进道路中的垃圾进行清扫,内部还装有回收垃圾的模块。

扫地设计模块

⑥ 机器人搭载WiFi模块与蓝牙模块,可以实现远程监控与远程操控的功能。

远程监控操控设计模块

2. 作品效果图

① 履带设计可以越过低矮障碍物(模拟家庭环境房间门口的小台阶)

② 进行扫垃圾功能(以纸屑为例)

③ 夹取物品(以小孩子的玩具车轮为例)

 ④ 铲取功能(以钥匙为例)

⑤ 拖地功能(以地面上洒落的可乐为例)

⑥ 巡逻功能(模拟家庭中阴暗低矮环境)

3. 项目研究内容

      此作品设计采用了“铲夹拖扫视”多功能一体化理念。我们结合生活中铲车的实物以及生活中道路垃圾灰尘清扫车,为该机器人头部设计了“铲夹结合”模型。通俗的说,就是在车子的头部设计了夹子,可以实现对一些物品进行夹取功能,同时当夹子合并之后就会形成一个铲子的模型,来实现对一些难以夹取的物品进行“铲”的方式来实现拾取功能,在家庭中也可以实现“搬运功能”。在铲子一端中,我们加入了拖地功能,可以对地面进行清洁能力。在尾部部分,我们设计了一对铲子,可以对地面进行清扫功能,通过首尾的功能结合,可以对家庭进行清扫功能。

      同时此设计可以用手机终端对该机器人进行控制功能。通过蓝牙与局域网连接,实现远程操控;搭载摄像头模块,可以实现该机器人对该环境进行实时监控。通过手动操控的功能可以让家庭成员也能亲身感受到该机器人的功能,在不进行家庭清扫拾物功能时,该机器人也可以充当“家庭巡逻机器人”,观察家庭周围环境的变化,以助于我们的生活可以更加便利。

4. 国内外研究现状和发展动态

      根据目前行业发展形式,我国的城市建设正逐步在向智慧城市方向发展,而这其中智能化的进步,直接带动了相关产业的发展,机器人的普及会随着其技术发展越来越走向现实。      

      在家庭中,我们无法到一些低矮阴暗的地方进行探索,比如茶几下或者床底下,特别是在部分家庭中,由于没有及时对这些阴暗低矮的地方进行清扫会导致这些地方不干净与不整洁。还有在平时生活中手机钥匙等物品可能会掉落床底等低矮阴暗的角落,不方便拾取。综合多种情况下考虑,我们设计了家庭清扫拾取机器人,来解决我们生活中的这些烦恼。

      以前传统的智能家居采用有线通讯方式传播,需要破坏墙体结构,凿壁布置线路,而且在墙外有密密麻麻的线头,有碍美观,需要专门的施工人员进行操作,施工周期较长,成本高;尤其当消费者看到有新的智能设备,想要更新升级时比较困难,需要重新破墙布线,而需要售后维修时难度更大,由于线路埋入墙壁,不能及时准确地检测出故障和修复,颇让人头疼。

      相比较而言,随着物联网技术进步,家庭智能服务机器人表现出明显的技术优势。主人只要拿着手机就能进行远程控制家居设备,就能过上懒人生活。让人满意的是,它不需要扒开墙壁,布置纷繁复杂的线路,外观简洁大方,只要具备初中以上学历,就可自行组合安装;自动组网,设备扩展性强;成本低,功耗低,符合现代家庭绿色生活理念。我们的家庭清扫拾取机器人可以成为每一个家庭的海螺姑娘,让每一个家庭更省心更省力节约时间,打扫效果好,让家庭清扫拾取机器人完成卫生工作。

5. 研究路线及解决的主要问题

研究路线:

      我们设计的家庭清扫拾取机器人,把清扫、拾物和监控功能巧妙地结合在一起,实现了一个家庭清扫拾取机器人服务终端。相对于市场上的家庭服务机器人,我们的机器人打扫卫生效果很好,可以代替人为清扫,更快捷更方便地完成家庭卫生工作;可以拾取到我们不方便拾取的物品,在平时生活中手机钥匙等物品可能会掉落床底等低矮阴暗的角落,不方便拾取;可以在家庭中随意走动,可以让用户监控到家庭中的每一个地方。

解决的主要问题

      ① 我们的家庭清扫拾取机器人功能齐全,可以完成清扫家庭的每一个角落,打扫卫生效果很好,可以代替人为清扫,更快捷更方便地完成家庭卫生工作。

      ② 可以拾取到我们不方便拾取的物品,在平时生活中手机钥匙等物品可能会掉落床底等低矮阴暗的角落,不方便拾取。这个时候我们的家庭清扫拾取机器人可以完美实现这些操作,更方便地为每一位家庭成员服务。

      ③ 同时替代了监控,可以实现对家庭24小时的监控能力。当你不在家的时候,想要关注家庭情况,可以启动我们的家庭清扫拾取机器人,同时家庭清扫拾取机器人可以在家庭中随意走动,可以让用户监控到家庭中的每一个地方。

同时我们维修十分简单,一旦出现了问题,我们可以很快地解决,让家庭清扫拾取机器人可以继续正常工作。

6. 项目创新及特色

      家庭清扫拾物机器人在家庭中都有着无法替代的优势,解决家庭中由于没有及时对这些阴暗低矮的地方进行清扫会导致的不干净与不整洁的问题;还有在平时生活中手机钥匙等物品可能会掉落床底等低矮阴暗的角落,不方便拾取等等问题。其优势体现在:

① 操作简单

      现在的家庭机器人操作十分简单,只要为家庭机器人充满电,即可开始工作。

② 省工省力

      在家庭中都希望存在着一位海螺姑娘,而正是家庭机器人的诞生,使得这一希望也逐渐成为现实,在家庭中放置一台家庭清扫机器人可以更加方便地帮助人们清扫家庭卫生,做到全面覆盖,更快捷地完成家庭卫生。

③ 打扫效果好

       如今的家庭机器人发展迅速,各种功能都得到了稳步提升,特别是在清扫效果方面,家庭机器人可以做到比人工更干净的程度,既方便又可以完美打扫好家庭卫生。

7. 项目综述

前期预研基础:通过现有的资料学习了嵌入式开发模块,同时经过市场调研确定了研究目标与方向,实现了家庭拾物机器人的实物。

自身具备的知识条件:熟练c++、python语言,同时学习过嵌入式开发。

项目实施的科学性:我们在家庭拾物机器人上安装了多个传感器,同时实现了蓝牙局域网连接手机终端连接家庭拾物机器人,可以实现清扫、拾物和监控等功能

创新性及技术可行性:与市场上常规的家庭机器人相比,我们有更多的实用性与更方便的操作性,可以迅速入手,开始为每一个家庭服务。

8. 项目实施方案

      在产品初期,我们会先使用资金生产我们的产品,同时选择几家信誉较好、推销能量较强和自己对口的批发商进行长时间的合作,这样前期我们可以不用花太多心思与精力投入到产品推销与宣传方面,先大规模生成产品后,我们再开始我们的用户体验计划,与我们的中间商建立良好的合作关系,让我们的产品可以适当的实现市场覆盖化。

      到了产品中期,我们的产品在市场中有了一定知名度的情况下,我们可以开始生产大规模家庭清扫拾取机器人投入到市场中,与各家企业进行竞争。同时我们可以利用广告对我们的产品再次进行宣传,现如今广告是面对所有人最方便知晓信息的一定媒介,可以向广大目标用户提供我们家庭清扫拾取机器人的优势与功能。现代广告不单单只是宣传我们的产品,而是一种双向沟通,即我们的产品可以让每一个家庭知晓的情况下,也可以收集大部分家庭对于我们家庭清扫拾取机器人的建议,让我们的家庭清扫拾取机器人知名度提高。

      产品后期,我们将继续开展我们的计划,为我们的产品进行宣传,大规模投入市场,实现大额盈利。在资金充足的情况下,我们可以通过大部分家庭的用户体验的基础上去对我们的家庭清扫拾取机器人功能方面进行逐一地优化与改善,让我们的家庭清扫拾取机器人可以更加完美,更加贴合每一个家庭中,充分实现我们家庭清扫拾取机器人的价值。

9. 项目预期成果

      前期我们先进行生产工作,生产出小规模的家庭清扫拾取机器人后,我们再开展用户体验计划,让每一个家庭都能够切身体会到我们家庭清扫拾取机器人的功能。然后再引入资金进行广告宣传工作,让我们的家庭清扫拾取机器人更快地被大部分家庭所认识。同时我们也会收集用户的体验与感想,在后期资金充足的情况下可以对我们的家庭清扫拾取机器人产品进行优化和改善,不断地增强我们家庭清扫拾取机器人地功能。

10. 示例程序

#include <Servo.h>

int _ABVAR_1_data = 0 ;

Servo servo_pin_3;

Servo servo_pin_7;

Servo servo_pin_4;

void tai();

void tingzhi();

void chan();

void qianjin();

void zidong();

void he();

void kai();

void zuozhuan();

void youzhuan();

void huotui();

void guo();

void setup()

{

  Serial.begin(9600);

  servo_pin_3.attach(3);

  pinMode( 5 , OUTPUT);

  pinMode( 6 , OUTPUT);

  pinMode( 9 , OUTPUT);

  pinMode( 10 , OUTPUT);

  servo_pin_7.attach(7);

  servo_pin_4.attach(4);

}

void loop()

{

  _ABVAR_1_data = Serial.parseInt() ;

  if (( ( _ABVAR_1_data ) == ( 0 ) ))

  {

    tingzhi();

  }

  if (( ( _ABVAR_1_data ) == ( 1 ) ))

  {

    qianjin();

  }

  if (( ( _ABVAR_1_data ) == ( 2 ) ))

  {

    huotui();

  }

  if (( ( _ABVAR_1_data ) == ( 3 ) ))

  {

    zuozhuan();

  }

  if (( ( _ABVAR_1_data ) == ( 4 ) ))

  {

    youzhuan();

  }

  while (( ( _ABVAR_1_data ) == ( 6 ) ))

  {

    zidong();

  }

  if (( ( _ABVAR_1_data ) == ( 8 ) ))

  {

    he();

  }

  if (( ( _ABVAR_1_data ) == ( 9 ) ))

  {

    kai();

  }

  if (( ( _ABVAR_1_data ) == ( 10 ) ))

  {

    tai();

  }

  if (( ( _ABVAR_1_data ) == ( 11 ) ))

  {

    chan();

  }

  if (( ( _ABVAR_1_data ) == ( 12 ) ))

  {

    guo();

  }

}

void chan()

{

  servo_pin_3.write( 91 );

}

void huotui()

{

  digitalWrite( 5 , LOW );

  digitalWrite( 6 , HIGH );

  digitalWrite( 9 , LOW );

  digitalWrite( 10 , HIGH );

}

void zuozhuan()

{

  digitalWrite( 5 , HIGH );

  digitalWrite( 6 , LOW );

  digitalWrite( 9 , LOW );

  digitalWrite( 10 , LOW );

}

void qianjin()

{

  digitalWrite( 5 , HIGH );

  digitalWrite( 9 , HIGH );

  digitalWrite( 6 , LOW );

  digitalWrite( 10 , LOW );

}

void tai()

{

  servo_pin_3.write( 131 );

}

void kai()

{

  servo_pin_7.write( 151 );

  servo_pin_4.write( 31 );

}

void zidong()

{

  int b=digitalRead(14);

  int a=digitalRead(18);

  servo_pin_4.write( 90 );

  servo_pin_7.write( 90 );

  servo_pin_4.write( 65 );

  servo_pin_7.write( 110 );

           if(a== LOW && b==LOW)

                {

                  qianjin();

                  delay(100);

                  youzhuan();

                  delay(100);

                  huotui();

                }

              else if(a== HIGH && b== LOW)

                {

                   youzhuan();

                   delay(100);

                   huotui();

                }

                 else if(a== LOW && b==HIGH)

                   {

                      zuozhuan();

                      delay(100);

                      huotui();

                   }

                else if(a==HIGH && b==HIGH)

                  {

                      huotui();

                   }

                   

}

void guo()

{

  servo_pin_3.write( 102 );

 

}

void tingzhi()

{

  digitalWrite( 5 , LOW );

  digitalWrite( 9 , LOW );

  digitalWrite( 6 , LOW );

  digitalWrite( 10 , LOW );

}

void youzhuan()

{

  digitalWrite( 5 , LOW );

  digitalWrite( 6 , LOW );

  digitalWrite( 9 , HIGH );

  digitalWrite( 10 , LOW );

}

void he()

{

  servo_pin_7.write( 91 );

  servo_pin_4.write( 91 );

}

 程序源代码及样机3D文件等资料详见 家庭清扫拾物机器人-作品说明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1049384.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计加速!11个Adobe XD插件推荐!

你是否一直在寻找可以提升 Adobe XD 工作流程和体验的方法&#xff1f;如果是&#xff0c;一定要试试这些 Adobe XD 插件&#xff01;本文将介绍 11 款好用的 Adobe XD 插件&#xff0c;这些插件可以为 UI/UX 设计添加很酷的新功能&#xff0c;极大提升你的工作效率和产出。让我…

Linux 常用基本命令

1.走近Linux系统 开机登录 开机会启动许多程序。它们在Windows叫做"服务"&#xff08;service&#xff09;&#xff0c;在Linux就叫做"守护进程"&#xff08;daemon&#xff09;。 关机 在linux领域内大多用在服务器上&#xff0c;很少遇到关机的操作。毕竟…

大模型深挖数据要素价值:算法、算力之后,存储载体价值凸显

文 | 智能相对论 作者 | 叶远风 18.8万亿美元&#xff0c;这是市场预计2030年AI推动智能经济可产生的价值总和&#xff0c;其中大模型带来的AI能力质变无疑成为重要的推动力量。 大模型浪潮下&#xff0c;业界对AI发展的三驾马车——算力、算法、数据任何一个维度的关注都到…

23 mysql index 查询

前言 这里主要是 探究一下 explain $sql 中各个 type 诸如 const, ref, range, index, all 的查询的影响, 以及一个初步的效率的判断 这里会调试源码来看一下 各个类型的查询 需要 lookUp 的记录 以及 相关的差异 此系列文章建议从 mysql const 查询 开始看 测试表结构…

ubuntu 20 安装 CUDA

1. 查看需要安装的cuda版本 nvidia-smi cuda的版本信息如下图所示 2. 去官网下载对应版本的CUDA 官网&#xff1a;CUDA Toolkit Archive | NVIDIA Developer 弹出以下界面&#xff0c;依次点击以下按钮 得到以下内容&#xff1a; 复制下载链接&#xff0c;下载cuda11到本…

适用于 ONLYOFFICE 的智谱 AI 插件现已发布

很高兴向您介绍智谱 AI 插件&#xff0c;现已在我们的插件市场上线&#xff01;它是开源之夏 (OSPP) 计划的成果&#xff0c;由专注投入的参与者林剑波同学开发。智谱 AI 实质上与 ChatGPT 插件功能相同&#xff0c;但它是为与中国的 AI 无缝协作而量身打造。 关于智谱 AI 这款…

Linux系统编程(1)

父子进程通过两个管道进行通信。 伪代码 #include <unistd.h> void client(int, int), server(int, int);int main(int argc, char** argv) {int pipe1[2], pipe2[2];pid_t childpid;Pipe(pipe1);Pipe(pipe2);if ((childpid Fork()) 0) {// childClose(pipe1[1]);Close…

LeetCode 盛最多水的容器 双指针

原题链接&#xff1a; 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 题面&#xff1a; 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与…

uni-app:canvas-绘制图形2

效果 代码 <template><view><!-- 创建了一个宽度为300像素&#xff0c;高度为200像素的canvas元素。canvas-id属性被设置为"firstCanvas"&#xff0c;可以用来在JavaScript中获取该canvas元素的上下文对象。 --><canvas style"width:200px…

NPDP和PMP证书有啥区别?建议考哪个?

最近分享了很多项目经理和产品经理的问题&#xff0c;有宝子疑问关于这两个职位最热门的证书——PMP和NPDP究竟有什么区别&#xff1f;如何判断自己应该选择哪个&#xff1f;今天胖圆从证书性质&#xff0c;适合人群以及相关考试信息来给大家解读一下&#xff0c;两者有什么不同…

魔兽世界安装插件后进游戏闪退的一个原因。

最近体验了几个私服的WOW&#xff0c;在找插件的时候&#xff0c;总是会遇到wow群里老哥问一个经典的插件问题&#xff0c;进游戏后提示The user interface is using more than 48MB of memory.Set Script Memory to 0 in the character selection screen;然后有个倒计时&#…

(windows10)设置环境变量简化EVOSUITE的运行

对于可执行的jar evosuite-1.1.0.jar&#xff0c;可以在命令行使用jave -jar执行它 然而&#xff0c;每次进入到jar包所在的目录&#xff0c;有点繁琐&#xff0c;这个命令看上去也有点点长。 那么我们可以设置环境变量EVOSUITE来取代这个命令&#xff0c;也即 set EVOSUITEja…

飞致云开源社区月度动态报告(2023年9月)

自2023年6月起&#xff0c;中国领先的开源软件公司FIT2CLOUD飞致云以月度为单位发布《飞致云开源社区月度动态报告》&#xff0c;旨在向广大社区用户同步飞致云旗下系列开源软件的发展情况&#xff0c;以及当月主要的产品新版本发布、社区运营成果等相关信息。 飞致云开源大屏…

顺序读写函数的介绍:fread fwrite

目录 函数介绍&#xff1a; fwrite&#xff1a; 参数说明&#xff1a; 函数大意&#xff1a; 举例&#xff1a; 文件效果&#xff1a; fread&#xff1a; 函数大意&#xff1a; 举例&#xff1a; 结果展示&#xff1a; 函数介绍&#xff1a; fwrite&#xff1a; 参数说明…

基于SSM+Vue的开放式教学评价管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

美美游玩规划

2023年的国庆 游玩规划&#xff1a; 时间安排是9月29日到10月2日上午&#xff1b; 可以有三个整天加一个上午&#xff0c;上午可以去一个近一点的地方&#xff1b; 可能要去的景点&#xff1a; 天安门广场、颐和园、西单购物中心、故宫、天坛公园、 毛主席纪念堂&#xff08;2…

Python大数据之Python进阶(一)介绍

课程介绍 数据埋点本质上就是进行数据采集&#xff0c;数据埋点是对自身业务数据进行采集。要进行数据埋点就要了解我们的业务程序的开发流程&#xff0c;知道整个数据的传递过程&#xff0c;这样能让我们更加明确数据分析的业务需求&#xff0c;有利于数据埋点的准确性。 在…

小程序如何设置余额充值

在小程序中设置余额充值是一种非常有效的方式&#xff0c;可以帮助商家吸引更多的会员并提高用户的消费频率。下面将介绍如何在小程序中设置余额充值并使用。 第一步&#xff1a;创建充值方案 在小程序管理员后台->营销管理->余额充值页面&#xff0c;添加充值方案。可…

“就地拼柜”与“海外仓”:跨境电商的黄金组合

跨境电商行业一直在迅速发展&#xff0c;消费者可以轻松地在世界各地购买商品&#xff0c;而企业也可以触及全球市场。然而&#xff0c;随着全球市场的扩大&#xff0c;供应链和物流管理变得更加复杂。 在这个背景下&#xff0c;"就地拼柜"和"海外仓"等新…

leetcode(翻转二叉树)

个人主页:Lei宝啊 愿所有美好如期而遇 目录 题目&#xff1a; 思路&#xff1a; 代码&#xff1a; 图解&#xff1a; 题目&#xff1a; 给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 思路&#xff1a; 二叉树翻转&#xff0c;无…