FSRforCookieJar
Fork of FSR by
FSR.cpp@6:78279e66b1a0, 2018-05-01 (annotated)
- 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?
User | Revision | Line number | New 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 | } |