The purpose of this lab was to learn about data aquisition and a problem that comes with it, aliasing. I started out by forking the files, from PhD. Koch’s github page. Then I tested the USB board using instacal. I created two VIs after learning that the first VI was subject to aliasing at high frequencies. I followed PhD. Koch’s example of a second VI which would be able to aquire data at higher frequencies than the first without aliasing.
So what is aliasing?
Aliasing, in this context, is an effect of high frequency data aquisition. The frequency of the data is too high that it takes on the form of another wave.
Here are some links that explain it more generally:
A nice Wikipedia overview: http://en.wikipedia.org/wiki/Aliasing
A small conversation on the problem we incountered in the lab on the National Instruments website: http://forums.ni.com/t5/Data-Acquisition-Idea-Exchange/Anti-Aliasing-Filters-for-USB-DAQ-Devices/idi-p/1796526
Creating the Code
VI 1: The main characteriztics of this VI are the while loop and the Aln function. It graphed the data aquisition, but had problems with aliasing when it got to higher frequencies, ~7Hz. After I created mine by following PhD. Koch’s example, I pushed and committed screenshots of the frontpanel and the block diagram of this VI .
VI 2: This VI is the new and improved one which is able to read a wave a little over 500Hz.
Problems and Solutions
1. Testing the board using instacal. My experience with electronics in the lab context is nonexistent, so testing the board was somewhat confusing to me. However, it’s pretty simple. Anthony and Ph.D. Koch helped me out by explaining that I had to plug in the board to the local machine, and connect wires into the right terminals.
2. Problems with changing the frequency. To increment the frequency you press the square buttons onthe wave generator which increments the frequency from 1Hz to 10Hz to 1kHz and so on. Simple, but all new to me.
3. Finding functions on LabVIEW proved to be difficult at times but I am getting more familiar with the location of different function categories.
-Basics of forking: Press fork button on github. In gitbash use:
- cd thedirectoryyouwanttobein : Just in case you’re in the wrong directory, this is how you change directories.
- git clone copyandpasteyourdirectorylink: Clones your github directory and voila! The forked files are on your local machine
-Commiting revisited : Although I listed the basic commands in the pushing process in order of opperation in Lab II, I did learn something extra this time. When you enter the git commit command without adding the -m ‘whatever comment you put here’ you enter the world of the text editor. If you don’t want to be in the text editor this is how you exit:
1. i: inserts text
2. esc: exits insert mode of the text editor
3. shift zz: exits text editor
– Aln function: reads the A/D channel from the USB board.
– Indicators, controls and constants: instead of creating either of these separately, you can just right click on the output/input of a function and choose from either one of these.
PhD. Koch and Anthony helped me with the solutions to the three problems as well as explained and re-explained some coding stuff in gitbash and labview. They also introduced us to the problem of aliasing with a brief discussion about it.