Tuesday 31 October 2017

How to store information in your clothes invisibly, without electronics

Computer scientists have created fabrics and fashion accessories that can store data -- from security codes to identification tags -- without needing any on-board electronics or sensors.

Thermoelectric power: New ways to power portable electronics, sensors

Scientists have reported significant advances in the thermoelectric performance of organic semiconductors based on carbon nanotube thin films that could be integrated into fabrics to convert waste heat into electricity or serve as a small power source.

Graphene enables high-speed electronics on flexible materials

A flexible detector for terahertz frequencies (1,000 gigahertz) has been developed using graphene transistors on plastic substrates. It is the first of its kind, and can extend the use of terahertz technology to applications that will require flexible electronics, such as wireless sensor networks and wearable technology.

Monday 30 October 2017

Making glass invisible: A nanoscience-based disappearing act

By texturing glass surfaces with nanosized features, scientists almost completely eliminated surface reflections -- an achievement that could enhance solar cell efficiency, improve consumers' experience with electronic displays, and support high-power laser applications.

Gradation-tint smart window

Scientists have developed smart glass capable of producing various shades on its surface. Unlike the conventional types, the newly developed tinting smart glass allows users to easily change the shaded area of a window. For example, a user would be able to change the shaded area of a window in accordance with the elevation of the sun. The technology may be applicable to various types of windows, including those of automobiles and buildings, enabling them to offer both shade and clear visibility simultaneously.

How to Interface an LED With 8051 Microcontroller

We are very familiar with “Hello world!” basic program code in the initial stage of any programming language to learn some basic things. Similarly to get started with 8051 Microcontroller, LED interfacing is a basic thing in Microcontroller interfacing programming. Each Microcontroller is different in its architecture, but the interfacing concept almost all same for […]

The post How to Interface an LED With 8051 Microcontroller appeared first on ElProCus - Electronic Projects for Engineering Students.

Magneto Resistor – Symbol, Working, Types & Characteristics

Back in 1856, William Thomson a Scots-Irish mathematical physicist and engineer while experimenting with iron pieces discovered a phenomenon called magneto-resistance. This effect was later on used to build a special type of variable resistor known as magneto-resistor. In this article you shall get a brief about a magneto – resistor: its working principle, characteristics and applications. So let’s delve in! What is a Magneto Resistor? It was found by Sir William Thomson that, when the iron pieces were kept in magnetic feild, their electrical resistance somehow changed when the direction of magnetic feild with respect to the current flow through them changed. This effect was found when he experimented with nickel too. Thus a new effect or phenomenon was introduced to the world and it was named magneto-resistance. This effect was then further studied and a new type of variable resistor was formed. This resistor would have its electrical resistance vary with the magnetic field strength around it. The current through this resistor also changes with change in magnetic force applied to it. As you already know that magnetic field is a vector quantity meaning, it us specified in both direction and magnitude, just as a current. Thus, we can define a magneto resistor in one line as: “A special kind of variable resistor, whose electrical resistance depends on the external magnetic force applied to it.”   Magneto Resistor Symbol Schematically, in circuit diagram the magneto resistance is represented by the symbol shown below. The arrow through the resistor symbol signifies a variable resistor, while “x” below it denotes that the variable resistor used is “magneto resistor”   The working of the magneto resistor is quite easy; it is based on the effect already mentioned: the magneto resistance. Magneto Resistor – Working Principle To understand the working principle of a magneto resistor, let us first brush up our concept that relates the direction of current and that of magnetic force.   The magnetic field strength is highest, when the current is in same direction as that of the magnetic force, while weakest when it is 900 to the magnetic force. So how does this effect resistance of the material? The answer is simple. What is current? Current is nothing but flow of free electrons. When a material is placed in absence of any magnetic force, these electrons move in an orderly fashion, mostly in straight lines.   As soon as it is subjected to magnetic force, the free electrons get excited and start moving in an indirect motion creating collision among them. These collisions restrict the flow of free electrons such that only few can flow freely. This means the flow of current is restricted, that means the electrical resistance has increased with increase in magnetic field strength. Thus, to put in short terms, the resistance of a magneto resistor increases with increase in magnetic field strength and decreases with a decrease in magnetic field strength. According to the types of magneto-resistance effect, magneto resistor are also categorised into three groups. Lets discuss about them in brief. Magneto Resistor – Types #1. Based on Giant Magneto-resistance:-  Discovered by two scientists Albert Fert and Peter Grunberg, this effect is commonly observed in ferromagnetic materials. The resistance here depends on whether the adjacent ferromagnetic layers are in parallel or anti-parallel. If they are in parallel alignment then the resistance is low, while the resistance is high when they have an anti-parallel alignment.   #2. Based on Extra ordinary Magneto-resistance:- Discovered in 2000, this effect occurs in semiconductor hybrid systems under transverse magnetic field. The resistance of the semiconductor hybrid system increases under...
read more

The post Magneto Resistor – Symbol, Working, Types & Characteristics appeared first on Electronic Circuits and Diagram-Electronics Projects and Design.

Sunday 29 October 2017

Raspberry Pi Music Player

Raspberry Pi Music Player We all know that Raspberry Pi is a multipurpose System on-chip computer which is capable of doing all the functionalities of a general purpose computer with a low bandwidth. Everyone wants to have a customised audio player at home. Raspberry Pi is capable of providing a standard quality audio through its 3.5 mm audio jack. If you want to have a high quality audio output from Raspberry Pi, there are USB plug and play add-on hardware plugins are available, you can make use of it. For the audio player we are going to build using Raspberry Pi, standard output holds good.   In this tutorial we will show you how to build a simple music player which can be controlled using your mobile phone remotely. You can connect your Raspberry Pi nor only to any audio system which supports 3.5 mm audio input jack but also to a Bluetooth speaker. Hope your Raspberry Pi is already configured and running fine. If not, you can refer our previous tutorial on Raspberry Pi server. Raspberry Pi Audio Player – Components You should configure your Raspberry Pi audio output, either it has to come from audio jack output or HDMI output.  You can configure it by opening raspi-config (sudo raspi-config). Later if you use our Raspberry Pi to connect to a HDMI enabled Tv for that you need HDMI audio output. So enable auto since it will automatically switch between audio jack and HDMI based on your connection. Installations For controlling your music player remotely, you need to install two applications in your mobile. We are going to build our music player in two contexts. Having a dedicated music player built on Raspberry Pi Music player which will broadcast songs from your mobile phone. For the first one you need to install Remote Desktop Controller for android. Through that we can browse the files in our Raspberry Pi and play those files on our Raspberry Pi remotely. You can use this app for other purpose also wherever RDC is required. The touch control app for this app is pretty impressive.   The latter one is used to cast your music files from your mobile phone to the Raspberry Pi and playing it on the speaker which is connected to Raspberry Pi. This is for the users who doesn’t want to fill the Raspberry Pi’s memory which probably they may need for their project later. Through this you can cast images and video files.  This helps you to create an instant playlist of 50 songs.   Now we are going to install music players on Raspberry Pi through that we are going to play the .mp3 files. Like windows or any other operating system, its not that easy to download packages directly and install them. So we will be using command line interface to install the audio player. Install any player of your need. To install VLC:- sudo apt-get install vlc -y To install Rhythm Box:- sudo apt-get install rhythmbox -y To install Synaptic:- sudo apt-get install synaptic -y After installing these players you can able to see them in the start menu under sound and video as shown below. Speaker Connection You can connect your speaker to the Raspberry Pi directly via the 3.5mm audio jack. For testing you can now use your earphones.   For connecting your Bluetooth speaker, you can’t simply connect alike in you windows or mac. Some internal configurations are to be made as follows. First install the Raspberry Pi ‘s Bluetooth firmware by these commands. sudo apt-get install pi-bluetooth After installing Bluetooth, support software for...
read more

The post Raspberry Pi Music Player appeared first on Electronic Circuits and Diagram-Electronics Projects and Design.

Saturday 28 October 2017

8051 Microcontroller Memory Organization

In the previous tutorial on 8051 Microcontroller, we have seen the 8051 Microcontroller Introduction and Basics, Pin Diagram, Pin Description and the Architecture overview. In this tutorial, we will continue exploring 8051 Microcontroller by understanding the 8051 Microcontroller Memory Organization.

When the differences between microprocessor and microcontroller are mentioned in the previous tutorial, the main difference can be stated as on-chip memory i.e. a Microcontroller has both Program Memory (ROM) and Data Memory (RAM) on the same chip (IC) whereas a Microprocessor has to be externally interface with the memory modules.

Hence, it is clear that the memory is an important part of the 8051 Microcontroller Architecture (for that matter, any Microcontroller). So, it is important for us to understand the 8051 Microcontroller Memory Organization i.e. how memory is organized, how the processor accesses each memory and how to interface external memory with 8051 Microcontroller.

Before going in to the details of the 8051 Microcontroller Memory Organization, we will first see a little bit about the Computer Architecture and then proceed with memory organization. 

Also read about 8051 MICROCONTROLLER ARCHITECTURE OVERVIEW.

Types of Computer Architecture

Basically, Microprocessors or Microcontrollers are classified based on the two types of Computer Architecture: Von Neumann Architecture and Harvard Architecture.

Von Neumann Architecture

Von Neumann Architecture or Princeton Architecture is a Computer Architecture, where the Program i.e. the Instructions and the Data are stored in a single memory.

Since the Instruction Memory and the Data Memory are the same, the Processor or CPU cannot access both Instructions and Data at the same time as they use a single bus.

This type of architecture has severe limitations to the performance of the system as it creates a bottleneck while accessing the memory.

8051 Microcontroller Memory Organization Image 1

Harvard Architecture

Harvard Architecture, in contrast to Von Neumann Architecture, uses separate memory for Instruction (Program) and Data. Since the Instruction Memory and Data Memory are separate in a Harvard Architecture, their signal paths i.e. buses are also different and hence, the CPU can access both Instructions and Data at the same time.

Almost all Microcontrollers, including 8051 Microcontroller implement Harvard Architecture.

8051 Microcontroller Memory Organization

The 8051 Microcontroller Memory is separated in Program Memory (ROM) and Data Memory (RAM). The Program Memory of the 8051 Microcontroller is used for storing the program to be executed i.e. instructions. The Data Memory on the other hand, is used for storing temporary variable data and intermediate results.

8051 Microcontroller has both Internal ROM and Internal RAM. If the internal memory is inadequate, you can add external memory using suitable circuits.  

Read this interesting post: 8051 MICROCONTROLLER PROJECTS FOR ENGINEERING STUDENTS.

Program Memory (ROM) of 8051 Microcontroller

In 8051 Microcontroller, the code or instructions to be executed are stored in the Program Memory, which is also called as the ROM of the Microcontroller. The original 8051 Microcontroller by Intel has 4KB of internal ROM.

Some variants of 8051 like the 8031 and 8032 series doesn’t have any internal ROM (Program Memory) and must be interfaced with external Program Memory with instructions loaded in it.

Almost all modern 8051 Microcontrollers, like 8052 Series, have 8KB of Internal Program Memory (ROM) in the form of Flash Memory (ROM) and provide the option of reprogramming the memory.

8051 Microcontroller Memory Organization Image 4

In case of 4KB of Internal ROM, the address space is 0000H to 0FFFH. If the address space i.e. the program addresses exceed this value, then the CPU will automatically fetch the code from the external Program Memory.

For this, the External Access Pin (EA Pin) must be pulled HIGH i.e. when the EA Pin is high, the CPU first fetches instructions from the Internal Program Memory in the address range of 0000H to 0FFFFH and if the memory addresses exceed the limit, then the instructions are fetched from the external ROM in the address range of 1000H to FFFFH.

8051 Microcontroller Memory Organization Image 5

There is another way to fetch the instructions: ignore the Internal ROM and fetch all the instructions only from the External Program Memory (External ROM). For this scenario, the EA Pin must be connected to GND. In this case, the memory addresses of the external ROM will be from 0000H to FFFFH.

8051 Microcontroller Memory Organization Image 6

Data Memory (RAM) of 8051 Microcontroller

The Data Memory or RAM of the 8051 Microcontroller stores temporary data and intermediate results that are generated and used during the normal operation of the microcontroller. Original Intel’s 8051 Microcontroller had 128B of internal RAM.

But almost all modern variants of 8051 Microcontroller have 256B of RAM. In this 256B, the first 128B i.e. memory addresses from 00H to 7FH is divided in to Working Registers (organized as Register Banks), Bit – Addressable Area and General Purpose RAM (also known as Scratchpad area).

In the first 128B of RAM (from 00H to 7FH), the first 32B i.e. memory from addresses 00H to 1FH consists of 32 Working Registers that are organized as four banks with 8 Registers in each Bank.

8051 Microcontroller Memory Organization Image 7

The 4 banks are named as Bank0, Bank1, Bank2 and Bank3. Each Bank consists of 8 registers named as R0 – R7. Each Register can be addressed in two ways: either by name or by address.

To address the register by name, first the corresponding Bank must be selected. In order to select the bank, we have to use the RS0 and RS1 bits of the Program Status Word (PSW) Register (RS0 and RS1 are 3rd and 4th bits in the PSW Register).

When addressing the Register using its address i.e. 12H for example, the corresponding Bank may or may not be selected. (12H corresponds to R2 in Bank2).

The next 16B of the RAM i.e. from 20H to 2FH are Bit – Addressable memory locations. There are totally 128 bits that can be addressed individually using 00H to 7FH or the entire byte can be addressed as 20H to 2FH.

For example 32H is the bit 2 of the internal RAM location 26H.

The final 80B of the internal RAM i.e. addresses from 30H to 7FH, is the general purpose RAM area which are byte addressable.

These lower 128B of RAM can be addressed directly or indirectly.

The upper 128B of the RAM i.e. memory addresses from 80H to FFH is allocated for Special Function Registers (SFRs). SFRs control specific functions of the 8051 Microcontroller. Some of the SFRs are I/O Port Registers (P0, P1, P2 and P3), PSW (Program Status Word), A (Accumulator), IE (Interrupt Enable), PCON (Power Control), etc.

8051 Microcontroller Memory Organization Image 9

SRFs Memory addresses are only direct addressable. Even though some of the addresses between 80H and FFH are not assigned to any SFR, they cannot be used as additional RAM area.

In some microcontrollers, there is an additional 128B of RAM, which share the memory address with SFRs i.e. 80H to FFH. But, this additional RAM block is only accessed by indirect addressing.

Interfacing External Memory with 8051 Microcontroller

We have seen that a typical 8051 Microcontroller has 4KB of ROM and 128B of RAM (most modern 8051 Microcontroller variants have 8K ROM and 256B of RAM).

The designer of an 8051 Microcontroller based system is not limited to the internal RAM and ROM present in the 8051 Microcontroller. There is a provision of connecting both external RAM and ROM i.e. Data Memory and Program.

The reason for interfacing external Program Memory or ROM is that complex programs written in high – level languages often tend to be larger and occupy more memory.

Another important reason is that chips like 8031 or 8032, which doesn’t have any internal ROM, have to be interfaced with external ROM.

A maximum of 64B of Program Memory (ROM) and Data Memory (RAM) each can be interface with the 8051 Microcontroller.

The following image shows the block diagram of interfacing 64KB of External RAM and 64KB of External ROM with the 8051 Microcontroller. 

8051 Microcontroller Memory Organization Image 8

In this tutorial, we have seen the 8051 Microcontroller Memory Organization, Internal ROM and RAM and how to interface external ROM and RAM with 8051 Microcontroller.

The post 8051 Microcontroller Memory Organization appeared first on Electronics Hub.

Friday 27 October 2017

Deep-depletion: A new concept for MOSFETs

Diamond is largely recognized as the ideal material in wide bandgap development, but realizing its full potential in field-effect transistors has been challenging. Researchers incorporate a new approach by using the deep-depletion regime of bulk-boron-doped diamond MOSFETs.

Rolling the dice on perovskite interfaces

Researchers have developed a Bayesian probability-based computer program to help work out the structure of perovskite oxides at their interfaces.

Innovative material for soft sensor could bring new tactile tech

A new type of soft and stretchable sensor could find uses in applications ranging from athletics and health monitoring to prosthetics and virtual reality.

Thursday 26 October 2017

Envisioning a new engineering field: Understanding atomic-scale patterns

The phenomenon that forms interference patterns on television displays when a camera focuses on a pattern like a person wearing stripes has inspired a new way to conceptualize electronic devices. Researchers are showing how the atomic-scale version of this phenomenon may hold the secrets to help advance electronics design to the limits of size and speed.

Piezoelectrics stretch their potential with a method for flexible sticking

Thin-film piezoelectrics, with dimensions on the scale of micrometers or smaller, offer potential for new applications where smaller dimensions or a lower voltage operation are required. Researchers have demonstrated a new technique for making piezoelectric microelectromechanical systems by connecting a sample of lead zirconate titanate piezoelectric thin films to flexible polymer substrates.

Wednesday 25 October 2017

Highly stable perovskite solar cells developed

Researchers have developed highly stable perovskite solar cells (PSCs), using edged-selectively fluorine (F) functionalized graphene nano-platelets (EFGnPs). The breakthrough is especially significant since the cells are made out of fluorine, a low-cost alternative to gold.

Tuesday 24 October 2017

Electronic entropy enhances water splitting

An electron transitioning from state to state increases cerium's entropy, making it ideal for hydrogen production, researchers have found.

Monday 23 October 2017

Optical communication coming to silicon chips

Ultrathin films of a semiconductor that emits and detects light can be stacked on top of silicon wafers, researchers report in a study that could help bring optical communication onto silicon chips.

Understanding how electrons turn to glass

Researchers have gained new insight into the electronic processes that guide the transformation of liquids into a solid crystalline or glassy state.

Taming 'wild' electrons in graphene

Graphene -- a one-atom-thick layer of carbon -- is a better conductor than copper and is very promising for electronic devices, but with one catch: Electrons that move through it can't be stopped. Until now, that is. Scientists have learned how to tame the unruly electrons in graphene, paving the way for the ultra-fast transport of electrons with low loss of energy in novel systems.

What Are The Different Types of Sequential Circuits?

A sequential circuit is a logical circuit, where the output depends on the present value of the input signal as well as the sequence of past inputs. While a combinational circuit is a function of present input only. A sequential circuit is a combination of combinational circuit and a storage element. the sequential circuits use […]

The post What Are The Different Types of Sequential Circuits? appeared first on ElProCus - Electronic Projects for Engineering Students.

Sunday 22 October 2017

Valley polarization for electronic and optoelectronic technologies clarified

Many of today's technologies, such as, solid-state lighting, transistors in computer chips, and batteries in cell phones rely simply on the charge of the electron and how it moves through the material. In certain materials, such as the monolayer transition metal dichalcogenides (TMDs), electrons can be selectively placed into a chosen electronic valley using optical excitation.

Friday 20 October 2017

8051 Microcontroller Architecture

In the previous 8051 Microcontroller Tutorials, we have seen some basics of 8051 Microcontroller and also the Pin Diagram and Pin Description of 8051 Microcontroller. In this tutorial, we will see the 8051 Microcontroller Architecture and the different components in the architecture.

We have already seen the Pin Diagram of 8051 Microcontroller for its standard 40 – pin DIP (Dual In – line Package) configuration. In this tutorial, in the process of dealing with the 8051 Microcontroller Architecture, we will see the hardware aspects of the 8051 microcontroller like I/O PORTS, RAM, ROM, Timers and Serial Port etc.

Before going into the details of the 8051 Microcontroller Architecture, we will first see the Basic Components of a Microcontroller, which makes a Microcontroller a true Computer on chip. 

Before continuing with this tutorial, read the 8051 MICROCONTROLLER INTRODUCTION.

Basic Components of a Microcontroller

The difference between a Microprocessor and a Microcontroller is the availability of the on – chip peripherals like Memory (both RAM and ROM), I/O Ports, Timers / Counters, Communication Interfaces (like Serial Port), etc.

The following image shows the basic components of a Microcontroller. As all the components (and a few other components) are integrated on a single chip (Integrated Circuit – IC), a Microcontroller can be considered as a Microcomputer (or a Computer on – chip).

8051 Microcontroller Architecture Image 2

CPU (Central Processing Unit)

It is the heart of the Microcontroller that mainly comprises of an Arithmetic Logic Unit (ALU) and a Control Unit (CU) and other important components. The CPU is the primary device in communicating with peripheral devices like Memory, Input and Output.

8051 Microcontroller Architecture Image 3

ALU or Arithmetic Logic Unit, as the name suggests, performs the Arithmetical and Logical Operations. CU or Control Unit is responsible for timing of the communication process between the CPU and its peripherals.

Program Memory

The instructions of the CPU are stored in the Program Memory. It is usually implemented as Read Only Memory or ROM, where the Program written in to it will be retained even when the power is down or the system is reset.

Modern Program Memory Modules are generally made up of EEPROM (Electrically Erasable Programmable Read – only Memory), which is a type of non – volatile memory.

In this type of memory, the data can be erased and reprogrammed using special programming signals.

When the microcontroller is powered on or manually reset, the processor executes a set of instructions from a pre-defined memory location (address) in the Program Memory.

Data Memory

Data Memory in a Microcontroller is responsible for storing values of variables, temporary data, intermediate results and other data for proper operation of the program.

Data Memory is often called as RAM (Random Access Memory), which is a type of volatile memory. It is generally organized as registers and includes both Special Function Registers (SFRs) and user accessible memory locations.

Input and Output Ports

I/O Ports or Input / Output Ports provide the microcontroller, a physical connection to the outside world. Input Ports provide a gateway for passing on the data from the outside world with the help of sensors.

The data from the input ports is manipulated (depending on the application) and will determine the data on the output port.

Output Ports allow microcontroller to control external devices (like motors and LEDs). Generally, all ports in microcontrollers have dual functionality i.e. they can act as both input and output port (not at the same time though).

Clock Generator (Oscillator)

A clock signal allows the operations inside the microcontroller and other parts to be synchronous. A Clock Generator is an integral part of the Microcontroller’s Architecture and the user has to provide an additional Timing Circuit in the form of a Crystal.

8051 Microcontroller Architecture and Features

Whenever we are starting to work on a new device like a TV or Washing Machine, we would start by understanding the capabilities of the device. We try to understand the different features of the device like Motor RPM, load capacity and Power Consumption, in case of a washing machine.

This is applicable even in our case i.e. when starting with 8051 microcontroller, it would be best if we started by learning the Internal Hardware Design of the 8051 Microcontroller, which is also called as the 8051 Microcontroller Architecture.

In the next section, we will see the 8051 Microcontroller Architecture and few of its important features. In – depth details about some important features like 8051 Memory Organization and 8051 Input / Output (I/O) Ports will be discussed in a new tutorial.

8051 Microcontroller Architecture

The 8051 Microcontroller is an 8 – bit Microcontroller i.e. it can read, write and process 8 – bit Data. There are a bunch of manufacturers like Atmel, NXP, TI, who manufacture their own versions of 8051 Microcontroller.

Irrespective of the manufacturer, the internal hardware design i.e. the 8051 Microcontroller Architecture remains more or less the same. The following image shows the 8051 Microcontroller Architecture in a block diagram style.

8051 Microcontroller Architecture Image 1

The block diagram of the 8051 Microcontroller Architecture shows that 8051 Microcontroller consists of a CPU, RAM (SFRs and Data Memory), Flash (EEPROM), I/O Ports and control logic for communication between the peripherals.

All these different peripherals inside the 8051 Microcontroller will communicate with each other via the 8 – bit Data Bus, also known as the internal data bus. 

Also read this post on 8051 MICROCONTROLLER PIN DIAGRAM AND PIN DESCRIPTION.

8051 Microcontroller Architecture Features

We have seen the internal architecture of the 8051 Microcontroller in the above section. Now, we will see the features of the 8051 Microcontroller Architecture.

NOTE: Some of the features like internal ROM and RAM will vary with the specific model of the 8051 Microcontroller.

  • 8 – bit CPU with two Registers A (Accumulator) and B.
  • Internal ROM of 8K Bytes – It is a flash memory that supports in – system programming.
  • Internal RAM of 256 Bytes – The first 128 Bytes of the RAM i.e. 00H to 7FH is again divided in to 4 banks with 8 registers (R0 – R7) in each bank, 16 bit addressable registers and 80 general purpose registers. The higher 128 Bytes of the RAM i.e. 80H to FFH consists of SFRs or Special Function Registers. Using SFRs we can control different peripherals like Timers, Serial Port, all I/O Ports, etc.
  • 32 I/O Pins (Input / Output Pins) – Arranged as 4 Ports: P0, P1, P2 and P3.
  • 8- bit Stack Pointer (SP) and Processor Status Word (PSW).
  • 16 – bit Program Counter (PC) and Data Pointer (DPTR).
  • Two 16 – bit Timers / Counters – T0 and T1.
  • Control Registers – SCON, PCON, TCON, TMOD, IP and IE.
  • Serial Data Transmitter and Receiver for Full – Duplex Operation – SBUF.
  • Interrupts: Two External and Three Internal.
  • Oscillator and Clock Circuit. 

In this tutorial, we have seen a brief note on the 8051 Microcontroller Architecture. In the next 8051 Tutorial, we will see the 8051 Memory Organization and I/O Ports.  

The post 8051 Microcontroller Architecture appeared first on Electronics Hub.

Carbon Film Resistor – Working, Construction & Applications

Carbon Film Resistor One of the most used “passive devices” in an electric or electronic circuit is undoubtedly the resistor. Since it has wide range of applications they are found in different varieties. According to the type of resistance they offer, these devices are often classified as fixed or variable resistors. However, the resistors, either fixed or variable are not same in construction and hence are termed according to their type of construction. One of these resistor type is the carbon film resistor, which we would be discussed in this article. What is a Carbon Film Resistor? It is clear from the name “carbon film resistor” itself, that this resistor is made from carbon film. The carbon film is deposited on a ceramic former. This is actually a fixed type of resistor, meaning it provides only a single resistance value. Here the carbon film plays the role of resistive material that restricts the flow of current in a circuit. Thus in a single line we can define a carbon film resistor as: Carbon film resistor is a fixed resistor that uses a carbon film that is deposited on a ceramic former, to restrict the flow of current The figure below shows how a set of commercial carbon film resistors looks like.   The accuracy of resistance value offered by this resistor owes to the helical cut that is usually made into the film. This and other construction features are discussed in the “construction” section of the article. Now does this resistor have a particular symbol to represent it schematically, you may wonder. Actually, the symbol is same as that of a resistor, a zig- zag line or a rectangular box (IEC standard). However to differentiate that the used resistor in the circuit is a carbon film resistor, the resistance value of the resistor is prefixed by “CR”. Like for example, if we have used a 120kΩ carbon film resistor, then we would write it as CR120kΩ, to indicate the same. Carbon Resistor – Construction The carbon film resistors are constructed or manufactured using a deposition process. As mentioned earlier, a carbon film is deposited on a ceramic substrate. This carbon film restricts the flow and hence is the imperative part of this resistor. It is due to this reason, the resistor is named “carbon film resistor”. A hydrocarbon such as methane or benzene is cracked at a high temperature of 1000oC where a ceramic carrier. Since a pure graphite(Carbon) is used for distribution on the ceramic substrate without binding the noise produced by the carbon film resistor is low. The role of ceramic substrate is that of an insulator to heat or electricity. Its presence therefore makes this resistor withstand high temperature without much damage. The figure below shows a schematic of the construction of the carbon resistor.   Here we observe that the carbon film is helical in shape. As already mentioned it helps in getting accurate resistance out of this resistor. This helps in increasing the effective length of the resistor while decreasing the width of the resistor. The value of resistance is adjusted by increasing/decreasing the length of the helical path (since resistance is directly proportional to the length). An epoxy coat is given to the carbon film for its protection. The two end caps shown in figure are actually metallic and the two connecting leads made of copper are joined at the two ends of these metallic caps. So how does the carbon film layer help in restricting the electron flow? It actually depends on the width of the carbon film layer. For a high resistance...
read more

The post Carbon Film Resistor – Working, Construction & Applications appeared first on Electronic Circuits and Diagram-Electronics Projects and Design.

Novel 'converter' heralds breakthrough in ultra-fast data processing at nanoscale

Scientists have recently invented a novel 'converter' that can harness the speed and small size of plasmons for high frequency data processing and transmission in nanoelectronics.

Two-dimensional materials gets a new theory for control of properties

Desirable properties including increased electrical conductivity, improved mechanical properties, or magnetism for memory storage or information processing may be possible because of a theoretical method to control grain boundaries in two-dimensional materials, according to materials scientists.

The resistors-in-parallel mind tools

Imagine a circuit with two resistors in parallel.

If you’re not sure what that looks like, look at this image:

Let’s say one is 100 Ohms and the other 100.000 Ohms.

Can you quickly find the combined value of the two of them?

What if both of the values are 300 Ohms?

You *could* use the formula for resistors in parallel and calculate it.

But there’s a quicker way.

“Mind tools” for resistors in parallel

Here are 3 “mind tools” to find parallel values without a calculator:

  1. The total resistance of two resistors in parallel is always smaller than the smallest resistor value.
  2. If the difference between the two resistors is large (100 times or more), the resulting value is approximately the same as the smallest resistor.
  3. If the two values are equal, the total resistance is half of the resistance value of one of the resistors.

Using these, you can easily find the answer to the questions above:

  • 100 Ohm in parallel with 100.000 Ohms is approximately 100 Ohms.
  • 300 Ohms in parallel with 300 Ohms is 150 Ohms.

When you’ve done this enough, it becomes second nature.

This skill, together with a few more basic analysis-skills, will help your ability to look at a circuit diagram and understand what it does/how it works.

I took these tips from the course “Resistance is everything” from Ohmify:
http://ift.tt/2hU4pTY

The course teaches you to combine resistances, and then “see” the voltages and currents in the circuit. Which is probably one of the most important theoretical skills in electronics.

Keep On Soldering!
Oyvind @ build-electronic-circuits.com

Copyright Build Electronic Circuits

Thursday 19 October 2017

Liquid metal discovery ushers in new wave of chemistry and electronics

Researchers use liquid metal to create atom-thick 2-D never before seen in nature. The research could transform how we do chemistry and could also be applied to enhance data storage and make faster electronics.

New ways to achieve selectivity for biomarkers in bioelectronics

Materials science and engineering researchers have experimentally verified the electrochemical processes that control charge transfer rate from an organic polymer to a biomarker molecule. Their findings may enhance selectivity for biomarkers in bioelectronic devices.

Water Level Indicator Using Arduino & Ultrasonic Sensor

Water Level Indicator Using Arduino Wireless Water Level Indicator Using Ultrasonic sensor & Arduino is an amazing and very useful project. The objective of this project is to notify the user the amount of water that is present in the overhead water tank. This project can be further enhanced to control the water level in the tank by turning it ON, when the water level is LOW, and turning it OFF when the water level is HIGH. Thus, the Arduino water level indicator helps in preventing wastage of water in overhead tank. This project is wireless so, it is easy to install and it can work up to 100 meters. In this project two circuits are used: a transmitter circuit and a receiver circuit. The transmitter circuit makes use of an ultrasonic sensor to measure the water level in terms of distance. This data is sent to the receiver circuit using RF communication. The water level is shown in terms of percentage on a 16×2 LCD module, which is connected to receiver circuit. Components Used Working In the project two circuits are used, First is the transmitter and second is the receiver. An Ultrasonic sensor is used in the transmitter circuit, which measures the distance of water level from the upper point of the bottle or Tank. The distance is measured in centimeters and sent to receiver circuit using RF communication.   Receiver circuit receives the data from transmitter circuit and converts it in terms of the percentage and shows on LCD.   Ultrasonic sensor has two openings, one is Trigger and the other is Echo. Trigger makes high frequency sound waves. These sound waves are passed through the tank from top to bottom. The sound waves hit the water and are reflected back in the form of Echo waves. The Echo opening receives the Echo waves. The water level sensor Arduino measures the time between Echo and Trigger. This traveled distance is directly proportional to the time. Water Level Indicator Using Arduino – Video Demonstration Arduino Water Level Indicator Circuit In this project two circuits are used Transmitter Circuit –   Transmitter circuit is shown in the figure below. Fig1, in this circuit an Ultrasonic sensor is connected to pin D9 and D10 pin of Arduino. Ultrasonic sensor is powered by Vcc and GND pin, these pins are connected to Vcc and GND pin of the Arduino. The measured data is transmitted by RF transmitter. RF transmitter’s data pin is connected to D4 pin of Arduino Nano. RF transmitter’s Vcc and GND pins are connected to Vcc and GND pins of the Arduino. In this transmitter circuit an Antenna is used which is connected to ANT pin of RF transmitter, whole circuit is powered by 9 volt battery. The battery is connected to Vin and GND pin of Arduino.   Receiver Circuit – In the receiver Circuit, RF Receiver is used for receiving data from the transmitter. Data pin of RF Receiver is connected to D4 pin of Arduino. Water level is shown on LCD and LCD is connected to Arduino from pin D4 to D9. LCD is powered by Vcc and GND pin using the Arduino, the contrast of LCD is changed by moving the preset, which is connected to pin 3 of LCD. Receiver circuit is powered by a 9 Volt battery through a switch, which is connected between Vcc and GND pin of the Arduino. Circuit is shown in the figure below.   The above shown circuit diagrams of transmitter and receiver circuits are more than enough to make one by yourself on a breadboard or Zero PCB....
read more

The post Water Level Indicator Using Arduino & Ultrasonic Sensor appeared first on Electronic Circuits and Diagram-Electronics Projects and Design.

Wednesday 18 October 2017

Tuesday 17 October 2017

Basics of Embedded C Program

Embedded C is one of the most popular and most commonly used Programming Languages in the development of Embedded Systems. So, in this article, we will see some of the Basics of Embedded C Program and the Programming Structure of Embedded C.

Embedded C is perhaps the most popular languages among Embedded Programmers for programming Embedded Systems. There are many popular programming languages like Assembly, BASIC, C++ etc. that are often used for developing Embedded Systems but Embedded C remains popular due to its efficiency, less development time and portability.

Before digging in to the basics of Embedded C Program, we will first take a look at what an Embedded System is and the importance of Programming Language in Embedded Systems.

What is an Embedded System?

An Embedded System can be best described as a system which has both the hardware and software and is designed to do a specific task. A good example for an Embedded System, which many households have, is a Washing Machine.

We use washing machines almost daily but wouldn’t get the idea that it is an embedded system consisting of a Processor (and other hardware as well) and software.

Basics of Embedded C Program Image 1

Embedded Systems can not only be stand-alone devices like Washing Machines but also be a part of a much larger system. An example for this is a Car. A modern day Car has several individual embedded systems that perform their specific tasks with the aim of making a smooth and safe journey.

Some of the embedded systems in a Car are Anti-lock Braking System (ABS), Temperature Monitoring System, Automatic Climate Control, Tyre Pressure Monitoring System, Engine Oil Level Monitor, etc. 

Also read EMBEDDED SYSTEMS & ITS REAL TIME APPLICATIONS.

Programming Embedded Systems

As mentioned earlier, Embedded Systems consists of both Hardware and Software. If we consider a simple Embedded System, the main Hardware Module is the Processor. The Processor is the heart of the Embedded System and it can be anything like a Microprocessor, Microcontroller, DSP, CPLD (Complex Programmable Logic Device) and FPGA (Field Programmable Gated Array).

All these devices have one thing in common: they are programmable i.e. we can write a program (which is the software part of the Embedded System) to define how the device actually works.

Embedded Software or Program allow Hardware to monitor external events (Inputs) and control external devices (Outputs) accordingly. During this process, the program for an Embedded System may have to directly manipulate the internal architecture of the Embedded Hardware (usually the processor) such as Timers, Serial Communications Interface, Interrupt Handling, and I/O Ports etc.

From the above statement, it is clear that the Software part of an Embedded System is equally important to the Hardware part. There is no point in having advanced Hardware Components with poorly written programs (Software).

There are many programming languages that are used for Embedded Systems like Assembly (low-level Programming Language), C, C++, JAVA (high-level programming languages), Visual Basic, JAVA Script (Application level Programming Languages), etc.

In the process of making a better embedded system, the programming of the system plays a vital role and hence, the selection of the Programming Language is very important.

Factors for Selecting the Programming Language

The following are few factors that are to be considered while selecting the Programming Language for the development of Embedded Systems.

  • Size: The memory that the program occupies is very important as Embedded Processors like Microcontrollers have a very limited amount of ROM.
  • Speed: The programs must be very fast i.e. they must run as fast as possible. The hardware should not be slowed down due to a slow running software.
  • Portability: The same program can be compiled for different processors.
  • Ease of Implementation
  • Ease of Maintenance
  • Readability

Earlier Embedded Systems were developed mainly using Assembly Language. Even though Assembly Language is closest to the actual machine code instructions, the lack of portability and high amount of resources spent on developing the code, made the Assembly Language difficult to work with.

There are other high-level programming languages that offered the above mentioned features but none were close to C Programming Language.

Introduction to Embedded C Programming Language

Before going in to the details of Embedded C Programming Language and basics of Embedded C Program, we will first talk about the C Programming Language.

The C Programming Language, developed by Dennis Ritchie in the late 60’s and early 70’s, is the most popular and widely used programming language. The C Programming Language provided low level memory access using an uncomplicated compiler (a software that converts programs to machine code) and achieved efficient mapping to machine instructions.

The C Programming Language became so popular that it is used in a wide range of applications ranging from Embedded Systems to Super Computers.

Embedded C Programming Language, which is widely used in the development of Embedded Systems, is an extension of C Program Language. The Embedded C Programming Language uses the same syntax and semantics of the C Programming Language like main function, declaration of datatypes, defining variables, loops, functions, statements, etc.

The extension in Embedded C from standard C Programming Language include I/O Hardware Addressing, fixed point arithmetic operations, accessing address spaces, etc.

Difference between C and Embedded C

There is actually not much difference between C and Embedded C apart from few extensions and the operating environment. Both C and Embedded C are ISO Standards that have almost same syntax, datatypes, functions, etc.

Embedded C is basically an extension to the Standard C Programming Language with additional features like Addressing I/O, multiple memory addressing and fixed-point arithmetic, etc.

C Programming Language is generally used for developing desktop applications whereas Embedded C is used in the development of Microcontroller based applications.

Basics of Embedded C Program

Now that we have seen a little bit about Embedded Systems and Programming Languages, we will dive in to the basics of Embedded C Program. We will start with two of the basic features of the Embedded C Program: Keywords and Datatypes.

Keywords in Embedded C

A Keyword is a special word with a special meaning to the compiler (a C Compiler for example, is a software that is used to convert program written in C to Machine Code). For example, if we take the Keil’s Cx51 Compiler (a popular C Compiler for 8051 based Microcontrollers) the following are some of the keywords:

  • bit
  • sbit
  • sfr
  • small
  • large

These are few of the many keywords associated with the Cx51 C Compiler along with the standard C Keywords.

Data Types in Embedded C

Data Types in C Programming Language (or any programming language for that matter) help us declaring variables in the program. There are many data types in C Programming Language like signed int, unsigned int, signed char, unsigned char, float, double, etc. In addition to these there few more data types in Embedded C.

The following are the extra data types in Embedded C associated with the Keil’s Cx51 Compiler.

  • bit
  • sbit
  • sfr
  • sfr16

The following table shows some of the data types in Cx51 Compiler along with their ranges.

Data Type Bits (Bytes) Range
bit 1 0 or 1 (bit addressable part of RAM)
signed int 16 (2) -32768 to +32767
unsigned int 16 (2) 0 to 65535
signed char 8 (1) -128 to +127
unsigned 8 (1) 0 to 255
float 32 (4) ±1.175494E-38 to ±3.402823E+38
double 32 (4) ±1.175494E-38 to ±3.402823E+38
sbit 1 0 or 1 (bit addressable part of RAM)
sfr 8 (1) RAM Addresses (80h to FFh)
sfr16 16 (2) 0 to 65535

Basic Structure of an Embedded C Program (Template for Embedded C Program)

The next thing to understand in the Basics of Embedded C Program is the basic structure or Template of Embedded C Program. This will help us in understanding how an Embedded C Program is written.

The following part shows the basic structure of an Embedded C Program.

    • Multiline Comments . . . . . Denoted using /*……*/
    • Single Line Comments . . . . . Denoted using //
    • Preprocessor Directives . . . . . #include<…> or #define
    • Global Variables . . . . . Accessible anywhere in the program
    • Function Declarations . . . . . Declaring Function
    • Main Function . . . . . Main Function, execution begins here
      {
      Local Variables . . . . . Variables confined to main function
      Function Calls . . . . . Calling other Functions
      Infinite Loop . . . . . Like while(1) or for(;;)
      Statements . . . . .
      ….
      ….
      }
    • Function Definitions . . . . . Defining the Functions
      {
      Local Variables . . . . . Local Variables confined to this Function
      Statements . . . . .
      ….
      ….
      }

Before seeing an example with respect to 8051 Microcontroller, we will first see the different components in the above structure. 

Different Components of an Embedded C Program

Comments: Comments are readable text that are written to help us (the reader) understand the code easily. They are ignored by the compiler and do not take up any memory in the final code (after compilation).

There are two ways you can write comments: one is the single line comments denoted by // and the other is multiline comments denoted by /*….*/.

Preprocessor Directive: A Preprocessor Directive in Embedded C is an indication to the compiler that it must look in to this file for symbols that are not defined in the program.

In C Programming Language (also in Embedded C), Preprocessor Directives are usually represented using #include… or #define….

In Embedded C Programming, we usually use the preprocessor directive to indicate a header file specific to the microcontroller, which contains all the SFRs and the bits in those SFRs.

In case of 8051, Keil Compiler has the file “reg51.h”, which must be written at the beginning of every Embedded C Program.

Global Variables: Global Variables, as the name suggests, are Global to the program i.e. they can be accessed anywhere in the program.

Local Variables: Local Variables, in contrast to Global Variables, are confined to their respective function.

Main Function: Every C or Embedded C Program has one main function, from where the execution of the program begins. 

Related Post: “EMBEDDED SYSTEM PROJECT IDEAS“.

Basic Embedded C Program

Till now, we have seen a few Basics of Embedded C Program like difference between C and Embedded C, basic structure or template of an Embedded C Program and different components of the Embedded C Program.

Continuing further, we will explore in to basics of Embedded C Program with the help of an example. In this example, we will use an 8051 Microcontroller to blink LEDs connected to PORT1 of the microcontroller.

Example of Embedded C Program

The following image shows the circuit diagram for the example circuit. It contains an 8051 based Microcontroller (AT89S52) along with its basic components (like RESET Circuit, Oscillator Circuit, etc.) and components for blinking LEDs (LEDs and Resistors).

Basics of Embedded C Program Image 2

In order to write the Embedded C Program for the above circuit, we will use the Keil C Compiler. This compiler is a part of the Keil µVision IDE. The program is shown below.

#include<reg51.h> // Preprocessor Directive
void delay (int); // Delay Function Declaration

void main(void) // Main Function
{
P1 = 0x00;
/* Making PORT1 pins LOW. All the LEDs are OFF.
(P1 is PORT1, as defined in reg51.h) */

while(1) // infinite loop
{
P1 = 0xFF; // Making PORT1 Pins HIGH i.e. LEDs are ON.
delay(1000);
/* Calling Delay function with Function parameter as 1000.
This will cause a delay of 1000mS i.e. 1 second */

P1 = 0x00; // Making PORT1 Pins LOW i.e. LEDs are OFF.
delay(1000);
}
}

void delay (int d) // Delay Function Definition
{
unsigned int i=0; // Local Variable. Accessible only in this function.
 
/* This following step is responsible for causing delay of 1000mS (or as per the value entered while calling the delay function) */

for(;d>0;d–)
{
for(i=250;i>0;i – -);
for(i=248;i>0;i – -);
}
}

 

The post Basics of Embedded C Program appeared first on Electronics Hub.

Monday 16 October 2017

Raspberry Pi as a Web Server

Raspberry Pi as Web Server Generally Web server is a computer where the web content is stored which is used to host websites. Website is collection of web pages while web server is a software that respond to the request for web resources. There exists other web servers also such as gaming, storage, FTP, email etc. All computers that host Web sites must have Web server programs, that uses HTTP (Hypertext Transfer Protocol) to serve the files that form Web pages to users, in response to their requests, which are forwarded by their computers’ HTTP clients. Dedicated computers and appliances may be referred to as Web servers as well. Here we are going to use our Raspberry pi as a dedicated web server and our laptop as a client accessing the web server. The process is an example of the client/server model. All computers that host websites must have have web server programs. Leading Web servers include Apache (the most widely-installed Web server), Microsoft’s Internet Information Server (IIS) and nginx (pronounced engine X) from NGNIX. Other Web servers include Novell’s NetWare server, Google Web Server (GWS) and IBM’s family of Domino servers. Here we will try installing  Apache and wordpress  in our Raspberry Pi. Components & Softwares Google these software’s and download . You can use any alternate software to do the job. Here we are not going to use any monitor , keyboard and mouse, our laptop is more than enough. Installations Let’s start from scratch . I assume you have the following components/materials mentioned above. First we are going to prepare our hard drive for our server, nothing but the memory stick. Choose a memory stick not less than 8 GB so that there won’t be any memory shortage or overloading issues. Go to this website (http://ift.tt/1Jm18Wb) and download the latest raspbian OS and unzip it. It takes some time, meanwhile download the Win32 Disk Imager which we will be using to write the raspbian.img file into the memory stick. Mac users Download Etcher to write the raspbian image into the memory stick.   The memory stick will be renamed into boot . Open the boot drive, you can see the contents of the boot, in that add a text file named “ssh” (with double quotes) not in .doc or .txt format but in all files format. Mac users create in any format and remove the format by renaming it. Note: In earlier versions of OS, SSH is enabled by default, later for security reasons it was disabled. To enable SSH we are adding that “ssh” file with whatever content in it. Booting Pi Now insert the memory stick in RPi . Power the RPi using the power adapter, your mobile phone charger holds good. Connect your  RPi with laptop via Ethernet cable . For first time booting we need ethernet cable, after that we can connect  the RPi wirelessly via Remote desktop connection(RDC) . Laptops without ethernet slot, connect your RPi to your router and login to your router to find the IP address of the RPi. Now we need to find the IP address of the RPi. After powering the RPi, the blinking of green light indicates that RPi is booted up. Ethernet lights will also blink to indicate connection establishment. Windows Users Now open Advanced IP scanner and start scanning. It will list the devices connected with your host. In that list Raspberry pi will appear. Note down the IP.   Now open the PuTTY and in Host Name provide the RPi IP and port as 22 and connection type as SSH as in the...
read more

The post Raspberry Pi as a Web Server appeared first on Electronic Circuits and Diagram-Electronics Projects and Design.

Simple LED Circuits

In this project, we will build few simple LED Circuits. Nowadays, people are investing more in LEDs due to their energy efficiency. Home lighting, office lighting, Automobile lighting, Street lighting etc. are all being implemented using LED.

Students, hobbyists and makers often work with LEDs in different types of projects. Some of the common LED projects are LED Running Lights, LED Light Bulb, LED Knight Rider and LED Flasher.

LEDs are very sensitive components with respect to voltage and current and they must be provided with rated current and voltage values. Beginners in electronics often start with LEDs and the first project would be blinking an LED.

Wrong voltage or current to LED will burn them off. For small projects like blinking an LED, we need not worry about burning LEDs as we can connect a small resistor (like a 330Ω) in series with the LED (for a 5V supply). 

Simple LED Circuits Image 4

But as the complexity of the circuit increases, choosing the right resistor with right wattage is important. So, in this project, which is more of a tutorial, we will build some simple LED circuits like a simple single LED Circuit, LEDs in series, LEDs in parallel and high power LEDs.        

Circuit 1 of Simple LED Circuits (Single LED Circuit)

The first circuit in the simple LED Circuits is a single LED Circuit. We will try to turn ON a single 5mm White LED using a 12V Supply. The circuit diagram for this circuit is shown below.

Simple LED Circuits Circuit 1

Components Required

  • 12V Power Supply
  • 5mm White LED
  • 330Ω 1/2W Resistor
  • Connecting Wires
  • Breadboard

Principle of Operation

The following image shows the setup of single LED connected to a 12V Supply and a current limiting series resistor. The important component (other than the LED of course) is the Resistor. Connecting a small LED to a 12V Supply would burn the LED and you can see the magic smoke instantly. 

Simple LED Circuits Image 1

So, selecting the right resistor with the right wattage is very important. First, we will calculate the resistance.

Calculating Series Resistor

The value of the series resistor can be calculated using the following formula.

RSERIES = (VS – VLED) / ILED

Here, VS is the Source or Supply Voltage

VLED is the voltage drop across the LED and

ILED is the desired current through the LED.

In our simple LED Circuit consisting of a single LED, we have used a 5mm White LED and a power supply of 12V.

As per the datasheet of the 5mm White LED, the Forward Voltage of the LED is 3.6V and the Forward Current of the LED is 30mA.

Therefore, VS = 12V, VLED = 3.6V and ILED = 30mA. Substituting these values in the above equation, we can calculate the value of Series Resistance as

RSERIES = (12 – 3.6) / 0.03 = 280Ω. Since there won’t be a 280Ω Resistor, we will use the next big resistor i.e. 330Ω. Hence, RSERIES = 330Ω.

Now that we have calculated the resistance of the series resistor, the next step is to calculate the power rating of this resistor.

Calculating Resistor Power

Power Rating of a Resistor specifies the value of power that a resistor can safely dissipate. The Power Rating of a Resistor can be calculated using the following formula.

PRES = VRES * IRES

Here, VRES is the voltage drop across the resistor and

IRES is the current through the Resistor.

We know that supply voltage is 12V and Voltage drop across LED is 3.6V. So, the Voltage Drop across the Series Resistor is

VRES = 12 – 3.6 = 8.4 V.

The current through the Resistor is same as the current through the LED as they are series. So, the current through the Series Resistor is

IRES = 30mA.

Substituting these values in the above formula, we get the power dissipated by the resistor.

PRES = 8.4 * 0.03 = 0.252 Watts.

To be on the safe side, we always have to pick the next possible value and hence we have chosen a ½ Watt (0.5 Watt) Resistor.

Once the right resistor is selected, we can connect the resistor in series and give the 12V Supply to the LED.

Circuit 2 of Simple LED Circuits (LEDs in Series)

The next circuit in the Simple LED Circuits project is connecting LEDs in series. In this circuit, we will connect three 5mm White LEDs is series with the same 12V Supply. The following image shows the circuit diagram of the LEDs in Series.

Circuit Diagram of LEDs in Series

Simple LED Circuits Circuit 2

Components Required for LEDs in Series

  • 5mm White LEDs x 3
  • 47Ω Resistor (1/4 Watt)
  • 12V Power Supply
  • Connecting Wires
  • Breadboard

Principle of Operation

Since the LEDs are connected in Series, the current through all of them will be the same i.e. 30mA (for 5mm White LED). As three LEDs are connected in series, all the LEDs will have a voltage drop of 3.6V i.e. each LED will have a voltage drop of 3.6V across it.

As a result, the voltage drop across the resistor will fall down to 12 – 3*3.6 = 1.2V. From this, we can calculate the resistance as R = 1.2 / 0.03 = 40Ω. So, we have to choose 47Ω Resistor (the next available one).

Coming to the power rating of the resistor, it is equal to 1.2 * 0.03 = 0.036. This is a very low power rating and the minimum available one is of ¼ Watts.

Simple LED Circuits Image 2

Once all the components are selected, we can connect them on a breadboard and power on the circuit using a 12V Supply. All the three LEDs in Series will light up with maximum intensity.  

Circuit 3 of Simple LED Circuits (LEDs in Parallel)

The final circuit in the simple LED Circuits tutorial is LEDs in Parallel. In this circuit, we will try to connect three 5mm White LEDs in parallel and light them up using a 12V Supply. The Circuit Diagram for LEDs in Parallel Connection is shown in the following image.

Circuit Diagram of LEDs in Parallel

Simple LED Circuits Circuit 3

Components Required for LEDs in Parallel

  • 12V Power Supply
  • 3 x 5mm White LEDs
  • 100Ω Resistor (1 Watt)
  • Connecting Wires
  • Breadboard

Principle of Operation

For LEDs connected in Parallel, the voltage drop across all the LEDs will be 3.6V. This means that the voltage drop across the Resistor is 8.4V (12V – 3.6V = 8.4V).

Now, since the LEDs are connected in parallel, the current required for all the LEDs is equal to three times that of the individual current through the LED (which is 30mA).

Therefore, the total current in the circuit is 3 * 30mA = 90mA. This current will also flow through the resistor. Hence, the value of the resistor can be calculated as R = 8.4 / 0.09 = 93.33Ω. The nearest higher resistance value is 100Ω.

The Power dissipated by the resistor is given by 8.4V * 0.09A = 0.756Watts. As the next higher wattage is 1W, we have used a 1Watt Resistor.

Simple LED Circuits Image 3

Connect the three LEDs in Parallel and also connect the 100Ω (1 Watt) Resistor in series with the power supply. Up on turning on the supply, all the LEDs will light up.

Additional Circuits

Warning: It is very dangerous to use 230V AC Supply on breadboard. Be extremely careful.

  • Another interesting LED circuit is the DIY LED Light Bulb. In this, we designed an LED Light Bulb and used it as a regular bulb.

Warning: Even this project uses 230V AC for powering the LED Light Bulb. Be cautious when handling mains supply.

 

The post Simple LED Circuits appeared first on Electronics Hub.

Friday 13 October 2017

Spin current detection in quantum materials unlocks potential for alternative electronics

A new method that precisely measures the mysterious behavior and magnetic properties of electrons flowing across the surface of quantum materials could open a path to next-generation electronics. A team of scientists has developed an innovative microscopy technique to detect the spin of electrons in topological insulators, a new kind of quantum material that could be used in applications such as spintronics and quantum computing.

DIY LED Light Bulb (LED Lamp)

LED Light bulbs are becoming more common and are replacing the CFL Bulbs. With the cost of LED light bulbs becoming lower, people are gradually shifting towards LED Lamps in their homes and offices. In this project, we will try to make a DIY LED Light Bulb or a DIY LED Lamp using an old LED Lamp housing (case).

In this DIY LED Light Bulb, the design of the LED Driver is very important. Generally, we have two ways of designing the LED Driver: using a Switching mode power supply or a regular transformer based linear regulator.

But for this DIY LED light bulb, we will be designing a transformer less power supply to act as the LED Driver. In fact, this type of power supply for LED Lamps is becoming more common (well, at least for lower wattage LEDs). 

DIY LED Light Bulb Image 5

Warning: This DIY LED Light Bulb will work directly from the main supply i.e. 230V AC. You need to be very careful when working on AC Supply.

Warning: Designing Transformer less power supply without the knowledge of how the components work can be fatal.  

DIY LED Light Bulb Circuit Diagram

DIY LED Light Bulb Image 1

Components Required for DIY LED Light Bulb

  • C1 – 135J 400V Metal Film Capacitor
  • B1 – Bridge Rectifier (4 Diodes can be connected in Full wave Rectifier mode)
  • C2 – 22µF 35V Electrolytic Capacitor
  • R1 – 100KΩ Resistor (1/4 Watt)
  • LED 1 to 12 – 8mm LEDs

NOTE: Use only metal film capacitor rated greater than equal to 400 for C1.

Component Description

X – Rated Capacitor

The main component of the Transformer Less Power Supply Design for the DIY LED Light Bulb is the X – Rated Capacitor. It is a metal film capacitor that is often used as a safety capacitor.

An X – Rated capacitor is placed between the line and neutral. If this capacitor fails due to overvoltage, the fail will be a short and the excess current will blow the fuse and hence avoiding any electrical shocks.

DIY LED Light Bulb Image 3

Circuit Design of DIY LED Light Bulb

First, the main supply is given to the metal film capacitor. The other end of the capacitor is connected to the AC input of a bridge rectifier. To be on a safer side, connect a 100Ω 1W Resistor in series with the X – Rated Capacitor to act as a fuse (not shown in the circuit).

NOTE: If you do not have a bridge rectifier, you can connect 4 PN Junction Diodes (like 1N4007) in full wave rectifier mode.

The other AC Input of the Bridge Rectifier is connected to the Neutral of the AC Power Supply. The rectified output is given to a capacitor (C2). 12 8mm LEDs are connected in series across the capacitor.

The Resistor R1 will act as a bleeder resistor (it will discharge the capacitor in the event of power failure or if LED fails). 

NOTE: We have disassembled a damaged LED light bulb and after reconstructing the circuit, it was similar to the one we have designed. The main difference is that they have used SMD Components for LEDs and Bridge and we have used through–hole components (for obvious reasons).

PCB Design of DIY LED Light Bulb

In order to design the PCB Layout of the LED Light Bulb, we have used the Eagle CAD. The following image shows the PCB Layout of the LED Light bulb. We have made the PCB using Toner Transfer Method as mentioned in this tutorial: How to make your Own PCB at Home

DIY LED Light Bulb Image 6

Assembling the LED Light Bulb

Assemble all the components as per the layout and solder them. We have got an empty LED Housing from an old LED Lamp. After assembling the PCB, we mounted the board in the LED Housing with all the wires. 

DIY LED Light Bulb Image 4

Working of the LED Light Bulb

Now, we will see the working of this simple DIY LED Light Bulb. 

LEDs need very less current in order to work. Normally, in a regular transformer based regulated power supply, we will regulate control the current with the help of series resistors. But in the transformer less power supply, the current is controlled or limited by the X – Rated Capacitor.

Since, this capacitor is connected in series with the AC Supply, the total current available in the circuit is limited by the reactance of the capacitor.

The reactance of a capacitor can be calculated using the following formula:

XC = 1/2πFC Ohms, where F is the frequency of the supply, C is the capacitance of the capacitor.

In our case, we have used a 1.3µF Capacitor. Hence, the reactance of this capacitor is

XC1 = 1 / (2*π*50*1.3*10-6) = 2449.7 ≈ 2450 Ω.

Therefore, the current through this capacitor is given by I = V / XC1 Amps = 230 / 2450 = 93.8mA.

Now, the current limited AC is given to the Bridge Rectifier. The output of the bridge will be 230V DC. This is given to a filter capacitor of rating 35V. But the peak to peak ripple voltage across the Capacitor C2 is around 44V.

This is given to 12 LEDs in series and hence each LED will take up around 3.7V, which is equal to the rated voltage of the 8mm LED. 

As far as the power is concerned, the total power output by the LEDs is around 4W. 

Important Note: This project is just a demonstration of How to design an LED Light Bulb and How an LED Light Bulb works. The method mentioned in this project might not be suitable for practical usage.

Also, the project involves working around 230V AC Mains Supply. You need to be extremely careful when working with AC Supply.   

The post DIY LED Light Bulb (LED Lamp) appeared first on Electronics Hub.

New circuit boards can be repeatedly recycled

Researchers have developed a new PCB that performs on par with traditional materials and can be recycled repeatedly with negligible material...