首页 > 其他分享 >Arduino 机械爪 (适合初学者-舵机-蓝牙-触点开关-小喇叭)

Arduino 机械爪 (适合初学者-舵机-蓝牙-触点开关-小喇叭)

时间:2024-11-14 10:19:45浏览次数:1  
标签:舵机 代码 Arduino 蓝牙 小喇叭 开关 串口 Serial

一张总括图
(寒假入坑Arduino一个月 想着做一个小东西练练手 便想出了这个小创意)

首先:介绍下本项目的实现内容:
Arduino控制舵机转动角度 ---> 舵机的角度转为机械爪的抓取角度 ---> 实现物品的抓取 ---> 抓取后喇叭发出声音,示意抓取完成 ---(手机利用蓝牙控制转动角度)

1. 机械爪的舵机驱动

首先了解舵机的三根线分别代表什么:
地线(GND)--->棕色或黑色
电源线(VCC)--->红色
信号线(IN)---->橙色或白色-->接9号io口
ps:电源线一定要用外接电源,arduino本身能力不足以驱动舵机

程序思路
1,我们需要引入舵机的库,#include
2,通过 Servo myservo 创建舵机对象
3,使用 myservo.attach(9); 定义引脚9为舵机
4,通过 myservo.write(angle) 函数控制舵机的角度

通过以下的代码可以实现串口控制舵机的转动角度

//机械爪的串口控制代码,下载到arduino后,打开串口监视器,输入想要的角度
//此代码只是简单串口控制,并未用到蓝牙控制
#include <Servo.h> //引入舵机库  下载ide时自带的,不用再次下载
Servo myservo;  // 创建一个伺服电机对象
char inByte = 0; //串口接收的数据
int angle = 0;  //角度值
String temp = "";//临时字符变量
void setup() 
{
  myservo.attach(9);    //定义舵机的引脚为9
  Serial.begin(9600);  //设置波特率
}
void loop() 
{
  while (Serial.available() > 0) //判断串口是否有数据
  {
    inByte = Serial.read();//读取数据,串口一次只能读1个字符
    temp += inByte;//把读到的字符存进临时变量里面缓存,
                   //再继续判断串口还有没有数据,知道把所有数据都读取出来
   }

   if(temp != "")   //判断临时变量是否为空
   {
    angle = temp.toInt();    //把变量字符串类型转成整型
    Serial.println(angle);  //输出数据到串口上,以便观察
   }
  temp = "";//请看临时变量
  myservo.write(angle);  //控制舵机转动相应的角度。
  delay(100);//延时100毫秒
  }

2.蓝牙控制转动角度

  • HC系列蓝牙与Arduino的连接
  • 进入 AT 模式进行蓝牙基本参数设置
  • 利用 Andorid 蓝牙串口小程序测试功能
  • 手机小程序 控制舵机转动

  1. 标签:舵机,代码,Arduino,蓝牙,小喇叭,开关,串口,Serial
    From: https://www.cnblogs.com/zyhlearning/p/18545470

相关文章

  • 基于Arduino的数码管显示变阻器模拟量读取值
    题目要求采集变阻器模拟量信号在数码管中显示,要求有二位小数电路连接数码管连接:数码管的七个段(a-g)分别连接到Arduino的引脚2到8。数码管的小数点(dp)连接到Arduino的引脚9。数码管的4个控制引脚连接到Arduino的引脚10到11。变阻器连接:变阻器的模拟输出引脚连接到Arduin......
  • 使用platformio平台Arduino开发ESP32-C2
    使用platformio平台Arduino开发ESP32-C2有两种方法,推荐方法二。方法一:安装vscode后安装platformio插件(参考:YourGatewaytoEmbeddedSoftwareDevelopmentExcellence·PlatformIO安装时,需要可靠的网络链接。使用platformio创建一个esp32-c3项目(platformio平台默认......
  • 使用Arduino IDE配置Atmega328P
    引言单片机(MicrocontrollerUnit,MCU)是一种将中央处理单元(CPU)、存储器、输入输出接口等集成在一块芯片上的微型计算机系统。本教程旨在帮助初学者了解单片机的基本概念,并通过实际操作来掌握单片机编程的基础知识。第一部分:单片机基础概念什么是单片机?单片机是嵌入式系统......
  • 【花雕学编程】Arduino RTOS 之时间片轮转调度
    Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用ArduinoIDE(集成开发环境)来编写、......
  • 【花雕学编程】Arduino动手做(237)---使用 ESP32 V1 Rev1 自身的热点来创建一个简易的 H
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来——小小的......
  • 使用PYNQ生成PWM波控制舵机/步进电机/机械臂
    使用PYNQ生成PWM波控制舵机/步进电机/机械臂在开始这个工程之前,你需要PYNQ-Z2的板卡文件,约束文件,原理图作为参考,你可以在我上传的资源里下载。当然,这个工程也适用于PYNQ-Z1,只需要改一下板卡文件和约束文件。我使用的舵机如下:1.PWM信号脉宽调制(PWM)是一种调制技术,它生成可变......
  • Raspberry Pi和Arduino哪个更适合DIY项目
    RaspberryPi和Arduino都是流行的DIY项目工具,但它们各有特点和适用范围。RaspberryPi是一种微型计算机,适合需要计算能力的项目,如媒体中心、游戏机或小型服务器。Arduino是一个微控制器板,适合控制简单的硬件项目,如自动化系统和传感器网络。选择哪个取决于项目需求:需要更多计算能......
  • AI编程Arduino单片机点亮WS2812灯带彩虹灯效
    引言随着物联网(IoT)和智能家居的迅速发展,LED灯带因其灵活性和多样的显示效果,广泛应用于装饰、广告、舞台等多个领域。WS2812作为一种智能可控的LED灯带,以其独立控制、丰富的色彩和高亮度,成为众多开发者的首选。而在控制WS2812灯带的过程中,编写高效、稳定的单片机代码至关重要。......
  • 单色LED灯 Arduino
    单色LED灯1.LightEmittingDiode/发光二极管,简称LED。它是一种能够发出单一颜色光的半导体设备。它由PN结构成的,当电流通过时,电子与空穴复合,释放能量以形成光。单色LED的颜色取决于发光材料的能带结构,常见的颜色有红色、绿色、蓝色和黄色LED的优点包括:高能效:消耗较少电......
  • Arduino Nano点灯
    1、选开发板2、选芯片3、选端口4、编程器选项5、打开例程6、编译7、上传代码8、LED接法:9、实物10、I/O图 ......