Gui Processing per controllare un motore stepper

Salve a tutti, è la prima volta che scrivo un post, quindi vogliate scusarmi se dovessi tralasciare qualcosa o dovessi non farmi capire.
Ho una scheda Arduino Uno e una motorshield FE di questo tipo: ARDUINO MOTOR SHIELD FE.

Ho connesso uno stepper alla shield e questa ad arduino e scritto uno sketch che fa ruotare il motore ad una certa velocità in un certo senso di rotazione. Lo sketch va bene e fa il suo dovere.
Ora però vorrei fare un passo avanti: vorrei creare una GUI con pochi tasti (mi basterebbero anche On e Off per cominciare) con la quale sia in grado di avviare il motore semplicemente pigiando il pulsante on e spegnerlo con il relativo off.
Lo sketch utilizzato è il seguente:

int motorPinDirA = 2;
int motorPinDirB = 8;
int motorPinPwmA = 3;
int motorPinPwmB = 9;
int delayTime = 50; 

void setup(){
pinMode(motorPinDirA, OUTPUT);
pinMode(motorPinDirB, OUTPUT);
pinMode(motorPinPwmA,OUTPUT);
pinMode(motorPinPwmB, OUTPUT);
}

void loop(){
digitalWrite(motorPinDirA, HIGH);
digitalWrite(motorPinDirB, LOW);
digitalWrite(motorPinPwmA, HIGH);
digitalWrite(motorPinPwmB, LOW);
delay(delayTime);

digitalWrite(motorPinDirA, LOW);
digitalWrite(motorPinDirB, HIGH);
digitalWrite(motorPinPwmA, LOW);
digitalWrite(motorPinPwmB, HIGH);
delay(delayTime);

digitalWrite(motorPinDirA, LOW);
digitalWrite(motorPinDirB, LOW);
digitalWrite(motorPinPwmA, HIGH);
digitalWrite(motorPinPwmB, LOW);
delay(delayTime);

digitalWrite(motorPinDirA, LOW);
digitalWrite(motorPinDirB, LOW);
digitalWrite(motorPinPwmA, LOW);
digitalWrite(motorPinPwmB, HIGH);
delay(delayTime);

}

Molti sul web dicono di poter usare Processing per costruire GUI di questo tipo ma non ho trovato esempi simili o comunque delle guide/tutorial a cui attenermi, visto che sono un principiante in questo ambito. Qualcuno mi potrebbe dare una dritta, un consiglio, dei suggerimenti?

Grazie mille a chi risponderà :slight_smile:

Dovresti Imparare a gestire una comunicazione seriale tra PC e Arduino.

Dalla parte di Arduino dovresti imparare a servirti della classe Serial

Gli esempi non sono difficili da trovare

Se il programma di gestione lo vuoi sviluppare con Processing potresti partire dallo sketch di esempio nella sezione Libraries => SimpleWrite

MLi23:
Salve a tutti, è la prima volta che scrivo un post, ...

Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento: Regolamento

Come detto da @Roberto, Processing e Arduino comunicheranno via seriale (USB) perciò devi capire prima come comunicare tra i due. Mandando "frasi" o comandi che sai far interpretare ad Arduino. Esempio se spedisci da Processing la parola "S010#" potrebbe voler dire Sinistra a velocità 10, "D255#"-> destra velocità 255. Il # solo per far sapere che il comando è concluso

Per la GUI in Processing c'e' una buona libreria:

ed ha un suo "disegnatore":

Si scusate, non ho scritto a che livello sono xD

Ho comprato uno starter kit un annetto fa e da allora mi diletto in progettini semlplici, ma mai avuto a che fare con comunicazione seriale. L'unica volta che ho costruito una GUI l'ho fatto con Matlab per accendere o spegnere diversi LEDs, ma adesso è qualcosa di più complicato, che con Matlab non riesco a fare :0

Per ora cercherò di studiare qualcosa su come stabilire una connessione seriale con Processing con qualche esempio come giustamente mi fate notare. Spero che riesca a gestire la libreria che mi avete consigliato... Eventualmente richiederò aiuto su questo post, allegando dove sono arrivato e con che risultati (potrebbe servire a qualcuno come me). Quindi terrei ancora aperto questo post, scriverei "RISOLTO" solo fra qualche giorno (o almeno spero :~ )

Intanto grazie a tutti del tempo dedicatomi e vi auguro una buona giornata!

Senti visto che non hai mai avuto a che fare con la connessione seriale di Arduino non sarebbe male iniziare solamente da quella e poi integrare con processing? L'IDE mette a disposizione un terminale con cui puoi comunicare con Arduino, inizia a creare una seriale verso il PC e fatti scrivere qualcosa da Arduino in un secondo momento vedrai di intercettare la seriale da Processing.

@Roberto farò così! grazie del consiglio :slight_smile: