ciao a tutti, vorrei comandare con arduino un relè, che se collegato accende un led. so che è una cosa abbastanza stupida ma non capisco perchè il led non si accenda. ho seguito lo schema che si trova qui Arduino Playground - HomePage
ma non avend le stesse parti indicate nello schema ho usato come diodo l'1N4007, bjt BC547, relay SANYOU DSY2Y-S-205L di cui vi allego il datasheet http://www.datasheetdir.com/DSY2Y-S-205L+Solid-State-Relays.
[alla base del bjt ho collegato una resistenza di 7.8KOhm ( (10k||4.7k)+4.7k)]
al pin 8 del relay ho collegato una resistenza da 330Ohm e led rosso
questo è lo schema del circuito
questo il codice che ho scritto
#define RELAY_PIN 3
#define led_pin 9
void setup()
{
pinMode(led_pin, OUTPUT);
pinMode(RELAY_PIN, OUTPUT);
Serial.begin(9600); // open serial
Serial.println("Press the spacebar to toggle relay on/off");
}
void loop()
{
static int relayVal = 0;
int cmd;
while (Serial.available() > 0)
{
cmd = Serial.read();
switch (cmd)
{
case ' ':
{
relayVal ^= 1; // xor current value with 1 (causes value to toggle)
if (relayVal)
Serial.println("Relay on");
else
Serial.println("Relay off");
break;
}
default:
{
Serial.println("Press the spacebar to toggle relay on/off");
}
}
if (relayVal){
digitalWrite(RELAY_PIN, HIGH);
digitalWrite(led_pin, HIGH);
}
else
{
digitalWrite(RELAY_PIN, LOW);
digitalWrite(led_pin, LOW);
}
}
}