Pages: [1] 2   Go Down
Author Topic: Motor drive problema principiante  (Read 712 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

CIao a tutti, mi hanno regalato questa motor drive, ma purtroppo sono ancora un principiante e non so propio come collegare il tutto ad arduino e scrivere il codice.
Ho provato a cercare qualcosa su internet ma trovo solo documentazione sulla shield r3
« Last Edit: May 22, 2013, 06:10:52 am by el_machico » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora un servo e un motore dc sono riuscito a farli funzionare, il problema è che il motore dc gira davvero lento, ho messo una batteria da 9v sul modulo !
 dite che devo maggiorare la batteria?
sull arduino ho collegato:
ENA -> 5V
A1-> PIN4
A2 -> PIN5
GND -> GND ARDUINO

Il motore dc è come se prendesse solo la corrente da arduino, e non dal modulo!
Logged

Italy
Offline Offline
Edison Member
*
Karma: 112
Posts: 1111
O ti distingui o ti estingui
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

E' molto bella la foto presa da internet ma non rispecchia la tua situazione.   smiley-grin

Esempio:
Ci sono ponticelli? Se si dove?
Se posti anche il codice possiamo darti una mano.
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se posti anche il codice possiamo darti una mano.

Meglio se posta il datasheet della scheda o il link al sito del produttore, ad occhio direi che è composta da due L298 che permettono di controllare quattro motori DC oppure due stepper, però siamo nel campo delle ipotesi senza riferimenti.
Logged

Italy
Offline Offline
Edison Member
*
Karma: 112
Posts: 1111
O ti distingui o ti estingui
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Meglio se posta il datasheet della scheda o il link al sito del produttore, ad occhio direi che è composta da due L298 che permettono di controllare quattro motori DC oppure due stepper, però siamo nel campo delle ipotesi senza riferimenti.

E' questa: http://dx.com/p/4-channels-dc-servo-stepper-motor-driver-module-for-arduino-156666
Quindi la vedo dura con la documentazione...

edit
ho trovato qualcosa: http://seller.tradeglobals.com:8089/SRMImages/ProductRequirement/20121127/four%20moto%20driver%20datasheet.xls
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Purtroppo non trovo nessun datasheet....esatto è propio quella di dealextreme!
Comunque con questo modulo posso controllare 4 motori dc e 4 servo, o 4 servo e 2 motor step!
Se volete vi posto la foto del mio collegamento, ma è veramente basilare.

Questo è un codice di prova :
Code:
int motorPin1 = 4;
int motorPin2 = 5;
void setup(){
pinMode (motorPin1, OUTPUT);
pinMode (motorPin2, OUTPUT);
}
void loop(){
  digitalWrite (motorPin1, HIGH);
  digitalWrite (motorPin2, HIGH);
 delay ;1000;
digitalWrite (motorPin1, LOW);
digitalWrite (motorPin2, HIGH);
delay ;1000;
digitalWrite (motorPin1, LOW);
digitalWrite (motorPin2, LOW);
delay ;1000;
}

edit il collegamento veramente basilare:
« Last Edit: May 22, 2013, 09:11:02 am by el_machico » Logged

Italy
Offline Offline
Edison Member
*
Karma: 112
Posts: 1111
O ti distingui o ti estingui
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se guardi al post precedente ho postato una sottospecie di datasheet che ti dice come controllare la scheda.
Inizia da li. Ciao

edit
Ma a che pin di Arduino hai collegato il GND della scheda?  smiley-roll-blue
« Last Edit: May 22, 2013, 09:16:07 am by pighixxx » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Alla fine ho risolto, sbagliavo il collegamento.
Ora riesco a far funzionare tutto...grazie lo stesso!
Pero sorge un altro problema...con un motore dc normale gira una meraviglia, ma ho provato a collegare un motore lego (9v) e girano propio lenti...sono consapevole del fatto che questi motori succhiano abbastanza!
COsa devo fare?
Logged

Firenze
Offline Offline
Jr. Member
**
Karma: 0
Posts: 62
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Guarda ho avuto lo stesso problema , purtroppo se lo alimenti con batteria a 9v funzionano male per i pochi mA, se lo hai usa l'alimentatore di arduino e collega il motor driver al pin vin di arduino, ma fai attenzione a quanto eroga l'alimentatore se è come il mio che manda 12v e se il motorino è da 9v è probabile che dovrai mettere una resistenza fra il pin vin di arduino e l'alimentazione del driver.
« Last Edit: May 23, 2013, 04:57:42 am by Vespucci » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

SI ma siccome sto costruendo un rover non posso tenere l alimentatore...  smiley-yell
devo per forza usare la batteria!
Comunque ho fatto una prova con il tester sulla board, all uscita DC mi eroga 4,5v e non 9! Perche?
Logged

BZ (I)
Online Online
Brattain Member
*****
Karma: 234
Posts: 20183
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

SI ma siccome sto costruendo un rover non posso tenere l alimentatore...  smiley-yell
devo per forza usare la batteria!
Comunque ho fatto una prova con il tester sulla board, all uscita DC mi eroga 4,5v e non 9! Perche?
Le batterie da 9V sono fatte per poter dare correnti limitate. cosa Ti aspetti da una batteria con na capacitá di 200mAh che possa darti 10A per 112 secondi? Ha una resistenza interna rilevante e quando chiedi tanta corrente hai una perdita di tensione notevole. oltre questo penso che hai anche una batteria ormai vuota. usa un altro tipo di batteria per esempio 2 da 4,5V modello 3LR6

Ciao Uwe
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao uwefed , grazie per la risposta.
Purtroppo in elettronica non sono molto pratico, mastico molto di piu l informatica e un po di meccanica.
Quindi se ho capito bene: quando gli Ampere non sono abbastanza il voltaggio scende?
Se quello che ho capito è giusto, ti pongo un altra domanda.
La lego tempo fa, faceva un programmatore (RCX) per comandare questi motori e sensori...
Questo programmatore funziona con 6 batteria da 1.5v, Come è possibile che riesca a farli girare ? smiley-slim
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora ho usato giustamente 2 batteria da 4,5 v e tutto gira bene, anche se quelle batteria pesano un sacco e il rover sforza abbastanza...ma è l ' ultimo dei miei problemi.
Ora sorge il nuovo problema, volevo configurare il tutto con un modulo bluetooth hc07...ecco che sorgono i problemi!
Questo modulo ha i pin :
vcc
gnd
rx
tx
state
key
Io ho collegato tutto giustamente apparte lo state e la key che penso ora non mi interessano.
Ma il modulo non comunica nulla, e nell IDE di arduino la porta seriale in uscita non la vedo!!!sto diventando matto da 2 giorni.
Ho provato pure ad aprire la comunicazione con putty e nulla...Mi sorge il problemA che il modulo sia rotto.

Riuscite ad aiutarmi? premetto che il pairing è stato fatto tutto corretto, vedo le 2 porte COM da gestione dispositivi.
LO sketch è il solito che si usa per comunicare da seriale
Logged

Italy
Offline Offline
Edison Member
*
Karma: 112
Posts: 1111
O ti distingui o ti estingui
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Io ho collegato tutto giustamente...

Ciao, posta una foto dei collegamenti
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

gnd--->gnd arduino
vcc--->3,3
rx--->pin2 arduino
rx--->pin3 arduino



e questo è lo sketch:
Code:
#define rxPin 2
#define txPin 3
#include <SoftwareSerial.h>
SoftwareSerial mySerial(rxPin, txPin);

void setup()
{
Serial.begin(9600);
Serial.println("Start");

mySerial.begin(115200);
/* add setup code here */
mySerial.write("AT+VERSION");
}

void loop()
{
  if (mySerial.available())
    Serial.write(mySerial.read());

}


Dovrebbe restituirmi sulla seriale (USB) la versione del modulo, invece nulla.
Logged

Pages: [1] 2   Go Up
Jump to: