|
MRMS
|
Public Member Functions | |
| Mrm_lid_can_b2 (Robot *robot=NULL, uint8_t maxDevices=12) | |
| void | add (char *deviceName=(char *)"") |
| void | calibration (uint8_t deviceNumber=0) |
| void | defaults (uint8_t deviceNumber=0xFF) |
| void | distanceMode (uint8_t deviceNumber, bool isShort=true) |
| void | measurementTime (uint8_t deviceNumber, uint16_t ms=100) |
| bool | messageDecode (uint32_t canId, uint8_t data[8]) |
| uint16_t | reading (uint8_t deviceNumber=0) |
| void | readingsPrint () |
| void | roi (uint8_t deviceNumber, uint8_t x=16, uint8_t y=16) |
| void | test () |
| void | timingBudget (uint8_t deviceNumber, uint16_t ms=100) |
Public Member Functions inherited from SensorBoard | |
| SensorBoard (Robot *robot, uint8_t devicesOnABoard, const char *boardName, uint8_t maxNumberOfBoards, BoardId id) | |
| void | continuousReadingCalculatedDataStart (uint8_t deviceNumber=0xFF) |
Public Member Functions inherited from Board | |
| Board (Robot *robot, uint8_t maxNumberOfBoards, uint8_t devicesOnABoard, const char *boardName, BoardType boardType, BoardId id) | |
| void | add (char *deviceName, uint16_t canIn, uint16_t canOut) |
| bool | alive (uint8_t deviceNumber=0, bool checkAgainIfDead=false, bool errorIfNotAfterCheckingAgain=false) |
| uint8_t | count () |
| void | aliveSet (bool yesOrNo, uint8_t deviceNumber=0) |
| BoardType | boardType () |
| uint8_t | deadOrAliveCount () |
| uint8_t | devicesOnASingleBoard () |
| uint8_t | devicesMaximumNumberInAllBoards () |
| uint8_t | devicesScan (bool verbose=true, uint16_t mask=0xFFFF) |
| uint8_t | errorCodeLast () |
| uint8_t | errorWasInDeviceNumber () |
| void | firmwareRequest (uint8_t deviceNumber=0xFF) |
| uint16_t | fps (uint8_t deviceNumber=0) |
| void | fpsDisplay () |
| void | fpsRequest (uint8_t deviceNumber=0xFF) |
| BoardId | id () |
| void | idChange (uint16_t newDeviceNumber, uint8_t deviceNumber=0) |
| void | info (uint8_t deviceNumber=0xFF) |
| bool | isForMe (uint32_t canIdOut, uint8_t deviceNumber) |
| bool | isFromMe (uint32_t canIdOut, uint8_t deviceNumber) |
| uint32_t | lastMessageMs (uint8_t deviceNumber=0) |
| bool | messagePrint (uint32_t msgId, uint8_t dlc, uint8_t *data, bool outbound) |
| ** Prints a frame More... | |
| void | messageSend (uint8_t *data, uint8_t dlc, uint8_t deviceNumber=0) |
| char * | name (uint8_t deviceNumber) |
| char * | name () |
| void | notificationRequest (uint8_t commandRequestingNotification, uint8_t deviceNumber) |
| void | oscillatorTest (uint8_t deviceNumber=0xFF) |
| void | reset (uint8_t deviceNumber=0xFF) |
| void | start (uint8_t deviceNumber=0xFF, uint8_t measuringModeNow=0, uint16_t refreshMs=0) |
| void | swap (uint8_t deviceNumber1, uint8_t deviceNumber2) |
| void | stop (uint8_t deviceNumber=0xFF) |
| virtual void | test (uint8_t deviceNumber=0xFF, uint16_t betweenTestsMs=0) |
Additional Inherited Members | |
Protected Member Functions inherited from Board | |
| bool | messageDecodeCommon (uint32_t canId, uint8_t data[8], uint8_t deviceNumber=0) |
Protected Attributes inherited from Board | |
| uint32_t | _alive |
| bool | _aliveReport = false |
| char | _boardsName [12] |
| BoardType | _boardType |
| uint8_t | canData [8] |
| uint8_t | devicesOnABoard |
| uint8_t | errorCode = 0 |
| uint8_t | errorInDeviceNumber = 0 |
| std::vector< uint16_t > * | fpsLast |
| BoardId | _id |
| std::vector< uint32_t > * | idIn |
| std::vector< uint32_t > * | idOut |
| std::vector< uint32_t > * | lastMessageReceivedMs |
| std::vector< uint32_t > * | _lastReadingMs |
| uint8_t | maximumNumberOfBoards |
| uint8_t | measuringMode = 0 |
| uint8_t | measuringModeLimit = 0 |
| uint8_t | _message [29] |
| std::vector< char[10]> * | _name |
| int | nextFree |
| Robot * | robotContainer |
Constructor
| robot | - robot containing this board |
| esp32CANBusSingleton | - a single instance of CAN Bus common library for all CAN Bus peripherals. |
| hardwareSerial | - Serial, Serial1, Serial2,... - an optional serial port, for example for Bluetooth communication |
Constructor
| robot | - robot containing this board |
| esp32CANBusSingleton | - a single instance of CAN Bus common library for all CAN Bus peripherals. |
| hardwareSerial | - Serial, Serial1, Serial2,... - an optional serial port, for example for Bluetooth communication |
| maxNumberOfBoards | - maximum number of boards |
| void Mrm_lid_can_b2::add | ( | char * | deviceName = (char*)"" | ) |
Add a mrm-ref-can sensor
| deviceName | - device's name |
Add a mrm-lid-can-b device
| deviceName | - device's name |
| void Mrm_lid_can_b2::calibration | ( | uint8_t | deviceNumber = 0 | ) |
Calibration, only once after production
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| void Mrm_lid_can_b2::defaults | ( | uint8_t | deviceNumber = 0xFF | ) |
Reset sensor's non-volatile memory to defaults (distance mode, timing budget, region of interest, and measurement time, but leaves CAN Bus id intact
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - resets all. |
| void Mrm_lid_can_b2::distanceMode | ( | uint8_t | deviceNumber, |
| bool | isShort = true |
||
| ) |
Distance mode. Short mode has better ambient light immunity but the maximum distance is limited to 1.3 m. Long distance ranges up to 4 m but is less performant under ambient light. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| isShort | - if not short, long. |
Measurement time (IMP) in ms. IMP must be >= TB. Probably the best value is IMP = TB. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| ms | - default 100. |
Read CAN Bus message into local variables
| canId | - CAN Bus id |
| data | - 8 bytes from CAN Bus message. |
Read CAN Bus message into local variables
| canId | - CAN Bus id |
| data | - 8 bytes from CAN Bus message. |
Reimplemented from SensorBoard.
Analog readings
| receiverNumberInSensor | - single IR transistor in mrm-ref-can |
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
Analog readings
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| void Mrm_lid_can_b2::readingsPrint | ( | ) |
Print all readings in a line
ROI, region of interest, a matrix from 4x4 up to 16x16 (x, y). Smaller x and y - smaller view angle. Stored in sensors non-volatile memory. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| x | - default 16. |
| y | - default 16. |
| void Mrm_lid_can_b2::test | ( | ) |
Test
Timing budget (TB) in ms. TB improves the measurement reliability but increases power consumption. Stored in sensors non-volatile memory. Set before measurement time as measurement time checks this value and returns error if not appropriate. Allow 50 ms for flash to be written.
| deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
| ms | - (TB) in ms possible values [20, 50, 100, 200, 500]. Default 100. |