Pages

Sunday 24 May 2015

Serial 8Channel AC 230V SSR and Dimmer

OVERVIEW
SERIAL 8 CHANNEL AC 230V SSR AND DIMMER


The board can be  used in application where dimming of  110-220v AC power is required like dimming of bulb or fan.The board can be control with Serial data from any microcontroller 0-100% dimming or ON/OFF control Main power(230v) completely isolated from  microcontroller.



FEATURES

  • Works on AC power supply 230V.
  • Load Capacity 12 Amp AC(Up to 2000 Watt)
  • Isolated from mains power
  • Works from any microcontroller.
  • Serial Control (TTL).
  • Simultaneous 8 load control with 0-100% dimming.
  • Act as 8 channel solid state relay with ON/OFF and  dimming.
  • Optional input for Microcontroller or Bluetooth, XBEE, and USB inteface pin TX,RX,5V,GND.

BTA12400 IC



Electrical Characteristics

  • Average Power Dissipation of 0.5W
  • Operating Temperature +120 degC
  • Holding Current  (maximum)-30mA
  • Latching Current(maximum)-60mA 
MOC 3021


It is a 6pin Random Phase optoisolators TRIAC  driver output
TRIAC


from Triode for Alternating Current, is a genericized tradename for an electronic component that can conduct current in either direction when it is triggered (turned on), and is formally called a bidirectional triode thyristor or bilateral triode thyristor.

Applications:

  • Solenoid/Valve Controls 
  • Static ac Power Switch
  • Lamp Ballasts
  • Solid State Relays
  • Interfacing Microprocessors to 115 Vac Peripherals 
  • Incandescent Lamp Dimmer
  • Motor Controls
Electrical Characteristics

  • Total Power Dissipation @ TA  is  25°is 4.4mW
  • Storage Temperature Range is -40 to +150 degC
FIRING ANGLE
Phase angle of applied voltage at which the Thyristor conduct





CONNECTING  230V AC 8 CHANNELDIMMER WITH ELECTRONIC GADGETS




UART INPUT FOR LOADS
A=load1    E=load5
B=load2     F=load6
C=load3 G=load7
D=load4 H=load8

S=ALLOFF(LOAD1=OFF,LOAD2=OFF,LOAD3=OFF,LOAD4=OFF,LOAD5=OFF LOAD6=OFF , LOAD7=OFF,  LOAD8=OFF )
N=ALL ON (LOAD1=100%, LOAD2=100%, LOAD3=100%, LOAD4=100%, LOAD5=100%, LOAD6=100%, LOAD7=100%, LOAD8=100%)

Example

A100= load1 at 100% dimmer level.
A026=load1 at 26% dimmer level.
B065=load2 at 65% dimmer level.
C089=load3 at 89% dimmer level.

LOAD1



LOAD2

LOAD3

All ON and All OFF

BLOCK DIAGRAM



CONNECTION WITH ARDUINO BOARD




  • Connect TX of Arduino to RX of Dimmer
  • Connect RX of Arduino to TX of Dimmer
ARDUINO CODE


int s1=8;                  //connect switch1 to pin 2 of arduino
int s2=9;                  //connect switch2 to pin 3 of arduino
int s3=10;                  //connect switch3 to pin 4 of arduino
int s4=11;                 //connect switch4 to pin 5 of arduino
int s5=12;                 //connect switch5 to pin 6 of arduino 
int s6=13;

void setup()
{
  Serial.begin(9600);      // initialize the serial communications
  pinMode(s1,INPUT);
  pinMode(s2,INPUT);
  pinMode(s3,INPUT);
  pinMode(s4,INPUT);
  pinMode(s5,INPUT);
  pinMode(s6,INPUT);
}

void loop()
{
  unsigned char LOAD1=0,LOAD2=0,LOAD3=0; 
   if(s1==LOW)     
   {
     if(LOAD1<100)
     LOAD1++;
     Serial.write('A');
     CONVERT_DISPLAY(LOAD1);  
     delay(500);   
     }
    
    if(s2==LOW)      
     {
  if(LOAD1>0)
        LOAD1--;
Serial.write('A');
CONVERT_DISPLAY(LOAD1);  
delay(500);   
      }
   
   if(s3==LOW)     
   {
     if(LOAD2<100)
     LOAD2++;
     Serial.write('B');
     CONVERT_DISPLAY(LOAD2);  
     delay(500);   
     }
     
     if(s4==LOW)      
     {
       if(LOAD2>0)
        LOAD2--;
Serial.write('B');
CONVERT_DISPLAY(LOAD2);  
delay(500);   
      }
  
  if(s5==LOW)     
   {
     if(LOAD3<100)
     LOAD3++;
     Serial.write('C');
     CONVERT_DISPLAY(LOAD3);  
     delay(500);   
     }
    
     if(s6==LOW)
{
       if(LOAD3>0)
        LOAD3--;
Serial.write('C');
CONVERT_DISPLAY(LOAD3);  
delay(500);   
      }
}
  
  
void CONVERT_DISPLAY(unsigned int d)
{
   unsigned char dig1,dig2,dig3,dig[3];
   unsigned char x;
   unsigned char temp;
   temp=d;
   temp=temp/10;
   dig1=d%10;
   dig2=temp%10;
   dig3=temp/10;
        
        dig[0]=dig3;
dig[1]=dig2;
dig[2]=dig1;

for(x=0;x<3;x++)
{
           temp=dig[x]|0x30;
           Serial.write(temp);
    }
}  

NOTE: Since this module working with live 230V AC, while experimenting user has to take proper safety precautions.