In the previous tutorial, all the possible boolean functions between two variables were discussed. In the tutorial – Boolean Algebra, various theorems and postulates were stated which are useful in simplifying a boolean expression or function. However, the simplification of a boolean expression using theorems and postulates is quite cumbersome and prone to errors. Therefore, for simplification of boolean expressions, some map methods were devised. The most commonly used map method is Karnaugh Map or K-Map.
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.
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.
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.
In the previous tutorial, the basic combinational arithmetic circuits like half adder, full adder, half subtractor and full subtractor were discussed in details. Now, in this tutorial, the truth table and derivation of the boolean expressions for all those circuits will be considered. With the derived boolean expressions, all those circuits will be practically designed using digital ICs.
In the first tutorial of this series – Introduction to Digital Electronics, it was mentioned that there are different code systems that are used to represent digital information as binary numbers. Each code system has different binary numbers assigned to same symbols and characters. The different digital systems may be using different code systems. In such case, there must remain some code conversion circuit to make the interconnected digital systems compatible.
In factories and industries it is common to deal with the use of harmful and poisonous gases. There are situations in which the concentration and volume of these type of gases need to be monitored in an apparatus. Because these gases can be harmful to humans, it is not safe to employ humans for such tasks.So, robots can be used monitor different parameters related to the use of such gases in an apparatus or gas filled chamber. In this tutorial, a wireless robot is designed which can move inside a chamber or well and detect the level of concentration of the gas at the spot.
Robotic cars are commonly used for outdoor operations. These are designed for different purposes and applications. These robotic vehicles are meant to move over a surface and reach a spot to carry out the intended application or perform specific tasks. The robotic cars can be controlled with a remote control which may be connected to the robot either through a wired connection or a wireless interface. The wireless connectivity is usually provided by Wi-Fi, Bluetooth, RF or mobile networks. One of the RF technologies available for providing wireless connection is Zigbee.
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.
In robotics, wireless robots are commonly used for applications that need to be operated remotely. Usually such robots are controlled with a remote control that connects with the robot using a wireless technology like RF, Zigbee, Bluetooth, Wi-Fi or Mobile network. In this tutorial, a wireless robot will be designed that will connect with the remote control using 434 MHz RF module. The remote control will have a keypad to control the movement of the robot. Keypads are one of the commonly used Human Machine Interfaces (HMI) and play an important role in small embedded systems where human interaction or human input is needed.Matrix keypads are well known for their simple architecture and ease of interfacing.
In one of the previous projects “Hand Gesture Controlled Wireless Robot”, it was discussed how remote controls with switches or buttons used for controlling wireless robots have a disadvantage in controlling the robot due to response time factor of the human handling it. As a solution to the problem, use of advanced human-computer interfaces like the gesture recognition, eye movement tracking, and brain waves was suggested. Of which, hand gestures were used in the previous project to control the robot. In this tutorial, a wireless robot will be designed that will be controlled by the joystick. A joystick is not a new input device but it provides better control over the subject. It is easier to use and handle by a human operator.
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.
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.
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.
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.
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.
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.
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.
Home Security Systems are a need of the modern day houses. It is possible to design a simple home security solution by using Raspberry Pi and utilizing the power of Internet of Things. The home security system designed in this project is a simple and easily installable device built using Raspberry Pi 3, Web Cam and PIR Motion Sensor. The Raspberry Pi 3 Model B comes equipped with on-board Bluetooth (BLE) and Wi-Fi (BCM43438 Wireless LAN), so, it can be easily connected with a Wi-Fi Router to access a cloud service.
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.