Difference between revisions of "EGR 103/DAQ 1"
Jump to navigation
Jump to search
(23 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | This page contains pictures and graphs related to Data Acquisition Laboratory 1 (DAQ 1) of [[EGR 103]]. It has been updated for Fall | + | |
+ | == '''Note:''' For Fall 2019 and after, you will want the [[Python:DAQ_1]] page. == | ||
+ | <!-- | ||
+ | == Introduction == | ||
+ | This page contains pictures and graphs related to Data Acquisition Laboratory 1 (DAQ 1) of [[EGR 103]]. It has been updated for Spring, 2018. This page underwent a major revision in Fall of 2017 based on the DAQmx drivers and MATLAB's elimination of legacy toolbox codes. | ||
== Supporting Pundit Pages == | == Supporting Pundit Pages == | ||
*[[MATLAB:CB-68LP Pinout]] | *[[MATLAB:CB-68LP Pinout]] | ||
*[[Resistor Color Codes]] | *[[Resistor Color Codes]] | ||
+ | *[[Transferring_Files]] | ||
+ | |||
== Typographical Errors / Clarifications == | == Typographical Errors / Clarifications == | ||
− | + | * If the computer says your device is not found, try 'Dev2' instead of 'Dev1' in the | |
+ | addDigitalChannel(s,'Dev1','Port0/Line0:2','OutputOnly') | ||
+ | : line. | ||
+ | * Before running the program, the person at the DAQ machine will need to install the pydaqmx module: | ||
+ | ** Go to the Start button, find the Anaconda3 folder, and click the Anaconda prompt | ||
+ | ** In the Anaconda terminal that just opened, type | ||
+ | pip install pydaqmx | ||
+ | ** One it is done installing (or confirms that it is installed), close the Anaconda terminal | ||
== Equipment Used == | == Equipment Used == | ||
Line 41: | Line 54: | ||
[[Image:DAQ1LEDs.jpg|thumb|Several Light Emitting Diodes]] | [[Image:DAQ1LEDs.jpg|thumb|Several Light Emitting Diodes]] | ||
[[Image:DAQ1LEDsClose.jpg|thumb|Closeup of two round LEDs]] | [[Image:DAQ1LEDsClose.jpg|thumb|Closeup of two round LEDs]] | ||
− | [[File:LED, | + | [[File:LED,_5mm,_green_(en).svg|thumb|Drawing of LED from Wikipedia [http://en.wikipedia.org/wiki/Light-emitting_diode Light-emitting_diode] page]] |
A diode is an electrical element that generally only allows current to flow in one direction - and only after there is a sufficient voltage difference across the appropriate terminals. | A diode is an electrical element that generally only allows current to flow in one direction - and only after there is a sufficient voltage difference across the appropriate terminals. | ||
LEDs - Light Emitting Diodes - are a special form of diode that emit light when current flows through them. | LEDs - Light Emitting Diodes - are a special form of diode that emit light when current flows through them. | ||
Line 52: | Line 65: | ||
== Circuit Construction == | == Circuit Construction == | ||
+ | [[Image:DAQ1Circuit.jpg|thumb|Circuit built on breadboard]] | ||
+ | [[Image:DAQ1Wiring.jpg|thumb|Connections to CB-68LP]] | ||
The pictures at right show both the breadboard and the CB-68LP once everything has been properly connected. Note especially on the CB-68LP where the wires are - there will be no connections in the first two columns and there is only one connection - the black wire for digital ground - in the fifth column. | The pictures at right show both the breadboard and the CB-68LP once everything has been properly connected. Note especially on the CB-68LP where the wires are - there will be no connections in the first two columns and there is only one connection - the black wire for digital ground - in the fifth column. | ||
<br clear=all /> | <br clear=all /> | ||
== Code == | == Code == | ||
− | The following code listing is for <code> | + | The following code listing is for <code>ThreeBits.m</code> |
<source lang="matlab"> | <source lang="matlab"> | ||
− | % | + | % Clear out workspace |
− | clear | + | clear |
− | |||
− | |||
− | |||
− | % Create | + | % Create a session |
− | + | s = daq.createSession('ni') | |
− | % Add output lines to | + | % Add output lines to session |
− | + | addDigitalChannel(s,'Dev1','Port0/Line0:2','OutputOnly') | |
% Writing values to output lines using binary | % Writing values to output lines using binary | ||
− | + | outputSingleScan(s, [1 1 1]); | |
fprintf('Press return to continue\n'); | fprintf('Press return to continue\n'); | ||
pause | pause | ||
− | + | outputSingleScan(s, [0 0 0]); | |
% Writing values to output lines using base 10 | % Writing values to output lines using base 10 | ||
MyVal = 0 | MyVal = 0 | ||
while 0<=MyVal & MyVal<=7 | while 0<=MyVal & MyVal<=7 | ||
− | + | MyBinVal = decimalToBinaryVector(MyVal, 3, 'LSBFirst'); | |
− | fprintf('Displaying % | + | outputSingleScan(s, MyBinVal); |
− | MyVal, | + | fprintf('Displaying %d as %d %d %d\n', ... |
− | MyVal = floor(input('Enter a number between 0 and 7: ')); | + | MyVal, MyBinVal(end:-1:1)) |
+ | MyVal = floor(input('Enter a number between 0 and 7: ')); | ||
end | end | ||
% Turn all outputs off | % Turn all outputs off | ||
− | + | outputSingleScan(s, [0 0 0]); | |
</source> | </source> | ||
+ | |||
+ | == Other Resources == | ||
+ | * Landing Lights Animation: | ||
+ | [[File:LLGifSmall.gif]] | ||
== Questions == | == Questions == | ||
Line 100: | Line 117: | ||
[[Category:EGR 103]] | [[Category:EGR 103]] | ||
+ | --> |