circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





 

July 2006, Issue 192

Precision Motion-Sensing System Analyzer
Philips ARM Design Contest 2005 Winner


by Steve Lubbers


Start Intro to Bull Riding Data Collection PC Interface Controls Data Upload External Trigger CPU User & Serial Interfaces Accelerometers Wireless Access Bucking Dummy Interface Software Acceleration Capture Foul System Test Data Analysis Findings The Buckymeter's Future Sources and PDF

DATA ANALYSIS

After you’ve recorded the motions of a bucking bull, what should you do with it? Data is stored as four 16-bit values of acceleration sampled 100 times per second. There are 14 significant bits in the stored data. Although a full 16 bits could be stored, the sample clock allows for 11 bits (1 ms per 15 MHz sample clock) and the two dropped bits show up under the noise level in the sensor.

To compensate for temperature and drift, the PWM value is divided by the envelope of the entire pulse. To avoid floating-point calculations, the PWM value is shifted by 14 bits before dividing by the envelope value. This yields a 0 g value of 8,192. The data analysis program can complete the remainder of the conversion. This initial division is performed to eliminate the need to store both T1 and T2. Use of both T1 and T2 would double the amount of storage required.

I measured static acceleration in order to obtain a baseline noise sample. The variation in readings is approximately 16 counts. Conversion yields 0.02 g of noise on the signal.

Data is transferred in ASCII format because it’s easy to view on a dumb terminal. It’s also easy to import ASCII data into Excel for analysis. Elementary programming changes can allow for a faster binary transfer. But with a target data set size of about 8 KB, data transfer time isn’t significant and the programming example is simpler to follow.