资料介绍
描述
嘿伙计们,欢迎来到我的第一篇教程文章。所以今天我们要制作一个“使用 Arduino nano 的人类跟随机器人”似乎很有趣对吧?
先给大家介绍一下这款机器人的主要工作原理:
该人类追随者将拥有一个超声波传感器,该传感器将作为跟踪前方物体的媒介。我们将以这种方式对 arduino nano 进行编码,当一个物体靠近超声波传感器并且它的距离小于 5 厘米时,它会向后移动,如果它超过 10 厘米且小于 20 厘米,它就会向前移动超过 20 厘米和不到 25 厘米,比它会向左等等......
如果你还没有理解它的工作原理,那么看看整个教程你可能会理解它......
主要特征:
~ 项目中使用的物品/装备很容易获得。
~ 低成本项目。
~ 没有多少复杂的电路。
~ 学习 AI 的最佳范例。
所以让我们开始这个项目:-)
第 1 步:制作项目所需的物品:
第 2 步:制作 Chassy :
~ 所以为了制作 chassy,我使用了一块 10*14 厘米的纸板。
~ 然后我们需要一个齿轮马达 4 件。
~ 我们将使用热胶枪将电机粘在纸板上。
〜我们进入电机的接线,接线将这样我们将横向焊接同一侧的电线。如上图所示。
~ 我们需要一个橡胶轮(4 个)用于电机。
〜然后我们的chassy就准备好了。
让我们进入下一步...
第 3 步:将电机驱动器与底盘连接:
~ 在这里,我们将使用 L298N 电机驱动器。
~ 在胶水的帮助下将电机驱动器固定在机箱的背面。如图所示。
~ 然后你需要将电机线连接到电机驱动器的电机端子上。
这就是使 chassy 功能化所需要做的一切。
第4步:制作电路,然后将其转换为PCB。
在这个项目中,我使用定制设计的电路板来提供更专业的触感。所以我选择了 JLCPCB 来设计和订购这个项目的定制设计的 PCB。
格柏文件:网址
关于JLCPCB
JLCPCB (深圳市佳立创电子科技发展有限公司),是国内最大的PCB样机企业,是专业从事PCB快速样机和小批量PCB生产的高科技制造商。JLCPCB拥有超过14年的PCB制造经验,在国内外拥有超过200,000家客户,每天有超过8,000个PCB原型和小批量PCB生产的在线订单。年生产能力为200, 000平方米。对于各种1层,2层或多层PCB,现在还以非常低的成本提供SMT和STENCILS服务。JLC是一家规模大、设备精良、管理严格、质量上乘的专业PCB制造商。
我们这边的特别优惠:-)
1-4 层 PCB 2 美元,注册可获得 18 美元新用户优惠券:JLCPCB优惠券代码:- JLCPCBcom
我是如何制作 Gerber 文件的:
EASYEDA是一款免费且易于使用的电路设计、电路模拟器和 pcb 设计,可在您的网络浏览器中运行。
第 5 步:安装 Arduino 和电机驱动器
7 天后,我从JLCPCB获得了 10 块高质量 PCB 。然后我将所有的头针安装到里面并焊接起来。
~ 现在是时候将 Arduino nano 与 PCB 一起安装,并在组件和 PCB 之间建立所有必要的连接。
〜首先我们将在电机驱动器和Arduino之间建立连接。
带有 Arduino 引脚的电机驱动器引脚:
IN1 至 D5
IN2 至 D4
IN3 至 D3
IN4 到 D2
enA 到 D6
enB 到 D7
〜所以我们需要做的就是电机驱动器引脚......
第 6 步:安装传感器、伺服等...
在这部分中,我们将需要超声波传感器、其支架、伺服电机...
〜首先我们将伺服与底盘粘在一起。
~ 然后我们将使用超声波传感器及其支架。
~ 然后我们将超声波传感器放入支架中。
~ 之后,我们将安装在伺服系统中。如图所示...
第 7 步:连接伺服、超声波传感器……
所以我们将伺服,超声波传感器与arduino连接起来。
〜将伺服连接到PCB中可用的伺服引脚。
~ 只需连接超声波传感器引脚,如下所示:
触发到 D10
回声到 D11
接地到接地
VCC 至 +5V
这就是所有的连接。非常容易和简单。
第 8 步:是时候上传草图了。
~ 在上传草图之前,不要忘记从 PCB 上拆下伺服线和超声波传感器的线。
~ 然后将 Arduino nano 的线连接到您的电脑中。
~ 然后打开 Arduino IDE 并将代码上传到它。
/*Human folling robot using Arduino nano.
* code created by: DIY Burner
*NOTE : Please don't forget to include the library "Servo.h".
*For any query contact me on Instagram. (id: diy.burner)
*code version: 1.0.0
*/
#include
const int trigPin = 10 ; //Servo trig pin to D10
const int echoPin = 11; // Servo echo pin to D11
const int in1 = 5; // Motor driver pin
const int in2 = 4;
const int in3 = 3;
const int in4 = 2;
const int enA = 6;
const int enB = 7;
#define motorArpm 170 // Default speed for "enA". you can change this speed from 0 to 300
#define motorBrpm 170 // Default speed for "enB". you can change this speed from 0 to 300
Servo servo_motor; //Servo
int pos =0;
void setup(){
Serial.begin(9600);
servo_motor.attach(8); //Servo signal pin to D8
{
for(pos = 90; pos <= 180; pos += 1){
servo_motor.write(pos);
delay(15);
} for(pos = 180; pos >= 0; pos-= 1) {
servo_motor.write(pos);
delay(15);
}for(pos = 0; pos<=90; pos += 1) {
servo_motor.write(pos);
delay(15);
}
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode (in1, OUTPUT);
pinMode (in2, OUTPUT);
pinMode (in3, OUTPUT);
pinMode (in4, OUTPUT);
pinMode (enA, OUTPUT);
pinMode (enB, OUTPUT);
}
}
long duration;
int distance;
void loop(){
digitalWrite(trigPin , HIGH);
delayMicroseconds(1000);
digitalWrite(trigPin , LOW);
duration = pulseIn(echoPin , HIGH);
distance = (duration/2) / 28.5;
if(distance < 5) // It will go Backward if distance is less than 5.
{
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
analogWrite(enA, motorArpm);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(enB, motorBrpm);
}
if(distance >40) // It will Stop if distance is More than 40.
{
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
analogWrite(enA, 0);
analogWrite(enB, 0);
}
if(distance > 10 && distance < 20){ // to turn Forward
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
analogWrite(enA, motorArpm);
digitalWrite(in3, HIGH);
digitalWrite(in4, LOW);
analogWrite(enB, motorBrpm);
}
if(distance > 20 && distance < 30)//// to turn left
{
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
analogWrite(enA, 150);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(enB, 160);
}
if(distance > 30 && distance <40 ) //// to turn Right
{
digitalWrite(in1, HIGH);
digitalWrite(in2, LOW);
analogWrite(enA, motorArpm);
}
第 9 步:一切就绪,现在是测试它的时候了。
不要忘记连接电池座并将支架的电线连接到电机驱动器和 arduino nano。
观看我们的 YouTube 视频以查看其测试视频。立即观看!
第 10 步:我们现在完成了
我们现在完成了。我希望您喜欢我的项目,如果您有任何疑问,请在此处留下您的评论,我一定会为您提供帮助,或者如果您对任何新类型的项目有任何想法,请在此处发表评论,我一定会成功的。
我会不断更新这个教程。
感谢观看项目,我希望你喜欢这个项目,如果你喜欢,请关注我,我会继续发布很棒的新项目。另外,别忘了订阅我的 YouTube 频道。(YouTube:DIY 燃烧器)
- 使用OpenCV的车道跟随机器人
- DIY简单的线跟随机器人
- 基于Arduino Nano的PID线路跟随机器人 2次下载
- 基于PID的线跟随机器人
- 线跟随机器人开源硬件
- 使用TI RSLK MAX构建声音跟随机器人
- 使用Pico的线跟随机器人
- PID控制线跟随机器人
- 人类跟随机器人v2.0开源分享
- 带有PID控制的线跟随机器人
- 最简单的线跟随机器人
- 物体跟随机器人开源分享
- 如何使用Arduino制作跟随机器人
- 人类跟随机器人开源分享
- 线跟随机器人开源项目
- 一个简单的线路跟随器机器人电路 1812次阅读
- 基于ATmega16构建的线跟随机器人的完整电路图 1789次阅读
- 如何利用Arduino UNO制作一个爬楼梯机器人 3992次阅读
- 如何使用Arduino制造一个自动平衡机器人 4429次阅读
- 基于SMARS 机器人的3D打印部件设计 3228次阅读
- 基于使用Arduino板及电机驱动器对机器人进行编程介绍 3660次阅读
- 机器人的发展比较依赖于什么 945次阅读
- 边缘上的AI:“协作机器人”如何快速处理传感器数据 1068次阅读
- 简易机器人制作图解 1w次阅读
- 软体机器人 前所未见的机器人 3692次阅读
- 何为柔性机器人?如何让机器人的身体柔若无骨? 1.1w次阅读
- 基于3D打印技术的跳舞机器人的硬件电路制作 4427次阅读
- 《Nature》发布毫米级软体机器人,为人类研究体内微型机器人提供新思路 9066次阅读
- 智能机器人的三大关键技术详解 3.2w次阅读
- 如何构建不伤害人类的工业机器人 1129次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多