problema su integrato L293?

Ciao a tutti, ho fatto un piccolo programma per comandare 2 motori DC utilizzando un circuito driver con l'integrato L293 (circuito preso da

http://luckylarry.co.uk/arduino-projects/obstacle-avoidance-robot-build-your-own-larrybot/

il tutto funzionava fino a ieri, ora non piu'. quali le possibili cause?

-è un problema sull'integrato L293? se si', come faccio a testarlo? -devo collegare l'uscita GND di arduino al GND del pacco batterie che alimenta il circuito driver dei motori?

sotto il mio codice

int motor1Pin1 = 3;                             // pin 2 on L293D
int motor1Pin2 = 4;                             // pin 7 on L293D
int led_stop = 11;
int enable1Pin = 9;                             // pin 1 on L293D
int motor2Pin1 = 5;                             // pin 10 on L293D
int motor2Pin2 = 6;                             // pin  15 on L293D
int enable2Pin = 10;


void setup() {
  Serial.begin(9600);
 pinMode(motor1Pin1, OUTPUT);
  pinMode(motor1Pin2, OUTPUT);
  pinMode(enable1Pin, OUTPUT);
  pinMode(led_stop, OUTPUT);
  pinMode(motor2Pin1, OUTPUT);
  pinMode(motor2Pin2, OUTPUT);
  pinMode(enable2Pin, OUTPUT);
}

void loop() {
  turn();
  delay (4000);
  forward();
  delay (3000);
  wait();
  delay(1000);
   digitalWrite(led_stop, LOW);
}

void turn(){
   digitalWrite(enable1Pin, HIGH);
  digitalWrite(motor1Pin1, HIGH);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, LOW);
    digitalWrite(motor2Pin2, HIGH);

    Serial.println("TURN");
}

void forward(){
  digitalWrite(enable1Pin, HIGH);
  digitalWrite(motor1Pin1, HIGH);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, HIGH);
    digitalWrite(motor2Pin2, LOW);
    Serial.println("FORWARD ");
}


void wait(){
  digitalWrite(motor1Pin1, LOW);
    digitalWrite(motor1Pin2, LOW);
    digitalWrite(motor2Pin1, LOW);
    digitalWrite(motor2Pin2, LOW);
     digitalWrite(led_stop, HIGH);
    Serial.println("STOP ");
}

In che senso : "ora non più"? i motori non vanno?? Spiega meglio...

-devo collegare l'uscita GND di arduino al GND del pacco batterie che alimenta il circuito driver dei motori?

Questo é la base perché riesci a misurare una tensione.

La tensione si legge SEMPRE tra 2 punti.

Se colleghi solo l' uscita Arduino al entrata del L293 quello non ha riferimento col quale puó sapere qual'é la tensione (H o L) che gli da Arduino.

Ciao Uwe

ora i motori non girano piu' se collego le uscite dei motori all L293, ho controllato le uscite digitali da Arduino sono ok, i motori funzioanno se collegati direttamente alle batterie, non mi resta che pensare che ci sia qualche problema sul L293. Giusto? Ho provato anche a rifare il cablaggio, ma niente!

PS: grazie UWE per la precisazione, sono un principiante! :D

finalmente ho risolto il problema e volevo condividere se qualcuno si trovera' nella mia stessa condizione in futuro.

il problema era l'alimentazione: la tensione minima di alimentazione dell' L293 è 5V, il mio pacco batterie si era scaricato ed era sotto tale soglia per cui non dava corrente ai motori

ciao : )

:D Ottimo!! Archiviato allora!!! ;)

Cioè hai aperto questo Topic perché non avevi misurato le batterie? :fearful:

nella mia ignoranza pensavo che se collegando direttamente le batterie ai motori e questi giravano... allora era tutto ok anche per l'integrato... sono stato un deficiente! scusate

Con i led smd credo la schermatura non sia necessaria ma parlo da profano… per questo motivo voglio fare questa prova

Chi più chi meno lo siamo stati tutti. In effetti Vss non deve scendere sotto 4.5Vdc probabilmente il pacco batterie sotto carico scende sotto 4.5Vdc e nel 293 smette proprio di funzionare la logica di comando.

Ciao.

massit78: nella mia ignoranza pensavo che se collegando direttamente le batterie ai motori e questi giravano... allora era tutto ok anche per l'integrato... sono stato un deficiente! scusate

Si impara dagli errori, sei solo "deficente" se rifai sepre lo stesso errore sapendo che é sbagliato.

Comunque dalla Tua descrizione del errore era quasi imposibile capire l' errore, anche perché:

-devo collegare l'uscita GND di arduino al GND del pacco batterie che alimenta il circuito driver dei motori?

pensi piú alla alimentazione dei stadi di potenza del L293 che alla alimentazione della logica del L293.

Ciao Uwe