This page is devoted to all the other stuff that did not make it to the main pages. I'll keep adding content here as time permits. This page is a collection of software programs, fun matlab scripts and many of my hobbies right from early adulthood.
1) Line Follower Robot
- I along with my fellow classmates in our undergrad junior year built this line follower robot. It used photo-diodes/IR LEDs to sense black and white lines and an on-board PIC 18f2550 micro-controller to control the motors based on programmed logic.
- In this particular event held at National Institute of Technology (NIT) Trichy, India in 2009 (as seen in the video below), the objective was to traverse the entire track and display the number corresponding to the largest loop. The team that did this the fastest were crowned the winners. We did perform pretty well and managed to finish third place.
- Click below to watch the YouTube video.
2) Importing data from online:
- My undergrad university was affiliated to nearly hundreds of engineering colleges. At the end of each semester, all students used to be able to view our examination results online. The administrative staff in our college had to manually view the result of each student and enter it in an excel database. That is when I realized that the exam result for any student can be viewed online by just manipulating the URL. And also, I found out a way to determine the registration number of a student based on college code, department code and roll number (fairly easy as roll numbers are alphabetically ordered). Based on these, I came up with a one-page code (string handling with regular expression) that was able to import the exam result of a single student if the URL format and the roll number were known. Using this, one can loop over roll numbers to acquire the results of an entire class (and thereby minimizing the effort of the administrative staff to nearly seconds).
- Matlab code (URL and roll numbers are left blank for privacy reasons. My friends in India might find this very useful)
3) Expense optimization:
- There is bill monk, buxfer and numerous expenses management websites and software out there to manage expenses among roommates. However, I wanted to build one very simple-to-use excel based (Google docs) solution that everybody can use in their computers and mobiles. A sample excel sheet is attached that roommates can edit to enter their expenses.
- Sample Excel Google Spreadsheet
- After the expenses are entered, the excel sheet tells each person exactly how much he/she has to pay or get paid (but not from whom). The next step is find out optimally who has to pay whom so that the number of transactions is minimized. I formed an optimization problem to figure out the optimal number of transactions using a matlab script. The script could also communicate with google docs to figure out the names of the roommates and the amounts of money they pay/get paid. Finally, the script writes the transactions at the end of the google spreadsheet. This can be used at the end of each month to find out who pays whom.
- Matlab code (and excel spreadsheet after the program runs).
- All supporting functions required to communicate with google docs are found here.
4) Pi not equal to 4..!
- I was casually browsing online and one day I stumbled upon this picture. It made me go mad. There were lot of friends on Facebook claiming that 'pi' was in fact four..! I did not know what to do. I am no mathematician and hence was not able to convince them with elegant math.
- I hence set out to prove this via code in Matlab. To do this, I took a quarter circle and drew two lines so that the length of the lines equaled one (multiply this by four and you get the result on the left). I wrote a simple Matlab code that remove corners and calculates the length. No matter how many corners are removed, the length of the lines will always be one. This obvious fact is hidden when the number of corners are so high that one has to zoom into the circle to calculate the exact length.
- Matlab code ('par' variable controls the number of partitions).
- In the pictures shown below, the number of corners are increased (from left to right).
5) iTunes Music Folder Organizer:
- Work in progress. I have always wanted to edit the inappropriate mp3 tags of my songs. In the process of writing a matlab script that can do this for me based on my preferences.