Salve a tutti! Sto lavorando ad un progetto che consiste essenzialmente nel controllare un braccio robotico costituito da sei servomotori.
Vorrei fare in modo, ad esempio, di far girare il motore fintanto che il tasto 'A' della tastiera sia premuto. Tuttavia non so come far inviare automaticamente il comando sena ogni volta dover cliccare il tasto invio della tastiera. Ho letto dell'impostazione "no line ending" ma non funziona, devo sempre premere invio.
Buongiorno e benvenuto nella sezione Italiana del forum,
prima di tutto ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post; questa volta esso è stato spostato, da un moderatore della sezione di lingua Inglese, nella sezione di lingua Italiana ... la prossima volta potrebbe venire direttamente eliminato, dopo di che ...
P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposita discussione, nel rispetto del succitato regolamento nessuno ti risponderà (eventuali risposte o tuoi ulteriori post, verrebbero temporaneamente nascosti), quindi ti consiglio di farla al più presto.
P.P.S.: Evitate di utilizzare la traduzione automatica fatta dal browser ... vi impedisce di capire la lingua della sezione dove andate a scrivere ...
Sto lavorando ad un progetto che consiste nel programmare un braccio robotico composto da 6 servomotori in modo da farli compiere delle traiettorie, spostare oggetti, ecc ecc..
Il primo step che volevo ottenere è quello di comandare i motori singolarmente assegnando delle lettere della tastiera: finchè la lettera "A" della tastiera rimane premuta allora il motore "x" ad esso associato ruota in una direzione, appena lascio il tasto, il motore si ferma. Vorrei fare questa cosa per ognuno dei motori, tuttavia da seriale devo sempre premere invio per comunicare l'inserimento della lettera desiderata.
Ho già letto una discussione in questo forum in cui un ragazzo presentava lo stesso problema e gli è stato consigliato di impostare la seriale in modo da consentire l'invio automatico. Conosco la possibilità di impostare la seriale su "No Line Ending" ma facendolo devo comunque premere invio ad ogni lettera.
Spero sappiate aiutarmi! Grazie mille a tutti in anticipo
Attenzione, il cross-posting è proibito ... ho riunito in questo tuo thread originale il nuovo che hai creato. Cortesemente NON aprire più thread sullo stesso argomento. Grazie.
Mi spiace dirtelo, ma il tuo progetto è infattibile
per alcune ragioni fondamentali,
prima fra tutte che i servomotori non hanno un anello di feed-back, e questo ti impedisce varie cose, tra le quali sapere a che punto della corsa sono appena accesi, e questo ti porta a fare il primo movimento di ogni asse "al buio" con svariati rischi
al secondo posto quello che vuoi fare come comando è impossibile, lato Arduino
tu vorresti che lato PC avvenisse una trasmissione continua della lettera di comando o in alternativa avvenisse la trasmissione di un comando alla pressione e uno differente al rilascio del tasto
entrambe queste cose vanno fatte lato PC
ti consiglio vivamente una bottoniera locale ad arduino, oppure un gruppo di joystick
se proprio vuoi la tastiera di un PC collega una tastiera PS2 diretta ad arduino, non sarà una cosa facile gestirla per avere fluidità di movimenti, ma almeno non hai il "peso" della seriale
Per questo progetto ho preso ispirazione dal video di JakiDale, in cui lui riesce a controllare il braccio robotico nel modo che ho descritto sopra.
Riguardando il video ho appena notato che lui utilizza TeraTerm, di cui io non ho la minima conoscenza. Non mostra il codice, ma riesce a comandare singolarmente i motori in base alla pressione dei tasti.
Certamente! Nel frattempo se qualcuno sapesse darmi consigli per usare teraterm mi farebbe un favorone
Al momento quando provo a stabilire una comunicazione seriale sulla COM in cui si trova Arduino ottengo un messaggio di errore in cui si dice che l'accesso alla porta è negato
AGGIORNAMENTO:
La notte ha portato consiglio, usando teratherm riesco ad incrementare o decrementare una variabile (che sarà poi l'angolo del motore) solo se un determinato tasto della tastiera è premuto, senza dover premere invio
Settimana prossima applicherò il tutto ai sei motori del robot e vi aggiornerò nuovamente