Bayley Wang
/
foc-ed_in_the_bot_compact
robot
PositionSensor/PositionSensor.h@119:ad7a6af6fba3, 2017-04-25 (annotated)
- Committer:
- bwang
- Date:
- Tue Apr 25 04:49:46 2017 +0000
- Revision:
- 119:ad7a6af6fba3
- Parent:
- 28:ed9c1ca386fd
- Child:
- 120:57b6f3b1356b
running code, new phase (5.7614) working sensor calibration code, some new PositionSensor functions
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bwang | 15:b583cd30b063 | 1 | #ifndef __POSITIONSENSOR_H |
bwang | 15:b583cd30b063 | 2 | #define __POSITIONSENSOR_H |
bwang | 0:bac9c3a3a6ca | 3 | |
bwang | 0:bac9c3a3a6ca | 4 | class PositionSensor { |
bwang | 0:bac9c3a3a6ca | 5 | public: |
bwang | 0:bac9c3a3a6ca | 6 | virtual float GetMechPosition() {return 0.0f;} |
bwang | 0:bac9c3a3a6ca | 7 | virtual float GetElecPosition() {return 0.0f;} |
bwang | 119:ad7a6af6fba3 | 8 | virtual float GetUnlimitedElecPosition() {return 0.0f;} |
bwang | 28:ed9c1ca386fd | 9 | virtual bool IsValid() {return false;} |
bwang | 0:bac9c3a3a6ca | 10 | }; |
bwang | 0:bac9c3a3a6ca | 11 | |
bwang | 0:bac9c3a3a6ca | 12 | |
bwang | 0:bac9c3a3a6ca | 13 | class PositionSensorEncoder: public PositionSensor { |
bwang | 0:bac9c3a3a6ca | 14 | public: |
bwang | 9:074575151e4b | 15 | PositionSensorEncoder(int cpr, float offset); |
bwang | 0:bac9c3a3a6ca | 16 | virtual float GetMechPosition(); |
bwang | 0:bac9c3a3a6ca | 17 | virtual float GetElecPosition(); |
bwang | 119:ad7a6af6fba3 | 18 | virtual float GetUnlimitedElecPosition(); |
bwang | 28:ed9c1ca386fd | 19 | virtual bool IsValid(); |
bwang | 0:bac9c3a3a6ca | 20 | private: |
bwang | 0:bac9c3a3a6ca | 21 | InterruptIn *ZPulse; |
bwang | 0:bac9c3a3a6ca | 22 | DigitalIn *ZSense; |
bwang | 0:bac9c3a3a6ca | 23 | void ZeroEncoderCount(void); |
bwang | 119:ad7a6af6fba3 | 24 | private: |
bwang | 9:074575151e4b | 25 | int _cpr; |
bwang | 119:ad7a6af6fba3 | 26 | int _lobes; |
bwang | 119:ad7a6af6fba3 | 27 | float _offset; |
bwang | 119:ad7a6af6fba3 | 28 | |
bwang | 28:ed9c1ca386fd | 29 | bool _valid; |
bwang | 119:ad7a6af6fba3 | 30 | float _rotations; |
bwang | 0:bac9c3a3a6ca | 31 | }; |
bwang | 0:bac9c3a3a6ca | 32 | |
bwang | 0:bac9c3a3a6ca | 33 | #endif |