This blog has been shifted to http://www.sahil.cc (http://www.sahil.cc/categories/pcbo/)

Final report and files


Here is the final project :



Our work was over on 9th June but the professor made us stay..

So... At last I announce that OUR PROJECT IS COMPLETE!!!!!!

Here's the screenshot :

Surging Ahead!


Today we combined the front end design of the oscilloscope with the plotting program. We also integrated the slider and the volt/div controls. We also took 10^6 readings of an input waveform with varying frequency and voltages.

Our report is expected to be only around 12 pages, so that made our job a lot easier.

Finalizing the Panel


Today we improved the design and almost finalized it. We replaced the checkboxes and radio buttons with push-buttons.

Now all that remained was to bring all the code together!

Meeting the Professor


Today we met the professor and decided to talk about the RAM and our leaving date. He was under the impression that we were final year students. That was why he had given us the RDS assignment. We corrected him immediately.

We discussed Op-amp networks and Schmitt triggers for almost an hour. He told us the pitiful state of education in engineering, the marks-oriented study condition, about how the teachers also were not so up-to-date.

We talked to him about the RAM on his unused PC and he consented. However, we found out that it was only 64MB and it would not help us in any way. We decided to run a part of our project on Nitin's laptop as the RAM was totally insufficient.

We improved the slider in the panel.

Sahil and Nitin watched Desperate Housewives till very late in the night.

Designing the Panel


We woke up early today. We added sliders for providing vertical and horizontal motion of the graph. We also added radio buttons for the time/div and volt/div options. We also provided checkboxes for Pause, Trigger and Vector Mode.

We took a half day today. Mr. Pandit also had to leave as he had to correct a mistake in the paper he had been setting. He had to set a paper on AIC (Analog Integrated Circuits) and had by mistake he set a paper on ADIC (Analog and Digital Integrated Circuits).

Today Saurabh and Nikhil came to visit us. We went to see X-men 3 in the nearby multiplex. It was a good movie. Came back and watched The Exorcism of Emily Rose and had a debate over the horror movie. Slept late as usual. We also met Sandeep Sahare in the night.

Started Report


Today we started writing the project report. We started putting whatever we could find relevent in a document and planned to trim it off later. We planned the size of the report to about 35 pages.

We also discussed the front end of the applet.

Today Tushar came in the evening and Nitin spent the evening with him.

Going Ahead


Today was a big day. We achieved direct plotting of data from the MySQL database to the applet at a rate of about 4000 samples/s.

We calculated the frequency of the wave. As there was a mismatch in the speeds of Java and C, the displayed frequency was not correct but the code was working.

We also started designing the front of the oscilloscope.

Hemant visited us today.

Plan B


Today we went back to work. Mr. Pandit had told the professor that we had gone to Lamington Road to look for RAM in the torrential rain. We suggested a solution for solving the RDS network solver he had asked us.

We were facing problems in implementing the queues and they also were inefficient, so we decided to implement direct streaming of data from the database.



Today we did nothing. We were fed up, it was raining like hell and we were all aleepy. We got up in the evening. We watched Being Cyrus and Kung fu Hustle in the night. Both were too good.

Planning Ahead


Today we formed an idea about how to proceed in the project. We planned on using queues as internal buffers for plotting the data. We also decided on running two threads in Java. One thread would handle the queue and the other would take care of plotting the values.

We also used the drawLine() function in Java for joining the points to make the graph look continuous. We studied threads more.

We realised that the 256MB RAM wasn't sufficient for our projec. We watched Fanaa in the night.



Now we had a major task in hand, to query MySQL from the applet through the servlet. This took us the whole day to work out. We also read about threads and how to manipulate them.

Report Presentation


We had to give a presentation on our project to Prof. T. S. Rathore, about what we had achieved and what we planned to achieve further in our project. He saw everyone's presentations and didn't comment much on our presentation.

We also played with the C code introducing a sleep to reduce the processor load. The code took about 20s instead of the usual 10s. The reason for today's small blog is we spent yesterday night watching Aladdin and Swordfish.

Playing Around


We realised the transfer of data through php and JavaScript made the process of plotting too slow, giving a plotting rate of only 1 frame/s. We had to take a different path, so we decided to use a Java Servlet. The applet was allowed to interact with the servlet through the sandbox. The servlet interacted with the MySQL databse. The implication of this was that we could achieve frame rates of upto 20 frames/s as the Tomcat server was fast. We decided this today and made a Java applet accept a string variable parameter from the servlet.

A Glimpse of what's about to come...


These are just some of the initial images ;) ...

Project going fast ahead!!


For the first time we saw values change in the monitor with us changing a knob in our hands!!! (instantaneously)
We plotted the graph of the actual and observed readings.. IT WAS BEAUTIFUL!!! Here is the attached pdf file for download.

We made a prog for querying C with MySQL and integrated it with PARAPIN.

Mr. Pandit told us to ponder more on the diode circuit problem he gave us.

I decided..
The following approaches are available for giving the data to the JAVA-APPLET:
  1. To digitally sign the java applet to allow it make connections to other hosts.
  2. To use the tomcat server to make the MySql queries for the applet and ask the applet to connect to tomcat server on port no 80. (The applet is allowed to make connection only to port it was called from.)
  3. The 3rd approach.. (My original approach :)
    To use AJAX to update the data on the client!!
    The APPLET tag on the webpage has a parameter named PARAM.
    My theory is -
    • As the PARAM tag is on the html webpage.. JavaScript will have full access to it.
    • JavaScript has full access to make network connections.
    • The JavaScript can make AJAX requests to the web server and update the PARAM tag.
    • I will make the JavaScript call for a PHP page which will in turn query the MySql Data.

About me

  • I'm Sahil Ahuja
  • From Trichy, Tamil Nadu, India
  • My profile

Last posts



ATOM 0.3