spacer.png, 0 kB

Torna indietro   Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale > Robotica di base > Arduino

Rispondi
 
Strumenti discussione Modalità  visualizzazioe
  #1  
Vecchio 16-05-2012, 10.18.10
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito Gestire più servo motori con Arduino

Ciao, vengo subito al punto. Come posso gestire più servo motori con Arduino? Non tanto dal punto di vista sw dove posso fare uso della classe servo.h, quanto dal punto di vista hw. Per esempio, se io volessi gestire 18 servi, che versione del controller e quale shield dovrei usare? Inoltre, come dovrebbe avvenire FISICAMENTE il collegamento con i servi? Direttamente sulla scheda? In cascata?

Grazie!
Rispondi citando
  #2  
Vecchio 16-05-2012, 11.19.48
L'avatar di Caronte
Caronte Caronte non è collegato
Administrator
 
Data registrazione: 15-10-2009
Residenza: Ferrara
Età : 51
Messaggi: 2,962
Potenza reputazione: 336
Caronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua fama
Predefinito

Citazione:
quanto dal punto di vista hw
Io mi trovo molto bene con QUESTA e la piloto in I2C. La trovi su Robot Italy.

Ciao

Antonio

P.s. Aggiungo che è compatibile on board con bx24, basic atom e picaxe.
Rispondi citando
  #3  
Vecchio 16-05-2012, 13.07.40
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito

Molto interessante! Quindi connetto sino a 21 servi direttamente sulla board, ottimo (avevo visto soluzioni in cascata ma avevo qualche perplessità). Una cosa, non mi è chiaro come si connette tale scheda ad una Arduino. Per esempio, potrei connetterla ad una Arduino UNO R3?
Rispondi citando
  #4  
Vecchio 16-05-2012, 13.21.37
L'avatar di Caronte
Caronte Caronte non è collegato
Administrator
 
Data registrazione: 15-10-2009
Residenza: Ferrara
Età : 51
Messaggi: 2,962
Potenza reputazione: 336
Caronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua fama
Predefinito

Certo. Usi la libreria Wire.

Se non l'hai mai usato il protocollo I2c ma se ricordo bene sei un programmatore quindi non dovresti avere difficoltà. E' comunque sempre un 'trenino' di bit!

Ti 'ciocco' anche il codice esempio (avanzo numero 2 birre...):

Codice:
/*******************************
*   Arduino example for DS21   *
*                              *
*   By James Henderson, 2012   *
*******************************/

#include <Wire.h>

#define ADDRESS 0x61                   // The address of the SD21
#define SERVO 0x3F                     // Address of first servo

void setup(){
  Wire.begin();
}

void loop(){
  Wire.beginTransmission(ADDRESS);
    Wire.write(SERVO);
    Wire.write(255);                   // Send a value of 255 to servo 1
  Wire.endTransmission();
  delay(1000);
  Wire.beginTransmission(ADDRESS);
    Wire.write(SERVO);
    Wire.write(128);
  Wire.endTransmission();
  delay(1000);
  Wire.beginTransmission(ADDRESS);
    Wire.write(SERVO);
    Wire.write((byte)0);               // Values of 0 being sent using writ have to be masked as a byte to stop them being misinterperted as NULL this is a bug with arduino 1
  Wire.endTransmission();
  delay(1000);
  Wire.beginTransmission(ADDRESS);
    Wire.write(SERVO);
    Wire.write(128);                   // send a value of 128 to servo 1
  Wire.endTransmission();
  delay(1000);
}
RICORDATI CHE CI VOGLIONO 2 RESISTENZE DA 1K8

Ciao



Antonio

P.s. Vai a leggerti il tutorial sul TwoWire su Arduino! (basta che metti su Google TwoWire Arduino)
Rispondi citando
  #5  
Vecchio 16-05-2012, 13.40.14
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito

Scusa, mi sono spiegato male. Intendevo come si connette fisicamente la UNO alla scheda in oggetto.

Un'altra cosa, cosa ne pensi di questa? Non mi è chiaro quanti siano i servi supportati. Sembrerebbe 14 (8+6 nei pin digitali), ma in fondo ci sono altri 6 slots (pin analogici) con la piedinatura apparentemente diversa...?
Rispondi citando
  #6  
Vecchio 16-05-2012, 13.45.56
L'avatar di Caronte
Caronte Caronte non è collegato
Administrator
 
Data registrazione: 15-10-2009
Residenza: Ferrara
Età : 51
Messaggi: 2,962
Potenza reputazione: 336
Caronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua fama
Predefinito

Va benissimo. La puoi pilotare anche con la 485 e con l'I2c. A livello hd il protocollo I2c prevede 4 fili: gnd, scl, sda, +5V

Scappo in uff

Ciao

Antonio
Rispondi citando
  #7  
Vecchio 16-05-2012, 19.54.22
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito

Continuo a non capire se i servi supportati sono 14 o 20...
Rispondi citando
  #8  
Vecchio 16-05-2012, 20.11.44
L'avatar di Caronte
Caronte Caronte non è collegato
Administrator
 
Data registrazione: 15-10-2009
Residenza: Ferrara
Età : 51
Messaggi: 2,962
Potenza reputazione: 336
Caronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua fama
Predefinito

14. Gli altri 6 sono porte adc.

Ciao

Antonio
Rispondi citando
  #9  
Vecchio 16-05-2012, 21.06.07
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito

Azz... mi occorrevano almeno 18 servi... peccato.
Rispondi citando
  #10  
Vecchio 16-05-2012, 23.05.10
SkyNET290897 SkyNET290897 non è collegato
Robottaro gold
 
Data registrazione: 19-09-2005
Messaggi: 134
Potenza reputazione: 65
SkyNET290897 E' per ora ancora un mistero
Predefinito

Un'altra soluzione potrebbe essere questa: una DFRduino Mega(Arduino Mega Compatible) con una Mega IO Expansion Shield For Arduino Mega V1.2. Se non ho fatto male i conti dovrei arrivare a poter utilizzare 56 servi.

Ma poi un eventuale sensore a ultrasuoni dove lo collego?
Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione
Modalità  visualizzazioe

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code è Attivato
Le smilies sono Attivato
[IMG] è Attivato
Il codice HTML è Disattivato

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
programmi per gestire SSC-32 Servo Controller lory90sw Informatica 0 12-01-2010 20.00.22
un software per gestire un servo-controller peppino Forum generale 0 15-07-2009 17.07.48
come gestire un servo-controller peppino Informatica 0 15-07-2009 16.16.54
gestire un servo con un potenziometro jeshinji E. di Potenza 2 08-08-2008 09.45.57
Servo R/C, motori...? Lorenz Motori e azionamenti 5 21-06-2004 13.50.50


Tutti gli orari sono GMT. Adesso sono le: 11.00.09.


Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Realizzazione siti web Cobaltica Foligno
spacer.png, 0 kB