MRMS
|
Public Member Functions | |
Mrm_ref_can (Robot *robot=NULL, uint8_t maxNumberOfBoards=4) | |
void | add (char *deviceName=(char *)"") |
bool | any (bool dark=true, uint8_t deviceNumber=0, uint8_t fistTransistor=0, uint8_t lastTransistor=0xFF) |
void | calibrate (uint8_t deviceNumber=0xFF) |
uint16_t | calibrationDataGet (uint8_t receiverNumberInSensor, bool isDark, uint8_t deviceNumber=0) |
void | calibrationPrint () |
void | calibrationDataRequest (uint8_t deviceNumber=0, bool waitForResult=false) |
uint16_t | center (uint8_t deviceNumber=0, bool ofDark=true) |
bool | dark (uint8_t receiverNumberInSensor, uint8_t deviceNumber=0, bool fromAnalog=false) |
bool | messageDecode (uint32_t canId, uint8_t data[8]) |
uint16_t | reading (uint8_t receiverNumberInSensor, uint8_t deviceNumber=0) |
void | readingsPrint () |
void | test (bool analog) |
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 |
maxNumberOfBoards | - maximum number of boards |
void Mrm_ref_can::add | ( | char * | deviceName = (char*)"" | ) |
Add a mrm-ref-can sensor
deviceName | - device's name |
bool Mrm_ref_can::any | ( | bool | dark = true , |
uint8_t | deviceNumber = 0 , |
||
uint8_t | fistTransistor = 0 , |
||
uint8_t | lastTransistor = 0xFF |
||
) |
Any dark or bright
dark | - any dark? Otherwise, any bright? |
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
firstTransistor | - start checking from this transistor |
lastTransistor | - do not check after this one |
void Mrm_ref_can::calibrate | ( | uint8_t | deviceNumber = 0xFF | ) |
Calibrate the array
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - calibrate all sensors. |
uint16_t Mrm_ref_can::calibrationDataGet | ( | uint8_t | receiverNumberInSensor, |
bool | isDark, | ||
uint8_t | deviceNumber = 0 |
||
) |
Get local calibration data
receiverNumberInSensor | - single IR transistor in mrm-ref-can |
isDark | - if true calibration for dark, otherwise for bright |
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. |
void Mrm_ref_can::calibrationDataRequest | ( | uint8_t | deviceNumber = 0 , |
bool | waitForResult = false |
||
) |
Request sensor to send calibration data
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - calibrate all sensors. |
waitForResult | - Blocks program flow till results return. |
Request sensor to send calibration data
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - all sensors. |
waitForResult | - Blocks program flow till results return. |
void Mrm_ref_can::calibrationPrint | ( | ) |
Print all calibration data in a line
Print all calibration in a line
Center of measurements, like center of the line
deviceNumber | - Device's ordinal number. Each call of function add() assigns a increasing number to the device, starting with 0. 0xFF - calibrate all sensors. |
ofDark | - center of dark. Otherwise center of bright. |
bool Mrm_ref_can::dark | ( | uint8_t | receiverNumberInSensor, |
uint8_t | deviceNumber = 0 , |
||
bool | fromAnalog = false |
||
) |
Dark?
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. |
fromAnalog | - from analog local values. If not, sensor-supplied center data. |
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. |
void Mrm_ref_can::readingsPrint | ( | ) |
Print all readings in a line
Print all analog readings in a line
void Mrm_ref_can::test | ( | bool | analog | ) |
Test
analog | - if true, analog values - if not, digital values. |