In today's post, we will first simulate the Relay in a simple circuit in which when you run the simulation, the relay will automatically got activated and after that we will go in a bit detail and will control relay using a logic, i.e. when you provide +5V to it then the relay will go activated and when you give GNd then it will de-energize. I will explain it below in detail how to use it with Microcontroller. Moreover, if you are planning to work on Relay then you should also check What is a Relay and How to use it? and should also have a look at Relay Interfacing with Microcontroller using ULN2003 and finally must check this one as well Relay Control using 555 timer in Proteus ISIS.If you have any questions. related to it then ask in comments and I will try my best to reply your queries. Let's get started with designing of control relay in Proteus ISIS.
Microcontrollers Programming is difficult because usually engineers and students doesn’t have the required tools for debugging of their codes and electronic circuits, that the main reason, they got into trouble while designing projects. On the other hand, we are highly equipped withh all sorts of tools to deal with such problems and we not only design projects but also put our full effort in explaining these projects to engineers and students so that they also get technical knowledge and can easily debug or increase the projects’ technicality in future.
Note:
We have designed projects in almost every field. Embedded projects belong to different fields and if you are not master of all trades then you can’t complete in embedded fields. That’s the main reason, we have a batch of engineers in our research depart who continuously work on research new fields. We have worked on many different technologies taking from simple keypad, LCD to high complex modules such as WiFi, Ethernet etc. We have worked on many different technologies, such as:
In embedded projects, motors are normally used, especially in robotics. Without motors, its unable to drive robots. We have worked on many different motors, such as:
Apart from these motors, few motors are used in electrical projects for controlling purposes, such as:
Arduino Wifi Shield is used to connect Arduino board with Wifi. After connectivity with Wifi, one can perform many tasks using this shield. We can built a complete server on it and can also use it as a client. Server designed on an Arduino Wifi Shield are usually quite simple as it doesn’t have much processing power to support heavy server. Arduino Wifi Shield is mostly used in home automation projects where home appliances are controlled by Wifi or can also be used for security purposes. In short, it has numerous applications and is widely used.
In today’s project, we will use Arduino UNO board for programming purposes, and will interface two leds with it and then we will control these leds via an online web server. Using that online web server, we will ON and OFF these leds on command. For controlling leds from an online server, we have to design two things:
Their arrangement and pin configuration is shown in the Arduino Web Client section. We will arrange them in such a way that two leds will be mounted on the Arduino UNO shield. In web server, we will design a simple page, which will be having four buttons on it, which will be:
When someone will open this web page and will pres any of these buttons, respective task will be performed on the Leds. i.e. if someone pressed the LED 1 ON button then Led 1 present on the Arduino board will get ON and when someone press LED 1 OFF button, that Led will go OFF and same function will be performed for second led. There won’t be any connection between the hardware and that web server, the only connection will be the Wifi. The Arduino Shield must have a Wifi connection available and one sitting from across the world can control them. Now let’s discuss these two parts, one by one.
I have designed the online web server on my own site The Engineering Projects. This is a php page which I have uploaded on my web server. In order to make this page, simply follow the below steps:
Note:
#include <SPI.h> #include <WiFi.h> char ssid[] = “EvoWingle-12F3“; // your network SSID (name) char pass[] = “093B3453“; // your network password (use for WPA, or use as key for WEP) int keyIndex = 0; // your network key Index number (needed only for WEP) int status = WL_IDLE_STATUS; char server[] = “www.theengineeringprojects.com“; // name address for Google (using DNS) String location = “/Examples/data.txt HTTP/1.0“; char inString[500]; // string for incoming serial data int stringPos = 0; // string index counter byte statusLed = 0; char c; int led1 = 3; int led2 = 4; WiFiClient client; unsigned long lastConnectionTime = 0; // last time you connected to the server, in milliseconds boolean lastConnected = false; // state of the connection last time through the main loop const unsigned long postingInterval = 10*1000; // delay between updates, in milliseconds void setup() { //Initialize serial and wait for port to open: Serial.begin(9600); pinMode(led1,OUTPUT); pinMode(led2,OUTPUT); digitalWrite(led1, LOW); digitalWrite(led2, LOW); // check for the presence of the shield: if (WiFi.status() == WL_NO_SHIELD) { Serial.println(“WiFi shield not present”); // don’t continue: while(true); } // attempt to connect to Wifi network: while ( status != WL_CONNECTED) { Serial.print(“Attempting to connect to SSID: “); Serial.println(ssid); // Connect to WPA/WPA2 network. Change this line if using open or WEP network: status = WiFi.begin(ssid, pass); // wait 10 seconds for connection: delay(10000); } Serial.println(“Connected to wifi”); printWifiStatus(); Serial.println(“nStarting connection to server…”); // if you get a connection, report back via serial: if (client.connect(server, 80)) { Serial.println(“connected to server”); // Make a HTTP request: client.print(“GET “); client.println(location); client.println(“Host: theengineeringprojects.com”); // client.println(“Connection: close”); client.println(); //readPage(); }else{ Serial.println(“connection failed”); } } void loop(){ while (client.available()) { c = client.read(); Serial.write(c); CheckingStatus(); } if (!client.connected() && lastConnected) { Serial.println(); Serial.println(“disconnecting.”); client.stop(); } if(!client.connected() && (millis() – lastConnectionTime > postingInterval)) { PingRequest(); } lastConnected = client.connected(); } void PingRequest(){ if (client.connect(server, 80)) { // Serial.println(“connected to server”); // Make a HTTP request: client.print(“GET “); client.println(location); client.println(“Host: theengineeringprojects.com”); client.println(“Connection: close”); client.println(); //readPage(); lastConnectionTime = millis(); }else{ //Serial.println(“connection failed”); client.stop(); } } void CheckingStatus(){ inString[stringPos] = c; if(c == ‘*’) { statusLed = inString[stringPos - 1]; stringPos = 0; // Serial.write(statusLed); delay(500); UpdatingStatus(); // delay(500); // client.flush(); // delay(10000); //PingServer(); } stringPos ++; } void UpdatingStatus(){ if(statusLed == ’1') { digitalWrite(led1, HIGH); // Serial.write(‘OK’); } if(statusLed == ’2') { digitalWrite(led1, LOW); } if(statusLed == ’3') { digitalWrite(led2, HIGH); } if(statusLed == ’4') { digitalWrite(led2, LOW); } } void printWifiStatus() { // print the SSID of the network you’re attached to: Serial.print(“SSID: “); Serial.println(WiFi.SSID()); // print your WiFi shield’s IP address: IPAddress ip = WiFi.localIP(); Serial.print(“IP Address: “); Serial.println(ip); // print the received signal strength: long rssi = WiFi.RSSI(); Serial.print(“signal strength (RSSI):”); Serial.print(rssi); Serial.println(” dBm”); }
That’s all for today, Stay Blessed, take care. :))
Hello friends, today I am going to post a complete project designed on MATLAB named as Modelling of DVB-T2 system using Consistent Channel Frequency in MATLAB. This project is designed by our team and it involved a lot of effort to bring it into existence that's why its not free but as usual I have discussed all the details below related to it, which will help you understanding it and if you want to buy it then you can click on the Buy button shown above.
This project aims to implement a DVB-T2 (Digital Video Broadcasting for terrestrial television) system using consistent channel frequency responses. Tthe code is designed to use the same output from a channel model for different transmitter configurations so that consistency of performance results can be obtained. After that the overall project will be modified to repeat an experiment “n” times collecting data so that “x%” confidence intervals can be calculated. Historically, DVB is a project worked by more than 250 companies around Europe at first and now worldwide. DVB-T2 is the world’s most advanced digital terrestrial television (DTT) system, offering more robustness, flexibility and at least 50% more efficiency than any other DTT system. It supports SD, HD, mobile TV, or any combination thereof. The GUI for DVB-T2 parameters selection in MATLAB is shown on the left.
DVB-T2 is the second generation standard technology used for digital terrestrial TV broadcasting. As it’s a new technology so it has many fields to explore and research, and the best way of researching on any new technology is via simulations. Simulations provide an easy and efficient way to evaluate the performance of any system. For simulation purposes, MATLAB software was chosen in this thesis because of its wide range of tools and ability to show graphical results in a very appropriate form. . Further, this DVB-T2 simulation model could be extended easily to simulate DVB-H, which shares many features with DVB-T2 (only the physical layer that needs modification). The most important feature, I discussed in my simulations are:
DVB-T2 scheme can handle wide range of sub carriers from a range of 1k to 32k; these sub carriers can be fixed or mobile. In this thesis, experiments are performed on mobile transmission of signals to 4000 sub carriers. Below are discussed three different mobile scenarios, for different speeds of mobiles user, which are:
In all the scenarios, the factors mentioned below are kept constant so that a real comparison can be obtained and it could be checked that whether the speed affects the signal or not. These constant factors are:
During this thesis, help was taken from a MATLAB model of DVB-T2 transmission system designed by a student at Brunel University. First this initial model was studied and then enhanced it to a higher level. The first model designed by the student at Brunel University, performed the iterations on the DVB-T2 system and gives the results for just one cycle. Explanation of this initial model is discussed in detail below.
After the user input all the values in the GUI, this model first calculates the below three values depending on the number of subcarriers attached to the DVB-T2 system.
After getting this information, the model performs the QAM modulation over the signal so that it could be sent from the transmitter to the receiver. Next, depending on the value of Pilot Pattern given by the user, it calculates the scattered Pilot Amplitudes for the system. After that, it calculates the distortion in transmission depending on area in which the signal is propagating.
In order to calculate the distortion, FFT technique is performed on the signals to get their frequency response. As the signal has already sent from the transmitter after QAM modulation so demodulation on the receiver side is necessary. The model performs the same and demodulates the signal and finally it calculates the value of Signal to noise ratio (SNR) and Bit Error Rate (BER). At the end, it simply plots the graphs of SNR and BER for the visual representation.
Different experiments were performed on the initial model and checked its results. The results are given below for three different experiments, which are:
Results of these experiments are shown in figure 6.1, 6.2 and 6.3 respectively. Table 6.1, 6.2 and 6.3 gives the values of BER and average BER for all the values of SNR. If these three graphs are closely examined then it can be shown that the band limited impulse response increases as the speed increase and so as the BER and SNR.
The reason for such behavior is that because as the speed of the mobile increase, signal distortion also increases and it becomes difficult for the receiver to catch the signal, that’s the main reason that user travelling in high speed vehicle faces more distortion as compared to a pedestrian.
SNR | BER & Average BER |
SNR: 0 | BER:0.103833 |
SNR: 0 | NoAvrg_BER:0.160358 |
SNR: 5 | BER:0.014366 |
SNR: 5 | NoAvrg_BER:0.033706 |
SNR: 10 | BER:0.000206 |
SNR: 10 | NoAvrg_BER:0.001528 |
SNR: 15 | BER:0.000002 |
SNR: 15 | NoAvrg_BER:0.000107 |
SNR: 20 | BER:0.001543 |
SNR: 20 | NoAvrg_BER:0.002319 |
SNR: 25 | BER:0.000076 |
SNR: 25 | NoAvrg_BER:0.000184 |
SNR: 30 | BER:0.000000 |
SNR: 30 | NoAvrg_BER:0.000164 |
BER & Average BER Vs. SNR for experiment 1
SNR | BER & Average BER |
SNR: 0 | BER:0.140855 |
SNR: 0 | NoAvrg_BER:0.195596 |
SNR:5 | BER:0.046527 |
SNR:5 | NoAvrg_BER:0.071364 |
SNR:10 | BER:0.011363 |
SNR:10 | NoAvrg_BER:0.019860 |
SNR:15 | BER:0.003815 |
SNR:15 | NoAvrg_BER:0.006448 |
SNR:20 | BER:0.000604 |
SNR:20 | NoAvrg_BER:0.001222 |
SNR:25 | BER:0.000214 |
SNR:25 | NoAvrg_BER:0.000404 |
SNR:30 | BER:0.000233 |
SNR:30 | NoAvrg_BER:0.000503 |
SNR | BER & Average BER |
SNR: 0 | BER:0.128177 |
SNR: 0 | NoAvrg_BER:0.182924 |
SNR:5 | BER:0.056198 |
SNR:5 | NoAvrg_BER:0.084254 |
SNR:10 | BER:0.023229 |
SNR:10 | NoAvrg_BER:0.035131 |
SNR:15 | BER:0.006793 |
SNR:15 | NoAvrg_BER:0.010362 |
SNR:20 | BER:0.001748 |
SNR:20 | NoAvrg_BER:0.002801 |
SNR:25 | BER:0.000425 |
SNR:25 | NoAvrg_BER:0.000691 |
SNR:30 | BER:0.000354 |
SNR:30 | NoAvrg_BER:0.000515 |
BER & Average BER vs. SNR for experiment 3
Although the results given by these simulations were quite accurate but they were not accurate enough to be trusted, as they were performing the process just for one period and getting the results on the basis of that.
The initial MATLAB model is modified in this thesis, in order to use the same output from the channel model with different transmitter configurations to obtain more consistent results that can be compared with each other. Then theDVB-T2model will be modified so that it can be simulated using Matlab n times collecting data so that an x% confidence interval can be measured.
The results obtained after modifications were very consistent as they were performing the whole scenario for N times (defined by the user), this attribute lacks in the initial model as it was performing the complete task just for one cycle of time and any kind of distortion could fluctuate the results. While in modified model, the same process was performed by N times defined by the user and the results obtained are actually the average of all the cycles and hence providing a very consistent output, which couldn’t be distorted by any external factors.
Moreover, this new model further enhanced the initial model to calculate the Mean BER as it will give the overall performance of BER and average BER. Furthermore, calculates the standard BER on the basis of which global BER is also calculated.As the simulation of DVB-T2 requires a lot of input parameters from the user, that’s why a GUI is also designed in MATLAB, which makes the working of this project user friendly. User can easily change the parameters of the system using that GUI. On startup, the GUI looks like as shown in figure 4.2:
As mentioned above, taking all the other parameters constant, three experiments are performed for the mobile user moving at different speeds with different Iterations and no. of repeats, which are:
Results of the first experiment are shown in the figure 6.5, 6.6 and 6.7 respectively. While the theoretical values of BER and average BER for the corresponding SNR are shown in table 6.4 and the Mean BER and std BER are shown in table 6.5.
For N=1 | For N=2 | ||
SNR: 0 | BER:0.131272 | SNR: 0 | BER:0.131542 |
SNR: 0 | NoAvrg_BER:0.185916 | SNR: 0 | NoAvrg_BER:0.186218 |
SNR:1 | BER:0.107086 | SNR:1 | BER:0.106672 |
SNR:1 | NoAvrg_BER:0.157698 | SNR:1 | NoAvrg_BER:0.157319 |
SNR:2 | BER:0.086805 | SNR:2 | BER:0.086459 |
SNR:2 | NoAvrg_BER:0.129841 | SNR:2 | NoAvrg_BER:0.129562 |
SNR:3 | BER:0.087178 | SNR:3 | BER:0.086924 |
SNR:3 | NoAvrg_BER:0.128066 | SNR:3 | NoAvrg_BER:0.127755 |
SNR:4 | BER:0.081465 | SNR:4 | BER:0.081709 |
SNR:4 | NoAvrg_BER:0.116619 | SNR:4 | NoAvrg_BER:0.116581 |
SNR:5 | BER:0.028071 | SNR:5 | BER:0.028074 |
SNR:5 | NoAvrg_BER:0.051596 | SNR:5 | NoAvrg_BER:0.051751 |
SNR:6 | BER:0.016450 | SNR:6 | BER:0.016439 |
SNR:6 | NoAvrg_BER:0.030762 | SNR:6 | NoAvrg_BER:0.030725 |
SNR:7 | BER:0.012705 | SNR:7 | BER:0.012607 |
SNR:7 | NoAvrg_BER:0.022399 | SNR:7 | NoAvrg_BER:0.022108 |
SNR:8 | BER:0.036446 | SNR:8 | BER:0.036612 |
SNR:8 | NoAvrg_BER:0.052421 | SNR:8 | NoAvrg_BER:0.052642 |
SNR:9 | BER:0.026200 | SNR:9 | BER:0.026378 |
SNR:9 | NoAvrg_BER:0.039987 | SNR:9 | NoAvrg_BER:0.040434 |
SNR:10 | BER:0.014162 | SNR:10 | BER:0.014155 |
SNR:10 | NoAvrg_BER:0.023779 | SNR:10 | NoAvrg_BER:0.023805 |
SNR:11 | BER:0.007526 | SNR:11 | BER:0.007539 |
SNR:11 | NoAvrg_BER:0.013874 | SNR:11 | NoAvrg_BER:0.013838 |
SNR:12 | BER:0.015524 | SNR:12 | BER:0.015382 |
SNR:12 | NoAvrg_BER:0.023693 | SNR:12 | NoAvrg_BER:0.023602 |
SNR:13 | BER:0.005303 | SNR:13 | BER:0.005448 |
SNR:13 | NoAvrg_BER:0.008758 | SNR:13 | NoAvrg_BER:0.008764 |
SNR:14 | BER:0.008712 | SNR:14 | BER:0.008823 |
SNR:14 | NoAvrg_BER:0.014517 | SNR:14 | NoAvrg_BER:0.014421 |
SNR:15 | BER:0.013224 | SNR:15 | BER:0.013144 |
SNR:15 | NoAvrg_BER:0.019547 | SNR:15 | NoAvrg_BER:0.019305 |
SNR:16 | BER:0.001919 | SNR:16 | BER:0.001890 |
SNR:16 | NoAvrg_BER:0.003767 | SNR:16 | NoAvrg_BER:0.003703 |
SNR:17 | BER:0.002873 | SNR:17 | BER:0.002907 |
SNR:17 | NoAvrg_BER:0.004932 | SNR:17 | NoAvrg_BER:0.005001 |
SNR:18 | BER:0.000610 | SNR:18 | BER:0.000641 |
SNR:18 | NoAvrg_BER:0.001197 | SNR:18 | NoAvrg_BER:0.001243 |
SNR:19 | BER:0.006294 | SNR:19 | BER:0.006231 |
SNR:19 | NoAvrg_BER:0.009262 | SNR:19 | NoAvrg_BER:0.009209 |
SNR:20 | BER:0.001799 | SNR:20 | BER:0.001749 |
SNR:20 | NoAvrg_BER:0.003268 | SNR:20 | NoAvrg_BER:0.003248 |
SNR:21 | BER:0.000966 | SNR:21 | BER:0.000998 |
SNR:21 | NoAvrg_BER:0.001677 | SNR:21 | NoAvrg_BER:0.001636 |
SNR:22 | BER:0.001733 | SNR:22 | BER:0.001778 |
SNR:22 | NoAvrg_BER:0.002772 | SNR:22 | NoAvrg_BER:0.002883 |
SNR:23 | BER:0.004920 | SNR:23 | BER:0.004914 |
SNR:23 | NoAvrg_BER:0.007638 | SNR:23 | NoAvrg_BER:0.007743 |
SNR:24 | BER:0.000089 | SNR:24 | BER:0.000098 |
SNR:24 | NoAvrg_BER:0.000220 | SNR:24 | NoAvrg_BER:0.000234 |
SNR:25 | BER:0.000001 | SNR:25 | BER:0.000001 |
SNR:25 | NoAvrg_BER:0.000052 | SNR:25 | NoAvrg_BER:0.000052 |
SNR:26 | BER:0.000408 | SNR:26 | BER:0.000393 |
SNR:26 | NoAvrg_BER:0.000695 | SNR:26 | NoAvrg_BER:0.000646 |
SNR:27 | BER:0.000583 | SNR:27 | BER:0.000600 |
SNR:27 | NoAvrg_BER:0.001222 | SNR:27 | NoAvrg_BER:0.001242 |
SNR:28 | BER:0.000352 | SNR:28 | BER:0.000381 |
SNR:28 | NoAvrg_BER:0.000609 | SNR:28 | NoAvrg_BER:0.000625 |
SNR:29 | BER:0.000107 | SNR:29 | BER:0.000124 |
SNR:29 | NoAvrg_BER:0.000365 | SNR:29 | NoAvrg_BER:0.000384 |
SNR:30 | BER:0.000367 | SNR:30 | BER:0.000351 |
SNR:30 | NoAvrg_BER:0.000720 | SNR:30 | NoAvrg_BER:0.000695 |
SNR Vs. BER values for Experiment 1
Mean BER | std BER |
-0.8814 | 0.0006 |
-0.9711 | 0.0012 |
-1.0623 | 0.0012 |
-1.0602 | 0.0009 |
-1.0884 | 0.0009 |
-1.5517 | 0.0000 |
-1.7840 | 0.0002 |
-1.8977 | 0.0024 |
-1.4374 | 0.0014 |
-1.5802 | 0.0021 |
-1.8490 | 0.0001 |
-2.1231 | 0.0005 |
-1.8110 | 0.0028 |
-2.2696 | 0.0083 |
-2.0571 | 0.0039 |
-1.8799 | 0.0019 |
-2.7203 | 0.0046 |
-2.5391 | 0.0035 |
-3.2039 | 0.0151 |
-2.2033 | 0.0031 |
-2.7511 | 0.0086 |
-3.0078 | 0.0099 |
-2.7556 | 0.0079 |
-2.3083 | 0.0004 |
-4.0308 | 0.0285 |
-6.1938 | 0 |
-3.3978 | 0.0118 |
-3.2281 | 0.0086 |
-3.4365 | 0.0247 |
-3.9387 | 0.0460 |
-3.4455 | 0.0137 |
Mean BER & std BER values for Experiment 1
For N = 1 | For N = 2 | ||
SNR: 0 | BER:0.144963 | SNR: 0 | BER:0.144537 |
SNR: 0 | NoAvrg_BER:0.200382 | SNR: 0 | NoAvrg_BER:0.200617 |
SNR:1 | BER:0.103536 | SNR:1 | BER:0.103496 |
SNR:1 | NoAvrg_BER:0.153318 | SNR:1 | NoAvrg_BER:0.153312 |
SNR:2 | BER:0.081079 | SNR:2 | BER:0.081874 |
SNR:2 | NoAvrg_BER:0.123080 | SNR:2 | NoAvrg_BER:0.123966 |
SNR:3 | BER:0.056279 | SNR:3 | BER:0.056618 |
SNR:3 | NoAvrg_BER:0.096223 | SNR:3 | NoAvrg_BER:0.096636 |
SNR:4 | BER:0.070647 | SNR:4 | BER:0.070241 |
SNR:4 | NoAvrg_BER:0.103436 | SNR:4 | NoAvrg_BER:0.103023 |
SNR:5 | BER:0.063094 | SNR:5 | BER:0.063427 |
SNR:5 | NoAvrg_BER:0.089725 | SNR:5 | NoAvrg_BER:0.090577 |
SNR:6 | BER:0.020785 | SNR:6 | BER:0.021318 |
SNR:6 | NoAvrg_BER:0.039970 | SNR:6 | NoAvrg_BER:0.040469 |
SNR:7 | BER:0.024660 | SNR:7 | BER:0.024455 |
SNR:7 | NoAvrg_BER:0.040979 | SNR:7 | NoAvrg_BER:0.041170 |
SNR:8 | BER:0.032986 | SNR:8 | BER:0.032662 |
SNR:8 | NoAvrg_BER:0.052140 | SNR:8 | NoAvrg_BER:0.052100 |
SNR:9 | BER:0.023306 | SNR:9 | BER:0.022988 |
SNR:9 | NoAvrg_BER:0.037168 | SNR:9 | NoAvrg_BER:0.037283 |
SNR:10 | BER:0.009120 | SNR:10 | BER:0.008878 |
SNR:10 | NoAvrg_BER:0.017749 | SNR:10 | NoAvrg_BER:0.017499 |
SNR:11 | BER:0.023258 | SNR:11 | BER:0.023224 |
SNR:11 | NoAvrg_BER:0.034964 | SNR:11 | NoAvrg_BER:0.034473 |
SNR:12 | BER:0.023534 | SNR:12 | BER:0.023745 |
SNR:12 | NoAvrg_BER:0.034579 | SNR:12 | NoAvrg_BER:0.034325 |
SNR:13 | BER:0.000103 | SNR:13 | BER:0.000101 |
SNR:13 | NoAvrg_BER:0.000588 | SNR:13 | NoAvrg_BER:0.000648 |
SNR:14 | BER:0.000016 | SNR:14 | BER:0.000010 |
SNR:14 | NoAvrg_BER:0.000196 | SNR:14 | NoAvrg_BER:0.000231 |
SNR:15 | BER:0.000009 | SNR:15 | BER:0.000014 |
SNR:15 | NoAvrg_BER:0.000209 | SNR:15 | NoAvrg_BER:0.000240 |
SNR:16 | BER:0.001996 | SNR:16 | BER:0.002008 |
SNR:16 | NoAvrg_BER:0.003367 | SNR:16 | NoAvrg_BER:0.003535 |
SNR:17 | BER:0.002367 | SNR:17 | BER:0.002430 |
SNR:17 | NoAvrg_BER:0.003467 | SNR:17 | NoAvrg_BER:0.003535 |
SNR:18 | BER:0.000002 | SNR:18 | BER:0.000004 |
SNR:18 | NoAvrg_BER:0.000010 | SNR:18 | NoAvrg_BER:0.000018 |
SNR:19 | BER:0.001298 | SNR:19 | BER:0.001367 |
SNR:19 | NoAvrg_BER:0.002071 | SNR:19 | NoAvrg_BER:0.002116 |
SNR:20 | BER:0.009918 | SNR:20 | BER:0.009850 |
SNR:20 | NoAvrg_BER:0.014701 | SNR:20 | NoAvrg_BER:0.014585 |
SNR:21 | BER:0.000472 | SNR:21 | BER:0.000521 |
SNR:21 | NoAvrg_BER:0.000769 | SNR:21 | NoAvrg_BER:0.000854 |
SNR:22 | BER:0.001085 | SNR:22 | BER:0.001169 |
SNR:22 | NoAvrg_BER:0.001855 | SNR:22 | NoAvrg_BER:0.001917 |
SNR:23 | BER:0.001360 | SNR:23 | BER:0.001495 |
SNR:23 | NoAvrg_BER:0.002240 | SNR:23 | NoAvrg_BER:0.002427 |
SNR:24 | BER:0.000595 | SNR:24 | BER:0.000621 |
SNR:24 | NoAvrg_BER:0.001258 | SNR:24 | NoAvrg_BER:0.001321 |
SNR:25 | BER:0.000873 | SNR:25 | BER:0.000820 |
SNR:25 | NoAvrg_BER:0.001457 | SNR:25 | NoAvrg_BER:0.001422 |
SNR:26 | BER:0.000003 | SNR:26 | BER:0.000003 |
SNR:26 | NoAvrg_BER:0.000199 | SNR:26 | NoAvrg_BER:0.000201 |
SNR:27 | BER:0.000326 | SNR:27 | BER:0.000342 |
SNR:27 | NoAvrg_BER:0.000637 | SNR:27 | NoAvrg_BER:0.000651 |
SNR:28 | BER:0.000198 | SNR:28 | BER:0.000216 |
SNR:28 | NoAvrg_BER:0.000270 | SNR:28 | NoAvrg_BER:0.000262 |
SNR:29 | BER:0.000000 | SNR:29 | BER:0.000000 |
SNR:29 | NoAvrg_BER:0.000000 | SNR:29 | NoAvrg_BER:0.000000 |
SNR:30 | BER:0.000000 | SNR:30 | BER:0.000000 |
SNR:30 | NoAvrg_BER:0.000071 | SNR:30 | NoAvrg_BER:0.000078 |
SNR Vs. BER values for Experiment 2
Mean BER | Std BER |
0.8394 | 0.0009 |
0.9850 | 0.0001 |
1.0890 | 0.0030 |
1.2483 | 0.0018 |
1.1522 | 0.0018 |
1.1989 | 0.0016 |
1.6767 | 0.0078 |
1.6098 | 0.0026 |
1.4838 | 0.0030 |
1.6355 | 0.0042 |
2.0458 | 0.0083 |
1.6337 | 0.0005 |
1.6264 | 0.0027 |
3.9915 | 0.0072 |
4.8895 | 0.1323 |
4.9486 | 0.1512 |
2.6985 | 0.0018 |
2.6201 | 0.0081 |
5.5089 | 0.1569 |
2.8755 | 0.0159 |
2.0051 | 0.0021 |
3.3048 | 0.0302 |
2.9484 | 0.0231 |
2.8460 | 0.0291 |
3.2160 | 0.0133 |
3.0727 | 0.0192 |
5.4949 | 0 |
3.4765 | 0.0154 |
3.6850 | 0.0273 |
Inf | NaN |
Inf | NaN |
Mean BER and std BER values for Experiment 2
This thesis presents the design and Implementation of DVB-T2 system in MATLAB software. The basic purpose of this thesis is to check the bit error ratio (BER) and signal to noise ratio (SNR) for DVB-T2 system so that the system could be improved to a better quality. DVB-T2 system is evaluated for mobile users moving at different speeds. It is clearly shown that the mobility has an impact on the received signal, where the SNR goes to zero in some points. This behavior will generate high BER. If the figures for impulse responses are checked for all the three experiments then it is depicted that the Impulse is high for the third experiment where the mobility speed is higher than the first two experiments. The packet data loss is almost zero for the first experiment while it’s increasing in the second and is higher in the third. The number of packet lost confirms this behavior that high losses occurred in the case of high mobility.
I believe that you have installed the MPLAB Software which I have emailed to all the subscribed users on our site. If anyone didn't receive it yet then get subscribed on our site and I will email it to you. You should also have a look at these Top 3 PIC C Compilers. Now follow these steps carefully and if you feel any problem let me know in comments.
Although they provide some demo version as well which has some limit of hex size. Why MPLAB is better than MikroC or any other compiler is because it is very flexible. You can change any bit of your Microcontroller in MPLAB but this thing isn't possible in other compilers. But on the other side it also more difficult than other compilers. MikroC has builtin libraries using which you can save quite a lot of time. Suppose you wanna run LCD, then in MikroC you just need to write 2 lines but in MPLAB there will be quite a lot code lines need to be written. Here's a comparison of Top 3 PIC C Compilers. So, anyways its just a little comparison, now lets come back to our tutorial and start with Installation of MPLAB C Compiler.
Hello friends, hope you all are fine and enjoying good health. Previously, we have seen Functions available in PIC18F452. In today's tutorial we are gonna have a look at How to install MPLAB software. Until now, we have seen only what is PIC Microcontroller and what is it capable of? Now we are gonna move a little further and will see how we can burn program into it and get it our slave. So in order to make the PIC our slave, we have to burn some coding into it and even before that we need some platform where we can actually write this coding and this platform is provided by Microchip itself and is called MPLAB.
MPLAB is a software in which we write a programming code for PIC Microcontroller. It is basically a compiler which compiles the code and then create its hex file, which we later uploads in our microcontroller. I have explained this thing before in Getting Started with PIC Microcontroller. Now before going any further, we will first have a look on how to install MPLAB software in Windows. So in this tutorial, I will explain the step by step the whole process of installing MPLAB. MPLAB supports assembly language, which we are not gonna learn in this class so, after installing the MPLAB software we also have to install the MPLAB C compiler, which we will install in the coming tutorial, so first install this MPLAB software and then move to the next tutorial to install C compiler.
The first part of this tutorial has been completed. In the next part, I will explain how to install the MPLAB C compiler so that you can also do programming in C language in MPLAB.
Till then take care ...... ALLAH HAFIZ :))In the previous tutorial, I explained Getting Started with PIC microcontrollers and the software etc. Today, I am going to explain the hardware of PIC18F452 i.e. the functions available in PIC18F452. In other words, working of pins. We have a total of 40 pins in 18F452 microcontroller. Different PIC microcontrollers have different pins and different functions. Some of the PIC Microcontrollers lack the below functions and some of them have much more functions than these. So, here I am just discussing the PIC Microcontroller 18F452 because it is a moderate one and is mostly used in engineering projects. It's an 8-bit microcontroller. So now we are gonna have a look at the functions available in the PIC18F452 microcontroller. In the next tutorial, I have discussed How to install MPLAB software in Windows and have also discussed How to Install MPLAB C18 Compiler.
There are a total of five ports in PIC18F452. Each port is 1 byte (8 bits) and so each port has 8 pins of microcontroller except the portE which has 3 pins. These ports are named as:
You can access any pin of any port. Ports' pins are assigned as 0,1,2,3,4,5,6,7 and 7 being the most significant bit and 0 the least so suppose I want to use PIN 3 of port B then I will write RB2. We will see it in more detail in the coding section and as it's just the hardware section I am not going into detail about this.
We have a total of four built-in timers in the PIC18F452. These timers are also used as counters. We can set them to count anything or to set delays etc. For example, we want to make a digital watch on LCD using PIC, in that case, we will use timers to count. Four timers used in PIC18F452 are:
PIC18F452 also supports serial interfacing using TX & RX pins. Suppose we are using any sensor and want to make a graph of its output on the PC, then we will attach the sensor to any of the input pins and then send its data to the computer using TX and RX pins. In PIC18F452:
We use the TX pin of the PIC when we want to transmit data from the PIC to the computer and RX when we want to receive data into the PIC.
These are some advanced-level functions that I will explain in the advanced section but interested readers can ask in comments or can contact me. However, sooner or later, I will post about all of them in detail.
In the last tutorial, we discussed Getting Started with Microcontrollers and how they work and now we are gonna have a look at Getting Started with PIC Microcontrollers. PIC microcontrollers, as I mentioned before, are manufactured by Microchip. There are many types of microcontrollers but here I am concerned with PIC18F452.So let's have a small review of PIC18F452 PIC microcontrollers.
PIC18F452 is a 40-pin microcontroller each pin has its functionality, which we will see in our next classes one by one. suppose I want to create a project on LED blinking, a simple project on PIC so what do I have to do? First of all, I need the following things so that I may use them to work with PIC. I have discussed the Functions available in the PIC18F452 Microcontroller in the next post.
NOTE: We will learn the Assembly & C language in our next classes. This software has already been sent to all the registered users. If you need it, then Subscribe to our Email Notification and this will be forwarded to you. Thanks.
Now remove your PIC microcontrollers from the Programmer and add them to the hardware circuit and you will check that your PIC will give you the same results as you have programmed in it. In this tutorial, we have just taken an overview of PIC Microcontrollers. Next, we will check its Ports and the purpose of these ports. Till then take care ALLAH HAFIZ .... :))