roberto8303 Inserita: 29 marzo 2015 Autore Segnala Inserita: 29 marzo 2015 allora ieri purtroppo non sono riuscito a fare molte prove sono stato impegnato proprio per arduino qui http://arduino.irlug.it/ però so di certo che l '' accrocchio'' del motorino che ho non va bene, perche ha dei punti di impedimento poi appena lo muovo con la mano prende un po di rincorsa, e mi sa che devo modificarlo e renderlo quanto piu leggero possibile. Per la frequenza non ho controllato posso misurarla incrementando una variabile e vedere in un minuto a quanto arriva e dividere per 60 cosi so quanti hz sono.
roberto8303 Inserita: 29 marzo 2015 Autore Segnala Inserita: 29 marzo 2015 nell interrput ho incrementato contatore++ è ogni minuto ho 6000 impulsi ho visualizzato nella seriale con baudrate a 115200 è attendibile?
walterword Inserita: 29 marzo 2015 Segnala Inserita: 29 marzo 2015 stai pilotando un servo ? Io ne ho due della parallax ma con poca documentazione , l'unica cosa che so e' che l'alimentazione massima è di 6 V Mi piacerebbe fare delle prove con arduino .Il servo e' questo
Livio Orsini Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 No sta usndo una scheda chopper con LM298 per pilotare motori in cc e passo passo. E' una delle tante shield classiche per arduino, ne esistono decine di versioni. Ha anche messo il link della scheda.
roberto8303 Inserita: 30 marzo 2015 Autore Segnala Inserita: 30 marzo 2015 (modificato) no walter sto usando un motoriduttore dc come questo http://it.rs-online.com/web/p/motoriduttori-cc/4540798/?searchTerm=motoriduttori+dc+5%3A1&relevancy-data=636F3D3226696E3D4931384E4B6E6F776E4173266C753D6974266D6D3D6D61746368616C6C26706D3D5E5B5C707B4C7D5C707B4E647D5C707B5A737D2D2C2F255C2E5D2B2426706F3D3726736E3D592673743D4B4559574F52445F4D554C54495F414C5048415F4E554D455249432677633D4E4F4E45267573743D6D6F746F7269647574746F726920646320353A3126 il tuo servo non so se è digitale, se è sbloccato? altrimenti non puoi ottenere la ruotazione continua. gli analogici all interno hanno un potenziomentro proprio sotto l ingranaggio che ruota insieme ad esso per conoscere la posizione.Purtroppo pero i servo normali si spostano solo di un certo grado non possono fare la funzione come nel mio caso a meno che non siano a rotazione continua.Poi per i comandi del servo c è la libreria arduino che da direttamente il comando per lo spostamento in gradi. Modificato: 30 marzo 2015 da roberto8303
Livio Orsini Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 Attenzione! Dovresti approfondire le caratteristiche sul sito del produttore perchè sembra che abbia un campo di regoalzione abbastanza preciso; questo spiegherebbe un po' il fatto che necessiti di una tensione minima prima di mujoversi.
walterword Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 sto cercando ma si trova poco , erano i servo che utilzizava il robottino della de agostini di 10 anni fa ...
roberto8303 Inserita: 30 marzo 2015 Autore Segnala Inserita: 30 marzo 2015 altrimenti puoi modificarlo tu c è chi lo fa io per esempio lo feci per costruire dei modellini escavatori radiocomandati con 6 servo sbloccati 3 braccio la ralla per la rotazione e due per i cingoli. su youtube ci sono molti video che fanno vedere come sbloccare un servo qui invece puoi comprarlo gia fatto http://www.robot-italy.com/it/hitec-hsr-1425cr-continous-rotation-servo.html Per Livio, il motorino che avevo è questo http://www.mfacomodrills.com/pdfs/940D%20series.pdf rapporto 5:1 un po troppo veloce... ma mi sono accorto che non va bene perche comunque l alimentazione minima è 4,5volt, lo provai a banco con alimentatore e partiva con 2 volt ma ora con la catena ha qualche impedimento.. .e quindi nulla da fare devo trovare qualche altra cosa...mi sa proprio un servo sbloccato...
walterword Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 Le specifiche son queste Vorrei mettermi anche io a capire un po di sta roba
roberto8303 Inserita: 30 marzo 2015 Autore Segnala Inserita: 30 marzo 2015 questo è gia sbloccato praticamente con il riferimento pwm hai la rotazione continua ed all aumentare della velocita del pwm aumenta la velocita del motorino, quindi non hai il controllo dei gradi di posizione ma solo di velocita.
walterword Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 (modificato) ok infatti e' continuo Potresti indicarmi un tipo di servo con trollo di posizione? Modificato: 30 marzo 2015 da walterword
roberto8303 Inserita: 30 marzo 2015 Autore Segnala Inserita: 30 marzo 2015 questi http://www.robotstore.it/department/13/Servomotori.html e questo per arduino ma sicuro gia sai come fare http://arduino.cc/en/Tutorial/[censored]
walterword Inserita: 30 marzo 2015 Segnala Inserita: 30 marzo 2015 (modificato) a dire il vero non ho mai fatto prove con un servo motore in ambito arduino Modificato: 30 marzo 2015 da walterword
roberto8303 Inserita: 31 marzo 2015 Autore Segnala Inserita: 31 marzo 2015 allora rieccomi,posto due foto del motore che ho usato ora quello che ho pensato visto che ho la tensione minima troppo bassa dalla scheda controllo motore arduino, non è che posso utilizzare un transistor di potenza e alimentare il motore con una tensione separata? Altrimenti sono costretto a cambiare motorino ma questo avevo gia disponibile e l ho gia fissato alla staffa..molto molto precisa...
Livio Orsini Inserita: 1 aprile 2015 Segnala Inserita: 1 aprile 2015 La scheda drive che stai usando dovrebbe avere 2 alimentazioni: una a 5V per la logica e l'altra da 5V in su per la potenza. Ti basta alimentare con un 12V la potenza e dovresti essere a posto, anzi io pensavo che lo avessi già fatto.
roberto8303 Inserita: 1 aprile 2015 Autore Segnala Inserita: 1 aprile 2015 si che l ho fatto ci mancherebbe ho utilizzato un 9 voltdc 1 ampere. Il problema che se il pwm è proporzionale alla tensione di uscita in questo caso 9 volt comunque con il pwm basso la tensione non è sufficiente a spostare il motorino che parte a bene a circa 2.5 volt di riferimento...
Livio Orsini Inserita: 1 aprile 2015 Segnala Inserita: 1 aprile 2015 che parte a bene a circa 2.5 volt di riferimento.. Scusa intendi riferimento o tensione sull'armatura? Il foglio tecnico del motoriduttore prevede tensioni da 4.5V a 15 V. Se alimenti la scheda con 15 V con duty cycle di 77 ottieni quei 4.5 V che sono la tensione minima.
roberto8303 Inserita: 1 aprile 2015 Autore Segnala Inserita: 1 aprile 2015 Tensione sull armatura 2,5 il motore riesce a spostarsi, quindi cm dici tu 77 punti di pwm sono sufficienti per far funzionare bene la rampa? Se e cosi prendo un alimentatore da 15volt oppure 24 volt vabbene secondo te?
walterword Inserita: 1 aprile 2015 Segnala Inserita: 1 aprile 2015 con i due sevo continui provero a fare delle prove con arduino in regolazione di velocità con un potenziomentro ...
Livio Orsini Inserita: 1 aprile 2015 Segnala Inserita: 1 aprile 2015 Se alimenti con 15 V i 2.5V dovresti già ottenerli con circa 45 / 255 di PWM. BAsta alimentare la potenza con 15 V per rendersene conto.
roberto8303 Inserita: 1 aprile 2015 Autore Segnala Inserita: 1 aprile 2015 vabbene allora provo a cambiare alimentatore sulla scheda con uno da 15 se lo trovo..
Livio Orsini Inserita: 1 aprile 2015 Segnala Inserita: 1 aprile 2015 puoi provare anche con 12 v dovrai dare un po' più di PWM.
roberto8303 Inserita: 1 aprile 2015 Autore Segnala Inserita: 1 aprile 2015 Se hai impostato 550 partendo da 50, il punto di mezzo si trova a 300. Tutte le voklte che entri in rampa controlli se la posizione del momento è <300; se à così incrementi la rampa sino a raggiungere 254 (perchè a 255 hai uscita sempre alta). Se invece sei arrivato a 300, inizi a decrementare il valore di PWM. Se raggiungi 254 con quota, ad esempio, pari a 250 devi fre 550 -250 - 50 (che è l'offset di zero); quindi quando raggiungi 350 inizierai a diminuire il PWM. allora sto andando avanti, ma non capisco come faccio l ultima parte quando sono con il pwm al massimo prima della meta rampa Cioe se sono >= a 254 pwm allora setpoint-posizione-50 come devo scriverlo in codice esattamente per capire quando sono alla quota per rallentare?
Livio Orsini Inserita: 2 aprile 2015 Segnala Inserita: 2 aprile 2015 Ricapitoliamo. Tutta l'escursione dell'asse abbiamo detto che va da 0 a 1024. Lo zero dell'asse è posto a 50. Il traguardo del posizionamento lo abbiamo posto a 550. La lunghezza della missione è 550 - 50 = 500; metà della missione 500/2 = 250. Il punto di mezzo della missione è 250 + 50 di offset = 300. Ad ogni ingremento di rampa leggi la posizione; se la posizione è >= 300 inizi la rampa di discesa e da quel momento decrementi solo sino a raggiungere la velocità minima. Se il PWM è arrivato al massimo, ovvero 254 su 255, e la posizione è < 300 memorizzi questo valore. Sottrai da questo valore l'offset di partenza, 50, ed ottieni lo spazio di accelerazione. Per esempio hai raggiunto il massimo con posizione pari a 200. Sottraendo l'offset di 50 otterrai lo spazio di accelerazione che è pari a 150. Ora sottrai questo valore a l valore del traguardo ed otterrai la quota di rallentamento. QUindi 550 - 150 = 400. Quando raggiungi la quota di 400 inizi la rampa di discesa.
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora