FSRforCookieJar

Fork of FSR by Chenkai Shao

Committer:
lalexander37
Date:
Tue May 01 15:59:08 2018 +0000
Revision:
6:78279e66b1a0
Parent:
2:3a5f5cc5b35c
WhoStoletheCookie ECE 4018 Final Project

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cshao06 0:d24a38523990 1 #include "FSR.h"
cshao06 0:d24a38523990 2 #include "mbed.h"
cshao06 0:d24a38523990 3
cshao06 0:d24a38523990 4 FSR::FSR(PinName pin, float resistance) : _ain(pin), _r(resistance)
cshao06 0:d24a38523990 5 {
cshao06 0:d24a38523990 6 }
cshao06 0:d24a38523990 7
cshao06 0:d24a38523990 8 float FSR::readRaw()
cshao06 0:d24a38523990 9 {
cshao06 0:d24a38523990 10 float read = _ain;
cshao06 0:d24a38523990 11 return read;
cshao06 0:d24a38523990 12 }
cshao06 0:d24a38523990 13
cshao06 0:d24a38523990 14 float FSR::readFSRResistance()
cshao06 0:d24a38523990 15 {
cshao06 0:d24a38523990 16 float read = _ain;
cshao06 1:6b702226a5d3 17 return _r * 1 / read - _r;
cshao06 0:d24a38523990 18 }
cshao06 0:d24a38523990 19
cshao06 0:d24a38523990 20 float FSR::readWeight()
cshao06 0:d24a38523990 21 {
cshao06 0:d24a38523990 22 float read = _ain;
cshao06 2:3a5f5cc5b35c 23 float rfsr = _r * 1 / read - _r;
cshao06 0:d24a38523990 24 float slope = (4 - 2) / (log10(6.2) - log10(0.25));
cshao06 0:d24a38523990 25 float a = log10(rfsr);
lalexander37 6:78279e66b1a0 26 return pow(10, ((log10(6.2) - a) * slope + 2));
lalexander37 6:78279e66b1a0 27
lalexander37 6:78279e66b1a0 28 //if (a < log10(6.2))
lalexander37 6:78279e66b1a0 29 // {
lalexander37 6:78279e66b1a0 30 // return pow(10, ((log10(6.2) - a) * slope + 2));
lalexander37 6:78279e66b1a0 31 // }
lalexander37 6:78279e66b1a0 32 // else
lalexander37 6:78279e66b1a0 33 // {
lalexander37 6:78279e66b1a0 34 // return 0;
lalexander37 6:78279e66b1a0 35 // }
cshao06 0:d24a38523990 36 }