Brushless DC Motor

Hello friends, i hope you all are fine and enjoying. Today i am going to share a new tutorial which is Brush-less DC motor. The basics of DC motor have been explained in one of my previous tutorial which was named as Difference Between DC and AC motors in that tutorial i explained in detail the basics of a DC motor, its construction and working.

Now in today's tutorial i am going to share a tutorial on one of the type of DC motor which is Brush-less DC motor. Brush-less DC motor is commonly known as Electronic Commutated motor. It is in fact a synchronous motor. From the word DC, one thing becomes clear that the supply voltage will be DC but as i mentioned in the previous line that it is a synchronous motor then, it will need AC supply to run. So what actually happens is that from source DC voltages appears and after the inverter circuit, we get AC voltages and these AC voltages are actually given to the motor to operate. The rotor of a Brush-less DC motor is actually a permanent magnet rotor. While some winding is done on stator. Brush-less DC motors are also commonly known as stepper motor but there is a very little difference in between both these motors and their operation. Like stepper motor are generally used at that placed where they have to stop again and again and the continuous operation of the motor is not required. There is also another big difference between Brush-less DC motor and stepper motor that the rotor of stepper is placed to work in proper angular direction. Now lets get started with the working and applications of Brush-less DC motor

Brush-less DC motor

Brush-less DC has 2 parts. One is called rotor and the other is called Stator. Here the rotor is a permanent magnet and it rotates inside the fixed armature. This assembly gives us a very big advantage which is, that it reduces the heating losses. Rotor is placed inside the stator and this allows the motor to produce more torque. It is our choice to make a brushless DC motor of different poles. For example we can made a motor having 2,3 or poles and all are DC brushless motors. Brush-less DC motor can be made in 2 different design. In first design, the rotor is placed inside the fixed stator. This configuration is also known as 'inrunner' because the rotor is running inside the stator.

While in the second configuration, we have a fixed stator inside and the permanent magnet rotor rotates around it.  This type of configuration is called 'outrunner'. We can also place the stator windings in 2 different configurations. If we place the stator winding in delta configuration and we are dealing with a 3 pole motor then, all the windings will be connected in series and the power supply from the source is applied to all the windings. The resulting configuration looks like a triangle shape. While on the other hand if we wish to place the stator winding in Wye (Y) then we will common the one terminal of each winding. And to the remaining 3 terminals, we will connect the power supply to all those three points.(Since we are working with 3 phase motor and we will have three wires and all of them will be phase wires).

Both these winding configurations have their own advantages and they are listed below as:

  • If you have made the stator winding configuration in Delta, then this motor will have a low starting torque. Which means at slow speeds it will generate a very low torque and at higher speeds its torque will also increase with speed.
  • The Star type stator motor possess high starting torque. At starting or at very low speed it generates much high torque but as the motor picks up speed, it torque doesn't builts up as compared to Delta type motor.
  • Efficiency also have a greater impact on the operation and reliability of motor operation. If we compare the efficiecies of both these motors then, we will see that motor having Star shaped winding is more efficient as compared to delta shape winding.
  • Reason is that the star shape winding motor have high starting torque and it is able to drag heavy loads even at low speeds.

Control circuit of Brush-less DC motor

As i explained earlier that the supply voltages may be DC but this motor requires AC voltages to operate actually. So, we have a control circuit which allows the motor this kind of operation of the motor on such voltages. Since the control circuit has to rotate the rotor so the control circuit needs to know the position of the rotor in rest position. To cope with this thing, we implement HALL EFFECT Sensor in control circuit. If you are using a 4 pole motor then the controller will energize the 2 coils with NORTH polarity and the other 2 coils with South polarity. When the stator coils will be energized then one set of coils will tends to push the rotor away from it and the other set of coils will tend to attract the rotor to itself, in this way the rotor will start to rotate and a torque will be established in it and afterwards it would be able to pick load.

Practical Applications

Brush-less DC motor possess a large no of industrial applications. Although, these types of motors are little costly and also complex to operate because of the control circuit but still we can't ignore the importance of this type of motor. Some of its industrial based applications are listed below as:
  • Biggest and most common use is that these motors are used in laptops and computers for cooling purpose.
  • An old use of low power and very low speed DC brushless motor was that they were used in gramophones records.
  • High rating and bigger size DC brushless motors are used in transport vehicles and also in Hybrid cars.
  • These motors may be of small size but have permanent magnet rotor and are able to develop high starting torque.
  • In refrigeration and cooling systems, Brushless DC motor is used in all appliances for the condenser cooling purposes. Both large and small air-conditioning systems uses Brushless DC motor.
  • When high voltages AC is generated and transmitted, so need a control mechanism for its safe operation and control. Brushless DC motors are also used at those places for proper cooling of micro processors.
  • Brushless DC are able to develop high starting torque and gives good speed response. That's why they are widely used in water pumps, fans and variable speed industrial applications.
  • These motors are preferred to work in industries because they possess high power density, can give good speed and torque characteristics and also high efficiency.
  • Brushless DC motors have good thermal conditions so they are able to operate at variable speed without excessive heating.
  • Brushless DC motor have the biggest demand in defense applications. Now a days they are commonly used in helicopter's rotors, because of their favorable power to wight ratio.
Alright friends, that's all from today's tutorial. If you have any questions then, feel free to ask. Till next tutorial Take Care !!! :)

Brushed DC Motor

Hello friends, i hope you people are fine and enjoying. Proceeding to my previous tutorial, in which i explained Brushless DC motor in detail. Now in this tutorial i am going to explain in detail the second type of DC motor which is Brushed DC motor. In this tutorial, we will see what is in fact a Brushed DC motor, how it works and what are the advantages and practical application of this type of motor on some other type of motors.

Brushed DC motors are also known as commutated DC motors. Reason is that these motors contain commutator and carbon brushes for rotor excitation. I will explain all these terminologies in detail, later in tutorial. These are the most important type of motors designed to run directly on DC power supply. These were the very first type of motors, which were designed to operate on DC voltages at industrial levels and as we also know that DC power system had been used in some countries like USA for power transmission and distribution. DC series motors are still in use for industrial applications. Reason is that these motors gives us the ease to vary the speed of motor by simply changing the supply voltages or magnetic field strength. We can also change the speed and torque characteristics of the motor by changing the power supply connections. Brushed DC motors contain carbon brushes, which wear out with time and continuous operation of motor, so where maintenance operation is required, Brushless DC motor is preferred. Now first of all, lets see the operating principle of Brushed DC motor:

Operating principle of Brushed DC Motor

Brushed DC motor rotates on the principle of Fleming's Left Hand Rule. When a current is make to pass through a coil placed in a permanent magnetic field, then a torque acts on the coil which makes it to rotate. The direction of rotation of the coil is given by the Fleming's Left Hand Rule. The process can be elaborated by the image which is shown below as:

The above figure a showing the basic operating principle of Brushed DC motor. I have chosen the example of permanent magnet Brushed DC motor to make it easy to understandable. From the above shown image, you can see that:

  • A DC supply has been connected to rotor circuit through carbon brushes and commutator.
  • Commutator is made of brass while carbon brushes are made of soft silicon material.
  • The reason why carbon brushes are made of silicon is to reduce the friction between carbon brushes and commutator.
  • If you use carbon brushes made of brass or copper then, conduction between carbon brushes and commutator will increase but a massive sparking will produce, which can damage our system.
  • When the rotor poles are at 90 degrees to the stator poles then zero torque is produced in rotor.
  • On the other hand, when rotor poles are at 0 degrees to the stator poles, then maximum torque is produced in rotor circuit.
  • So we can conclude that half of the supply cycles would be wasted in this way, that's why we have connected commutator in this system. It automatically change the direction of direction after every half cycle.
  • The resultant gives us maximum torque continuously during our operation.

TYPES of Brushed DC Motor

Based on the types of connections between Rotor and Stator windings, DC Brushed motors have been divided into 5 major types. All these types are given below as:

Series Type DC Motor

  • In these type of motors, the rotor winding is in series with rotor winding.
  • These type of motors have High Starting Torque.
  • The beauty of these type of motors is that, their speed varies automatically with the applied load. If load increases or suddenly vanishes then, this motor has the ability to maintain it's speed.
  • These motors are used at those places where the motor has to supply heavy load. For example in Electric trains DC series motors are used.

Shunt Type DC Motor

  • In these type of motors, rotor winding is in parallel with stator winding.
  • These motors have low starting torque as compared to Dc series motor.
  • These motors have constant speed and their speed doesn't varies with load.

Compound Type DC Motor

  • You can judge the properties of this motor by its name. In this type of DC motor, both series and compound windings are embedded together.
  • This type of motor have much dominating features than any other type of DC motor.
  • These motors have high starting torque, which is in fact a property of DC series motor.
  • While on the other hand, this motor is capable to run on constant speed and it speed doesn't vary as much with load, which is in fact a property of DC shunt motor.

Permanent Magnet Type DC Motor

  • It can be seen from the name of these type of motors that they contain a permanent magnet stator instead of a wound electromagnet stator.
  • No need of external energizing field current.
  • More efficient design.
  • This design is only possible for small size but much efficient motors.

Separately Excited Type DC Motor

  • In these type of motors, some heavy excitation system is required for the excitation of rotor circuit.
  • High field is drawn by these type of motors.
  • This motor has the ability to draw much heavy loads even at a very low speed.
  • The reason these motors are able to bear much heavy loads is that they draw much field current and much armature voltages.

Features and Practical Applications

Brushed DC motors possess a large no of features and practical applications. Some of them are listed below as:
  1. These motors have a very simple design and it is very cost effective to built them on large scale.
  2. Their operation is very simple and it doesn't requires any control mechanism.
  3. DC motors are used in both domestic and industrial applications, because of their simpler design and advanced features.
  4. They are commonly used in car power windows and seats.
  5. Car's wind wiper motor is also a DC motor. And it has variable speed and high starting torque.
  6. DC motors are enclosed in a solid frame and they don't have any environmental impact on their operation. They are capable to work under any severe condition.
Alright friends, this ends my today's tutorial here. If you have questions regarding my today's tutorial, feel free to ask. Till next tutorial Take Care!!! :)

Calculating trigonometric Functions in MATLAB

Hello everyone! I hope you all will be absolutely fine and having fun. Today, I am going to share my knowledge about Calculating Values of Trigonometric Functions in MATLAB. Trigonometric function have a great importance in latest mathematics. There are six types of trigonometric functions out of which first three are used more frequently in comparison to the other three. Trigonometric functions are important in the study of triangles. Trigonometric functions show the relationship between the angles of the triangle and the lengths of its sides. The positive and negative signs with the trigonometric functions indicate the portion of the quadrants. Well known theorem of mathematics i.e. Pythagoras Theorem is used in case of the right angle triangle and is totally based on the first three trigonometric functions.

Calculating trigonometric Functions in MATLAB

Here in the tutorial Calculating Values of trigonometric Functions in MATLAB, I will explain you that how can you calculate the values of trigonometric functions in MATLAB. First of all I would like to explain a bit about the trigonometric functions. They are important in the studies of triangles and depend upon some particular angle, as I have told earlier. There six types of trigonometric functions and they are given below.
  • sine
  • cosine
  • tangent
  • cosecant
  • secant
  • cotangent
Suppose there is a particular angle ? then all of these functions can be written in MATLAB as shown below.
  • sin?
  • cos?
  • tan?
  • cosec?
  • sec?
  • cot?

 Calculating Values

  • Here I am going to calculate the values of the trigonometric functions in editor of the MATLAB.
  • First of all open the MATLAB software and open the editor then.
  • You need to define a time duration in which the function is defined.
  • Set the frequency of sinusoidal signal and write the function to calculate the value.
  • All of the above steps are shown in the figure below.
  • In the above figure you can see that I have define the duration from 0 to
  • I have adjusted the frequency of the signal as 5Hz.
  • And then I have written the desired function to calculate its value.
  • Since, I want to observe its value on the command window so I have removed the semicolon at the end of this statement as shown in the figure above.
  • The result displayed on the command window is shown in the figure below.
  • Similarly you can also calculate the values of all of the other trigonometric functions.
  • Here I am going to calculate the values of cosine and tangent functions for the same time duration and same frequency as well.
  • The code for calculating the values of the cosine and tangent functions is shown in the figure below.
  • You can see that there is no semicolon at the end of the last three statements because I want to observe the results of these three statements on the command window, if I put a semicolon, there will appear nothing on the command window then.
  • The results shown in the command window are shown in the figure below.
  • By scrolling up you can also observe the result of the sine function.
So, that is all from the tutorial Calculating Values of trigonometric Functions in MATLAB. I hope you enjoyed this tutorial. If you face any sort of problem you can ask me in comments anytime without even feeling any kind of hesitation. I will try my level best to solve your issues in a better way, if possible. In my next tutorial I will explain you that how to Plot Simple Signal in MATLAB. I will explore MATLAB further in my later tutorials and will share all of them with all of you as well. So, till then, Take Care :)

Generating Simple Signal in MATLAB

Hello everyone! I hope you all will be absolutely fine and having fun. Today, I am going to share my knowledge about Generating Simple Signal in MATLAB. Signals are of great importance in our daily life. The signals are basically the graphical display of the analog values. We can estimate the severity level by the shape of the signals. The signals have a very wide range of applications in our daily lives. If we observe the shape of the AC voltages of 220V that is supplied in our homes, it is a sinusoidal signal. So, its an application of the signals. Signals also play a vital role in the medical field. While performing ECG and EEG tests in hospitals, doctors visualize the signals displayed on the screen and they can estimate the severity of the disease with the help of these signals. Depending upon the severity they suggest different medicines to the patients. Oscilloscope is a device to monitor the shape of the different signals usually present in engineering institutions. We can observe the shape of the voice, heat and a lot of other signals on it.

Generating Simple Signal in MATLAB

Here in the tutorial Generating Simple Signal in MATLAB, I will explain you the step by step procedure that how can you generate simple sinusoidal signal in MATLAB and how to visualize it.
  • First of all open your MATLAB software and open the editor.
  • Define a time duration at which the sinusoidal signal is completely defined.
  • Set the frequency of the sinusoidal signal.
  • Define the sinusoidal signal as the function of time and frequency.
  • Then at the end plot that sinusoidal signal across the time duration using the command
  • All of the above steps are shown in the figure below.
  • You can download the MATLAB simulation here by clicking on the button below.
  • Download .rar file, extract it and enjoy the complete simulation.
  • You can see that I have defined the time duration from 0 to
  • And adjusted the frequency of the signal as
  • Now press the Run button as encircled in the figure above.
  • A new figure having a sinusoidal signal will be appeared on the screen.
  • The sinusoidal signal is shown in the figure below.
  • Now, I am going to reduce the frequency of the signal to observe that what will happen to the shape of the signal.
  • I am going to reduce the frequency from 10 to 5Hz and want to observe the new shape of the signal.
  • The new code with the updated frequency is shown in the figure below.
  • The new signal generated is shown in the figure below.
  • If we compare the both of the signals we can conclude that there is an inverse relation between the frequency and the width of the signal.
  • Smaller the frequency greater will be the width of the signal and vice versa.
  • So, that was the brief description of the signal generation in MATLAB.
So, that is all from the tutorial Generating Simple Signal in MATLAB. I hope you enjoyed this tutorial. If you face any sort of problem you can ask me in comments anytime without even feeling any kind of hesitation. I will try my level best to solve your issues in a better way, if possible. In my next tutorial I will explain you that how to Change the Properties of the Figure in MATLAB. I will explore MATLAB further in my later tutorials and will share all of them with all of you as well. So, till then, Take Care :)

Effect of Noise on Signal in MATLAB

Hello everyone! I hope you all will be absolutely fine and having fun. Today, I am going to share my knowledge about Affect of Noise on Signal in MATLAB. Noise is basically an unwanted signal that effects the normal signal. Noise the natural signal which can be removed but can be reduced to some extent. We can see a lot of examples of the signals effected by noise in our daily lives e.g. the distorted voice signal while calling, creates hearing problems, distorted TV signal makes the video invisible and the distorted AC signal can burn most of the home as well as other appliances. In signal processing term, noise is also known as the unwanted signal which carries no useful information. To recover the original signal from the noise effected one, is the basic and necessary goal of the signal processing. All of the filters including low pass, high pass, band pass, band reject (notch) are also designed for this purpose. Noise can never be removed completely but we can make its magnitude lower to some extent.

Effect of Noise on Shape of Signal

Here, in the tutorial Effect of Noise on Shape of Signal, I will elaborate that how noise an effect the shape and the information carried by the normal signal. Since noise is a random and unwanted signal having no useful information, so it has no fix shape, instead it could of any shape. Some of the shapes of the noise signals are shown below.
  • Noise across the time with random amplitude is shown in the figure below.
  • The noise signal displayed on the oscilloscope is shown in the figure below.
  • You can download the MATLAB simulation here by clicking on the button below.
  • Download .rar file, extract it and enjoy the complete simulation.

Block Diagram
  • I have made a simple block diagram to explain the flow of the program.
  • The block diagram is shown in the figure below.
  • Noise is added in the signal and hence generated the noise effected signal.
Code Description
  • Just copy and paste the source code given below in your editor.
t=0:0.01:1;%time duration
x=sin(2*pi*5.*t);%orignal signal
noise = rand(1,101);%noise signal
corrupted_signal=x+noise;%noise effected signal
subplot(311);%division of figures
plot(t,x);%plotting
title('Orignal Signal');%title
subplot(312)%division of figures
plot(t,noise);%plotting
title('Noise Signal');%title of the corresponding signal
subplot(313)%division of figures
plot(t,corrupted_signal);%plotting
title('Corrupted signal');%title of the corresponding signal
  • First of all I have defined the time duration at which the signal is defined.
  • Then I have generated the original sinusoidal signal.
  • After that, I have generated a random noise.
  • Then the noise effected signal has been generated.
  • I have plotted all of the signals on the same figure but in different sections in order to visualize all of them.
  • As you run the program, a new figure having graphs will be appeared on the screen.
  • The figure containing graphs of all the signals is shown in the figure below.
  • That was the brief description of the source code for visualizing the Effect of Noise on Shape of Signal.
So, that is all from the tutorial Effect of Noise on Shape of Signal. I hope you enjoyed this tutorial. If you find any sort of problem, you can ask in comments anytime without even feeling any kind of hesitation. I will try my level best to solve your issues in a better way, if possible. In my next tutorial I will elaborate that how to create a simple Graphical User Interface (GUI) in MATLAB and how to use it. I will further explore MATLAB in my later tutorials by making further projects on it and will share them with all of you as well. So, till then, Take Care :)

Convolution in MATLAB

Hello everyone! I hope you all will be absolutely fine and having fun. Today, I am going to share my knowledge about how to convolve the signals using an amazing software tool, MATLAB. MATLAB is an efficient tool for signal processing. MATLAB basically works on matrices. First of all I would like to tell you a bit about the convolution. In engineering terms, convolution describes the output of the Linear Time Invariant (LTI) systems.

Convolution is basically an integral which tells us about the overlapping of one function as it is shifted over another function. Convolution and cross correlation are similar. It has a wide range of applications e.g. computer vision, probability, statistics, engineering, differential equations, signal processing etc.

Convolution in MATLAB

Here in the tutorial, Convolution in MATLAB, I will tell you that how to convolve the two signals in MATLAB using built-in command, conv. Before going into the details of this tutorial, I would like to explain you about the convolution and its mathematical form.

  • You can download the MATLAB code or convolution of two signals here by clicking on the button below.
  • Download .rar file, extract it and enjoy the simulation.

In simple engineering terms, convolution is used to describe the out of the Linear Time Invariant (LTI) systems (the systems which shows different response at different times). Convolution is similar to cross correlation. Input output behavior of the system can be estimated with the help of the impulse response of that system. And the output of the system can be obtained by convolving the input applied to the system and impulse response of that system.

  • Suppose x(t) is the input applied to the system and h(t) is the impulse response of the system.
  • Its output y(t) can be obtained using the mathematical expression given below.

y(t) = x(t)*h(t)

  • In above expression * sign expresses the convolution between the input and the impulse response of the system.
Block Diagram
  •  I have made a very simple block diagram representation of convolution.
  • The input x(t) is applied to the system.
  • The system has convolved the input x(t) and the impulse response of the system h(t) to obtain its output y(t).
  • The block diagram is shown in the figure below.
Signal Representation
  • The convolution can also be represented in the form of signals.
  • The figure shown below displays the convolution between input and impulse response of the system in order to obtain its output.
Source Code Description
  • Just copy and paste the source code give below in your MATLAB editor to observe the convolution results.
clc %clears the command window
clear all %clears the workspace
t1 = 0:1:1;%time duration for the first signal
t2 = 0:2:10;%time duration for the second signal
f1 = 3;%frequency of the first signal
f2 = 5;%frequency of the first signal
x = sin(2*pi*f1.*t1);%first signal
y = cos(2*pi*f2.*t2);%second signal
convolution = conv(x,y) %convolution of both the signals x & y
  • You can see first of all I have cleared the command window and the workspace.
  • Then I have declared time duration for both the signals.
  • After that I have defined the frequency for the both signals.
  • Then I have defined the two different sinusoidal signals.
  • At the end I have convolved both of them and removed the semicolon at the end of the statement in order to observe the results on command window in MATLAB.
  • So, that was the brief description of the code, you can download it from the above button.
  • The result shown on the command window are shown in the figure below.
  • That was the brief discussion about how to convolve two signals in MATLAB using builtin commands conv.

So, that is all from the tutorial Convolution in MATLAB. I hope you enjoyed this tutorial. If you find any sort of problem, you can ask in comments anytime without even feeling any kind of hesitation. I will try my level best to solve your issues in a better way, if possible. In my next tutorial I will elaborate that how to declare the variables in MATLAB and how to manipulate them without assigning them with the values. I will further explore MATLAB in my later tutorials. So, till then, Take Care :)

Introduction to Arduino Sensor Shield

Hi Guys! Hope you’re well today. I welcome you on board. Happy to see you around. In this post today, I’ll detail the Introduction to Arduino Sensor Shield. Arduino Sensor Shield is a board compatible with the Arduino Boards and comes with the standard header layout. It is used to connect sensors, servos, LCD with the Arduino board without soldering. This board is connected with the Arduino Board using the jumper wires. I suggest you read this post all the way through as I’ll be discussing the complete Introduction to Arduino Sensor Shield. Let’s get started.

Introduction to Arduino Sensor Shield

  • Arduino Sensor Shield is a board used to connect sensors, servos, LCD with the Arduino Board without the requirement of soldering.
  • Using Arduino Board separately you’ll find a few of 5V and GND connections. Arduino Sensor Shield gives you the ability of dedicated one 5V and GND connection for every Arduino signal pin.
  • Arduino.cc introduced the two versions of Arduino Sensor Shield i.e. V4 the old one and V5 the newer one. Both boards come with similar important connections, however, they appear different.
  • The V5 latest sensor shield comes with an external power connector, helping you get rid of the overloading of the Arduino board while working with too many actuators and sensors.
  • The 3-way male pin header is used to connect servo motors with the Arduino Board. This is a plug and play device. You can read data from the sensors connected with the shield and use it to drive servo motors with the Arduino boards.

1. Pins Distribution

Pins on the Sensor Shield are distributed into two main categories: a: Digital Pins b: Analog Pins

a. Digital Pins

Digital pins on the board are placed in the pack of three.
  • Where top pin represents GND (0V)
  • The middle pin represents Vcc (5V)
  • The bottom pin represents Signal (Arduino Digital Signal Pin No.)
The following figure shows the numbering of digital pins that are arranged from right to left on the board. The Digital Pins are configured from the following Arduino Language Instruction:
  • digitalWrite (Pin4,1);
And for reading following Arduino Language Instruction is used:
  • digitalRead(Pin4)

b. Analog Pins

The following figure shows the arrangement of Analog Pins that are sequenced from left to right.
  • Similar to digital pins, analog pins are also arranged in the pack of three.
  • Where the top one is GND (0V)
  • The middle one is Vcc (5V)
  • The bottom one is Signal (Arduino Analog Signal Pin No.)

2. Arduino Sensor Shield V5 Features

The following are the features of Arduino Sensor Shield V5.
  • The Arduino Sensor Shield V5.0 is used to connect sensors, servos, buttons, relays, and potentiometers with the Arduino Board. Incorporates IIC interface
  • Comes with RB URF v1.1 ultrasonic sensors interface
  • It is compatible with Arduino UNO and Mega Boards
  • Contains Bluetooth module communication interface
  • Carries SD card module communication interface
  • Contains APC220 wireless RF module communication interface
  • Carries 32 servo controller interface
  • Contains 128 x 64 LCD parallel interface

3. Connecting Sensors and Output Devices

When it comes to connecting the sensor shield with sensors and output devices, power pins must be connected the right way as follows
  • G goes to 0V or G or Gnd or GND on the sensor
  • V goes to 5V or V or Vcc or VCC on the sensor
  • S goes to the signal pin - IN or OUT
  • Some output-devices and sensors come with 2 signal pins (or more) with two or more 0V & +5V.
  • In that case pick one of the signal pins to connect the Signal, 0V, and +5V with the S, G, and V pins on the sensor shield and choose the S pins on another port for establishing the other signal connections.

4. Photo-Resistor Sensor

Some sensors like 4-wire Photo-resistor Sensor comes with 2 wires for power, as above, but carry two signal pins, one is marked as “DO” and another is marked as “A0” This is the same signal available in two versions.

a. Analog Signal

  • The AO is an analog signal that represents the light level where 0V shows the maximum light level and 5V shows the dark light.
  • analogRead instruction is used to read this signal and is commonly connected to the analog input of the sensor shield.
  • The A0 analog signal is read as 1023 for dark light and 0 for maximum light.

b. Digital Signal

  • The DO is a digital signal that represents the light level and is available in two different states i.e. logic low (0V) and logic high (5V)
  • The variable resistor available on the sensor module is used to set the switchover level. This digital signal is commonly connected to the digital input on the sensor shield.
  • The digitalRead instruction is used to read this signal where 1 represents the dark and 0 represents the light.
That’s all for today. I hope you find this read helpful. If you have any questions you can ask me in the section below. I’d love to help you the best way I can. Feel free to keep us updated with your valuable feedback and suggestions, they help us create quality content customized to your exact needs and requirements. Thank you for reading the article.

Arduino Mega 1280 Library for Proteus

Hi Guys! Hope you’re well today. Thank you for viewing this read. In this post today, I’ll walk you through the Arduino Mega 1280 Library for Proteus. You may already be familiar with Arduino Boards, in case you don’t, they are the open-source easy to use hardware and software platform used in modern electronic projects. These boards receive inputs and convert them into outputs to activate motors, LEDs, electrical circuits, robots, and embedded systems. They are mainly designed for newbies and non-tech geeks who hesitate to construct the electrical circuits from the get-go and hate diving into the nitty-gritty of architecting electrical wires accurately to fashion electrical circuits. Arduino boards come with both ready-made electronic kit and software program IDE (Integrated Development Environment) that runs on the computer. You only worry about the running code on your system, without involving into the hassle of organizing and connecting everything perfectly on your electrical circuit. We’ve already discussed the Arduino Mega 2560 Library for Proteus. Both Mega 2560 and Mega 1280 are almost similar in working and execution with a slight difference in flash memory and microcontrollers incorporated on the boards. Arduino Mega 2560 carries Atmega 2560 microcontroller with flash memory 256kb while Arduino Mega 1280 carries Atmega 1280 with flash memory 128kb. These boards can be powered by both USB cable and external power source where AC-to-DC adaptor or battery is used to power them externally. Our team is designing and adding these new libraries in the proteus library database to help students better understand the working of Arduino boards in proteus workspace. Check this post where we’ve shared Arduino Library for Proteus that includes six Arduino Boards in a single library. If you don’t have proteus installed in your PC, check this post covering how to download and install proteus software. This is the brief introduction of Arduino boards, let’s dive in to download the Arduino Mega 1280 library for proteus.

Arduino Mega 1280 Library for Proteus

Click the link below and download Arduino Mega 1280 Library for Proteus.
  • As you download this file, it will appear in zip format. Extract this file that houses two files named ArduinoMegaTEP.LIB and ArduinoMegaTEP.IDX.
Arduino Mega 1280 Library for Proteus
  • Copy and paste these two files in the library folder of proteus software.
  • After placing these files, start your proteus software, if it’s running already… restart. Now, click the ‘P’ button and look for the Arduino Mega 1280.
  • As you search this, it will return the figure below.
  • Select this file and click OK. As you click OK your cursor will start blinking with the Arduino Mega 1280, indicating you can place this board anywhere in the proteus workspace.
As you place this board in the proteus workspace, it will appear as below. Half work is done. Now we’ll include HEX file to run this board. To do this, right-click the board and select ‘edit properties’ or double click the board it will return window as below. Now browse the ‘PROGRAM FILE’ option to upload the HEX file. You can read this post in which I’ve briefly explained how to get a HEX file from Arduino.
  • This is how you can get Arduino Mega 1280 library for Proteus.
Now we’ll construct a simple LED blinking circuit with Arduino Mega 1280 in the proteus workspace.
  • We’ve designed a simple LED blinking circuit where we’ve attached LED with the pin 13 of the Arduino Mega 1280.
Open this blink example in the Arduino software and upload the HEX file. As you upload the HEX file and play the proteus software it will appear as figure given below. That’s all about How to download Arduino Mega 1280 Library for Proteus. You can use this library in your electronic projects. If you feel any difficulty in downloading this library, pop your comment in the section below, I’ll help you the best way I can. Feel free to share your suggestions about libraries you think should be a part of Proteus Library Database, I’ll design and include respective libraries. Thank you for reading this post.

Voltmeter & Ammeter in Proteus ISIS

Hello friends, I hope you all are doing great. In today's tutorial, we will have a look at How to use Voltmeter & Ammeter in Proteus ISIS. It's our 4th tutorial in Proteus series. While designing an electronics project, voltage & current measurements are essential debugging features, as they help in understanding circuit behavior. Proteus has builtin instruments for voltage & current measurement. We have have their probes and today we will discuss them in detail. First have a look at Voltmeter in Proteus ISIS:

How to use Voltmeter in Proteus ISIS

  • DC Voltmeter is used to measure the voltage difference across any DC component.
  • In order to use DC Voltmeter, we need to click on Virtual Instruments Mode, as shown in the figure.
  • In Instruments list, we have DC voltmeter, so click it and place it in your Proteus workspace.
  • I am going to use the same circuit, which we have designed in first lecture, shown in below figure:
  • As you can see in the figure, I have placed two voltmeters, one at the input and second at the last LED.
  • Because of 100kohm resistance, there's a slight drop in the voltage at last two LEDs.
  • Moreover, Voltmeters are placed in parallel to these component.
  • We can also use Voltage Probe to measure voltage at any point in the electronic circuit.
  • So, click on Voltage Probe in the left toolbar and connect it to any point in your circuit and its voltage will be displayed.
  • I have placed two Voltage probes on my circuit, as shown in below figure.
  • Voltage Probe provides value up to five decimal points, while DC Voltmeter provides value up to 2 decimal points.
  • Voltage probes are quite helpful as they are small in size and easy to place in the circuit.
So, that was all about Voltmeter in Proteus. Now, let's have a look at How to use Ammeter in Proteus ISIS:

How to use Ammeter in Proteus ISIS

  • DC Ammeter is used to measure the current passing through any DC component.
  • We need to click on Virtual Instruments Mode and then click on DC Ammeter.
  • Place this Ammeter in series, as shown in below figure:
  • We aren't getting any value on our Ammeter as these LEDs are not drawing much current.
  • But, you can see we have placed the Ammeter in series, we will use it a lot in coming projects.
So, that was all about How to use Voltmeter & Ammeter in Proteus. I hope you have enjoyed today's tutorial. Till next tutorial, take care & have fun !!! :)

How to Increase Workspace in Proteus

Hello friends, hope you all are fine and having fun with your lives. Today's post is about How to increase Workspace in Proteus. It's our 3rd tutorial in Proteus series. Its quite a simple tutorial and along with this trick, I will also share few commonly used features or Proteus. Once, I was working on a simulation project in which I have to design a complete load management system in Proteus and it was quite messy as I have to include a lot of components and the area of Proteus got quite small for that and then I encountered this problem i.e. where to place the components.

You have seen in Proteus software that there's a blue rectangle which is considered as the workspace in Proteus. This area is constant and doesn't increase or decrease on its own. So if we are dealing with some messy circuit design then we have to increase this area, which we are going to discuss today. If you have downloaded my Arduino Library for Proteus, then you must have seen that the size of Arduino Mega 2560 is quite big and when I design Proteus simulations in which I need to use Arduino Mega, I have to increase the Proteus workspace to embedded all the other components. So, let's get started with how to increase Workspace in Proteus:

How to Increase Workspace in Proteus ???

  • First of all, if you are working on some project in Proteus then simply don't increase the area because when you increase the area then components get too small and its quite difficult to arrange or connect them with each other.
  • So, my suggestion is to keep using the default size, unless your circuit got messy and you actually need more space.
  • Let's open Proteus software and place few components in it, as an example I am just placing PIC Microcontrollers to cover the available space, as shown in below figure:
  • You can see in above figure, I have randomly placed 8 PIC Microcontrollers, just to fill the space.
  • Now suppose I want to add four more Microcontrollers in this Proteus file, there's no place to add them.
  • Now in order to add more components, we need to increase the size of available workspace in Proteus.
  • In order to do so, click on Systems in above menu bar and then click on Set Sheet Sizes as shown in below figure:
  • Now when you click it, a new pop up window will open up, as shown in the figure on right side.
  • You can see in the figure, there are six sizes available for the user to select.
  • First five are fixed sizes while the sixth one is user defined and you can set it to any size you want.
  • The default size of workspace in Proteus is A4, which is the first option i.e. 10inch by 7 inch.
  • So, now let's change this selection and I am selecting the fifth option so now the size is 15inch by 10 inch, as shown in below figure:
  • Now its quite obvious from the above figure that the area has increased.
  • We have the same 8 PIC Microcontrollers but now we have more free space.

Right Click to Delete Component

  • Proteus has a quick way to delete any component or wire.
  • You need to right click on your component/wire for 2 times and it will be removed/deleted from the workspace.
  • It's quite helpful, especially in designing complex simulations.

Default Terminal in Proteus

  • Let's discuss Default Terminal as well, which is used to keep the schematic organized & clear.
  • We can get them by clicking on Terminals Mode first and then click on Default, as shown in figure on right side.
  • In our previous lecture, we have designed a simple LED circuit, so let's make small changes in it, as shown in below figure:
  • You can see in above figure that I have deleted the wires and placed these default terminals on both sides.
  • In order to delete these wires, I have simply double right clicked on each wire and placed these terminals.
  • Now, double click on each terminal and provide it a name, as shown in below figure:
  • As you can see in above figure, top two Terminals are named as Terminal1 and below two terminals are named as Terminal2.
  • So, although these terminals are not connected together but Proteus considers "Terminals with same name" as connected.
  • If we run our simulation now, we will get the similar results, as shown in below figure:
  • These default Terminals are too helpful, as in complex projects, adding too much wires make the simulation quite messy. ( We will use them in coming lectures )
So, that's how you can quite easily increase workspace in Proteus ISIS. That's all for today, it was quite easy tutorial but still if you are having any problems, then ask in comments and I will resolve them. Till next tutorial, take care !!! :)
Syed Zain Nasir

I am Syed Zain Nasir, the founder of <a href=https://www.TheEngineeringProjects.com/>The Engineering Projects</a> (TEP). I am a programmer since 2009 before that I just search things, make small projects and now I am sharing my knowledge through this platform.I also work as a freelancer and did many projects related to programming and electrical circuitry. <a href=https://plus.google.com/+SyedZainNasir/>My Google Profile+</a>

Share
Published by
Syed Zain Nasir