基于Arduino的SG90舵机驱动

一.SG90舵机引脚说明
SG90舵机三根线的连接方法:
1.红色线:电源线(VCC),接入5v电源
2.棕色线:地线(GND),接地
3.黄色线:信号线(SIG),接收控制信号,连接核心控制板的PWM输出引脚。
二. 舵机控制原理
1)舵机是一种位置伺服的驱动器,具有闭环控制系统的机电结构,由小型直流电机、变速齿轮组、可调电位器、控制板等部件组成。由于可以方便地控制舵机旋转的角度(舵角,但是舵角一般不超过 180°),因此,舵机在要求角度不断变化的控制系统中得到了广泛应用。
2)舵机在工作中,控制器发出脉冲宽度调制(PWM)信号给舵机,获得直流偏置电压。舵机内部有一个基准电路,产生周期为 20ms,宽度为 1.5ms 的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出到电机驱动芯片,驱动芯片根据电压差的正负控制电机的正反转。
3)舵机转动的角度是通过调节 PWM 信号的占空比来实现的,标准 PWM 信号的周期固定为 20ms,理论上脉宽(脉冲的高电平部分)范围在 1ms~2ms之间,但实际上脉宽可以在 0.5ms~2.5ms 之间,脉宽和舵机的转角 0°~180°相对应以脉宽为 0.5ms~2.5ms 范围控制舵机的角度转动,转动范围为0°~180°。
三. 源代码
1)说明
使用Servo库进行舵机驱动开发,Arduino Servo 库是一个开源库,专门用于控制伺服电机。该库允许用户通过Arduino UNO板轻松控制各种类型的伺服电机,从而实现精确的角度控制。Servo 库是Arduino官方库之一,广泛应用于机器人、自动化控制和DIY项目中。
2)代码:
#include <Servo.h>
#define pwmPin 9Servo myServo;
void setup() {// put your setup code here, to run once:myServo.attach(pwmPin);//9号引脚输出舵机控制信号 仅能使用9、10号引脚
}void loop() {// put your main code here, to run repeatedly:int angle = 90;//侍服电机旋转的角度取值范围myServo.write(angle);//设定私服电机的位置delay(15);//等待电机转到目标角度
}
3)Servo库接口
控制舵机转动到0~180°的任意位置。
关于Servo库提供的几个常用函数(用法都形如:servo.xx()):
attach(接口)—— 设定舵机的接口,只有9或10接口可利用。
a. 基本格式: name.attach(pin)
b. 解释:name:表示舵机名 ; pin:表示arduino上面舵机数据线连接的引脚
write(角度)—— 用于设定舵机旋转角度的语句,可设定的角度范围是0°到180°。
a. 基本格式: name.write(angle)
b. 解释:name:表示舵机名;angle:旋转角度
四.运行效果:
控制舵机旋转到0°~180°的任意位置。
应用:可配合超声波传感器使用,旋转到不动位置,获取不同位置距离障碍物的距离,配合控制算法,进行基于超声波智能避障小车的制作。
相关文章:
基于Arduino的SG90舵机驱动
一.SG90舵机引脚说明 SG90舵机三根线的连接方法: 1.红色线:电源线(VCC),接入5v电源 2.棕色线:地线(GND),接地 3.黄色线:信号线(SIG)…...
大模型泡沫破了?| 转行建筑师混战大模型圈
最近秋招惨淡卷动,**地产天坑不敢进,科技大厂不可期。**阿里直裁应届生、腾讯拉长职级晋升时间,字节一家繁荣,但也在和美国政府大打官司。此前「大模型」风生水起,但近期融资、应用双双预冷。 GPT-5迟迟不出࿰…...
Windows开发工具使用技巧
Windows开发工具使用技巧 在Windows系统下进行软件开发时,掌握并熟练使用合适的开发工具可以极大地提高工作效率和代码质量。本篇文章将介绍几款常见的Windows开发工具及其使用技巧,涵盖集成开发环境(IDE)、命令行工具、版本控制…...
【PyTorch学习-1】张量操作|自动求导|神经网络模块|优化器|数据加载与处理|GPU 加速...
【PyTorch学习-1】张量操作|自动求导|神经网络模块|优化器|数据加载与处理|GPU 加速… 【PyTorch学习-1】张量操作|自动求导|神经网络模块|优化器|数据加载与处理|GPU 加速… 文章目录 【PyTorch学习-1】张量操作|自动求导|神经网络模块|优化器|数据加载与处理|GPU 加速...前言…...
Leecode热题100-560.和为k的子数组
给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的子数组的个数 。 子数组是数组中元素的连续非空序列。 示例 1: 输入:nums [1,1,1], k 2 输出:2示例 2: 输入:nums [1,2,3], k…...
Mac 卸载 IDEA 流程
1、现在应用程序中删除Idea 2、进入Library目录 cd /Users/zhengzhaoxiang/Library 3、删除IntelliJIdea2023.3(根据自己的版本而定)记得进去看下是否删除干净了 rm -rf Logs/JetBrains/IntelliJIdea2023.3 rm -rf Preferences/com.jetbrains.intel…...
vue3 antdv3/4 Modal显示一个提示,内容换行显示。
1、官网地址: Ant Design Vue — An enterprise-class UI components based on Ant Design and Vue.js 2、显示个信息: Modal.info({title: This is a notification message,content: h(div, {}, [h(p, some messages...some messages...),h(p, some …...
Jgit的使用
Jgit的使用 文章目录 Jgit的使用一,git操作的对应代码1.1 查看操作1.1.1 打开仓库1.1.3 获取状态信息 1.2 添加操作1.2.1 初始化本地仓库1.2.2 创建一个新文件并写入内容1.2.3 添加指定(所有)文件到暂存区1.2.4 提交操作1.2.5 连接并推送到远…...
SQL Server—约束和主键外键详解
SQL Server—约束和主键外键详解 约束和主键外键 主键 和 外键 -- 主键: 关系型数据库中一条记录有若干个属性,若其中某一个属性能够位置标识这条记录,这个属性就可以设置为表的主键,主键是确定一条记录的唯一标识,有可能作为主键…...
信息学奥赛复赛复习14-CSP-J2021-03网络连接-字符串处理、数据类型溢出、数据结构Map、find函数、substr函数
PDF文档回复:20241007 1 P7911 [CSP-J 2021] 网络连接 [题目描述] TCP/IP 协议是网络通信领域的一项重要协议。今天你的任务,就是尝试利用这个协议,还原一个简化后的网络连接场景。 在本问题中,计算机分为两大类:服务机&#x…...
Allegro如何合并同名网络铜皮操作指导
Allegro如何合并同名网络铜皮操作指导 Allegro可以将同名网络的铜皮合并起来,如下图,需要把下面两块铜皮合并成一块铜皮 具体操作如下 选择Shape 选择merge shapes Find选择shapes 点击其中一块铜皮,会被亮起来 再点击另外一块铜皮 两块铜皮…...
【探测器】线阵相机中的 TDI 技术
【探测器】线阵相机中的 TDI 技术 1.背景2.TDI相机3.场景应用 1.背景 TDI 即Time Delay Integration时间延迟积分。 TDI相机是线阵相机的一种特殊类型,带有独特的时间延迟积分(TDI)技术。 换句话说,TDI相机是线阵相机的一个高级版…...
k8s 之安装metrics-server
作者:程序那点事儿 日期:2024/01/29 18:25 metrics-server可帮助我们查看pod的cpu和内存占用情况 kubectl top po nginx-deploy-56696fbb5-mzsgg # 报错,需要Metrics API 下载 Metrics 解决 wget https://github.com/kubernetes-sigs/metri…...
java学习-idea编辑器基础使用设置
首先打开电脑中的idea编辑器,点击头部:File按钮 → Settings… 打开设置界面; 设置idea的主题 设置idea代码注释的字体颜色 设置idea编辑器的字体和字体大小 设置idea通过提示回车自动导入包 设置idea输入忽略大小写进行提示...
PDSCH(物理下行共享信道)简介
文章目录 PDSCH(物理下行共享信道)简介1. Transport block CRC attachment2. LDPC base graph selection3. Code block segmentation And Code Block CRC Attachment4. Channel Coding5. Rate Matching6. Code Block Concatenation7. Scrambling8. Modul…...
hutool bug
Hutool参考文档 不用随便升级版本 版本5.8 1: 不要用 ReflectUtil.newInstance(cName); * 和spring 部分框架整合 ,子类转换为父类或者接口失败,报转换失败的错误 https://gitee.com/dromara/hutool/issues/I18NCR?skip_mobiletrue 改成使…...
69.x的平方根 367.完全有效的平方数
题目:69. x 的平方根 - 力扣(L69eetCode) 经典平方根问题,用二分法慢慢逼近找开方值,注意mid*mid要用long long值,不然会溢出 class Solution { public:int mySqrt(int x) {int left 0; int right x;int ans -1; w…...
Android Automotive(一)
目录 什么是Android Automotive Android Automotive & Android Android Automotive 与 Android Auto 什么是Android Automotive Android Automotive 是一个基础的 Android 平台,它能够运行预装的车载信息娱乐系统(IVI)应用程序,以及可选的二方和三方 Android 应用程…...
命令设计模式
简介 命令模式(Command Pattern)是对命令的封装,每一个命令都是一个操作:请求方发出请求要求执行一个操作;接收方收到请求,并执行操作。命令模式解耦了请求方和接收方,请求方只需请求执行命令&…...
探索智能新境界:最好用的AI工具盘点
你用过最好用的AI工具有哪些? 在人工智能技术飞速发展的今天,AI工具正逐渐成为我们工作和生活中不可或缺的助手。它们不仅提高了效率,还为我们提供了创新的解决方案。作为一名对AI充满热情的用户,我有幸体验了许多优秀的AI工具。…...
探秘书匠策AI:毕业论文创作的“全能助手”大揭秘
在学术探索的征途中,毕业论文如同一座巍峨的山峰,让无数学生既心怀憧憬又倍感压力。从选题迷茫到文献海捞,从结构搭建到内容雕琢,每一步都充满了挑战。但别怕,今天我们就来揭秘一位学术界的“全能助手”——书匠策AI&a…...
小白也能学会:MogFace透明蒙版可视化,人脸检测不再难
小白也能学会:MogFace透明蒙版可视化,人脸检测不再难 1. 为什么需要透明蒙版可视化? 想象一下这样的场景:你拍了一张全家福,想用AI工具检测照片中有多少人。传统的检测工具会在每个人脸上画一个绿色的方框࿰…...
实战应用:基于快马AI与OpenClaw构建Mac本地电商价格监控系统
最近在做一个电商价格监控的小工具,发现用OpenClaw配合Mac本地环境搭建特别方便。这里分享一下我的实战经验,希望能帮到有类似需求的同学。 为什么选择OpenClaw OpenClaw是个轻量级的Python爬虫框架,特别适合需要快速搭建数据采集系统的场景…...
3个技巧让Poppins字体为你的设计项目增添国际范儿
3个技巧让Poppins字体为你的设计项目增添国际范儿 【免费下载链接】Poppins Poppins, a Devanagari Latin family for Google Fonts. 项目地址: https://gitcode.com/gh_mirrors/po/Poppins 还在为多语言项目找不到统一风格的字体而烦恼吗?Poppins这款现代几…...
[Windows 驱动] 深入解析进程名获取的多种内核方法
1. Windows驱动开发中的进程名获取基础 在Windows内核驱动开发中,获取进程名是最基础但至关重要的操作之一。想象一下,你正在开发一个安全监控驱动,需要实时检查哪些进程正在运行;或者你在开发一个性能优化工具,需要针…...
MariaDB Docker容器权限配置问题分析与解决方案
MariaDB Docker容器权限配置问题分析与解决方案 1. 问题背景 在使用MariaDB Docker容器时,用户遇到了远程访问权限配置失效的问题。具体表现为: 手动创建的远程用户(如root%、****%、********%)在容器重启后无法远程连接权限表中显…...
Windows右键菜单重构指南:从混乱到高效的ContextMenuManager实战
Windows右键菜单重构指南:从混乱到高效的ContextMenuManager实战 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 问题诊断:你的右键菜单是…...
Wan2.2-I2V-A14B部署教程:解决OOM/驱动报错/端口冲突三大常见问题
Wan2.2-I2V-A14B部署教程:解决OOM/驱动报错/端口冲突三大常见问题 1. 镜像概述与核心优势 Wan2.2-I2V-A14B是一款专为文生视频任务优化的私有部署镜像,特别针对RTX 4090D 24GB显存配置进行了深度优化。这个镜像最大的特点是解决了AI视频生成领域常见的…...
从 Seata 1.x 升级到 2.0.0:Docker 环境下的平滑迁移与配置变更指南
从 Seata 1.x 升级到 2.0.0:Docker 环境下的平滑迁移与配置变更指南 分布式事务框架 Seata 2.0.0 版本带来了多项架构优化与功能增强,包括对 Raft 共识算法的原生支持、安全模块的全面升级以及配置管理机制的改进。对于已在生产环境部署 Seata 1.x 版本的…...
Java开发者必看:Istio 1.22正式弃用Mixer后,Prometheus指标丢失、日志脱节、Tracing断链问题的90分钟极速修复方案
第一章:Java开发者必看:Istio 1.22正式弃用Mixer后,Prometheus指标丢失、日志脱节、Tracing断链问题的90分钟极速修复方案Istio 1.22 彻底移除了 Mixer 组件,导致依赖其适配器模型的遥测采集链路全面失效。Java 应用在启用 Istio …...
