【雕爷学编程】Arduino动手做(164)---Futaba S3003舵机模块3

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来------小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台

项目:使用10K电位器模块控制 RC 伺服电机位置

Arduino实验开源代码

cpp 复制代码
/*
 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台
  项目:使用10K电位器模块控制 RC 伺服电机位置
*/

#include <Servo.h>
Servo myservo; // create servo object to control a servo
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
 
  
 
void setup(){
         myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop(){
         val = analogRead(potpin); // reads the value of the potentiometer (value // between 0 and 1023)
         val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value
                                                        // between 0 and 180)
         myservo.write(val); // sets the servo position according to the
                                      // scaled value
         delay(15); // waits for the servo to get there
}

项目:使用10K电位器模块控制 RC 伺服电机位置

Arduino实验场景图

代码结果

从连接到引脚 A0 的10K电位器模块读取模拟值,存储在变量中,值 = map(val, 0, 1023,由于 Arduino 内部的 ADC 是 0 位 ADC,因此模拟读数从 179 到 10,但 RC 伺服电机只能旋转 0- 因此,功能映射必须将刻度从 1023-1 缩放到 180-0,然后将其存储在 val myservo.write(val); 当刻度从 1023-0 降低到 179-0 时,然后指示伺服电机旋转到 val delay 变量(1023);延迟 0 毫秒,从而允许通过旋转等位计调整伺服电机的度。

实验开源仿真编程(Linkboy V5.33)

项目:舵机30°,60°,-30°,-60°之间循环摆动

项目:舵机30°,60°,-30°,-60°之间循环摆动

实验场景动态图

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台

安装库:PS2X_lib ,下载链接:

https://github.com/simondlevy/PS2X_lib

项目:串口打印舵机pos的值

Arduino实验开源代码

cpp 复制代码
/*
 【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台
  项目:串口打印舵机pos的值
*/

#include <PS2X_lib.h>
#include <Servo.h>

Servo myservo;  // 创建Servo对象用以控制伺服电机

int pos = 0;    // 存储伺服电机角度信息的变量

void setup() {
  myservo.attach(9);  // Servo对象连接在9号引脚
  Serial.begin(9600);
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // 0°转到180°
    // 每一步增加1°
    myservo.write(pos);              // 告诉伺服电机达到'pos'变量的角度
    Serial.println(pos);             //串口打印pos的值
    delay(15);                       // 等待15毫秒以确保伺服电机达到了目标角度
  }
  for (pos = 180; pos >= 0; pos -= 1) { // 180°转到 0°
    myservo.write(pos);              // 告诉伺服电机达到'pos'变量的角度
    Serial.println(pos);             //串口打印pos的值
    delay(15);                       //等待15毫秒以确保伺服电机达到了目标角度
  }
}

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百六十四:Futaba S3003舵机 180度3.5KG车船模型38克 机器人摄像头云台

项目:串口打印舵机pos的值

Arduino实验场景图

相关推荐
HZZD_HZZD33 分钟前
大口径摄像水表白皮书拆解:DN40加装改造与字轮识别实测
运维·物联网·腾讯云
SL_staff1 小时前
设备离线时业务不中断:JVS-IOT高可用架构解析
java·物联网·产品
铅笔小新z5 小时前
【stm32】WWDG(窗口看门狗)
stm32·单片机·嵌入式硬件
byte轻骑兵6 小时前
【LMP】规范精讲[11]: 暗房里的协议——产线射频测试是怎么指挥芯片的
物联网·通信协议·蓝牙协议·lmp·蓝牙链路管理
comyccccc6 小时前
平衡车底板设计:精准布局与高效布线学习笔记
单片机·嵌入式硬件
芯片人0077 小时前
GEK100系列芯片进入上市公司上海移远通信供应链
人工智能·单片机·嵌入式硬件·物联网·芯片
fly_sunnn8 小时前
ADC模数转换器
单片机·嵌入式硬件
我叫洋洋8 小时前
I2C 为什么必须用开漏输出?从推挽短路、线与,到上拉电阻取值
单片机·嵌入式硬件
无敌贵点大王8 小时前
从寄存器层面重学STM32(5)——串口USART理论部分
stm32·单片机·嵌入式硬件
女神下凡9 小时前
芯参谋(83):AliOS Things_驱动开发指南
arm开发·驱动开发·单片机·嵌入式硬件·设计规范·1024程序员节