Escolar Documentos
Profissional Documentos
Cultura Documentos
Review and Analysis of the Design Project University of Tennessee, Fall 2013 Presented to Dr! A"idi and #$# %00 st&dents 'e(te)"er 1*, 2013
Topics
Summary of the project's development time line Pro!lems encountered and our solutions "#planation of the plotting soft$are% various approaches Technical analysis of sampling and data transmission Future $or& and conclusion
Topics
2 Technical 'onclusion
Three separate plotting methods ( )odified *ogan Stan&'s Plotting Soft$are + Discovery of latency pro!lem ( ,-. Plot / Perl / data pipe + -ot enough control ( 0t'ustomPlot + Stro!oscopic pro!lem
Topics
3 Technical 'onclusion
Topics
'onclusio % n
Advantages of *ogan's soft$are: ( Direct line dra$ing using 4pen'1 requires very little a!straction: this means it could possi!ly !e more efficient if it $ere developed more fully ( The plot $as easy to read
Topics
+ Technical 'onclusion
Topics
, Technical 'onclusion
Pros: ( )ore dynamic6 The plot $ould !e scaled each time a plot $as created% !ased on $hat the highest and lo$est samples $ere6 ( "#tremely simple implementation ( The data $as piped through stdout and used to spa$n a ,-.plot instance in real time
Topics
Technical 'onclusion
'ons: ( 1ery high latency due to the plotting of every point received ( Slightly less fle#i!ility ( -e$ instances of ,-.plot for every screen update is very ugly and inefficient ( 'orollary: not as dynamic as $e'd li&e
Time *ine
Topics
Pro!lems
Technical
'onclusion .
Topics
* Technical 'onclusion
0t 'ustomPlot Solution
Pros: ( 'ompletely 4S independent ( 'an run as a standalone e#ecuta!le% provided the shared li!raries are availa!le ( 1ery nice for plotting live data ( "#tensive documentation ( Po$erful li!raries ( ,ood community locally
10 Technical 'onclusion
Topics
0t'ustomPlot 1ie$
"ven !etter loo&ing than the ,-.plot solution7
Topics
Plotting
11 'onclusion
0t'ustomPlot 'ons
'ons: ( Plotting could !e very ta#ing to 'P.% depending on the frame si3e and refresh rate ( Slightly more overhead in terms of dependencies
Topics
12 Technical 'onclusion
0t'ustomPlot
4ther considerations: ( )ulti threaded handling of input from the server and output to the monitor6 Data is read in over .DP% and stored in a circular !uffer inside a thread6 The same data is read from the !uffer and plotted in another thread6 ( 'onfiguration data is stored inside of a te#t file and read at startup for convenience
Topics
13 Technical 'onclusion
Topics
1% Technical 'onclusion
Technical Analysis
)atla! $as used to analyse some of the data $e received6 We counted 9:; <= points per period $hich $ould yield a sampling rate of around 9>?&sps6 @o$ever% from a previous test% our average sample AB rate $as only CD6< &sps6 The difference !et$een the average rate and $hat $as sho$n in the picture could mean that there are samples that are not !eing sent !y the Arduino !oard6
Topics Time line Pro!lems 1+ Technical 'onclusion
Technical Analysis
After consulting $ith a DSP e#pert% it $as determined that samples are pro!a!ly !eing missed in the firm$are on the Arduino !oard6 Plausi!le e#planation: the fact that $e gather ?D samples one at a time then transmit them all at once over W5F56 While the transmission is !eing performed% ne$ samples are not !eing received6 Solution: Whenever a sample is generated !y the AD' generate an interrupt and immediately store the sample inside of a circular !uffer6 This $ill allo$ samples to !e gathered even during the middle of a transmission6 Topics Time line Pro!lems 1, Technical 'onclusion
Stop using the slow AnalogReadPin() function and instead generate an interrupt whenever a sample has been acquired and store that sample inside of a circular buffer. Once the circular buffer has been implemented, transmit samples from it instead of the current buffer. Increase SPI Bus Speeds on both the Arduino Board and the WIFI shield to increase data TX speed. Networking: remove man-in-middle (router) and perform an ad hoc connection to the client.
Topics
1Technical 'onclusion
Add a control panel that $ill allo$ users to input the sampling rate of the AD'% so that time can !e displayed on the hori3ontal a#is6 Add a control panel that $ill allo$ the user to adjust the hori3ontal and vertical scales of the plot and ho$ many points that are displayed at the same time6 Add a control panel that $ill allo$ the user to set a trigger voltage so that the plotting soft$are can trigger li&e a real scope6
Topics Time line Pro!lems 1. Technical 'onclusion
Fin.
1* Technical 'onclusion