Cherokey 4WD

Buongiorno a tutti, ho da poco ricevuto uno Cherokey 4WD della DRFROBOT (http://www.dfrobot.com/index.php?route=product/product&keyword=che&product_id=1233#.VmVZXBGq). Volevo provare uno sketch molto semplice tanto per vederne il funzionamento, ovvero, farlo andare avanti, indietro, destra e sinistra. Il problema sorge nel effettuare le rotazioni. Il robot fa fatica a girare verso destra e sinistra, a volte non si muove neanche. Cosa potrebbe essere? Ho già mandato una mail alla DRFROBOT ed attendo risposta, ma valevo anche un vostro parere. Se avete bisogno di qualche altra informazione fatemi sapere. Grazie

Come lo alimenti ?

Con 5 batterie stilo AA da 1.5 v ciascuna

GianInter25: Con 5 batterie stilo AA da 1.5 v ciascuna

Non ricaricabili ? Quelle ricaricabili sono da 1,2V di solito. Non è che hai stretto troppo alcune viti ? O le ruote sono inserite "troppo" in profondità ?

No, non sono ricaricabili, ammetto di aver preso le prime batterie trovate a casa quindi magari non sono il top, ma sono cariche :D Per quanta riguarda le ruote non credo siano troppo in profondità ma posso fare una prova. Posso però notare che quando girano non ruotano perfettamente ma sembrano "storte", spero di essermi spiegato.

Buongiorno! :) Ho appena fatto delle prove. Ho allontanato le ruote dallo chassi ed ho fatto effettuare al robot solo rotazioni.

Test 1: ROTAZIONE VERSO DESTRA E SINISTRA CON VALORI (vel_sx 250,vel_dx 250) Le rotazioni avvengono a fatica non arrivano ai 90° che ci si aspetta, dorse si sfiorano i 30°.Il robot ha delle ruote in gomma provate sia su marmo, parquet e tappeto (sembro un maniaco :sweat_smile: ) Quando sollevo il robot da terra ovviamente la velocità delle ruote aumenta ma non sembra il massimo.

Test 2: ROTAZIONE VERSO DESTRA E SINISTRA CON VALORI (vel_sx 250, vel_dx 0);(vel_sx 0, vel_dx 250) In questo test per effettuare la rotazione uso solo 2 motori. Posso usare solo un lato, o dx o sx, poichè il robot è dotato di H-brige L298P e di 2 jumperini che collegano i motori dello stesso lato. (SPERO DI ESSERE STATO CHIARO :D) In questa fase i motori in funzione sembrano avere più potenza. Sollevo anche questa volta il robot, la velocità dei motori sembra superiore, ma secondo me potrebbero fare di più.

A questo punto ho cercato le specifiche dei motori che di seguito vi allego:

Electrical Characteristics:

Operating Voltage Range: 3~7.5V Rated Voltage: 6V Max. No-load Current(3V): 140 mA Max. No-load Current(6V): 170 mA No-load Speed(3V): 90 rpm No-load Speed(6V): 160 rpm Max. Output Torque: 0.8 kgf.cm Max. Stall Current: 2.8 A

Avendo 5 batterie (neanche di chissà quale marca :D ) da 1,5V ciascuna quindi siamo a 7,5v deduco siano insufficienti per far muovere il robot. Volevo sollevare un altro problema. Ho notato che le ruote quando girano, attaccate e non allo chassi, non ruotano perfettamente sul loro asse. Potrebbe essere piegato?

Grazie

che codice usi?

Di seguito codice usato per far girare a destra e sinistra il robot. L'unica cosa che cambia nei 2 test che ho fatto sono le variabile sx_vel e dx_vel. Vi pongo un'altra domanda a questo punto: Sono in possesso di un Motor Shield Arduino R3 ed in un altro driver per motori acquistato tramite uno starter kit. Potrebbe uno di questi due "collaborare" con l'H-brige presente già nel robot? Se si, come?

Grazie

int vel_M1=5;
int vel_M2=6;
int dir_M1=4;
int dir_M2=7;
int led=13;

void setup()
{
  Serial.begin(9600);
}
void robotTurnRight(int sx_vel, int dx_vel)  //Robot gira a destra
{
  analogWrite(vel_M1,dx_vel);
  digitalWrite(dir_M1,HIGH);
  analogWrite(vel_M2,sx_vel);
  digitalWrite(dir_M2,LOW);
  Serial.println("ROBOT GIRA A DESTRA");
}
void robotTurnLeft(int sx_vel, int dx_vel)  //Robot gira a sinistra
{
  analogWrite(vel_M1,dx_vel);
  digitalWrite(dir_M1,LOW);
  analogWrite(vel_M2,sx_vel);
  digitalWrite(dir_M2,HIGH);
  Serial.println("ROBOT GIRA A SINISTRA");
}
void loop()
{
  robotTurnRight(250,250);
  delay(1000);
  robotTurnLeft(250,250);
  delay(1000);
}

non hai settato i pin nel setup! pinMode(vel_M1,OUTPUT); etc,etc,etc

Errore mio. Ho corretto il codice, ho riprovato ma ancora non completa la rotazione. E’ come se si bloccasse ad un certo punto…tanto che è capitato che si piantasse e si riavviasse Arduino. Batterie o il problema è altro??

torna a postare il codice

istruzioni come vedi servono 6pile e non 5

Ma nella confezione c'è un socket per 5 batterie stilo, mica 6. Per un attimo mi hai fatto pensare di essere un perfetto scemo che non mi ero accorto che mancava una batteria :grinning: :grinning: Di seguito il codice corretto.

int vel_M1=5;
int vel_M2=6;
int dir_M1=4;
int dir_M2=7;

void setup()
{
  pinMode(vel_M1,OUTPUT);
  pinMode(vel_M2,OUTPUT);
  pinMode(dir_M1,OUTPUT);
  pinMode(dir_M2,OUTPUT);
  Serial.begin(9600);
}
void robotTurnRight(int sx_vel, int dx_vel)  //Robot gira a destra
{
  analogWrite(vel_M1,dx_vel);
  digitalWrite(dir_M1,HIGH);
  analogWrite(vel_M2,sx_vel);
  digitalWrite(dir_M2,LOW);
  Serial.println("ROBOT GIRA A DESTRA");
}
void robotTurnLeft(int sx_vel, int dx_vel)  //Robot gira a sinistra
{
  analogWrite(vel_M1,dx_vel);
  digitalWrite(dir_M1,LOW);
  analogWrite(vel_M2,sx_vel);
  digitalWrite(dir_M2,HIGH);
  Serial.println("ROBOT GIRA A SINISTRA");
}
void loop()
{
  robotTurnRight(250,250);
  delay(500);
  robotTurnLeft(250,250);
  delay(500);
}

per vedere se si resetta nella funzione setup() metti un Serial.println("Start "); dopo la .begin() in questo modo sei sicuro. per me 5 pile sono poche, dato che sono a 1.4v hai 7volt totali, io proverei ad aggiungere una pila in serie, MA SENZA UNO SCHEMA È DIFFICILE fare supposizioni anche perché quest'anno nessuno mi ha regalato la sfera di cristallo.

Verificherò se si riavvia come mi consigli. In realtà le batterie sono da 1.5v quindi arrivo ad un totale di 7.5. Ma solo i motori minimo vogliono 3v quindi anche per me è sottodimensionato. Ho alternative valide per l'alimentazione? Potrei sostituire le normali pile con qualcosa che sia anche ricaricabile? Girovagando su internet ho trovato le lipo...considerando che questo robot sarà dotato successivamente anche di 1 modulo Bluetooth 1 modulo Wifi e qualche servo motore da quanto dovrei prenderla?

ma sono 1.5 a vuoto! è inutile prendere altre pile se non sai che tensione minima serve. io proverei con una pila in più

Dici convenga comprarla alla fine quando ho il progetto quasi completo? Comunque proverò lo stesso mettendo una pila in serie.
Ti propongo un altro quesito…
Se vedi l’immagine(http://www.dfrobot.com/index.php?route=product/product&product_id=100) dei motori in dotazione nel kit vedrai che vi sono due assi: 1 per la ruota, l’altro? Può essere che serva a ridurre o aumentare la coppia del motore?

è un albero a due assi.
Non è che puoi selezionare l’alimentazione del motore? dovresti metterla a 6v

E l'asse interno come lo potrei usare?? Ti avevo chiesto se servisse per diminuire o aumentare la coppia perchè in maniera ignorante ho fatto una prova, ovvero ho fatto girare la ruota in un senso tenendo l'asse interno. La ruota girava e l'asse rimaneva fermo quindi pensavo fosse qualche sorta di regolatore. Per quanto riguarda l'alimentazione del motore non c'è nulla che mi consenta di cambiarla

tester alla mano, misura quanti volt escono