
Madalas tayong nakakarating sa sitwasyon kung saan nais nating i-switch on ang isang electrical load sa pamamagitan ng pagsunod sa ilang mga button sa isang computer program. Isipin natin ang isang halimbawa, kung saan ikaw ay nakaupo sa isang power plant at nais mong i-switch on ang isang circuit breaker nang malayo. Ang pagkontrol ng mga circuit breaker mula sa layo ay maaaring makamit gamit ang microcontroller. Pag-uusapan natin kung paano gawin ang isang Remote Control Circuit Breaker Gamit ang Microcontroller.
Para sa remote-controlled circuit breaker na ito, kailangan natin ng:
Microcontroller (tulad ng isang Arduino)
Transistor
Diode
Resistors
Relay
LED
PC (Personal Computer)
Ang isang microcontroller ay isang IC na may kakayahang maintindihan ang mga utos na natatanggap mula sa PC sa pamamagitan ng isang communication protocol. Ang isang microcontroller ay may iba't ibang communication protocols upang makipag-ugnayan sa PC tulad ng Serial, Ethernet, at CAN (Controller Area Network) communication protocols.
Ang isang microcontroller ay may maraming peripherals tulad ng GPIO (general purpose Input Output) pins, ADC (Analog to Digital Converter), timer, UART (Universal Asynchronous Receiver Transmitter), at Ethernet, at marami pang iba para makipag-ugnayan sa panlabas na mundo.
Ang digital output mula sa isang microcontroller ay isang signal na may mababang amperage.
Kapag inilagay mo ang isang pin sa HIGH, ang voltage na dumarating sa pin na iyon ay tipikal na +3.3V o +5V at ang ampere na ito ay maaaring source o sink ay humigit-kumulang 30mA. Ito ay sapat kung kontrolado mo ang isang LED na may maliit na requirement.
Kung nais nating makontrol ang circuit breaker sa pamamagitan ng microcontroller pin, kailangan natin ng driver na maaaring source ng kinakailangang amount ng current sa load upang i-switch on. Kailangan mo ng komponente sa pagitan ng iyong microcontroller at ang device na kontrolado sa pamamagitan ng maliit na voltage at current. Ang mga relays at transistors ang karaniwang ginagamit para sa layuning ito.

Ang transistor ay gumagana bilang isang driver sa aplikasyong ito na nagbibigay ng kinakailangang current sa relay upang ito ay ma-turn on kapag nasa saturation mode.
Ang resistors ay ginagamit upang limitahan ang current sa LED, transistors.
Ang light emitting diode ay ginagamit upang ipakita kung ang circuit breaker ay naka-on o naka-off.
Ang relay ay isang switch na ginagamit upang kontrolin ang mataas na power electrical load (tulad ng Circuit Breaker, Motor, at Solenoid). Ang normal na switch ay hindi maaaring handlin ang mataas na power load kaya ginagamit ang relay upang kontrolin ang mataas na power electrical load.
Kapag binigyan ng utos ang microcontroller upang i-turn on ang load, ang pin ng microcontroller ay itinatakda sa 3.3V (sa circuit na ito) na nagpapaturn on ng NPN transistor. Kapag naka-ON ang transistor, ang current ay lumiliko mula collector hanggang emitter ng transistor na nag-actuate sa relay at konekta ang AC voltage sa circuit breaker na nagturn on ng circuit breaker.
Ginagamit ang LED upang ipakita kung naka-ON o naka-OFF ang circuit breaker. Kapag mataas ang pin ng microcontroller, naka-ON ang LED (Circuit Breaker ON) kapag mababa naman ang pin ng microcontroller, naka-OFF ang transistor at walang current ang lumilikha sa coil ng relay at naka-OFF ang circuit breaker, pati na rin ang LED.
Kapag naka-OFF ang relay, nag-generate ng back e.m.f. na maaaring masira ang transistor kung ang magnitude ng back e.m.f. ay mas mataas kaysa sa VCEO voltage ng transistor. Upang protektahan ang transistor at ang digital output ng microcontroller, ginagamit ang diode na nag-conduct kapag naka-OFF ang relay. Ito rin ang kilala bilang freewheeling diode.
Ang inasumang microcontroller ay nagbibigay ng 3.3V kapag mataas ang pin at 0V kapag mababa. Piliin ang isang relay na 12 V at 360-ohm coil resistance, ang current na kinakailangan ng relay upang ma-turn on

Ito ang rated current ng relay.
LED (forward voltage = 1.2 V) ay kumukuha ng humigit-kumulang 20mA current kaya resistance RLED

RLED value can be chosen to 500 Ω.

RB can be chosen as 4K to give more base current to transistor GUI (Graphical User Interface): A GUI can be developed in high level language (like C#) which uses the UDP (User Datagram Protocol) to communicate with microcontroller over PC. Below is the GUI that controls the digital output of microcontroller over UDP protocol.