Problema libreria servo

Ciao a tutti, premetto che non sono un gran esperto di Arduino e sto imparando ad utilizzarlo; sto creando una macchinina stampata in 3D utilizzando un Arduino UNO R3 con 2 motori dc a 6V, un L298N, una piccola batteria da antifurto da 6V 1,3A per alimentare il tutto e un servo per lo sterzo della macchinina, il problema è che con la libreria Servo.h da degli errori sugli OUTPUT, sugli AnalogWrite e sui delay senza farmi compilare e caricare lo sketch, qualcuno saprebbe darmi una mano?
ringrazio in anticipo.

Buongiorno e benvenuto, :slight_smile:
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il succitato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread, nel rispetto del suddetto regolamento nessuno ti risponderà, quindi ti consiglio di farla al più presto. :wink:

@tortazza : ora che hai fatto la presentazione, devi aspettare qui le risposte SENZA aprire ulteriori thread duplicati.

Grazie.

Guglielmo

ciao
Senza vedere il programma e senza sapere come hai fatto i collegamenti aiutarti è un pò difficile.
Tirando a indovinare ti posso dire che la libreria servo "toglie" la possibilità di comandare in PWM i pin 9 e 10 come specificato nel Reference.

ciao
pippo72

Chiedo scusa, metto subito codice e immagini del circuito.

#include <Servo.h>
//servo MyServo1;
Servo MyServo1;
int Myservo1=8;
int pos;
//motore a
int enA=6;
int in1=13;
int in2=12;
//motore b
int enB=5;
int in3=11;
int in4=10;

void setup()
{
  //servo
  MyServo1.attach(8);
  //motore a
  pinMode(enA,OUTPUT);
  pinMode(in1,OUTPUT);
  pinMode(in2,OUTPUT);
  //motore b
  pinMode(enB,OUTPUT);
  pinMode(in3,OUTPUT);
  pinMode(in4,OUTPUT);
}

void loop()
{
  // servo
  for (int n = 0; n < 9999; n++) {
    MyServo1.write(100);
    delay(1000);
    MyServo1.write(0);
    delay(1000);
  }
  //accende il motore a
  digitalWrite(in1,HIGH);
  digitalWrite(in2,LOW);
  //accende il motore b
  digitalWrite(in3,HIGH);
  digitalWrite(in4,LOW);
  
  //imposta la velocità del motore a (0-255)
  analogWrite(enA,255);
  //imposta la velocità del motore b (0-255)
  analogWrite(enB,255);
  delay(5000);
  //imposta la velocità del motore a (0-255)
  analogWrite(enA,0);
  //imposta la velocità del motore b (0-255)
  analogWrite(enB,0);
  delay(5000);
  for(int i=0;i<256;i++)
  {
    analogWrite(enA,i);
    analogWrite(enB,i);
    delay(50);
  }
}

non fate caso al casino dei cavi, è solo provvisorio per provare il tutto



a me compila regolarmente

esattamente che errori ti da?

Ma gli errori dove sono?
Anche a me compila correttamente.

@tortazza : invece di usare un IDE che è in beta, usa l'IDE standard 1.8.13 e vedrai che quelle indicazioni evidenziate NON ci sono.

Guglielmo

proverò, grazie mille

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.