Buonasera, sono abbastanza nuovo nel mondo di arduino, quindi potrò commettere degli errori banali, e molte volte li trovo da solo, ma da questo non riesco proprio a venirne fuori.
Sto cercando di costruire un braccio robotico controllabile da tastiera con 6 servomotori, 3 SG90 e gli altri 3 sono MG996R. Sono collegati alla scheda PCA9685 e alimentati da un alimentatore da 5V 1,2A, ma quando carico il codice, i servo non si muovono. Pensavo che il problema fosse che l'alimentatore era insufficiente per tutti e 6 i servo, ma anche quando provo ad alimentare un solo servomotore, non si muove. Non capisco se il problema è l'alimentatore o il codice. Questo codice dovrebbe muovere un servo usando i caratteri della tastiera ma non fuziona. Grazie mille a chiunque possa aiutarmi.
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
Adafruit_PWMServoDriver servo = Adafruit_PWMServoDriver();
#define SERVOMIN 150
#define SERVOMAX 600
char tasto = '0';
int angBase = 150;
int angSpalla = 90;
int angGomito = 90;
int angPolso = 90;
int angMano = 90;
int angDita = 90;
// POSIZIONE SERVO
int servoBase = 0;
int servoSpalla = 2;
int servoGomito = 3;
int servoPolso = 4;
int servoMano = 5;
int servoDita = 6;
int angolo;
void setup() {
Serial.begin(9600);
servo.begin();
servo.setPWMFreq(60);
delay(100);
}
void loop() {
if(Serial.available() > 0) {
tasto = Serial.read();
Serial.print(tasto);
switch(tasto) {
case 'a':{
angBase++;
servo.setPWM(servoBase, 0, angBase);
delay(10);
}
case 'A':{
angBase--;
servo.setPWM(servoBase, 0, angBase);
delay(10);
}
}
}
}