Communicate with IAI Robotnet linear actuators
Dependents: IAILinearActuators
linact.hpp@0:de88dc2515d3, 2014-02-24 (annotated)
- Committer:
- henryeherman
- Date:
- Mon Feb 24 05:54:34 2014 +0000
- Revision:
- 0:de88dc2515d3
Initial commit of IAI code to mbed
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
henryeherman | 0:de88dc2515d3 | 1 | #ifndef LINACT_H |
henryeherman | 0:de88dc2515d3 | 2 | #define LINACT_H |
henryeherman | 0:de88dc2515d3 | 3 | |
henryeherman | 0:de88dc2515d3 | 4 | #include <linactregdefs.h> |
henryeherman | 0:de88dc2515d3 | 5 | #include <linactbuf.h> |
henryeherman | 0:de88dc2515d3 | 6 | #include <cstdio> |
henryeherman | 0:de88dc2515d3 | 7 | #include <cstring> |
henryeherman | 0:de88dc2515d3 | 8 | |
henryeherman | 0:de88dc2515d3 | 9 | |
henryeherman | 0:de88dc2515d3 | 10 | #if DBGLINACTBUF |
henryeherman | 0:de88dc2515d3 | 11 | #define LINACTDBG(x, ...) std::printf("[LinAct:DBG]"x"\r\n", ##__VA_ARGS__); |
henryeherman | 0:de88dc2515d3 | 12 | #define LINACTWARN(x, ...) std::printf("[LinAct:WARN]"x"\r\n", ##__VA_ARGS__); |
henryeherman | 0:de88dc2515d3 | 13 | #define LINACTERR(x, ...) std::printf("[LinAct:ERR]"x"\r\n", ##__VA_ARGS__); |
henryeherman | 0:de88dc2515d3 | 14 | #else |
henryeherman | 0:de88dc2515d3 | 15 | #define LINACTDBG(x, ...) |
henryeherman | 0:de88dc2515d3 | 16 | #define LINACTWARN(x, ...) |
henryeherman | 0:de88dc2515d3 | 17 | #define LINACTERR(x, ...) |
henryeherman | 0:de88dc2515d3 | 18 | #endif |
henryeherman | 0:de88dc2515d3 | 19 | |
henryeherman | 0:de88dc2515d3 | 20 | #define LINACTINFO(x, ...) std::printf("[LinAct:INFO]"x"\r\n", ##__VA_ARGS__); |
henryeherman | 0:de88dc2515d3 | 21 | |
henryeherman | 0:de88dc2515d3 | 22 | |
henryeherman | 0:de88dc2515d3 | 23 | |
henryeherman | 0:de88dc2515d3 | 24 | namespace IAI { |
henryeherman | 0:de88dc2515d3 | 25 | |
henryeherman | 0:de88dc2515d3 | 26 | const float NOTPOSMSGERR = -999999.0; |
henryeherman | 0:de88dc2515d3 | 27 | |
henryeherman | 0:de88dc2515d3 | 28 | class LinearActuator { |
henryeherman | 0:de88dc2515d3 | 29 | |
henryeherman | 0:de88dc2515d3 | 30 | public: |
henryeherman | 0:de88dc2515d3 | 31 | LinActBuf buffer; |
henryeherman | 0:de88dc2515d3 | 32 | LinearActuator(); |
henryeherman | 0:de88dc2515d3 | 33 | ~LinearActuator(); |
henryeherman | 0:de88dc2515d3 | 34 | unsigned short getAxisReadAddress(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 35 | unsigned short getAxisWriteAddress(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 36 | LinActBuf * getGwStatusStr(); |
henryeherman | 0:de88dc2515d3 | 37 | LinActBuf * getGwStartStr(); |
henryeherman | 0:de88dc2515d3 | 38 | LinActBuf * getAxisStatus(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 39 | LinActBuf * getAxisPos(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 40 | LinActBuf * getSetAxisPos(unsigned int axisid, |
henryeherman | 0:de88dc2515d3 | 41 | unsigned int position); |
henryeherman | 0:de88dc2515d3 | 42 | LinActBuf * getAxisStart(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 43 | LinActBuf * getAxisPause(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 44 | LinActBuf * getAxisReset(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 45 | LinActBuf * getAxisHome(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 46 | LinActBuf * getAxisOn(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 47 | LinActBuf * getAxisBrakeRelease(unsigned int axisid); |
henryeherman | 0:de88dc2515d3 | 48 | |
henryeherman | 0:de88dc2515d3 | 49 | |
henryeherman | 0:de88dc2515d3 | 50 | float getPosition(); |
henryeherman | 0:de88dc2515d3 | 51 | |
henryeherman | 0:de88dc2515d3 | 52 | LinActBuf * getBuffer(); |
henryeherman | 0:de88dc2515d3 | 53 | |
henryeherman | 0:de88dc2515d3 | 54 | void send(); |
henryeherman | 0:de88dc2515d3 | 55 | LinActBuf * receiveStdin(int len); |
henryeherman | 0:de88dc2515d3 | 56 | |
henryeherman | 0:de88dc2515d3 | 57 | LinActBuf * pushByteRxBuffer(char c); |
henryeherman | 0:de88dc2515d3 | 58 | |
henryeherman | 0:de88dc2515d3 | 59 | int checkChecksum(); |
henryeherman | 0:de88dc2515d3 | 60 | |
henryeherman | 0:de88dc2515d3 | 61 | }; |
henryeherman | 0:de88dc2515d3 | 62 | |
henryeherman | 0:de88dc2515d3 | 63 | } |
henryeherman | 0:de88dc2515d3 | 64 | |
henryeherman | 0:de88dc2515d3 | 65 | #endif /* LINACT_H */ |