library for omnidirectional planar positioning system
Dependents: measuring_wheel 2018NHK_gakugaku_robo 2018NHK_gaku_ver2
OmniPosition.h@2:edd33d3ad0fd, 2018-07-01 (annotated)
- Committer:
- takeuchi
- Date:
- Sun Jul 01 16:39:13 2018 +0900
- Revision:
- 2:edd33d3ad0fd
- Parent:
- 1:0229fc98a26f
- Child:
- 3:47676abdf529
working
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
UCHITAKE | 0:58910ef3f2b0 | 1 | #ifndef OMNI_POSITION_H |
UCHITAKE | 0:58910ef3f2b0 | 2 | #define OMNI_POSITION_H |
UCHITAKE | 0:58910ef3f2b0 | 3 | |
UCHITAKE | 0:58910ef3f2b0 | 4 | #include "mbed.h" |
UCHITAKE | 0:58910ef3f2b0 | 5 | #include "CycleInt.h" |
UCHITAKE | 0:58910ef3f2b0 | 6 | |
takeuchi |
2:edd33d3ad0fd | 7 | #define SERIAL_BUFFER_SIZE 6 |
takeuchi |
2:edd33d3ad0fd | 8 | #define HEADER_FIRST_BYTE 72 |
takeuchi |
2:edd33d3ad0fd | 9 | #define HEADER_SECOND_BYTE 42 |
takeuchi |
2:edd33d3ad0fd | 10 | #define RECEIVE_FREQ 0.005 |
takeuchi |
2:edd33d3ad0fd | 11 | #define SEND_FREQ 0.1 |
takeuchi |
1:0229fc98a26f | 12 | #define DEFAULT_BAUD 115200 |
takeuchi |
1:0229fc98a26f | 13 | |
takeuchi |
1:0229fc98a26f | 14 | class OmniPosition : public RawSerial { |
UCHITAKE | 0:58910ef3f2b0 | 15 | public : |
takeuchi |
1:0229fc98a26f | 16 | OmniPosition(PinName serialTX, PinName serialRX); |
takeuchi |
2:edd33d3ad0fd | 17 | |
takeuchi |
2:edd33d3ad0fd | 18 | int getX(); |
takeuchi |
2:edd33d3ad0fd | 19 | int getY(); |
takeuchi |
2:edd33d3ad0fd | 20 | |
takeuchi |
2:edd33d3ad0fd | 21 | void reset(); |
takeuchi |
2:edd33d3ad0fd | 22 | |
UCHITAKE | 0:58910ef3f2b0 | 23 | private : |
takeuchi |
1:0229fc98a26f | 24 | void readData(); |
takeuchi |
1:0229fc98a26f | 25 | void assemble(); |
takeuchi |
2:edd33d3ad0fd | 26 | void send(); |
takeuchi |
1:0229fc98a26f | 27 | |
takeuchi |
1:0229fc98a26f | 28 | CycleInt readCounter; |
takeuchi |
1:0229fc98a26f | 29 | CycleInt takeCounter; |
takeuchi |
2:edd33d3ad0fd | 30 | Ticker assembleTicker; |
takeuchi |
2:edd33d3ad0fd | 31 | Ticker sendTicker; |
takeuchi |
2:edd33d3ad0fd | 32 | |
takeuchi |
2:edd33d3ad0fd | 33 | int X; |
takeuchi |
2:edd33d3ad0fd | 34 | int Y; |
takeuchi |
1:0229fc98a26f | 35 | |
takeuchi |
1:0229fc98a26f | 36 | char *buffer; |
takeuchi |
2:edd33d3ad0fd | 37 | char *data; |
takeuchi |
1:0229fc98a26f | 38 | |
takeuchi |
1:0229fc98a26f | 39 | bool headerCheck; |
takeuchi |
1:0229fc98a26f | 40 | int headerPoint; |
takeuchi |
2:edd33d3ad0fd | 41 | bool resetSend; |
UCHITAKE | 0:58910ef3f2b0 | 42 | }; |
UCHITAKE | 0:58910ef3f2b0 | 43 | |
takeuchi |
1:0229fc98a26f | 44 | #endif |