In this project, a smart socket is designed which can be automatically switched using a relay. The socket is interfaced to a Particle Photon based IoT device which keeps track of energy consumption using ACS 712 Current sensor and help automatically disconnect socket connection with the Mains when the power consumption by a device exceeds a threshold value. The Photon also remains connected to a web server via Wi-Fi hotspot and keeps updating the energy consumption data to the server.

## Choosing Batteries for Robots

Robots got their name from a Czech word “Robota” which means slave or any mechanical item that can help its master. Robots are mechanical devices that help to perform specific tasks for the humans. The term ‘Robot’ can be used for any mechanical device equipped with the software-based intelligence to perform specific physical tasks.The robotic cars or robotic vehicles are one of the many robotic designs which are developed to move around for performing physical tasks. The motion of such robot itself involves the application of power and use of motors. In making such a robot, there needs to be a balance between the load (weight of Robot), Battery and Motor used.

## Choosing motors for robots

The Robots are mechanical devices equipped with software based intelligence that can perform specific physical tasks. There are many kinds of robots and robotic applications. The robots are designed to suit their application and their mechanical design, body, electronics, and software are designed accordingly.The robotic vehicles or robotic cars are one of the many types of robotic designs. The robotic cars are designed to move around plain surfaces where they can perform certain tasks either through remote controlling or autonomously. They are equipped with sensors, control circuitry and actuators for their operation.

## Linux Installation on Raspberry Pi – Linux Part 3

In the previous tutorial, Linux with all its integral components was examined on the lines of being a complete open source operating system. Many different Linux distributions (also called Distros in short) were also very briefly mentioned at the end of the previous tutorial. There are hundreds of Linux Distros there and it can be intimidating to choose one, when, all it matters is, to have just a sound beginning. An almost exhaustive list and links of available Linux distributions can be checked on DistroWatch.com.

## Boolean Algebra – Boolean Expressions and the Digital Circuits – DE Part 5

In the previous tutorial, various logic gates and their construction was discussed. In the tutorial – Boolean Logic Operations, it was discussed that how by performing logical operations on binary data, arithmetic operations can be executed. In a digital circuit, many logic gates are interconnected along with registers and memory elements to carry out a complex computation task. Any computational problem can be expressed as a boolean function or boolean expression.

## Logic Gates – Building Blocks of Digital Circuits – DE Part 4

In the previous tutorial, it was discussed how arithmetic operations on binary numbers can be implemented by the means of boolean logic operations. In a digital circuit, the logic operations are executed by logic gates. A Logic gate is an electronic circuit which makes logical decisions. The AND, OR and NOT are the basic logic gates.

## Binary Arithmetic Operations – Playing with the numbers – DE Part 2

In the previous tutorial, it was discussed that how any information can be represented by numbers and a set of numbers (code systems)can be used to store and manipulate information. A lot of real-world information is mathematical in nature like count of things, measurements of quantities etc. Such information may further have mathematical relationships. In order for a computer (digital circuit) to perform computing (mathematical operations) on such information, it must be first able to perform arithmetic operations. The arithmetic operations are the basic mathematical operations. Only by performing arithmetic operations, other algebraic operations can be performed on numerical data.

## Boolean Logic Operations – Logic to start building digital circuits – DE Part 3

In the previous tutorial, boolean arithmetic was introduced. It was shown that how binary numbers can be added, subtracted, multiplied and divided. In this tutorial, now logic operations on binary numbers will be discussed. The logic operations are not only the way to implement arithmetic operations (by means of combinational circuits), they form the building blocks of the digital circuits. A digital circuit is built by logic gates where the logic gates perform one or the other boolean logic operation.

## Introduction to Digital Electronics – Representing Everything into Numbers – DE Part 1

Humans collect information about the nature and organize it as ‘science’. The very foundation of science i.e. organized knowledge about understanding of nature and natural phenomena, is based on language and mathematics. Any branch of science involves identification of entities, their attributes, associated events and mathematical analysis of those attributes and events. Such structural analysis of nature and natural phenomena begins with quantification of physical things and their properties, i.e. representation by name and properties of things and events as discrete information (words) and measurement of every possible property in numbers. This is the basic nature and method by which the humans explore the world.

## All Boolean Logical Operations – DE Part 6

In the previous tutorial, various boolean postulates and theorems were discussed. These theorems and postulates are useful in deducing a boolean expression. It was also discussed that for n number of variables, there can be maximum 2^2n boolean functions. So, there can be maximum 16 (2^4) boolean functions between two boolean variables. A boolean variable represents a singular binary data source in digital electronics i.e. a single bit or serial stream of bits. So, there can be maximum 16 logical functions in digital circuits. Let us learn about all the logical operations.

## Gate Level Implementation – DE Part 8

In the previous tutorial, gate level minimization of boolean functions was discussed. A boolean function must be expressed in standard form as either sum of products (SoP) or product of sums (PoS). Once a boolean function in case is minimized to SoP or PoS form, it can be easily fabricated as two-level implementation of AND and OR gates. A two-level implementation is preferred so that there is minimum delay in signal propagation through logic gates from input to output of the digital circuit.

## Introduction to VHDL & Verilog – DE Part 9

In the previous tutorials, boolean functions, boolean expressions, minimization of boolean expressions and implementation of a boolean function into logic gate diagram was discussed. It is possible to minimize a boolean function with less number of boolean variables and implement a logic gate diagram for it manually. But as the number of variables in a boolean function increases, not only its minimization becomes complex, designing a logic gate implementation for it also becomes cumbersome. In such case, computer based design tools are the ultimate resort.

## Introduction to VHDL & Verilog – DE Part 9

In the previous tutorials, boolean functions, boolean expressions, minimization of boolean expressions and implementation of a boolean function into logic gate diagram was discussed. It is possible to minimize a boolean function with less number of boolean variables and implement a logic gate diagram for it manually. But as the number of variables in a boolean function increases, not only its minimization becomes complex, designing a logic gate implementation for it also becomes cumbersome. In such case, computer based design tools are the ultimate resort.

## Arithmetic Circuits – DE Part 10

The previous tutorials laid the foundation for logic synthesis and design of digital circuits. The digital circuits in general always have application as computing devices either as processor, controller or application specific ICs. As a computing device, the digital circuitry of a processor, controller or ASIC must be essentially able to perform arithmetic operations. The implementation of arithmetic operations by digital circuitry is further used to build up complex computing logics and mathematical functions.

## More Combinational Circuits – Multiplexers, Demultiplexers, Encoders and Decoders – DE Part 14

In digital systems, any information is represented by binary codes. There are many binary code systems as mentioned in the first tutorial of this series. A binary code of n bits can represent 2n discrete symbols or elements of coded information. The digital circuits that perform encoding of digital information are called encoders while digital circuits that decode the coded digital information are called decoders. An encoder with enable pins is called multiplexer while a decoder with enable pins is called demultiplexer.

## Sequential Logic Circuits – DE Part 17

In the previous tutorials, all the circuits designed were combinational circuits. In combinational circuits, the binary output is dependant only on the current state of the inputs. So, actually, the combinational circuits have a static operation. They can have input from a fixed set of values for which the output is known to outcome in a defined range at any instant of time.

## Flip Flops – DE Part 18

In the previous tutorial, basics of sequential logic circuits were discussed. It was mentioned that sequential circuits can be of two types – synchronous and asynchronous. The sequential circuits are different from combinational circuits in the way that they have memory elements for feedback of previous input states. The asynchronous circuits use latches as the memory elements. The latches cannot be used as memory elements in synchronous circuits as the synchronous circuits require transition sensitive devices to operate against clock signals.

## Counters – DE Part 20

In the previous tutorial, different types of registers were discussed. The registers and counters are two types of sequential circuits that are solely build from flip flops. The counters are those registers that go through predetermined sequence of states on the application of input pulses. The input pulses can be coming from a master clock or some external source. They may apply to the counter either at regular interval or randomly. There are two types of counters – Asynchronous counter (also known as ripple counter) and Synchronous counter.

## RAM and ROM Memories – DE Part 22

In the previous tutorial, it was mentioned that primary memory can be of two types – Random Access Memory and Read Only Memory. These memories are essential part of any processor or controller based system. In this tutorial, these memories will be discussed in detail.

## RAM and ROM Memories – DE Part 22

In the previous tutorial, it was mentioned that primary memory can be of two types – Random Access Memory and Read Only Memory. These memories are essential part of any processor or controller based system. In this tutorial, these memories will be discussed in detail.