Driving High voltage loads with optoisolated 220VAC/16A switch by Arduino and OLinuXino

eduArdu is educational low cost Arduino board, it has plenty of resources like: LED 8×8 display, Joystick, Buzzer, Microphone, temperature sensor, Ultrasound distance meter, PIR sensor, IR emitter and receiver, Capacitive buttons, RGB LED, Lipo charger for stand alone work.

Here we will show you how you can drive high voltage loads like lamps, heaters etc with PWR-SWITCH connected to eduArdu.

Plug PWR-SWITCH in mains and the object you want to control plug in PWR-SWITCH receptacle.

Then connect “-” termianl of PWR-SWITCH input to eduArdu UEXT.pin2 and “+” terminal of PWR-SWITCH input to eduArdu UEXT.pin4.

In Arduino IDE make this program:

void setup() {
   pinMode(0, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
   digitalWrite(0, HIGH); // turn the PWR-SWITCH on
   delay(5000); // wait for a 5 seconds
   digitalWrite(0, LOW); // turn the PWR-SWITCH on
   delay(5000); // wait for a 5 seconds
}

The Lamp will start to blink 5 seconds on and 5 seconds off.

You can drive high voltage loads with A20-OLinuXino-LIME2 + LIME2-SHIELD:

In this setup connect “-” termianl of PWR-SWITCH input to LIME2-SHIELD GPIO.pin9 and “+” terminal of PWR-SWITCH input to LIME2-SHIELD GPIO.pin7 (GPIO271 in Linux) and you can use this code to switch on and off PWR-SWITCH:

echo 271 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio271/direction

echo 1 > /sys/class/gpio/gpio271/value

echo 0 > /sys/class/gpio/gpio271/value

or you can use Python and pyA20LIME2:

!/usr/bin/env python
from pyA20Lime2.gpio import gpio
from pyA20Lime2.gpio import port
from pyA20Lime2.gpio import connector
gpio.init() #Initialize module. Always called first
gpio.setcfg(port.PI15, gpio.OUTPUT)

gpio.output(port.PI15, gpio.HIGH)
gpio.output(port.PI15, gpio.LOW)