Aiuto per compilare uno sketch per Arduino

#3
Ciao Mamo, si avevo già visto. ( ho scritto una richiesta per te, proprio sulla discussione sul tuo dolly) approfitto qui per chiederti un aiuto sulla realizzazione di uno sketch di controllo con menu Lcd. Il tuo sketch( molto funzionale...complimenti) non è adatto per il mio progetto (molto semplice). Ho già realizzato uno sketch di controllo motoriduttore ( se vuoi posso mandartelo) devo solo controllarlo da menu Lcd senza ogni volta ricaricare le nuove funzioni da computer. Non sono bravo a compilarlo sketch. Puoi aiutarmi a farlo?

Grazie. Saverio
 

Mamo

Donatore generoso
#4
Se posso, dimmi pure. Intanto alcune domande per capire meglio.
Che LCD stai usando o hai intenzione di usare?
Stai utilizzando dei bottoni?
Cosa vuoi comandare?
 
#5
Grazie per la tua disponibilità. Dunque, quello che devo comandare è un motoriduttore cc da controllo Lcd 16x2 (molto comune ACM 1602B) con tre/quattro bottoni. Ho già disponibile un arduino V3 con il motor shield FE( driver per controllo motore sia stepper che motori cc). Quello di cui chiedo il tuo intervento è lo scketch per controllare diverse funzioni, tipo: controllo tempo di funzionamento mot., tempo di stop mot. , reset menu e avanzamento avanti-dietro. In pratica il motore deve girare per tot sec, fermarsi per tot sec. E' possibile? Ti allego lo sketch mio

* Sketch Test Motori Shield FE
* @licenze: Creative common
*/
// include the library code:


//motore
int pinDirA=2;
int pinDirB=8;
int pinPwmA=3;
int pinPwmB=9;

// Led
int pinLed = 13; //leed


void setup()
{


digitalWrite( pinLed, LOW );

pinMode( pinDirA,OUTPUT );
pinMode( pinPwmA,OUTPUT );
pinMode( pinDirB,OUTPUT );
pinMode( pinPwmB,OUTPUT );

pinMode(pinLed, OUTPUT);
}


void loop() {



// Test: rotazione dei motori
// stessa direzione, vel
digitalWrite( pinDirA,HIGH );
digitalWrite( pinDirB,HIGH );
// velocità massima
analogWrite( pinPwmA,100 );
analogWrite( pinPwmB,200 );

delay(1000);



// Test: stop dei motori
// nessuna direzione
digitalWrite( pinDirA,HIGH );
digitalWrite( pinDirB,HIGH );
// velocità nulla
analogWrite( pinPwmA,0 );
analogWrite( pinPwmB,0 );

delay(5000);
}
 
#7
Si conosco lo sketch di Alfieri ho chiesto aiuto anche a lui, ma non ha tempo, cosi mi ha detto. Il motore driver FE è a castello di arduino. Se devo cambiare Lcd fammi sapere. Grazie
 

Mamo

Donatore generoso
#8
Ma l'LCD lo hai già o lo devi acquistare?
Se lo hai prova così:



#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 7, 6, 5, 4);
//Pin
int pinDirA=2;
int pinDirB=8;
int pinPwmA=3;
int pinPwmB=9;
int pinLed = 13; //leed

void setup()
{
pinMode( pinDirA,OUTPUT );
pinMode( pinPwmA,OUTPUT );
pinMode( pinDirB,OUTPUT );
pinMode( pinPwmB,OUTPUT );
pinMode(pinLed, OUTPUT);
digitalWrite( pinLed, LOW );
lcd.begin(16, 2);
}

void loop() {
lcd.setCursor(0, 0);
lcd.print("Test motori");
lcd.setCursor(0, 1);
lcd.print("Stessa direzione");

// Test: rotazione dei motori
// stessa direzione, vel
digitalWrite( pinDirA,HIGH );
digitalWrite( pinDirB,HIGH );
// velocità massima
analogWrite( pinPwmA,100 );
analogWrite( pinPwmB,200 );
lcd.setCursor(0, 0);
lcd.print("Attesa ");
lcd.setCursor(0, 1);
lcd.print(" ");

delay(1000);

lcd.setCursor(0, 0);
lcd.print("Test motori");
lcd.setCursor(0, 1);
lcd.print("nessuna direzione");
// Test: stop dei motori
// nessuna direzione
digitalWrite( pinDirA,HIGH );
digitalWrite( pinDirB,HIGH );
// velocità nulla
analogWrite( pinPwmA,0 );
analogWrite( pinPwmB,0 );
lcd.setCursor(0, 0);
lcd.print("Attesa ");
lcd.setCursor(0, 1);
lcd.print(" ");

delay(5000);

}
 
#9
Grazie. non mi aspettavo cosi veloce, di nuovo grazie. Proverò questa sera, appena rientro a casa e ti farò sapere domattina. Si, Lcd è il tipo di quello usato da M.Alfieri un modello 16x2 (16 caratteri per due file) molto comune nei progetti arduino.
Un saluto

Saverio
 

Mamo

Donatore generoso
#10
Beh quello sopra è solo per vedere se LCD e arduino comunicano.
Occhio che ti ho cambiato i pin da utilizzare, perchè in parte li stavi già utilizzando per la scheda motore.
 

chi siamo

Time Lapse Italia è la community italiana dedicata alla fotografia time-lapse.

Impara la tecnica, condividi le tue esperienze e migliorati guardando i video più belli... gratuitamente ed in italiano!

© 2013-18 Time Lapse Italia - Creato da Marco Famà

invia il tuo video

Segui BENE tutte le istruzioni disponibili in questo breve tutorial e raggiungi la home-page di Time Lapse Italia
Alto