如何解决Arduino:改变伺服电机速度
我正在通过 PCA9685 和 ESP8266 (NodeMCU) 使用 Blynk 滑块控制伺服电机位置。 我希望我的伺服运行速度比默认速度慢,我需要一部分代码(可能是函数)来设置自定义速度。
这是我的代码:
#define BLYNK_PRINT Serial // THESE 3 LIBRARIES FOR USING BLYNK CLOUD
#include <BlynkSimpleEsp8266.h>
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
#include<Servo.h> // SERVO MOTOR LIBRARY
#include <ESP8266WiFi.h> //NODEMCU WIFI MODULE LIBRARY
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();
#define MIN_PULSE_WIDTH 150// this is the 'minimum' pulse length count (out of 4096)
#define MIN_PULSE_WIDTH 2400 //
char auth[] = "**********************"; //AUTHENTICATION KEY PROVIDED BY BLYNK CLOUD
char ssid[] = "*********"; //WIFI SSID
char pass[] = "**************"; //WIFI PASSWORD
int slider1;
void setup()
{
Serial.begin(9600); //TO BEGIN SERIAL MONITOR
Blynk.begin(auth,ssid,pass);//TO BEGIN BLYNK CLOUD CONNECTION
Wire.begin(); // Wire must be started first
pwm.begin();
pwm.setPWMFreq(50);
}
void loop()
{
Blynk.run(); //TO START PUBLISHING DATA TO BLYNK CLOUD
}
BLYNK_WRITE(V1) //THIS FUNCTION IS TO WRITE THE VALUES OF SERVO FROM BLYNK MOBILE INTERFACE
{
int slider1 = param.asInt(); // assigning incoming value from pin V1 to a variable
Serial.print("Slider1: ");
Serial.println(slider1);
slider1 = map(slider1,180,128,550);
pwm.setPWM(1,slider1);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。