【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十三:SG90二自由度舵机云台塑料支架MG双轴机械手臂航模监控智能机器人
实验开源图形编程(Mind+、编玩边学)
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十三:SG90二自由度舵机云台塑料支架MG双轴机械手臂航模监控智能机器人
项目:在串口下通过输入不同的指令代码来调整上下舵机的角度
说明:当你在串口监视器上输入‘u’时,云台将向上转动5°。输入‘d’,‘r’,‘l’同理。
Arduino实验开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十三:SG90二自由度舵机云台塑料支架MG双轴机械手臂航模监控智能机器人
项目:通过串口驱动二轴云台
说明:当你在串口监视器上输入‘u’时,云台将向上转动60°。输入‘d’,‘r’,‘l’同理。
*/
// 加载 舵机 库
#include <Servo.h>
Servo up, down;
int a = 60, b = 30; //上下舵机初始角度
void setup() //初始化
{
up.attach(10, 1000, 2000); //上面的舵机附加到引脚10
down.attach(9, 1000, 2000); //下面的舵机附加到引脚9
up.write(a); //上面的舵机初始角度为60°
down.write(b); //下面的舵机初始角度为30°
Serial.begin(9600);
}
void loop() {
while (Serial.available() > 0) //当Serial.available()>0时,说明串口接收到了数据,可以读取。
{
char flag = Serial.read();
delay(2);
if (flag == 'u') //当串口输入‘u’时,上舵机向上转动60°
a = a + 60;
if (flag == 'd') //当串口输入‘d’时,上舵机向下转动60°
a = a - 60;
if (flag == 'l') //当串口输入‘l’时,下舵机向左转动60°
b = b + 60;
if (flag == 'r') //当串口输入‘r’时,下舵机向右转动60°
b = b - 60;
}
up.write(a);
down.write(b);
}
Arduino实验场景,串口输入“d”
Arduino实验场景图
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十三:SG90二自由度舵机云台塑料支架MG双轴机械手臂航模监控智能机器人
项目:利用servo库和一个摇杆控制两个小舵机的云台
Arduino实验开源代码
/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百七十三:SG90二自由度舵机云台塑料支架MG双轴机械手臂航模监控智能机器人
项目:利用servo库和一个摇杆控制两个小舵机的云台
*/
// 加载舵机库
#include <Servo.h>
Servo a;
Servo b;
int i, p, j, k;
void setup() {
a.attach(9); //指定舵机a的OUT引脚为9号引脚
b.attach(10); //指定舵机b的OUT引脚为10号引脚
Serial.begin(9600);
}
void loop() {
i = analogRead(A0); //获取A0引脚的输入值,即PS2摇杆X轴的数值
j = analogRead(A1); //获取A1引脚的输入值,即PS2摇杆Y轴的数值
Serial.print("映射前x轴:");
Serial.print(i);
Serial.print(" ");
Serial.print("映射前y轴:");
Serial.print(j);
Serial.print(" ");
p = map(i, 0, 1023, 0, 180); //将0到1023的值映射成0到180
k = map(j, 0, 1023, 0, 180);
Serial.print("映射后x轴:");
Serial.print(p);
Serial.print(" ");
Serial.print("映射后y轴:");
Serial.println(k);
a.write(p); //设置舵机a角度为p
b.write(k); //设置舵机b角度为k
}
实验串口返回情况
Arduino实验场景图
hacker_2023.08.02
666