Show Posts
Pages: 1 ... 21 22 [23] 24 25 ... 87
331  International / Hardware / Re: Resistenza interna batteria polimeri di litio (lipo) on: May 23, 2014, 01:45:47 am
Non credere che gli altri dispositivi siano molto più sofisticati.
Riguardo al tuo problema, con l'artificio che ti ho illustrato, riesci a conoscere la tensione della singola cella.
Applicando un unico resistore di carico al connettore DEAN si confrontano le tensioni sulle singole celle prima e dopo dell'applicazione del carico. Poiché la corrente è misurabile ed è unica per tutte le celle, è facile determinare la Ri
332  International / Hardware / Re: Resistenza interna batteria polimeri di litio (lipo) on: May 22, 2014, 11:16:04 am
Ogni operazionale serve la singola cella ed essendo nel mio caso 4 celle, ho scelto un quadruplo operazionale.

In pratica, ogni operazionale serve ad ottenere il valore della tensione cella rispetto a massa, superando il problema delle celle in serie.

Guarda su Google "Amplificatore Differenziale" e troverai lo schema.
333  International / Generale / Re: La giusta alimentazione - PT 1 - Alimentazione da rete elettrica on: May 22, 2014, 10:49:15 am
Stai confondendo: per alimentare Arduino devi usare un secondo alimentatore da 9V 1A.

Ovviamente le masse dei due alimentatori devono essere in comune.
334  International / Generale / Re: La giusta alimentazione - PT 1 - Alimentazione da rete elettrica on: May 22, 2014, 10:24:11 am
Guarda che il FUTABA S3003 assorbe ben 250-270 mA in stallo e circa la metà in partenza.

Con 12 servo ti occorre un alimentatore da 6V da almeno 3A.
335  International / Hardware / Re: Resistenza interna batteria polimeri di litio (lipo) on: May 22, 2014, 04:10:47 am
Combinazione in questi giorni sto testando un caricabatteria di mia progettazione per LiPO 4S con Arduino MICRO.

Uno dei primi problemi che ho dovuto affrontare è stato proprio quello di leggere la tensione delle singole celle ed ho risolto con un quadruplo operazionale in configurazione amplificatore differenziale a guadagno 1.
336  International / Hardware / Re: Ricevitore di luce per Laser on: May 22, 2014, 03:41:42 am
Ma perché non usi un semplice transistor NPN ad esempio il BC337 in configurazione ad emettitore comune?

Se l'uscita è normalmente a 1.25V, la tensione (> 0.7V) è sufficiente ad far entrare in conduzione il transistor.

Sulla base metti un resistore da 10k e lo colleghi al pin out del tuo sensore, mentre sul collettore metti un resistore da 4.7k collegato ai +5V. Il segnale per Arduino lo prelevi ovviamente dal collettore.
337  International / Hardware / Re: Resistenza interna batteria polimeri di litio (lipo) on: May 20, 2014, 12:19:09 pm
Facciamo un po' di chiarezza (spero!)...
Un generatore di tensione IDEALE ha un resistenza interna nulla e, quindi, può erogare qualsiasi corrente.
I generatori REALI hanno invece un resistenza interna non nulla ed in particolare per quelli LiPO vale un centinaio di millesimi di ohm.
Ovviamente più bassa è questa resistenza più elevata è la corrente che la LiPO può erogare. Diciamo perciò che la resistenza interna è un parametro che indica la qualità della batteria, il suo stato di carica e la sua "anzianità".
Il LiPO voltage monitor da te indicato misura la corrente erogata dalla intera batteria con un carico di 1 ohm, di 0.1 ohm e di 1 ohm applicato impulsivamente con duty cycle al 50% (credo)
Infatti,  le uscite per il bilanciatore (connesse alle singole celle della batteria) non possono sopportare grandi correnti a causa del diametro dei fili e di conseguenza il test deve essere molto breve (ritengo dell'ordine del centinaio di millisecondi), ammesso che venga fatto cella per cella.
E' più probabile che sia invece fatto sull'intero pacco di celle ed i valori che si leggono siano mediati.
338  International / Software / Re: lettura sensori pressione e display lcd on: May 20, 2014, 10:39:33 am
Io ti ho dato gli strumenti per affrontare il problema da solo, ora tocca a te!

Comunque ho fatto un errore...
non
V = M * (P -X1) + Y1 = M * P - M * X1 + Y1
ma bensì
P = M * (V -X1) + Y1 = M * V - M * X1 + Y1
339  International / Software / Re: aiuto su codice per led chaser supercar on: May 20, 2014, 04:34:25 am
Allora quello che hai scritto era sbagliato.

L'istruzione SoftPWMSet(leds, 0), infatti, fa riferimento ad un array e non ad un pin.

Code:
  for (i = 0; i < 8; i ++)   {              //loop from 0 to 7
    SoftPWMSet(leds[i], 255);   // LED i ON
    SoftPWMSet(leds[i], 0);                 
    delay(DELAY);
  }

  delay(250);

  for (i = 7; i < 0; i --)  {                   //loop from 7 to 0
    SoftPWMSet(leds[i], 255);   // LED i ON
    SoftPWMSet(leds[i], 0);                 
    delay(DELAY);
  }
 
  delay(250);
340  International / Software / Re: lettura sensori pressione e display lcd on: May 20, 2014, 04:30:11 am
Da quanto si vede sui grafici, queste sono le equazioni caratteristiche dei due sensori dopo aver riportato in ascissa la tensione ed in ordinata la pressione:
Quote
GAS
A = (X1; Y1) = (0.5 V; 0 bar)          1° punto
B = (X2; Y2) = (4.5 V; 1500 bar)   2° punto
M = (Y2 - Y1) / (X2 -X1)                  coefficiente angolare
V = M * (P -X1) + Y1 = M * P - M * X1 + Y1                                           

AIR
A = (X1; Y1) = (0.4 V; 0.2 bar)      1° punto
B = (X2; Y2) = (4.5 V; 1.5 bar)        2° punto
M = (Y2 - Y1) / (X2 -X1)                  coefficiente angolare
V = M * (P -X1) + Y1 = M * P - M * X1 + Y1                                           
341  International / Software / Re: aiuto su codice per led chaser supercar on: May 19, 2014, 05:11:38 am
Ipotizzo tenendo conto di quanto da te riportato:
Code:
  for (i = 0; i < 8; i ++)   {              //loop from 0 to 7
    SoftPWMSet(leds[i], 255);   // LED i ON
    SoftPWMSet(leds, 0);                 
    delay(DELAY);
  }

  delay(250);

  for (i = 7; i < 0; i --)  {                   //loop from 7 to 0
    SoftPWMSet(leds[i], 255);   // LED i ON
    SoftPWMSet(leds, 0);                 
    delay(DELAY);
  }
 
  delay(250);

342  International / Software / Re: lettura sensori pressione e display lcd on: May 19, 2014, 04:47:24 am
Senza le caratteristiche dei due sensori è difficile indovinare i parametri della funzione di trasferimento.

I valori che ottieni devono soddisfare due condizioni: la linearità o meno del sensore ed almeno un paio di punti del grafico di cui si conosca i valori di tensione e pressione.

Il tutto ovviamente rispettando il cablaggio elettrico consigliato.

Ammessa la linearità dei sensori, perciò, si deve conoscere il valore esatto della tensione a pressione zero e il valore della tensione con una certa pressione (di solito la pressione massima ammissibile).

Poi la formula diventa una semplice interpolazione valori lineari.
343  International / Software / Re: lettura sensori pressione e display lcd on: May 18, 2014, 12:31:09 pm
Non hai specificato la marca ed il modello dei sensori di pressione.

Fornisci il link.
344  International / Software / Re: lettura sensori pressione e display lcd on: May 18, 2014, 09:16:04 am
Ho commesso qualche errore di sintassi ed ecco il motivo dell'elenco del compilatore.

Code:
#include <LiquidCrystal.h>
#include <LcdBarGraph.h>

float GASVal = 0.0;    // qui c'era una virgola come separatore decimale (punto)
float AIRVal = 0.0;   // stesso errore

LiquidCrystal LCD(12, 11, 5, 4, 3, 2);
LcdBarGraph GAS(&LCD, 20, 0, 1);
LcdBarGraph AIR(&LCD, 20, 0, 3);

void setup() {
  pinMode(A0, INPUT);   // qui mancava il terminatore di istruzione ";"
  pinMode(A1, INPUT);  // stesso errore
  pinMode(2, OUTPUT); // stesso errore
  pinMode(3, OUTPUT); // stesso errore
  pinMode(4, OUTPUT); // stesso errore
  pinMode(5, OUTPUT); // stesso errore
  pinMode(11, OUTPUT);  // stesso errore
  pinMode(12, OUTPUT);   // stesso errore
 
  LCD.begin(20, 4);
  LCD.setCursor(0, 0);
  LCD.print("Identificazione");
  LCD.setCursor(0, 1);
  LCD.print("veicolo in corso...");
  delay(1000);
  LCD.setCursor(0, 2);
  LCD.print("AlfaRomeo 156 1.9JTD");
  delay(500);
  LCD.setCursor(0, 3);
  LCD.print("-Software by DVlady-");
  delay(2000);
  LCD.clear();
  LCD.setCursor(0, 1);
  LCD.print(" Avviamento sistema ");
  delay(1000);
  LCD.setCursor(0, 2);
  LCD.print(" Check OK. Avvio... ");
  delay(2000);
  LCD.clear();
  LCD.setCursor(0, 0);
  LCD.print("Engine load:");
  LCD.setCursor(0, 2);
  LCD.print("Turbo load:");
}

void loop() {
  GASVal = analogRead(A0);
  AIRVal = analogRead(A1);

  LCD.setCursor(13, 0);
  LCD.print(GASVal, 2);

  GAS.drawValue(GASVal, 1024));

  LCD.setCursor(13, 2);
  LCD.print(AIRVal, 2);

  AIR.drawValue(AIRVal, 1024));
}
345  International / Generale / Re: Comunicare tramite corrente elettrica on: May 17, 2014, 11:38:36 am
C'è qualcuno che ha tentato www.grix.it/UserFiles/merco/File/PowerLineModem.pdf ma con dubbi risultati.

Il fatto è che per costruire una interfaccia del genere occorre avere strumentazione ed esperienza.

Secondo me, la soluzione più economica è quella di munire gli Arduino di Ethernet Shield e procurarti duo o più adattatori Power Ethernet.
Pages: 1 ... 21 22 [23] 24 25 ... 87