Slider per fotografia con Nema 17 - aiuto per codice -

Realizzazioni home made di attrezzature, macchine e/o parti di esse di qualsiasi tipologia diversa da quelle normalmente trattate nel Forum.
Rispondi
geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 15:13

Ciao a tutti
ho costruito, con un Nema17 0,4A 12V, barre da 8mm e manicotti a ricircolo di sfere, uno slider per fotocamera. Ho usato Arduino Mega e una sketch di un americano. Funziona perfettamente, ho anche inserito (per quel poco che conosco di arduino) delle segnalazioni con dei led e delle pause, con il "delay" per far si che una volta impostata la quantità di spostamento che dovrà fare il carrello, questo si muova dovo x secondi dal comando di start.
Ora, non mi intendo di Arduino, nel senso che non lo conosco tanto da riuscire a programmare autonomamente o modificare per bene lo sketch, ma mi piacerebbe poter modificare anche la velocità di scorrimento del carrello.
Se qualcuno del forum se ne intende, potrebbe modificarlo per me? Se necessario posso anche pagare il disturbo.
Ho provato a rivolgermi anche sul forum di Arduino ma, li non è permesso chiedere aiuto per compilare o modificare sketch...li puoi solo postare cose che realizzi tu e chiedere consigli (è il loro regolamento e và rispettato...).

Lo slider è venuto molto bene, l'ho costruito con molta cura ma...sarebbe ottimale poter controllare anche la velocità.

Vi posto il link del progetto, dove c'è anche il codice:
https://www.brainy-bits.com/diy-stepper-miter-box/

Anche se conoscete un'amico che sà mettere le mani su Arduino.

P.S.
con lo stesso progetto potrei anche riuscire, finalmente, a controllare una piccola fresa della proxxon per la quale acquistai gli adattatori per i Nema 17 da attaccare alle due viti senza fine del tavolo a croce.

Vi ringrazio comunque in anticipo, che riusciate ad aiutarmi o no. Spero di non aver infranto alcuna regola del forum (almeno leggendo il regolamento mi sembra di no...ma non si sà mai)

Buona giornata.

Bruno

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da hellfire39 » mercoledì 12 giugno 2019, 16:07

Leggiti la documentazione di AccelStepper: https://www.airspayce.com/mikem/arduino ... epper.html

Il comando che setta la velocità è stepper.setMaxSpeed(1500);

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 17:21

Ciao, grazie per la risposta

Si, le stringhe del MaxSpeed e dell'Acceleration le ho già settate per come servono a me " in linea di massima". Come già detto ho anche incluso un Delay con la configurazione dei pin di uscita per due led ed i relativi lampeggi ad inizio e fine corsa.

Quello che mi servirebbe, se possibile, se riuscirò a trovare qualcuno capace di farlo, è modificare il codice per aggiungere (sempre tramite tastierino numerico) la possibilità di impostare anche la velocità di scorrimento del carrello.

Io non sò se questo sia il forum piu opportuno, tuttavia ci provo...magari fra di voi c'è qualcuno che conosce un'amico che sa farlo.
Se non riuscirò a far modificare il codice lo terrò così, però devi ammettere che sarebbe una modifica che lo renderebbe perfetto.

xxxxxxxxxxxxxxxxxxxxxx

Grazie e buona serata

le immagini devono essere allegate, vedi regolamento
Ultima modifica di Anonymous il mercoledì 12 giugno 2019, 20:31, modificato 1 volta in totale.
Motivazione: link immag. rimosso, avviso

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da hellfire39 » mercoledì 12 giugno 2019, 18:19

Azz! Quant'è lunga la slitta!

Per l'inserimento della velocità da tastierino, si tratta, grossomodo di duplicare le funzioni già esistenti che "ascoltano la pressione dei tasti".

Purtroppo non è proprio una modifichina da due minuti che si possa fare al volo!!! :cry:

Io, me la sono cavata con un potenziometro collegato ad un ingresso analogico. Con impostazione della velocità approssimativa.

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 18:50

Beh, ho trovato delle barre da 8mm per 1000 e le ho prese. Volevo una slitta abbastanza lunga. Venerdi mi consegnano gli inserti della Igus - rj4jp che faranno molto meno rumore di quelli che vedi in foto (terrò i blocchetti, e inserirò gli rj4jp).

Io stò comunque cercando continuamente in rete informazioni per capire lo sketch che ha usato l'americano.
Anche io avevo pensato di usare un potenziometro, andrebbe benissimo anche quello, ci mancherebbe, ma, attualmente non ci sono riuscito (ad inserirlo su questo sketch....a farlo separatamente se ne trovano molti di esempi per L'Easy Driver, non è difficile). Quando vado a vedere uno schema qualsiasi di quelli che ho trovato in rete (per inserire il potenziometro), poi mi accorgo che i pin dell'Easy Driver sono già occupati...e li mi blocco.

Comunque, mentre continuo a cercare, se a qualcuno viene in mente anche come inserire un potenziometro su questo sketch, ben venga.

Non farò nessun Up, voglio assillare troppo :wink:

Grazie Hellfire39, buona serata :wink:

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da hellfire39 » mercoledì 12 giugno 2019, 21:56

Per il potenziometro il collegamento è facile. Basta procurarsi un potenziometro lineare da 4k7 (o 10k o anche 1k).
Colleghi i due pin più esterni a 0V e 5V di Arduino. Il pin intermedio, va collegato ad un ingresso analogico di Arduino. Sono quelli indicati come A1, A2, A3.

Gli esempi li trovi installati con Arduino: File -> Esempi -> Analog -> AnalogInput

Codice: Seleziona tutto


int sensorPin = A3;    // select the input pin for the potentiometer
int sensorValue = 0;  // variable to store the value coming from the sensor
int val = 0;

void setup() {
  // declare the ledPin as an OUTPUT:
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // read the value from the sensor:
  sensorValue = analogRead(sensorPin);
  // rimappa l'ingresso analogico (che va da 0 a 1023) nel range seguente (0, 3000)
  val = map(val, 0, 1023, 0, 3000);

}

Al posto di 3000 metti il valore massimo di velocità che puoi ottenere dal tuo sistema.
Al posto del secondo zero puoi mettere anche un valore minimo di velocità.


Nello scketch pubblicato, metterei il codice nella funzione:

Codice: Seleziona tutto

void movestepper(int z)

Prima della righe che eseguono il movimento:

Codice: Seleziona tutto

  int calculatedmove=((z*1600)/80);  //  Calculate number of steps needed in mm
  stepper.runToNewPosition(calculatedmove);
  
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da billielliot » mercoledì 12 giugno 2019, 22:04

Ciao geko68,

hellfire e' sicuramente piu' preparato. Io aggiungo i miei due centesimi.

Dal sito di Arduino si scopre che: The Mega 2560 has 16 analog inputs, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts

Lo sketch dell'Americano imposta la velocita' nel setup iniziale. Per quanto ne capisco di Arduino, tutto cio' che e' definito nel setup inziale non e' piu' modificabile una volta avviato lo sketch.

Bisogna spostare la riga: stepper.setMaxSpeed(1500); // Not to fast or you will have missed steps contenuta in void setup(void):

Codice: Seleziona tutto

void setup(void) {
  
  //  Light up the LCD backlight LEDS
  analogWrite(backlight_pin, 0);  // Set the Backlight intensity (0=Bright, 255=Dim)
    
  //  AccelStepper speed and acceleration setup
  stepper.setMaxSpeed(1500);  // Not to fast or you will have missed steps
  stepper.setAcceleration(400);  //  Same here
all'interno del void loop(). In questo modo Arduino continuera' a leggere l'ingresso e ad aggiornare la variabile con il nuovo valore del potenziometro.

All'interno del void loop() si dovra' decifrare quanto arriva dal potenziometro e trasformarlo in un numero. Qui fanno un esempio semplice:

Codice: Seleziona tutto

  // read the sensor value:
  int sensorReading = analogRead(A0);
  // map it to a range from 0 to 100:
  int motorSpeed = map(sensorReading, 0, 1023, 0, 100);
  // set the motor speed:
  if (motorSpeed > 0) {
    myStepper.setSpeed(motorSpeed);
    // step 1/100 of a revolution:
    myStepper.step(stepsPerRevolution / 100);
  }
Che noi possiamo adattare come segue:

Codice: Seleziona tutto

  // read the sensor value:
  int sensorReading = analogRead(A3); //uso l'ingresso ADC A3 come suggerito da hellfire. A0 e A1 sono occupati dall'Easy Driver
  // map it to a range from 0 to 1500:	//modifico il valore massimo per adeguarmi allo sketch dell'Americano
  int motorSpeed = map(sensorReading, 0, 1023, 0, 1500); //Potenziometro al minimo = 0 Al massimo = 1500
  // set the motor speed:
  if (motorSpeed > 0) { // se il potenziometro NON e' al minimo
    stepper.setMaxSpeed(motorSpeed);  // cambio la velocita' del motore. Not to fast or you will have missed steps
  }
Riassumendo:

Codice: Seleziona tutto

void setup(void) {
  
  //  Light up the LCD backlight LEDS
  analogWrite(backlight_pin, 0);  // Set the Backlight intensity (0=Bright, 255=Dim)
    
  //  AccelStepper speed and acceleration setup
  stepper.setMaxSpeed(1500);  // Not to fast or you will have missed steps
  stepper.setAcceleration(400);  //  Same here
  
  // Draw starting screen on Nokia LCD
  u8g.firstPage();
  do {
  u8g.drawHLine(0, 15, 84);
  u8g.drawVLine(50, 16, 38);
  u8g.drawHLine(0, 35, 84); 
  u8g.setFont(u8g_font_profont11);
  u8g.drawStr(0, 10, "ENTER DISTANCE");
  u8g.drawStr(62, 29, "MM");
  u8g.drawStr(4, 46, "cur-pos");
  }
  while( u8g.nextPage() );
  
}


void loop(){
  
// Aggiungo il controllo velocita'
  // read the sensor value:
  int sensorReading = analogRead(A2); //uso l'ingresso ADC A2. A0 e A1 sono occupati dall'Easy Driver
  // map it to a range from 0 to 1500:	//modifico il valore massimo per adeguarmi allo sketch dell'Americano
  int motorSpeed = map(sensorReading, 0, 1023, 0, 1500); //Potenziometro al minimo = 0 Al massimo = 1500
  // set the motor speed:
  if (motorSpeed > 0) { // se il potenziometro NON e' al minimo
    stepper.setMaxSpeed(motorSpeed);  // cambio la velocita' del motore. Not to fast or you will have missed steps
  }


  char keypressed = keypad.getKey();  // Get value of keypad button if pressed
  if (keypressed != NO_KEY){  // If keypad button pressed check which key it was
    switch (keypressed) {
      
      case '1':
        checknumber(1);
      break;
Non mi assumo responsabilita'. Magari facci sapere se funziona. Nel caso non si ripetera' l'errore!

Ciao :-)

Mauro
Ultima modifica di billielliot il mercoledì 12 giugno 2019, 22:11, modificato 1 volta in totale.
Amat victoria curam

Avatar utente
hellfire39
God
God
Messaggi: 3402
Iscritto il: domenica 16 dicembre 2012, 9:04
Località: AN

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da hellfire39 » mercoledì 12 giugno 2019, 22:09

Mi sembra corretto.
Un unico appunto: sul setup metti le inizializzazioni. Ma il comando SetMaxSpeed della libreria AccelStepper lo puoi usare quante volte ti pare, quindi lo puoi lasciare anche su Setup. Non fa danno e verrà sovrascritto dal nuovo valore quando richiami la funzione.

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da billielliot » mercoledì 12 giugno 2019, 22:12

Ho fatto in tempo a correggere come suggerito da hellfire.

Ciao e grazie! :-)

Mauro
Amat victoria curam

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 22:34

Io rispetto il regolamento del forum di Arduino, e capisco anche "che rompi balle questo che entra e si registra solo per risolvere al volo un problema...che si studi Arduino". Questi vostri interventi me li sarei voluti aspettare lì..."alla fonte"...e invece rimarrà un post morto impiccato lì...magari poteva essere qualcosa che sarebbe servito anche a qualcun'altro agli inizi. Pazienza :wink:

Siete stati molto gentili e disponibili, a prescindere se funzionerà o no, e per questo vi ringrazio comunque =D>
Ho finito ora di modificare il codice della grafica per aggiungere la visualizzazione della velocità (così, per provare, per partire comunque a capire le cose, un pezzetto per volta....scaricato il datasheet dell'LCD 5110). Magari riuscirò a combinarlo con la modifica del potenziometro...vedremo.

Nel we provo le vostre indicazioni e poi vi farò sapere.

Grazie per l'appoggio.

P.S.
io credo che finalmente riuscirò anche a finire la proxxon (anche se è quella piccola, non la MF70; ma a me basta \:D/ )

billielliot
Senior
Senior
Messaggi: 1747
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da billielliot » mercoledì 12 giugno 2019, 22:51

Ciao geko68,

probabilmente, se tu avessi fatto in questo stesso forum una domanda equivalente in termini CNC, avresti avuto le stesse risposte avute nel forum di Arduino: cerca, leggi e studia.

Non e' cattiveria. Vedila piuttosto come una semplice richiesta di rispetto.

Tutti i giorni si scrivono e condividono soluzioni e l'ultimo arrivato si limita a chiedere il riassunto (e tralasciamo chi lucra con le soluzioni altrui!). Da un lato si presenta come uno che non ha voglia (tutti vorremo la soluzione veloce e pronta!), dall'altro come uno che non ha rispetto del lavoro altrui. Lavoro condiviso per il quale si e' dedicato fatica e tempo (magari strappato alla famiglia).

Come vedi il rispetto non e' per le regole ma per le persone. Le regole rimarcano questo concetto e proteggono anche te e il tuo lavoro che condividi.

Se vuoi veramente fare una cosa bella, vai e completa il post con le soluzioni funzionanti che avrai testato. Documenta tutto nel modo piu' dettagliato che puoi. Se vuoi cita la fonte. Farai sicuramente contento qualche altro utente che come te vorrebbe completare lo sketch dell'Americano con la funzione velocita'.

La mia opinione. Senza nessuna pretesa che venga condivisa.

Ciao :-)

Mauro

P.S. siamo mooooolto curiosi e aspettiamo volentieri che tu faccia le modifiche alla Proxxon e ci faccia vedere i risultati.
Ultima modifica di billielliot il mercoledì 12 giugno 2019, 22:57, modificato 1 volta in totale.
Amat victoria curam

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 22:54

La grafica modificata, ma....mi si è appena fulminata una delle ultime righe del display.... :badgrin: :lol:

xxxxxxxxxxxxxxxxxxxx

Vabbè....non è una grande spesa :wink:




Buonanotte e a tutti ;o)

continui a ignorare avvisi e regolamento, ripeto e per l'ultima volta che le immagini devono essere allegate
Ultima modifica di Anonymous il venerdì 14 giugno 2019, 20:30, modificato 1 volta in totale.
Motivazione: link immag. rimosso, avviso

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 23:19

billielliot ha scritto:
mercoledì 12 giugno 2019, 22:51
Ciao geko68,

probabilmente, se tu avessi fatto in questo stesso forum una domanda equivalente in termini CNC, avresti avuto le stesse risposte avute nel forum di Arduino: cerca, leggi e studia.

Ciao Mauro, buonasera

si, ovviamente comprendo e condivido appieno quello che hai scritto. E' ovvio che il mio caso rientra pienamente in quanto hai descritto, ci mancherebbe. Però, fà strano...qui ho trovato spunti che comunque dovrò studiare e capire....li no....ho ricevuto solo correzioni ortografiche e di Netiquette...non sò...però lo accetto, ripeto, è il loro regolamento e va rispettato (ho visto diversi post lì, di neo iscritti, che sono finiti male...perchè spesso, come dici tu, si vuole la pappa pronta e si pretende la soluzione). A me è sempre piaciuto Arduino ma...non mi è mai entrato in testa...non lo sò perchè (eppure sono diplomato in elettronica e ne ho fatti di circuiti...per esempio, poco fa mi ha chiamato mio figlio per farsi confermare dei particolari sul motore a Gabbia di Scoiattolo.....fra un pò ha la maturità...). Adesso, ricominciando qualcosina inizio a capire. Magari sbloccherò, vedremo :wink:

Si, certo, completerò il post sul forum di Arduino, altrimenti non sarei in linea con il mio pensiero...ovvero quello di lasciare qualcosa che potrà essere utile a qualcun'altro. Certo, non sò se sarà il caso di scrivere "...Dunque, con l'aiuto dei ragazzi di CNC ITALIA..." ....hahahahahaha....

Ribadisco, a prescindere se funzionerà, mi avete fatto sentire "tra amici", e questo è molto al giorno d'oggi.

Buona serata Mauro, e a tutti gli altri, vi tengo aggiornati ;o)

evita di riportare integralmente i messaggi
Ultima modifica di Anonymous il venerdì 14 giugno 2019, 20:32, modificato 1 volta in totale.
Motivazione: riduzione citazione e avviso

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » mercoledì 12 giugno 2019, 23:21

Ah...ovviamente, come dici tu, anche qui c'è un regolamento.....quindi farò moooolta attenzione quando metterò mano alla Proxxon..... :badgrin: :badgrin: :badgrin:

invece di postare questo nuovo messaggio potevi editare il precedente e modificarlo visto che hai venti minuti disponibili, vedi viewtopic.php?f=60&t=20015
Ultima modifica di Anonymous il venerdì 14 giugno 2019, 20:36, modificato 1 volta in totale.
Motivazione: AVVISO

geko68
Newbie
Newbie
Messaggi: 15
Iscritto il: venerdì 7 giugno 2019, 11:39
Località: Roma

Re: Slider per fotografia con Nema 17 - aiuto per codice -

Messaggio da geko68 » giovedì 13 giugno 2019, 10:56

Ok, non ho resistito....sapevo che oggi sarei dovuto passare in laboratorio, a lavoro, e mi sono portato "la roba" dietro (ho approfittato della presenza delle strumentazioni varie, compresi gli alimentatori).

Funziona. Ieri sera ho fatto tardi, prima per capire i codici che avevate postato, poi per capire perchè dovevo metterli dove mi avevate indicato e poi per inserirli dove andavano inseriti (cosa fatta poco fà).

Stà funzionando perfettamente...come serviva a me.....imposto la distanza con il tastierino, poi imposto la velocità con il trimmer e inizia a muoversi per la distanza e la velocità impostate. Sono molto soddisfatto perchè "ho capito", non ho solamente copiato e incollato.

Avete acceso la mia "capoccetta" :badgrin:

Nel we vedrò di terminare la meccanica, lo stampato e il contenitore per arduino (da fissare alla struttura dello slider) e poi posterò foto e video del lavoro.

P.S.
intanto mi stò salvando tutti i tread che mi interessano e che studierò per capire le basi del CNC (poi, dopo, installerò nuovamente Mach3).

Buona giornata a tutti =D>

Rispondi

Torna a “Autocostruzioni meccaniche varie”