`
fantaxy025025
  • 浏览: 1328098 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

arduino的servo.h库_基本函数讲解

 
阅读更多

=

=

=

arduino的servo.h库_基本函数讲解

 

查看Arduino库文件列表,可通过Arduino IDE的“Help”菜单下的“Reference”查看。

Arduino LibrariesArduino Libraries

我们可以看到在Arduino标准库中的servo库,单击连接后进入,可查看servo.h文件更详细的内容。

Servo libraryServo library

在上图左边是对servo库文件的基本介绍,右边是主要的函数和示例。

Servo库文件使用

我们知道舵机必须定期接收高电平脉冲控制信号才能维持转动。如果信号停止,舵机也停止。详见:舵机角度的控制。如果使用servo库来设置控制信号,就可以通过引入一些代码,实现如延迟、检查传感器、等待等功能。同时,由于servo库一直在后台运行,而舵机一直在旋转,它会经常中断其他正在执行的代码来启动那些高脉冲,带是这个切换的动作快到我们感知不到。

使用servo库来发送舵机控制信号一般需要四个步骤:

1、 首先要告诉Arduino编程器,希望在代码开始时,即setup函数之前,声明使用Servo库函数。

#include <Servo.h>          // Include servo library

2、 在#include和setup函数之间为要发送的信号命名servo库的实例。如下servoLeft就是指定的实例名称。

Servo servoLeft;            // Declare left servo

3、 在setup函数中,使用给出的舵机信号的名称后跟一个点,然后通过附加函数attach()调用信号引脚。这个例子告诉系统舵机信号servoLeft应该通过数字引脚13来传输。

servoLeft.attach(13);      // Attach left signal to pin 13

4、writeMicroseconds()函数,用于设置脉冲持续时间。

servoLeft.writeMicroseconds(1500); // 1.5 ms stay-still signal

5、write()函数, 作用是将一个角度值写入舵机,设置轴转动的角度(该值是指角度),0为在一个方向全速转动,180为在另一个方向上全速转动,接近90为复位。

servoLeft.write(90);  // set servo to mid-point 

6、attached()函数,用于检测servo变量是否正确连接至Arduino对应引脚上。返回值为 true 和 false 。

servoLeft.attached()

7、detach()函数, 作用是从对应引脚上分离舵机变量。如果要将所有舵机变量分离,则使用analogWrite()函数将引脚9和引脚10用于PWM输出。

servoLeft.detach() 

8、read()函数, 用于读取舵机的当前角度值(传递给上次调用write()的值)。

servoLeft.read()  

 

=

=

=

分享到:
评论

相关推荐

    Arduino基础入门篇_机械臂_arduino舵机控制_waitqro_机器人_机器臂控制_

    在Arduino环境下,你需要包含`&lt;Servo.h&gt;`库来使用舵机功能。这个库提供了方便的API来创建和控制舵机对象。例如,你可以使用`Servo myservo;`声明一个舵机对象,然后用`myservo.attach(pin);`将它连接到特定的数字...

    Arduino程序设计基础_完整版_arduino_

    此外,书中还会介绍如何使用各种常见的Arduino库,如Wire库用于I2C通信,Servo库用于伺服电机控制,以及Ethernet库实现网络功能等。 高级主题部分,可能涉及PID控制器、蓝牙或Wi-Fi模块的使用、实时操作系统(RTOS...

    arduino学习笔记.rar_单片机开发_C/C++_

    5. **库的使用**:Arduino库的介绍,如Wire库用于I2C通信,Servo库控制舵机,以及如何自己编写和使用库。 6. **实例项目**:可能包含几个逐步引导的项目,如LED闪烁、温度读取、LCD显示等,帮助读者巩固所学知识。 ...

    5、SERVO_2Vx_velocity_closeloop(57编码器反馈电机).rar

    1. **源码**:这是实现闭环速度控制的程序代码,可能包括主程序、PID控制器函数、电机驱动接口函数、编码器数据处理函数等。 2. **配置文件**:可能包含开发板的硬件配置信息,如PWM频率设置、中断设置等。 3. **...

    arduino学习笔记等.zip

    5. **库的使用**:Arduino 库丰富多样,如`Servo`库用于控制伺服电机,`WiFiNINA`库用于无线网络连接,`Wire`库则用于I2C通信。通过引入库,可以扩展 Arduino 的功能。 6. **交互式项目**:Arduino 常被用于制作...

    Arduino入门中文教程

    你还将学习如何利用库文件来简化编程,例如使用Servo库控制舵机,或者使用WiFiNINA库实现网络功能。 随着技能的提升,教程可能还会介绍如何创建交互式项目,比如通过Arduino控制的音乐盒、智能小车或者环境监测系统...

    Arduino控制舵机详解(含代码)-项目申报.docx

    - 使用`Servo`库控制舵机,首先在`setup()`函数中初始化舵机并指定连接的引脚。 - `loop()`函数中通过两个for循环,逐渐改变`write()`函数的参数,使舵机从0度到180度,再返回到0度,每次改变1度,中间间隔15毫秒...

    学习参考书籍

    书中会介绍一些常用库的使用,例如Wire库用于I2C通信,Servo库用于伺服电机控制,以及Ethernet和WiFi shield相关的网络库。 此外,书中还将提供API参考,帮助读者快速查找和理解特定函数的用法,这在解决实际问题或...

    舵机介绍及实现例程讲解,通常用于模型制作、机器人、无人机、航模等领域.docx

    - 在Arduino IDE中,需要添加Servo库的支持。操作步骤如下: - 打开Arduino IDE。 - 选择菜单栏中的“Sketch” -&gt; “Include Library” -&gt; “Servo”。 3. **初始化舵机对象**: - 在代码中定义舵机对象,并...

    SCServo飞特舵机接口代码

    在嵌入式系统中,舵机(Servo)是一种广泛应用的执行机构,它能够精确地控制角度位置。SCServo是飞特(Feiteng)公司推出的一种高性能舵机,通常用于机器人、无人机等需要精确角度控制的领域。本文将详细讲解SCServo...

Global site tag (gtag.js) - Google Analytics