【雕爷学编程】Arduino动手做(184)---快餐盒盖,极低成本搭建机器人实验平台2

news2024/11/15 4:42:46

吃完快餐粥,除了粥的味道不错之外,我对个快餐盒的圆盖子产生了兴趣,能否做个极低成本的简易机器人呢?也许只需要二十元左右

在这里插入图片描述

知识点:轮子(wheel)

中国词语。是用不同材料制成的圆形滚动物体。简单来说,它包括轮子的外圈、与外圈相连接的辐条和中心轴。透过滚动,轮子可以大大的减少与接触面的磨擦系数。如果配上轴,即成为车的最主要构成部份。轮子在交通运输中非常有用,是人类的重要发明之一。除了车轮以外,其他圆形的轮还有船轮、飞轮等等。

任何简单而意义深远的发明都不是凭空出现在人们的脑海中的,必然有什么现象触发了灵感。正如古人见到水里漂着的木头而想到独木舟一样,车轮的发明也可能是受到了一些自然物的启发。《淮南子》中说我们的祖先“见飞蓬转而知为车”。“飞蓬”是一种草,其茎高尺许,叶片大,根系入土浅。一有大风,很容易被连根拔起,随风旋转。古人可能就是受到这个现象的启发,发明了车轮和车轴。与鲁班受锯齿草的启发而发明锯子的传说一样,这种说法很可能也是一个传说而已。因为轮子在自然界是有原型的。原始民族曾经普遍地崇拜过天空中的日月。古人一定认为它们拥有最完美的外形——直到古希腊时代,哲学家柏拉图也还认为球体是最完美的形式。也许新石器时代的先民在制作器具时很自然地会模仿太阳和月亮的形状。当他们偶然发现制成的圆盘状物体可以在转动中保持形状不变时,他们就有兴趣进一步发掘它的用途。

在掌握锋利而坚固的工具以前,人类是不可能拥有轮式车辆的。用石器工具难以将木头加工成合适的圆柱形,更不必说复杂到带辐条的轮子了。所以,车轮的出现只能是青铜时代以后的事情。

据英国科学史家李约瑟考证的结论,约在四千五百年到三千五百年前,中国出现了第一辆车子。而《左传》中提到,车是夏代初年的奚仲发明的,如果记载属实,那是四千年前的事情。在殷代(距今三千多年前)文物中,考古学家也发现了殉葬用的车,当时的车子由车厢、车辕和两个轮子构成,已经是比较成熟的交通工具了。中国古代有传说是轩辕黄帝把木头插在圆轮子中央,使它运转,因而造成车辆。但鉴于归功于黄帝的发明实在太多,我们也不能轻易把这个说法当真。

以埃及的战车为例。这些战车具有带辐条的车轮,轮上装有坚固的箍,并且车轮用锲子紧紧钉在轴上。车厢、车辕和两副挽具证明了同样的技术。如果我们想从在埃及战车或罗马战车的创造者那里所看到的那种精细活计探求人类发明带轮车的过程,那是没有什么益处的。但是,常常有这种情况:能够找到一些制作粗糙的物品,而这些物品就好像是技术之早期阶段的再现。古代最简陋的乡村大车,用两个几乎一英尺厚的圆形木作车轮,是用横断的树干做成的,同时,这些圆形物,或者叫车轮,不是在轴上旋转,而是固定在轴上。车轴安放在特制的木框内,或者是在两块窄木板内,或者是穿在车底上的环孔里,同它的一对轮子一起转动,就像小孩儿的玩具车那样。有趣的是,在条件已经改变的情况下,铁路车辆的制造者们又恢复了这种构造。

在像葡萄牙这样一些国家里,现今还可以看到轴和车轮一起转动的古典车子。于是可以设想:类似的大车说明,带轮的车是怎样发明的。最初用的是轴,或滚子,是用它们来滚动大石头或其他巨大的重物。我们可以想象,用光滑的树干或圆木做的这类滚子,起初是这样完成的:把它的中间部分削细一些。于是,它就变成了一个两端带着宽圆滚的轴。我们猜想,轴是处在某一种最简陋的梁木架下,并在架下转动的。于是我们就有了一辆最简单的想象中的带轮车。完全可能,类似关于车的第一个概念出现之后,轮就开始单独制造,并把它固定在一个活动的轴上,装上了轮箍。后来,有了轻便的车轮和光滑的轮座,于是车轮就在不动的轴上转动了。当然,所有这些,无非是一种想象,但是,无论如何,它使我们的头脑完全清楚了车的本质。

在这里插入图片描述

安装好四个N20小电机,希望以此作为一个简单的实验平台,试试各种不同的运动方式

在这里插入图片描述

二套电源系统(3.7V升压为5V),二个电机驱动模块MX1508,Arduino nano

在这里插入图片描述

快餐盒盖的空间有点小

在这里插入图片描述

双只大圆轮的动态图

在这里插入图片描述

四只大圆轮

在这里插入图片描述

【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台(四只大圆轮的视频)

https://v.youku.com/v_show/id_XNTA4MDA0MTgwMA==.html?spm=a2hzp.8244740.0.0

在这里插入图片描述

四只大圆轮的动态图

在这里插入图片描述

第四种,棒轮

收集的不同规格的雪糕棒

在这里插入图片描述
安装好四根小规格的雪糕棒

在这里插入图片描述

【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台(棒轮的视频)
第四种,棒轮(也叫拨轮)

https://v.youku.com/v_show/id_XNTA4MzgxMjM2MA==.html?spm=a2hzp.8244740.0.0

在这里插入图片描述

四只棒轮的动态图

在这里插入图片描述

使用四只棒轮的简易机器人实验平台

在这里插入图片描述

第五种,大平轮

使用二只快餐盒盖,从侧面安装

在这里插入图片描述

【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台(大平轮的视频)

https://v.youku.com/v_show/id_XNTA4NzM5ODg4NA==.html?spm=a2hzp.8244740.0.0

在这里插入图片描述

大平轮的动态图

在这里插入图片描述

四个盒盖做的大平轮子

在这里插入图片描述

【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台(四个大平轮的视频)

https://v.youku.com/v_show/id_XNTA5NzM0MjA0OA==.html?spm=a2hzp.8244740.0.0

在这里插入图片描述
四个大平轮的动态图

在这里插入图片描述

三个盒盖做的大平轮子

在这里插入图片描述

【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台(三个大平轮的视频)

https://v.youku.com/v_show/id_XNTA5OTkyNDY2MA==.html?spm=a2hzp.8244740.0.0

在这里插入图片描述
三个大平轮的动态图

在这里插入图片描述

第五种,环轮(空心轮子)

家里装修,找到四个用完的双面胶的纸轴

在这里插入图片描述

第一次四个环轮都装上了

在这里插入图片描述
后来一想可能不对,轮子太大会打架(尺子一量确会卡住),于是只好又拆了二个,变成这样

在这里插入图片描述
【花雕动手做】快餐盒盖,极低成本搭建机器人实验平台
第五种,双环轮(空心轮子)的行走方式

https://v.youku.com/v_show/id_XNTEwMDQ1NjA0NA==.html?spm=a2hzp.8244740.0.0

双环轮(空心轮子)的行走方式的动态图

在这里插入图片描述

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

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

相关文章

JDK17环境下安装Nacos

1.配置好jdk17环境 命令台java -version显示17版本 2.下载并安装Nacos 下载地址:Releases alibaba/nacos GitHub 安装完本地解压 解压完到nacos的bin目录下,执行.\startup.cmd -m standalone启动即可。 用过好几种方式,比如启动startup…

一百四十五、Kettle——查看Kettle在Windows本地和在Linux上生成的.kettle文件夹位置

(一)目的 查看kettle连数据库后自动生成的.kettle文件夹在Windows本地和在Linux中的位置, 这个文件很重要!!! (二).kettle文件夹在Windows本地的位置 C:\Users\Administrator\.k…

ClickHouse SQL与引擎--基本使用(一)

1.查看所有的数据库 show databases; 2.创建库 CREATE DATABASE zabbix ENGINE Ordinary; ATTACH DATABASE ck_test ENGINE Ordinary;3.创建本地表 CREATE TABLE IF NOT EXISTS test01(id UInt64,name String,time UInt64,age UInt8,flag UInt8 ) ENGINE MergeTree PARTI…

英特尔傲腾CAS报错unknown error cache acceleration software could not start cache

英特尔傲腾CAS报错unknown error cache acceleration software could not start cache 文章目录 英特尔傲腾CAS报错unknown error cache acceleration software could not start cache我是怎么遇到这个问题的我是如何解决的实验步骤打Primo Cache蓝屏补丁拔掉原来的系统盘开关机…

【力扣】21. 合并两个有序链表 <链表指针>

【力扣】21. 合并两个有序链表 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例1 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4] 示例 2 输入:l1 [], l2 [] 输出:…

Java List(列表)

List 是一个有序、可重复的集合,集合中每个元素都有其对应的顺序索引。List 集合允许使用重复元素,可以通过索引来访问指定位置的集合元素。List 集合默认按元素的添加顺序设置元素的索引,第一个添加到 List 集合中的元素的索引为 0&#xff…

如何从 Android 设备恢复已删除的文件?

从 Android 设备恢复已删除的文件很简单,但您需要了解内部恢复和SD 卡恢复之间的区别。 目前销售的大多数 Android 设备都配备了 SD 卡插槽(通常为 microSD),可以轻松添加额外的存储空间。该存储空间可用于存储照片、视频、文档&a…

机器学习概述及其主要算法

目录 1、什么是机器学习 2、数据集 2.1、结构 3、算法分类 4、算法简介 4.1、K-近邻算法 4.2、贝叶斯分类 4.3、决策树和随机森林 4.4、逻辑回归 4.5、神经网络 4.6、线性回归 4.7、岭回归 4.8、K-means 5、机器学习开发流程 6、学习框架 1、什么是机器学习 机器…

SprinMVC获取请求参数

SprinMVC获取请求参数 Spring MVC 提供的获取请求参数的方式 通过 HttpServletRequest 获取请求参数通过控制器方法的形参获取请求参数使用 RequestParam 注解获取请求参数通过实体类对象获取请求参数(推荐) 通过ServlstAPI获取 将HttpServletRequest…

Qt开发,去掉Qt生成动态库的版本号

一、问题描述 1、Qt在生成动态库时,于Mac下默认生成带版本号的库,于Windows下默认生成不带版本号的库。 二、问题分析 生成带完整版本号的库文件及相关软链接 三、解决方案 以插件方式生成动态库,在.pro文件中添加以下配置参数 CONFIG …

C高级【day3】

思维导图: 判断家目录下,普通文件的个数和目录文件的个数: #!/bin/bashvar1(ls -l ~/ | cut -d r -f 1 | grep -i -) var2(ls -l ~/ | cut -d r -f 1 | grep -i d) #echo ${var1[*]} #echo ${var2[*]}echo 普通文件个数:${#var…

vue2-$nextTick有什么作用?

1、$nextTick是什么? 官方定义:在下次DOM更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的DOM。 解释:Vue在更新DOM时是异步执行的,当数据发生变化时,Vue将开启一个异步更新的队…

Linux学习之正则表达式元字符和grep命令

cat /etc/redhat-release看到操作系统的版本是CentOS Linux release 7.6.1810 (Core),uname -r可以看到内核版本是3.10.0-957.21.3.el7.x86_64。 正则表达式是一种搜索字符串的模式,通俗点理解,也就是普通字符和元字符共同组成的字符集合匹…

(四)Node.js - npm与包

1. 什么是包 Node.js中的第三方模块又叫做包。 不同于Node.js中的内置模块与自定义模块,包是由第三方个人或团队开发出来的,免费供所有人使用。 由于Node.js的内置模块进提供了一些底层的API,导致在基于内置模块进行项目开发时&#xff0c…

无涯教程-Perl - foreach 语句函数

foreach 循环遍历列表值,并将控制变量(var)依次设置为列表的每个元素- foreach - 语法 Perl编程语言中的 foreach 循环的语法是- foreach var (list) { ... } foreach - 流程图 foreach - 示例 #!/usr/local/bin/perllist(2, 20, 30, 40, 50);# foreach loop ex…

6.3 填充和步幅

一.填充 1.作用: 为了防止丢失边缘像素。如240x240的像素图像,经过10层5x5卷积,根据输出形状计算公式 (w-k1) x (h-k1)计算出输出形状变成了200x200。 2.方法: 最常用的方法是填充0。如下: 3.公式:计算填充原图像…

分布式系统:ACID与CAP

ACID: 在计算机科学中,ACID是数据库事务的一组特性,旨在保证数据的有效性,即使在出现错误、断电和其他意外情况下也能保持数据的一致性。在数据库的上下文中,满足ACID属性的一系列数据库操作(可以被视为对数据的单一逻…

基于C#的应用程序单例唯一运行的完美解决方案 - 开源研究系列文章

今次介绍一个应用程序单例唯一运行方案的代码。 我们知道,有些应用程序在操作系统中需要单例唯一运行,因为程序多开的话会对程序运行效果有影响,最基本的例子就是打印机,只能运行一个实例。这里将笔者单例运行的代码共享出来&…

kubernetes基于helm部署gitlab-runner

kubernetes基于helm部署gitlab-runner 这篇博文介绍如何在 Kubernetes 中使用helm部署 GitLab-runner。 先决条件: 已运行的 Kubernetes 集群已运行的 gitlab 实例 项目地址:https://gitlab.com/gitlab-org/charts/gitlab-runner 官方文档&#xff…

【Spring】Spring AOP 初识及实现原理解析

博主简介:想进大厂的打工人博主主页:xyk:所属专栏: JavaEE进阶 目录 文章目录 一、初识AOP 1.1 什么是AOP? 1.2 AOP的组成 1.2.1 切面(Aspect) 1.2.2 切点(Pointcut) 1.2.3 连接点&…