Cercare info su sintassi

Buona sera, sono un assoluto novizio di arduino e programmazione.
Ho acquistato una scatola ELEGOO con arduino uno R3 e svariate schedine, led, resistenze e, tra gli altri un motore passo passo 28BYJ-48 (sembra un vero scatolino da bidone dixan) e una scheda X113647 (monta un ULN2003A e quattro diodi atti a "controllare" visivamente le fasi accese).
Due di queste fasi risultano (visivamente) sempre accese.
Una volta fatto partire lo sketch (motore alimentato a parte e non da arduino, massa in comune) il motore gira in avanti e indietro un paio di volte, poi si blocca e fa rumore.
Ora, nella ricerca dei problemi e senza darvi lo schetch (che ho "comperato" con la scatola ELEGOO) penso che

  1. il motore passo passo potrebbe essere semplicemente di infima qualità
    2)potrebbe anche essere un problema di "rampa" (ma non ho scritto io lo schetch...)

Detto tutto questo lel listato è contenuto il seguente comando:
stepsPerRevolution, 8, 10, 9, 11

Ho provato a cercare il significato di questa istruzione e, in particolare il significato dei vari numeri della stessa.
Dove (o come) posso trovare informazioni in questo caso e quando cerco informazioni simili?

[mi chiede di caricare la libreria Stepper.h che ho caricato]
[leggo l'inglese anche se preferisco l'italiano..]
Spero di aver dato informazioni a sufficienza e di non disturbare troppo...
Grazie
Renato

... prima di tutto dei fare riferimento al reference della libreria che usi, nel tuo caso, la libreria Stepper.

Li trovi una funzione che richiede i "parametri" che indichi (per favore metti sempre l'intera riga e non un pezzetto che NON ci aiuta a capire) che, probabilmente, sono in una riga come questa:

Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

Quindi, nel reference trovi:

Stepper(steps, pin1, pin2, pin3, pin4)

Parameters

steps: the number of steps in one revolution of your motor. If your motor gives the number of degrees per step, divide that number into 360 to get the number of steps (e.g. 360 / 3.6 gives 100 steps). (int)

pin1, pin2: two pins that are attached to the motor (int)

pin3, pin4: optional the last two pins attached to the motor, if it's connected to four pins (int)

... che ti spiega i vari parametri.

Resta da capire da dove arriva quel valore 'stepsPerRevolution" che viene passato come primo parametro.
In testa al codice, probabilmente, hai una riga che definisce il valore ... qualche cosa di simile a questo:

const int stepsPerRevolution = 200; // change this to fit the number of steps per revolution for your motor

... ovvero viene caratterizzato il motore che stai usando e definiti quante step occorrono per una rotazione completa.

Ecco qui ... basta SEMPRE, con Google, cercare le librerie che si usano, studiarsi bene il reference con tutti i metodi/funzioni che esse mettono a disposizione e ... leggere con molta attenzione tutti gli esempi :wink:

Guglielmo

Grazie per la tua velocissima risposta che ho visto già ieri , ma per la quale rispondo solo ora.
Hai ragione quando dici di leggere il reference (non sapevo cosa e come cercare..) ed anche quando mi dici di scrivere l'intera riga (nella mia ignoranza credevo che quanto da me scritto fosse "tutto"....).
Invece ho risolto il mio problema:
alimentavo arduino con il cavo seriale collegato al computer e
la scheda millefori con un Alimentatore per breadboard 5V - 3,3Vcon e una batteria a 9 v (un po' scarica?) che si "siedeva" e non manteneva più la corretta tensione (i led di controllo visivo delle fasi alimentate calavano di intensità).
Al calare della tensione di alimentazione lo stepper motor "impazziva" mentre tutto il resto funzionava correttamente (e i led di controllo calavano di intensità facendo pensare a un motore difettoso o uno scorretto pilotaggio dello stesso...)

Per me, importante è aver capito qualcosa in più...

Ancora grazie!
Renato

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.