DC Motor Drive Circuit in Proteus ISIS
Hello friends, hope you all are fine and enjoying good health. In the previous posts, we have seen How to
design a 5V DC power supply in Proteus ISIS and after that we have also discussed How to
design a variable DC Power supply using LM317.So, now today we will check how to design a DC Motor Drive Circuit in Proteus ISIS. DC motor is present in Proteus and quite easy to use. First we will simple drive it by applying voltage on its both sides i.e. direct method and after that we will automate it and will drive the circuit using PIC Microcontroller. The microcontroller I am gonna use will be PIC16F877A and the compiler will be MikroC Pro For PIC.
This tutorial is not a correct method of driving any DC motor. In this tutorial, I am just giving an overview of How to design a DC Motor Drive Circuit in Proteus ISIS so you can say this tutorial is more about DC motor in Proteus software. So, don't try it in hardware. DC motor is a simple motor which needs polarity difference at its two ends. IF this polarity is in forward direction then DC motor moves in one direction and if we reverse the polarity then the DC motor moves in the opposite direction. So, let's get started with DC Motor Drive Circuit in Proteus ISIS.
Simple DC Motor Drive Circuit in Proteus ISIS
- First of all I will show you the simple control of DC Motor in Proteus so that you get an idea how this motor works.
- Add these two components from the Proteus library:
- Motor
- Logic State
- Logic State has two states 1 and 0. When its 0 means 0V and when at 1 means 5V.
- Now design the circuit as shown in the below figure:
- Now I have added two Logic State on both the sides of motor. Direction of motor will depend on these logic. So, their will be total four states:
- When both states are at 0, motor will not move and remain stationary.
- When both states are at 1, still the motor will not move and remain stationary.
- The motor will move Clockwise when upper state is at 1 and lower at 0.
- The motor will move Anti-Clockwise when upper state is at 0 and lower at 1.
DC Motor Drive Circuit Using PIC Microcontroller
- Now we will drive our motor using PIC Microcontroller, add below components from the Proteus library.
- Join these components and make a circuit as shown in the below figure:
- Now create a new project in the MikroC Pro For PIC and add the below code into it.
/* Code provided by www.TheEngineeringProjects.com */
#define M1 PORTB.F7
#define M2 PORTB.F6
#define B1 PORTD.F0
#define B2 PORTD.F1
void main() {
TRISB=0;
TRISD=0xFF;
PORTB = 0;
while(1){
if(B1 == 0){PortB=0xAA;}
if(B2 == 0){PortB=0x55;}
}
}
- Now burn the hex file of this project in the microcontroller of the Proteus file.
- If everything goes well, then when you click one button the motor will move clockwise and when you click other button the motor will move anti-clockwise.
- I have also shown the simulation in the video below.
Video Tutorial
- A complete video demonstration of the above tutorial is as follows:
Note:
- The Proteus circuit of DC motor drive and the hex file to burn in the microcontroller has been emailed to all the subscribed members.
- If you need these files, then subscribe to our newsletter and these files will be emailed to you as well.
That's all about DC Motor Drive Circuit in Proteus ISIS. In the coming tutorial, we will have a look at
How to drive a Stepper Motor in Proteus ISIS.
How To Use Oscilloscope in Proteus ISIS
Hello friends, today I am going to post the next lecture of Proteus Tutorial. I am receiving quite a positive response about this Proteus tutorial. In the previous post, we have seen
How to use Virtual Terminal in Proteus and today I am going to explain How to use Oscilloscope in Proteus ISIS. This oscilloscope is just the same which you have seen in your electronic or electrical labs. Oscilloscope is basically used to monitor signals or waveforms. Particularly when you are not much aware of the circuit and you need a little debugging then you use oscilloscope.
In oscilloscopes, we can visualize the electrical properties of waveforms, like we can check whats the frequency of electrical signal, what's its voltage or current. Digital oscilloscopes have vast range of features in it like RMS value calculation etc. So, in short when you want to visualize or research your available signal then oscilloscope is the first and right most option for you. In today's tutorial, first of all, I am gonna design a simple Pure sine wave circuit and then we will visualize its properties using oscilloscope in Proteus ISIS.
Pure Sine Wave Circuit Design
- First of all, design a circuit as shown in the below figure.
- This circuit is a simple pure sine wave inverter which is inverting the DC Signal into AC signal.
- I have also encircled the components so first of all, find these components in the Proteus database and then design the circuit as shown in the figure. (Right click on the image and then open it in new tab to get the clear view).
- When I was designing my Pure Sine Wave Inverter Simulation in Proteus then I have to use oscilloscope quite a lot.
How to use Oscilloscope in Proteus ISIS ???
- Now in order to add the oscilloscope in the circuit, first click on the Virtual Instruments Mode as shown in the below figure.
- In that mode the first option will be the Oscilloscope which I highlighted as Click # 2 in the below figure.
- Now drag that oscilloscope and place it in the workspace, as you can see below this component has total four legs means you can view total four different types of signals using this oscilloscope and cal also compare them, if you need to.
- Now what I want to check in my circuit is, whether I am getting the pure sine wave at the output or not.
- So in order to check that I have attached the two ends of the bulb which is acting as a load with the two probes of oscilloscope i.e A & B as shown in the below figure.
How to Monitor Oscilloscope
- Now in order to monitor the oscilloscope, run / play the Proteus circuit and then double click on the oscilloscope and a new window will open up as shown in the below figure.
- As you can see in the below image there are total two curves are showing i.e. Channel A & B.
- Now, if you check the right side of the above figure, you can see there are total four channels, each channel represent each probe.
- Like we have attached our curves with A & B now I can change settings of A & B channel and the output curves will be changed.
- Play with this tool and you will how easy it is to use. Change the position of circular know and the amplitude unit will be changed, then change the linear know of each channel and the dc offset will be added in the curve.
Note:
- This Proteus file has been emailed to all the subscribed members, if someone needs it kindly Subscribe to our Newsletter and it will be emailed to you.
Video Tutorial
- Here's the complete video tutorial of above discussion, better for understanding.
That's all for today, hope you guys have enjoyed today's tutorial nad have got the clear idea of How to use oscilloscope in Proteus ISIS. In the coming tutorial, I have explained
How to Design a DC Power Supply in Proteus ISIS. So, let's meet in the coming tutorial. :)
How To Use Virtual Terminal in Proteus ISIS
Hello everyone, I hope you all are doing great. In today's tutorial, we will have a look at How to use
Virtual Terminal in Proteus ISIS. It's our 5th tutorial in Proteus Series. I will first explain what is virtual terminal and then we will have a look at its uses and performance in Proteus ISIS.
Virtual Terminal is an important tool available in Proteus and it comes quite in handy while working on serial modules i.e. GSM, GPS, XBee etc. So, let's get started with Virtual Terminal in Proteus.
What is Virtual Terminal ?
Virtual Terminal is a tool in Proteus, which is used to view data coming from
Serial Port (DB9) and also used to send the data to Serial Port. In windows XP, there's a built in tool named
Hyper Terminal, which is also used for the same purpose but in windows 7 there's no such tool, so for windows 7 users this virtual terminal is quite a great comfort. If you guys don't know about serial port then I would suggest you to read this tutorial to get better idea of serial port:
I have posted many tutorials on my blog in which I have communicated over Serial port using different software. For example, you can check this
Serial communication in MATLAB and can also have a look at
Serial Communication in Visual Studio 2010. As serial communication is too common, so almost every microcontroller supports Serial communication. Arduino UNO has builtin single serial port at its pins 0 and 1, while Arduino Mega 2560 has built in four Serial ports in it. Similarly,
PIC Microcontroller also supports Serial port and it is also available in
8051 Microcontroller.
Uses of Virtual Terminal
Virtual Terminal in Proteus, as I explained above, is used to send or receive data to or from a serial port. Serial port is a 9 pin port which is mostly find on the computers and is used in
Embedded System Projects for data communication. Normally in student projects, data is sent from hardware to computer via serial port and then user design some application on their computer to view that data in some represent-able form.
Now, in projects there are some testing steps which are quite helpful, if we use them properly, and these testing steps require some tools in order to test the process. Like, suppose some student have designed the hardware to send the data to the computer and have also design its application to receive it and now when he tests it he didn't receive any data. At that point student got tensed and don't know where's the error so at that point there's may be some error in the hardware or may be in the software.
Now, in order to be sure he need to test both of them separately and here is the point where virtual terminal is used. First connect your hardware with the computer and then run the hardware and check whether you are receiving data on the virtual terminal or not. If you are receiving it, means your hardware is okay and the problem is in software side and if you are not means your hardware is not so good.
Whenever I start working on some projects, I always make sure that I am going in right direction like if I have to made this project then after completing my hardware, I will first check it via this virtual terminal and once I got sure that my hardware is okay then I will move to the software part. If you are gonna design the hardware then I think you must check
Serial communication with 8051 Microcontroller, which is also designed in Proteus ISIS software and the data is displayed using the same virtual terminal.
There are also many other applications of this terminal like suppose you wanna design some circuit in Proteus which involves serial port then you can add this terminal on your circuit and can test it before going to the hardware, which we will shortly see below. So, now let's get started with Virtual Terminal in Proteus.
How to Use Virtual Terminal in Proteus ISIS?
- First of all open the Proteus ISIS and click on the P button to search for the components, as we seen in previous tutorials.
- Now in the search box type "COMPIM" , when you search this a result will show up as shown in the below figure:
- After Selecting this, click OK to add this component in the database.
- COMPIM is the serial port in Proteus and using its properties we can assign any COM pin of our computer to it and it will behave like that pin. We will change the properties shortly.
- Now, click on the Virtual Instrument Mode and then on the Virtual Terminal as shown in the below figure and add it in the Proteus workspace.
- Now join the TXD pin of COMPIM with the TXD pin of Virtual Terminal and RXD with RXD as shown in the figure below:
- Now, double click on the COMPIM to open the Properties menu and set the properties as shown below:
- I have selected COM1 and my baud rate is 9600, you can set it whatever you want like if you are using the COM3 then set the port to COM3 and baud rate of your own choice.
- Similarly open the properties of the virtual terminal and make sure that the baud rate is same in both the cases.
- Now connect your hardware with the computer and play the simulation. Again make sure that the port which you have selected for the COMPIM is same port with which you have attached your hardware.
- After you play the simulation a black window will open up which will show the data coming from your hardware to the COM1 pin as shown below:
- This black box is actually the Virtual Terminal which is showing data coming from my hardware.
- If you play the simulation and this Virtual Terminal doesn't pop up then right click on the Virtual Terminal Component and then click on Virtual Terminal which will be at the end in the options and this black window will open up.
I think you guys have got much of the idea of this Virtual Terminal in Proteus ISIS. If you have any problem anywhere, ask in comments and also subscribe to our newsletter via email to get these amazing tutorials right into your mailbox. In the next tutorial, I have explained
How to use Oscilloscope in Proteus ISIS. Thanks, take care.
Knowing About Components Available in Proteus ISIS
Hello friends, hope you all are fine and enjoying good health. In this tutorial, my actual plan was to cover the mostly used components in Proteus like to give users an overview of component selection as there are many components in Proteus which are quite hidden and hence quite difficult to find. But, now I have changed my mind as I have received a lot of emails regarding this tutorial in which mostly have asked to elaborate this tutorial and explain other circuits as well just like the LCD one. So after that I thought of making separate tutorial for many different circuits.
These are the parts in which I have divided this tutorial and as you can see I have added the news topics as well which are requested by the readers. If you guys need any tutorial then let me know via
Contact Form, and I will try to post that as well.
So, now in this tutorial, we are gonna see different circuits designed in Proteus. I will explain them step by step so that the users get the better idea of them and also there are many different components in Proteus which are very handy but users mostly don't know about them and I will also explain them to you. I have divided this part of the tutorial into following different parts:
- How To Use Virtual Terminal in Proteus ISIS.
In this tutorial, I will design a simple serial port circuit and then get the data on the Virtual Terminal. Virtual Terminal is quite same as the Hyper Terminal in the windows XP. It shows the data coming from serial port and also sends the data to the serial port.
- How To use Oscilloscope in Proteus ISIS.
Oscilloscope is great functionality in Proteus and it works as same as the oscilloscope you have seen in your electronics lab. It shows waveforms and using it you can make variations in your model and can get the desired output.
- DC Motor Drive Circuit in Proteus ISIS.
In this tutorial, we will check the DC Motor circuit with microcontroller and will drive it.
- Stepper Motor Circuit in Proteus ISIS.
In this tutorial, we will check the Stepper Motor circuit with microcontroller and will drive it.
- Servo Motor Circuit Design in Proteus ISIS.
In this tutorial, we will check the Servo Motor circuit with microcontroller and will drive it.
- How to use Serial Registers in Proteus ISIS.
In this tutorial, we will use serial registers with microcontroller. Microcontrollers have limited I/O pins but what if you need 50 pins, which happens mostly in LEDs, then there's a need to increase the pins of microcontroller and for that purpose we use serial registers.
That's what I have planned so far, I may add few more tutorial in it depends on the suggestions os keep inform me with your suggestions. Thanks.
Circuit Designing of LCD with PIC
Hello friends, hope you all are fine and enjoying good health. Today I am posting the next part of Proteus tutorial which is Interfacing of LCD with PIC Microcontroller. . In the previous post of this tutorial, we have seen the basics of Proteus and discussed various functions of Proteus ISIS. If you are new to Proteus then I would recommend that before starting this tutorial, you should first read the first part so that you get the better idea of Proteus as I wont go in detail in today's post. Today, we will first design a circuit of LCD with PIC on Proteus ISIS which includes
PIC Microcontroller and then we will see how to burn the microcontroller in Proteus and at the end we will run our circuit and will display some text on the LCD. It will be quite a fun so let's start.
If anyone having any problem at any point, ask in comments and I will try my best to resolve them. So, let's get started with Interfacing of LCD with PIC Microcontroller.
Circuit Designing in Proteus
- First of all, open the Proteus ISIS software.
- In the start, it will look exactly the same as in below image.
- Now click on button P as shown in below figure.
- When you click this button a new window will pop up as shown in below figure.
- This is the place where we search our components, like as I want 7805 so I searched for this component and the Proteus has given me the related components.
- Once you get your desired component, simply double click on it and it will be added in your database so that you can use them.
- The below image shows the components which we are gonna use in this project, so simply search for all the components and then double click on them and finally you will get all the components as shown below:
- Now place these components in the Proteus workspace and connect them.
- Design exactly the same circuit as shown in the below figure for interfacing of LCD with PIC Microcontroller.
Now our circuit in
Proteus is ready to use, the next step is to write a code for the PIC Microcontroller 18F452 and then burn it into the Proteus and check its working.
Code of LCD with PIC18F452
- There are different compilers to write the code for PIC Microcontroller. Here I am using MikroC Pro for PIC. You can get it easily from the official site of MikroC.
- I am not going in the details of coding as its beyond the scope of this tutorial, but still I am posting the code.
- So now create a new project in the MikroC Pro For PIC and copy the below code and paste it in the project and compile.
- When you compile the project, it will create a .hex file in the same folder where you have saved this project. We will use this hex file shortly.
// LCD module connections
sbit LCD_RS at RD2_bit;
sbit LCD_EN at RD3_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit;
sbit LCD_RS_Direction at TRISD2_bit;
sbit LCD_EN_Direction at TRISD3_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
// End LCD module connections
char txt1[] = "www.TheEngineeri";
char txt2[] = "ngProjects.com";
char i; // Loop variable
void Move_Delay() { // Function used for text moving
Delay_ms(500); // You can change the moving speed here
}
void main(){
Lcd_Init(); // Initialize LCD
Lcd_Cmd(_LCD_CURSOR_OFF); // LCD Cursor Off
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Out(1,1,txt1); // Write text in first row
Lcd_Out(2,1,txt2); // Write text in second row
Delay_ms(2000);
while(1);
}
Burn the Code in PIC Microcontroller in Proteus ISIS
- Now we have the hex file, we need to burn this hex file in the microcontroller in Proteus.
- So, double click on the Microcontroller in Proteus and it will open up the properties menu of PIC microcontroller.
- Now click, as shown in the below figure, and browse for the hex file and click OK.
- We need to add this hex file in Proteus here and also select the oscillation frequency which I have selected 16MHz.
Note: Make sure that the oscillation frequency remain same both in the MikroC and the Proteus.
- After adding the file in the Proteus now click OK and play the simulation, ifeverything goes fine, you will get the results as shown in below image.
Note:
- Proteus ISIS simulation file and the .hex file has been emailed to all the subscribed members. If anyone need it, subscribe to our newsletter via email and it will be emailed to you as well.
That's all for today, I have tried my best to explain everything on
Interfacing of LCD with PIC Microcontroller, but still if someone having problem ask in comments and I will try to resolve. In the next part, we will discuss various components of Proteus which are commonly used like motors, serial port, hyper terminal etc. So stay tuned and also subscribe us via email so that you get all the tutorials straight into your mail box. Have fun. Take care.
Complete Guide on Proteus ISIS & ARES
Hello friends, I hope you all are fine and having fun. In today's tutorial, I will provide you a
Complete Guide on Proteus ISIS & ARES. I will start from very basics & will gradually move towards complex projects. I have already shared a lot of tutorials on Proteus software on my blog, I will add their links in today's tutorial as well, in the projects section.
If you guys have any problem anywhere, ask in comments and I will try my best to resolve your issues and also subscribe to our newsletter so that you get these burning tutorials rite in your mail box. I will continuously update this list of tutorials so that we have all tutorials at one place.
Course Content of Proteus Guide
I have divided this tutorial in few sections and you have to follow them in sequence and at the end of this course, I hope you will be able to create any simulation in Proteus ISIS & also design its PCB model in Proteus ARES. These sections are as follows:
- In the 1st section of this course, we will have a look at few basic concepts in Proteus, which are necessary for a beginner to understand.
- In the 2nd section, we will discuss various components available in Proteus. I know there's countless components in its database and we can't discuss them all but we will have a look at most commonly used components i.e. DC motor, servo motor, serial port, etc. We will design some simple electronics circuits in Proteus to get better understanding.
- In the 3rd section, we will have a look at How to simulate different Microcontrollers in Proteus ISIS, and we will also simulate different sensors in it. Moreover, I will guide you How to Install 3rd Party Proteus Libraries.
- In the 4th section, we will first have a detailed introduction to Proteus ARES & then we will design different PCB boards in it, both single layered and multi-layered.
- In the 5th section, we will see how to design a component in Proteus along with its PCB footprint, if it's not already in Proteus database. Its important, especially when you need to design a PCB in Proteus.
- In the 6th section, we will simulate different final year complex projects.
Complete Guide on Proteus ISIS & ARES
- I have created above mentioned sections and added respective links in sequence.
Section 1: Basics of Proteus ISIS
So, let's get started with Basics of Proteus ISIS, these are very basic tutorials, so if you have worked on Proteus before, then you can skip this section. Although, I would recommend you to read them once:
Section 2: Components Available in Proteus ISIS
Proteus has a wide range of components in its database. Using these components you can design almost any kind of circuit and can test and debug it. Below tutorials mention few of these components, which are most commonly used while working on Proteus.
Components Libraries for Proteus
Proteus has a wide range of components available in its database. But it happens quite a lot that you search for some component in Proteus but you can't find it in Proteus database. For such cases, Proteus has given a method using which you can design your component in Proteus and can add all of its features in it. Its quite a lengthy process and needs a lot of effort as it involves creation of DLL files using C++ and VSM. We have designed few components libraries for Proteus, using which you can simulate that component or module in Proteus. Here's the list:
Arduino Projects in Proteus
Arduino is most widely used Microcontroller board these days, which is famous for its flexibilty and ease of use. Arduino board is not available in Proteus but we have provided with Arduino libraries using which you can quite easily use Arduino in Proteus and can test your circuits in Proteus before implementing them in hardware. Below are the tutorials and projects in which we have used Arduino in Proteus.
PIC Microcontroller Projects in Proteus
PIC Microcontroller is another microcontroller which is used by engineers in engineering projects. This microcontroller is available in Proteus so we have designed few projects on it which are mentioned below:
8051 Microcontroller Projects in Proteus
8051 Microcontroller is another microcontroller series which is quite popular and is used in engineering projects quite a lot. 8051 Microcontrollers are also available in Proteus and most normally used 8051 Microcontrollers are AT89C51 and AT89C52. I have shared many projects on 8051 Microcontroller, which are as follows:
Sensors simulation in Proteus
[dt_gap height="7"]
Proteus has a wide range of sensors available in its database. We have designed simulations of few of these sensors which are mentioned below. Ultrasonic sensor is not available in Proteus so we have provided its library so thaat students can easily interface and test it in Proteus. These sensors' simulations are mentioned below:
555 Timer Projects in Proteus
555 Timer is known as the king of electronics projects after microcontrollers. 555 timer is used in a lot of electronics projects where you need to ddo control or generate some timing or PWM pulse. 555 Timer is available in Proteus and have designed a lot of tutorials on it, which are mentioned below:
PCB Designing Tutorials in Proteus ARES
Proteus not only provide the capability of circuit designing and testing but also provide the facility of designing a PCB. Proteus comes with two packages one is named as Proteus ISIS in which we design our circuits and the other one is Proteus ARES which is used for PCB designing. Here we have post tutorials on How to design PCBs in Proteus.
So these are the tutorial on which I have written. If you guys stuck at any point, feel free to ask in comments and I will try my best to satisfy you as much as I can. Moreover subscribe to our mailing list so that you get these tutorials rite into your mail box. Stay blessed & take care.