Production version here : This project has been adapted for mass production, and has been packaged along with an SBC running the necessary software.
The software has over 70 different experiments, and includes a custom experiment designer.
What's this all about... And what is the problem you're trying to solve?
____Shortage of funds restrict teaching labs, and stifle creativity.
A ) Learning through experimentation offers a much clearer view of phenomena than merely trusting theory.
But, Setting up a well equipped teaching lab for science and electronics can turn out to be a very expensive affair.
Each student will require a minimum set of instruments comprising of multimeters, scopes, various sensors, and so on, in addition to the experiment specific hardware.
B ) These instruments must also be reasonably accurate for the results to tally with theoretical predictions such as the time constant of an oscillator, or the value of acceleration due to gravity.
C) A common, program based interface to access all the instruments associated with a particular experiment allows much greater flexibility and control. A primary requirement for this is that the instruments must all use well documented control inputs interface-able with a computer. Unfortunately, documented control interfaces are rare in the low-end market.
What is the solution being attempted ( Or, What are your goals for this project )?
____Solve all the above, and balance cost with performance!
This project can be called a base board with an essential set of carefully calibrated instruments with design focused on being able to support a variety of limited audience, niche instruments ( Think high resolution ADCs, DACs, Signal modulators , and wireless modules ) . Significant room for improvement has been left in the form of an expansion slot. Here's an example add-on board for a 24-bit ADC used for calibration.
A processor with a fairly powerful set of peripherals is complemented with a variety of analog and digital tools. The setup connects to a computer via USB, and acts as a slave device that measures or controls as per instructions sent by the user via Python programs or graphical apps.
An accurate, temperature compensated clock source is chosen as the reference for the digital instruments, and a low-drift voltage reference is chosen for maintaining the predictability of analog instruments. These two together ensure that readings stay consistent over a reasonable temperature range .
The device is then calibrated against professional instruments that rectify non-linear behaviour as well as offsets and slopes in order to squeeze out maximum performance.
___Choosing an interface
Python was chosen as the main interface language owing to the vast computational and visualization resources it has. These are essential for analysing acquired data and extracting physical parameters. It's also quite easy to learn, and since quite a few schools already teach it, we are but one step away from bridging the gap between software based learning, and experiment oriented methods.
*Additional interfaces: Standalone modes based on a plug-and-play display, as well as WiFi are part of the plan.
____What if you just can't write code, but are quite adept at designing experiments.
Several graphical interfaces with control and display widgets have already been designed. Check out the videos at the bottom of the page.
If you're open to trying a few simple lines of code, the console app features an embedded iPython console that autocompletes as well as displays documentation. It also has a ready to use graph that's accessible with a single function call.
As far as developing experiment specific apps is concerned, a few are ready, and a common framework has been developed in order to facilitate contributions by reducing code sizes.
____Is it damage proof?
Users will often make wrong connections, and the design must withstand...Read more »