亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino Trash-Bot(自动打开/关闭垃圾箱)

组件和用品

Arduino UNO
× 1
超声波传感器 - HC-SR04(通用)
× 1
舵机(Tower Pro MG996R)
× 1
UTSOURCE 电子零件
× 1

应用和在线服务

Arduino IDE

关于这个项目

一切都变得更智能了,对吧?那为什么不是你的垃圾桶呢?如果它看到前面有任何垃圾,这个垃圾桶就会打开和关闭盖子。你只需要把垃圾带到它那里,它会自动打开,并会等待你喂它更多,然后在一定的延迟后它会自动关闭。观看视频,看看它到底能做什么。

让我们开始吧。

第 1 步:组件

(另外 2 张图片)

  • Arduino Uno(任何板)
  • 伺服电机(我使用的是微型伺服 sg90)
  • HCSR04 超声波传感器
  • 舵机臂(图 2 中的舵机旁边)
  • 纸板(只是切片)
  • 垃圾桶

第 2 步:构建电路

电路就是这么简单。由于伺服和声纳只需要较少的功率,您可以直接从 Arduino 5v 电源为它们供电。请记住使用超过 7.4 V DC 或至少 7v 的电压为 Arduino 供电。

  • 伺服数据(黄色)到 arduino 的第 3 针
  • 伺服 vcc(红色)到 Arduino 的 5v
  • 伺服接地(黑色/灰色)到 Arduino Gnd
  • 声纳传感器触发到 Arduino 6
  • 声纳传感器回波到 Arduino 5
  • Vcc 到 Arduino 5v
  • 接地到 Arduino 接地

第三步:连接伺服臂

只需将这个伺服臂用热胶或其他胶水连接到一个长纸板。您也可以使用冰淇淋棒代替纸板。然后将长伺服臂连接到伺服电机。

第 4 步:将伺服和声纳传感器添加到垃圾箱

像这样将声纳传感器面朝上连接到垃圾箱。然后在图2和图3上添加这样的伺服电机,使舵机可以向上旋转。

第 5 步:代码

代码链接:https://github.com/ashraf-minhaj/Trash-bot

我已经对 Arduino 进行了编程,这样如果它在 50 厘米范围内看到任何垃圾(实际上是任何东西),伺服器就会转至 50 度并撞击垃圾箱的上盖,以便打开上盖,等待三秒钟,然后自动旋转到 160 度,从而关闭上盖。所以现在你看到了一个自动打开/关闭垃圾机器人。

#include伺服舵机;int const trigPin =6;int const echoPin =5;void setup(){pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);伺服.attach(3);}void loop(){ int持续时间,距离;digitalWrite(trigPin,HIGH); delay(1);digitalWrite(trigPin, LOW);// 在 echo pinduration =pulseIn(echoPin, HIGH) 中测量脉冲输入;// 距离是持续时间的一半除以 29.1(来自数据表)距离 =(duration/2) / 29.1;// 如果距离小于 0.5 米且大于 0(0 或更小表示超出范围) if (distance <=50 &&distance>=0) {servo.write(50);延迟(3000);}其他{伺服.写(160);} 

第 6 步:完成

所以现在只要用超过 7v 的电压给 Arduino 供电,你就有了一个垃圾桶机器人。

谢谢。

[如果你喜欢我的作品,请订阅我的 YouTube 频道来支持我]

代码

  • arduino 垃圾机器人代码
arduino 垃圾机器人代码C/C++
#include伺服伺服;int const trigPin =6;int const echoPin =5;void setup(){pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);伺服.attach(3);}void loop(){ int持续时间,距离;digitalWrite(trigPin,HIGH); delay(1);digitalWrite(trigPin, LOW);// 在 echo pinduration =pulseIn(echoPin, HIGH) 中测量脉冲输入;// 距离是持续时间的一半除以 29.1(来自数据表)距离 =(duration/2) / 29.1;// 如果距离小于 0.5 米且大于 0(0 或更小表示超出范围) if (distance <=50 &&distance>=0) {servo.write(50); delay(3000);} else {servo.write(160);}// 等待 60 ms 不会伤害任何 onedelay(60);}

示意图

arduino 垃圾机器人代码
https://github.com/ashraf-minhaj/Trash-bot

制造工艺

  1. 垃圾车
  2. 智能垃圾桶
  3. Arduino Spybot
  4. FlickMote
  5. 自制电视 B-Gone
  6. 主时钟
  7. 带伺服电机的机器人避障
  8. 找到我
  9. Arduino Power
  10. Tech-TicTacToe
  11. Arduino Quadruped
  12. 使用 Arduino 和 MPU6050 控制伺服电机