Generatore automatico di previsioni economiche

LoSpread
azioni

Nel caso tu abbia bisogno di prevedere l’andamento futuro dello spread, la procedura è la seguente:

  1. scarica e apri questo file di Excel 2010
  2. vai al foglio “Lo Spread – il grafico”
  3. premi il tasto funzione F9 per aggiornare i dati fino a quando sei contento del risultato
  4. stampa il grafico e presentalo come il frutto di complesse analisi econometriche.

Enjoy!

Arduino, stai fresco!

Il caldo è ormai dietro l’angolo e mi troverà pronto: ho collegato all’Arduino un ventilatore e l’ho programmato perché si accenda da solo oltre una certa temperatura. Ho aggiunto anche una luce che cambia colore a seconda della temperatura rilevata. Ingedienti:

  • Breadboard
  • Ventilatore
  • Arduino 2009
  • Sensore temperatura
  • Relè
  • Led RGB tipo anodo comune
  • Connettori assortiti

Prossimo passo: impostare la temperatura di accensione da una interfaccia web, e regolare la luce del led a seconda della luce ambiente.

Se è vero che code is poetry, quanto segue dopo il salto si colloca abbastanza sotto a capolavori come “La Vispa Teresa”. Sicuramente esistono altri dieci modi più eleganti per gestire le combinazioni di colori da associare alle diverse temperature, ma la mia ignoranza enciclopedica per ora non mi permette altro.

Se puoi e vuoi illuminarmi, ne sarò felice.

 int greenPin = 5;
 int redPin = 6;
 int bluePin = 4;
 int tPin = A2; // Temperature sensor pin
 int lPin = A1; // Light sensor pin
 int temp; // Temperature in C°
 int outPin = 9; // fan relais pin 
 int luce; // light in Lux; not used

void setup()
{
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
  pinMode(outPin, OUTPUT);

  analogWrite(redPin, 255);
  analogWrite(greenPin, 255);
  analogWrite(bluePin, 255);
//  Serial.begin(9600);

}

void loop()
{
  // from V to °C
  temp = ( 5.0 * analogRead(tPin) * 100.0) / 1024.0;
  // from V to Lux, not used
  luce = (analogRead(lPin) * 10000.0) / 1024.0;

  if(temp <= 18) {
    analogWrite(bluePin, 0);
    analogWrite(greenPin,255);
    analogWrite(redPin,255);
  }
  else if(temp == 19) {
    analogWrite(bluePin, 51);
    analogWrite(greenPin,255);
    analogWrite(redPin,255);
  }
  else if(temp == 20) {
    analogWrite(bluePin, 102);
    analogWrite(greenPin,255);
    analogWrite(redPin,255);
  }
  else if(temp == 21) {
    analogWrite(bluePin, 153);
    analogWrite(greenPin,153);
    analogWrite(redPin,255);
  }
  else if(temp == 22) {
    analogWrite(bluePin, 204);
    analogWrite(greenPin,102);
    analogWrite(redPin,255);
  }
  else if(temp == 23) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,51);
    analogWrite(redPin,255);
  }
  else if(temp == 24) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,0);
    analogWrite(redPin,255);
  }
  else if(temp == 25) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,51);
    analogWrite(redPin,255);
  }
  else if(temp == 26) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,102);
    analogWrite(redPin,204);
  }
  else if(temp == 27) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,153);
    analogWrite(redPin,153);
  }
  else if(temp == 28) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,204);
    analogWrite(redPin,102);
  }
  else if(temp == 29) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,255);
    analogWrite(redPin,51);
  }
  else if(temp >= 30) {
    analogWrite(bluePin, 255);
    analogWrite(greenPin,255);
    analogWrite(redPin,0);
  }
if(temp > 27) {
  digitalWrite(outPin, HIGH);
  }
  else {
    digitalWrite(outPin, LOW);
  }

delay(10000);
//  Serial.println(temp);
//  Serial.println();

}