玩转硬件之Micro:bit的玩法(五)——垃圾分类

垃圾分类,为了美好的明天

垃圾是我们生活中不可避免的产物,每天都有大量的垃圾被丢弃,如果不加以处理,就会给环境和人类带来严重的危害。 垃圾分类是一种有效的垃圾管理方式,它是指按照一定的标准或规则,将垃圾分成不同的类别,进行储存、投放、收运和处理,从而实现垃圾的减量化、资源化和无害化的目的。 垃圾分类不仅可以保护环境,节约资源,提高经济效益,还可以培养人们的环保意识,提高社会文明程度,为建设美好的明天做出贡献。

垃圾分类的意义

垃圾分类的意义主要体现在以下几个方面:

- 保护环境。

垃圾如果不进行分类,就会混杂在一起,造成垃圾处理的难度和成本增加,同时也会增加垃圾的污染程度,对土壤、水源、空气等造成破坏,影响人类的健康和生态的平衡。 垃圾分类可以有效地减少垃圾的数量和危害,降低垃圾处理的压力,减少垃圾填埋和焚烧的需求,减少温室气体的排放,改善环境质量,保障人类的生存环境。 


- 节约资源。

垃圾中有很多是可以回收利用的,如废纸、塑料、玻璃、金属等,这些都是有价值的资源,如果不进行分类,就会被当作无用的垃圾处理掉,造成资源的浪费和损失。 垃圾分类可以有效地回收利用这些资源,减少对原材料的需求,节约能源,降低生产成本,提高经济效益,促进循环经济的发展。


- 培养意识。

垃圾分类是一种环保的生活方式,它需要人们从日常生活中做起,养成良好的垃圾分类习惯,提高垃圾分类的自觉性和主动性,增强环保意识和责任感,树立节约资源、保护环境的价值观,形成一种文明的社会风尚,促进社会的和谐与进步。

垃圾分类的方法

现在小区里随处可见的分类垃圾桶,但是我们其实还没有养成良好的垃圾分类习惯。如果给我们一个智能垃圾桶,当你靠近垃圾桶时,它会自动打开,你只需要把垃圾放进去就行了,你会喜欢这样的垃圾桶吗?你会乐意把垃圾放进垃圾桶吗?

这是一种基于Micro:bit实现的可自动开合的垃圾桶,我们一起看一下如何实现吧!

接线方式:

使用舵机型号SG90 经典舵机180度,按上图绑扎一个木制支架,同时借助Micro:bit小车的扩展板超声波模块,舵机接线插入J3,如下图所示:

代码实现:

1. 当开机时,设定舵机角度为0度,同时加入一个欢迎界面。

2. 设定循环,当超声波感应到物体接近时,设定舵机角度为90度,同时给一个音乐,表示打开垃圾桶盖,并放入垃圾。同时给定一个延时,设定足够放入垃圾的时间。

3. 否则设定舵机角度为0度,关闭垃圾桶盖。

代码展示

1. python代码

basic.show_icon(IconNames.HAPPY)
mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 0)def on_forever():if mbit_传感器类.ultrasonic(DigitalPin.P14, DigitalPin.P15) < 15:mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 90)music.play(music.builtin_playable_sound_effect(soundExpression.happy),music.PlaybackMode.UNTIL_DONE)basic.pause(5000)else:mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 0)
basic.forever(on_forever)

2. Javascript代码

basic.showIcon(IconNames.Happy)
mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 0)
basic.forever(function on_forever() {if (mbit_传感器类.Ultrasonic(DigitalPin.P14, DigitalPin.P15) < 15) {mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 90)music.play(music.builtinPlayableSoundEffect(soundExpression.happy), music.PlaybackMode.UntilDone)basic.pause(5000)} else {mbit_小车类.Servo_Car(mbit_小车类.enServo.S2, 0)}})

垃圾分类,从我做起,从现在做起,让我们一起为了美好的明天,做出我们的贡献吧!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机组成原理之概述

概述 计组主要讲的是计算机的硬件实现方式。 机器字长 比如8080处理器&#xff0c;如果想处理16位数的整数运算&#xff0c;就需要执行两次。 可见&#xff0c;机器字长会影响到数据的处理速度。 计算机硬件的基本组成 早期的冯诺依曼机 冯诺依曼提出了“存储程序”的概念&…

Socket网络编程

本文主要讲解Socket网络编程。 首先介绍socket&#xff0c;包括TCP和UDP通信过程&#xff1b;然后介绍常用的函数&#xff1b;最后编写client-server例子&#xff0c;并进行测试。 文章目录 Socket介绍TCP通信过程服务器端通信过程&#xff1a;客户端通信过程&#xff1a; UDP通…

智慧工地源码:助力数字建造、智慧建造、安全建造、绿色建造

智慧工地围绕建设过程管理&#xff0c;建设项目与智能生产、科学管理建设项目信息生态系统集成在一起&#xff0c;该数据在虚拟现实环境中&#xff0c;将物联网收集的工程信息用于数据挖掘和分析&#xff0c;提供过程趋势预测和专家计划&#xff0c;实现工程建设的智能化管理&a…

Golang源码分析 | 程序引导过程

环境说明 CentOS Linux release 7.2 (Final&#xff09; go version go1.16.3 linux/amd64 GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-80.el7使用gdb查看程序入口 编写一个简单的go程序 // main.go package mainfunc main() {print("Hello world") } 编译go …

假冒 Skype 应用程序网络钓鱼分析

参考链接: https://slowmist.medium.com/fake-skype-app-phishing-analysis-35c1dc8bc515 背景 在Web3世界中&#xff0c;涉及假冒应用程序的网络钓鱼事件相当频繁。慢雾安全团队此前曾发表过分析此类网络钓鱼案例的文章。由于Google Play在中国无法访问&#xff0c;许多用户…

K8S知识点(十)

&#xff08;1&#xff09;Pod详解-启动命令 创建Pod&#xff0c;里面的两个容器都正常运行 &#xff08;2&#xff09;Pod详解-环境变量 &#xff08;3&#xff09;Pod详解-端口设置 &#xff08;4&#xff09;Pod详解-资源配额 修改&#xff1a;memory 不满足条件是不能正常…

Django之三板斧的使用,全局配置文件介绍,request对象方法,pycharm链接数据库,Django链接数据库,ORM的增删改查

【1】三板斧(3个方法)的使用 Httpresponse() 括号内写什么字符串&#xff0c;返回的就是什么字符串返回的是字符串 render(request&#xff0c; 静态文件 ) request是固定的静态文件是写在templates文件夹里面的&#xff0c;如&#xff0c;HTML文件 redirect( 重定向的地址 ) 重…

Hadoop原理,HDFS架构,MapReduce原理

Hadoop原理&#xff0c;HDFS架构&#xff0c;MapReduce原理 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人&#xff0c;可能很多算法学生都得去找开发&#xff0c;测开 测开的话&#xff0c;你就得学数据库&#xff0c;sql&#xff0c…

LeetCode刷题总结(一)

文章目录 前言题型排序问题动态规划 前言 本文把刷题过程中的总结记下来&#xff0c;方便未来回顾的时候继续拓展。 题型 排序问题 排序问题的解决方法有很多。对于简单算法来说&#xff0c;最重要的是记住思路&#xff1b;对于高级算法来说&#xff0c;最重要的是记住细节…

利用LangChain实现RAG

检索增强生成&#xff08;Retrieval-Augmented Generation, RAG&#xff09;结合了搜寻检索生成能力和自然语言处理架构&#xff0c;透过这个架构&#xff0c;模型可以从外部知识库搜寻相关信息&#xff0c;然后使用这些信息来生成response。要完成检索增强生成主要包含四个步骤…

2023亚太杯数学建模A题思路

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料5 最后 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 2023年第十三…

【中间件篇-Redis缓存数据库08】Redis设计、实现、redisobject对象设计、多线程、缓存淘汰算法

Redis的设计、实现 数据结构和内部编码 type命令实际返回的就是当前键的数据结构类型&#xff0c;它们分别是&#xff1a;string(字符串)hash(哈希)、list(列表)、set(集合)、zset (有序集合)&#xff0c;但这些只是Redis对外的数据结构。 实际上每种数据结构都有自己底层的…

【DP】背包问题全解

一.简介 DP&#xff08;动态规划&#xff09;背包问题是一个经典的组合优化问题&#xff0c;通常用来解决资源分配的问题&#xff0c;如货物装载、投资组合优化等。问题的核心思想是在有限的资源约束下&#xff0c;选择一组物品以最大化某种价值指标&#xff0c;通常是总价值或…

【Java 进阶篇】Java与JQuery选择器:解锁前端开发的魔法大门

在前端开发的世界中&#xff0c;选择器是我们与HTML文档进行互动的钥匙&#xff0c;而Java和JQuery则为我们提供了强大的工具&#xff0c;使得前端开发不再是一个艰深的谜题。本篇博客将围绕Java与JQuery选择器展开&#xff0c;深入解析选择器的奥秘&#xff0c;为你打开前端开…

Qt文档阅读笔记-Fetch More Example解析

Fetch More Example这个例子说明了如何在视图模型上添加记录。 这个例子由一个对话框组成&#xff0c;在Directory的输入框中&#xff0c;可输入路径信息。应用程序会载入路径信息的文件信息等。不需要按回车键就能搜索。 当有大量数据时&#xff0c;需要对视图模型进行批量增…

宝塔开心版hostcli的广告去除

首先感谢hostcli把宝塔7.6剥离了&#xff0c;直接安装我这里是缺少pyenv的包。 直接进入正题吧。 定位到页面左下方的广告位于 /www/server/panel/BTPanel/templates/default/layout.html “退出”按钮下方有条线开始去掉 去掉之前的忘了截图了&#xff0c;就这样吧&#xff…

《QT从基础到进阶·十七》QCursor鼠标的不同位置坐标获取

一些常用鼠标图形&#xff1a; 鼠标光标相对于整个电脑屏幕的位置&#xff1a;QCursor::pos() 当前光标相对于当前窗口的位置&#xff1a;this->mapFromGlobal(QCursor::pos()) void MainWindow::mouseReleaseEvent(QMouseEvent* event) {QPoint pos event->pos(); …

06-解决Spirng中的循环依赖问题

Bean的循环依赖问题 循环依赖: A对象中有B属性 , B对象中有A属性(丈夫类Husband中有Wife的引用, 妻子类Wife中有Husband的引用) toString()方法重写时直接输出wife/husband会出现递归导致的栈内存溢出错误 直接输出wife/husband会调用它们的toString()方法, 在toString()方法…

Spring的Redis客户端

如何在Spring中操作redis 在创建springboot项目的时候引入redis的依赖. 在配置文件里指定redis主机的地址和端口,此处我们配置了ssh隧道,所以连接的就是本机的8888端口. 创建一个controller类,注入操作redis的对象. 前面使用jedis,是通过jedis对象里的各种方法来操作redis的,此…

在任何机器人上实施 ROS 导航堆栈的指南

文章目录 路径规划参考 路径规划 路径规划是导航的最终目标。这允许用户向机器人给出目标姿势&#xff0c;并让它在给定的环境中自主地从当前位置导航到目标位置。这是我们迄今为止所做的一切&#xff08;地图绘制和本地化&#xff09;的汇集点。ROS 导航堆栈已经为我们完成了…