GSoC Weekly Report 4

This week ( From Monday 9th to Sunday, 15th June 2014) we really accelerated working with experiments and coding.

Constant encouragement and guidance from my mentors, Mario Behling and Dr. Ajith Kumar really helped me to keep going.

What We Could Do….

  • Attempted to use two Ultrasonic sensors simultaneously to detect position. Used two srf05 modules to plot graphs. Both the graphs were out of phase as expected. This is very much useful for momentum transfer  experiments involving collision. Uploaded the code to Github Repo.
  • Explored different methods of determining velocity and acceleration. Used the same set up of linear track in inclined position at about 45 degrees. Allowed vehicle to glide downwards and plotted position-time graph. Got straight line with positive slope as expected. For this used SRF05 module.
  • Then used photo-gate with ExpEYES kit and could make time measurements.
  • Designed a pickup device  for use with photogate. ( Thanks to Open Educational Resources on the web)
  • pickup for accelerationThis can generate a square wave as it passes through photogate. Acceleration can be determined  using the signal generated. Excited to see its working. Some proprietary closed source devices use this method……….( of course they come at a very high cost price). This will result in a very low cost setup
  • This is the photo gate used. (photo from
  • light-barrier



  • Modified the photo-gate design  so that it will be easy to use with linear air track set-up.
  • Today tried to measure acceleration due to gravity using motion of glider on an inclined plane. Used the pickup i designed yesterday and photo-gate to measure acceleration. The results are very good and are in close agreement with theoretical calculations. For motion on an incline acceleration along the inclined plane is g’ = g sin(theta) where (theta) is the angle on inclination. wrote a small python code using time measurement functions of ExpEYES library.
  • Used these time measurement functions:
      • p.multi_r2rtime(3)  # time for 1 cycle
      • p.multi_r2rtime(3,2)  #time for  4 cycles, 2 rising edges are skipped
  • Now we can do the acceleration due to gravity measurement with two different methods
    1. By using motion sensor …. the data is recorded with uniform time intervals.
    2. By using Photo-gates …… the time intervals are not uniform. time taken for traveling different distances can be measured and data can be used to calculate acceleration.
  • Worked on  plotting 2D graphs using ‘matplotlib’ library.  Matplotlib is a python 2D plotting library which produces publication quality figures in a variety of formats and interactive environments across platforms. I found it to be a very powerful tool for teaching and learning physics.  Wrote code for plotting different graphs useful for mechanics experiments. Here are some screen shots….

ucm and shmgraph2

  • Data ( time and position) obtained from Ultrasonic sensor is stored in a file srf.dat and then plotted. I just moved a piece of paper to and fro, in-front of the sensor. Plot is reasonably good.  In another trial fetched  data from the file and plotted….matplotlib is amazing … :)


  • Tried plotting Lissajous figures…..this code will be useful for my sound experiments……beautiful yet simple….its python… :)



Difficulties Faced
  • Numerical Differentiation for calculation in mechanics
  • Acceleration Graphs  are scattered and lack accuracy in measurement.
  • Calculation of acceleration using Photo-gate and pickup device

To Do Next Week

  • Coming week I will be focusing giving finishing touch to the individual  experiments….
  • Documentation with experimental procedure for the experiments developed
  • Taking Photos/Videos of set up and also upload screen shots.
  • Develop code to Access all the experiments through single GUI
  • Finalize the codes for individual experiments on Github
  • Prepare for mid-term evaluation


here is my git activity for this week