#include <yocto_multicellweighscale.h>
Public Member Functions | |
virtual int | _invokeTimedReportCallback (YMeasure value) |
virtual int | _invokeValueCallback (string value) |
int | cellCount (void) |
string | command (void) |
double | compensation (void) |
double | compTempAdaptRatio (void) |
double | compTempAvg (void) |
double | compTempChg (void) |
Y_EXCITATION_enum | excitation (void) |
int | get_cellCount (void) |
string | get_command (void) |
double | get_compensation (void) |
double | get_compTempAdaptRatio (void) |
double | get_compTempAvg (void) |
double | get_compTempChg (void) |
Y_EXCITATION_enum | get_excitation (void) |
double | get_zeroTracking (void) |
YMultiCellWeighScale * | next (void) |
YMultiCellWeighScale * | nextMultiCellWeighScale (void) |
virtual int | registerTimedReportCallback (YMultiCellWeighScaleTimedReportCallback callback) |
virtual int | registerValueCallback (YMultiCellWeighScaleValueCallback callback) |
int | set_cellCount (int newval) |
int | set_command (const string &newval) |
int | set_compTempAdaptRatio (double newval) |
int | set_excitation (Y_EXCITATION_enum newval) |
int | set_unit (const string &newval) |
int | set_zeroTracking (double newval) |
int | setCellCount (int newval) |
int | setCommand (const string &newval) |
int | setCompTempAdaptRatio (double newval) |
int | setExcitation (Y_EXCITATION_enum newval) |
int | setUnit (const string &newval) |
virtual int | setupSpan (double currWeight, double maxWeight) |
int | setZeroTracking (double newval) |
virtual int | tare (void) |
double | zeroTracking (void) |
~YMultiCellWeighScale () | |
Public Member Functions inherited from YSensor | |
virtual double | _applyCalibration (double rawValue) |
virtual double | _decodeAvg (int dw) |
virtual YMeasure | _decodeTimedReport (double timestamp, vector< int > report) |
virtual double | _decodeVal (int w) |
virtual string | _encodeCalibrationPoints (vector< double > rawValues, vector< double > refValues) |
virtual int | _parserHelper (void) |
Y_ADVMODE_enum | advMode (void) |
virtual int | calibrateFromPoints (vector< double > rawValues, vector< double > refValues) |
string | calibrationParam (void) |
double | currentRawValue (void) |
double | currentValue (void) |
Y_ADVMODE_enum | get_advMode (void) |
string | get_calibrationParam (void) |
double | get_currentRawValue (void) |
double | get_currentValue (void) |
virtual YDataLogger * | get_dataLogger (void) |
double | get_highestValue (void) |
string | get_logFrequency (void) |
double | get_lowestValue (void) |
virtual YDataSet | get_recordedData (s64 startTime, s64 endTime) |
string | get_reportFrequency (void) |
double | get_resolution (void) |
int | get_sensorState (void) |
string | get_unit (void) |
double | highestValue (void) |
virtual bool | isSensorReady (void) |
virtual int | loadCalibrationPoints (vector< double > &rawValues, vector< double > &refValues) |
string | logFrequency (void) |
double | lowestValue (void) |
YSensor * | next (void) |
YSensor * | nextSensor (void) |
virtual int | registerTimedReportCallback (YSensorTimedReportCallback callback) |
virtual int | registerValueCallback (YSensorValueCallback callback) |
string | reportFrequency (void) |
double | resolution (void) |
int | sensorState (void) |
int | set_advMode (Y_ADVMODE_enum newval) |
int | set_calibrationParam (const string &newval) |
int | set_highestValue (double newval) |
int | set_logFrequency (const string &newval) |
int | set_lowestValue (double newval) |
int | set_reportFrequency (const string &newval) |
int | set_resolution (double newval) |
int | setAdvMode (Y_ADVMODE_enum newval) |
int | setCalibrationParam (const string &newval) |
int | setHighestValue (double newval) |
int | setLogFrequency (const string &newval) |
int | setLowestValue (double newval) |
int | setReportFrequency (const string &newval) |
int | setResolution (double newval) |
virtual int | startDataLogger (void) |
virtual int | stopDataLogger (void) |
string | unit (void) |
~YSensor () | |
Public Member Functions inherited from YFunction | |
void | _clearDataStreamCache () |
string | _decode_json_string (const string &json) |
string | _download (const string &url) |
YDataStream * | _findDataStream (YDataSet &dataset, const string &def) |
string | _get_json_path (const string &json, const string &path) |
vector< string > | _json_get_array (const string &json) |
string | _json_get_key (const string &json, const string &data) |
string | _json_get_string (const string &json) |
int | _parseEx (yJsonStateMachine &j) |
string | _parseString (yJsonStateMachine &j) |
string | _request (const string &request) |
string | _requestEx (int tcpchan, const string &request, yapiRequestProgressCallback callback, void *context) |
void | _throw (YRETCODE errType, string errMsg) |
YRETCODE | _upload (const string &path, const string &content) |
YRETCODE | _uploadWithProgress (const string &path, const string &content, yapiRequestProgressCallback callback, void *context) |
string | advertisedValue (void) |
void | clearCache () |
string | describe (void) |
string | errMessage (void) |
string | errorMessage (void) |
YRETCODE | errorType (void) |
YRETCODE | errType (void) |
YFUN_DESCR | functionDescriptor (void) |
string | get_advertisedValue (void) |
string | get_errorMessage (void) |
YRETCODE | get_errorType (void) |
virtual string | get_friendlyName (void) |
YFUN_DESCR | get_functionDescriptor (void) |
string | get_functionId (void) |
string | get_hardwareId (void) |
string | get_hubSerial () |
string | get_logicalName (void) |
YModule * | get_module (void) |
void * | get_userData (void) |
bool | isOnline (void) |
YRETCODE | load (int msValidity) |
virtual string | loadAttribute (string attrName) |
string | logicalName (void) |
YModule * | module (void) |
virtual int | muteValueCallbacks (void) |
YFunction * | next (void) |
YFunction * | nextFunction (void) |
virtual int | registerValueCallback (YFunctionValueCallback callback) |
int | set_advertisedValue (const string &newval) |
int | set_logicalName (const string &newval) |
void | set_userData (void *data) |
int | setAdvertisedValue (const string &newval) |
int | setLogicalName (const string &newval) |
void | setUserData (void *data) |
virtual int | unmuteValueCallbacks (void) |
void * | userData (void) |
virtual | ~YFunction () |
Static Public Member Functions | |
static YMultiCellWeighScale * | Find (string func) |
static YMultiCellWeighScale * | FindMultiCellWeighScale (string func) |
static YMultiCellWeighScale * | First (void) |
static YMultiCellWeighScale * | FirstMultiCellWeighScale (void) |
Static Public Member Functions inherited from YSensor | |
static YSensor * | Find (string func) |
static YSensor * | FindSensor (string func) |
static YSensor * | First (void) |
static YSensor * | FirstSensor (void) |
Static Public Member Functions inherited from YFunction | |
static void | _ClearCache (void) |
static YFunction * | Find (string func) |
static YFunction * | FindFunction (string func) |
static YFunction * | First (void) |
static YFunction * | FirstFunction (void) |
Protected Member Functions | |
virtual int | _parseAttr (YJSONObject *json_val) |
YMultiCellWeighScale (const string &func) | |
Protected Member Functions inherited from YSensor | |
YSensor (const string &func) | |
Protected Member Functions inherited from YFunction | |
YRETCODE | _buildSetRequest (const string &changeattr, const string *changeval, string &request, string &errmsg) |
string | _escapeAttr (const string &changeval) |
YRETCODE | _getDescriptor (YFUN_DESCR &fundescr, string &errMsg) |
YRETCODE | _getDevice (YDevice *&dev, string &errMsg) |
YRETCODE | _load_unsafe (int msValidity) |
YRETCODE | _nextFunction (string &hwId) |
int | _parse (YJSONObject *j) |
YRETCODE | _setAttr (string attrname, string newvalue) |
YFunction (const string &func) | |
Friends | |
YMultiCellWeighScale * | yFindMultiCellWeighScale (const string &func) |
YMultiCellWeighScale * | yFirstMultiCellWeighScale (void) |
Additional Inherited Members | |
Static Protected Member Functions inherited from YFunction | |
static void | _AddToCache (const string &classname, const string &func, YFunction *obj) |
static YFunction * | _FindFromCache (const string &classname, const string &func) |
static void | _UpdateTimedReportCallbackList (YFunction *func, bool add) |
static void | _UpdateValueCallbackList (YFunction *func, bool add) |
Static Protected Attributes inherited from YFunction | |
static std::map< string, YFunction * > | _cache |
YMultiCellWeighScale Class: MultiCellWeighScale function interface
The YMultiCellWeighScale class provides a weight measurement from a set of ratiometric load cells sensor. It can be used to control the bridge excitation parameters, in order to avoid measure shifts caused by temperature variation in the electronics, and can also automatically apply an additional correction factor based on temperature to compensate for offsets in the load cells themselves.
Definition at line 85 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 51 of file yocto_multicellweighscale.cpp.
YMultiCellWeighScale::~YMultiCellWeighScale | ( | ) |
Definition at line 68 of file yocto_multicellweighscale.cpp.
|
virtual |
Reimplemented from YSensor.
Definition at line 603 of file yocto_multicellweighscale.cpp.
|
virtual |
Reimplemented from YSensor.
Definition at line 569 of file yocto_multicellweighscale.cpp.
|
protectedvirtual |
Reimplemented from YSensor.
Definition at line 82 of file yocto_multicellweighscale.cpp.
|
inline |
Definition at line 154 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 294 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 262 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 225 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 237 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 250 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 180 of file yocto_multicellweighscale.h.
|
inlinestatic |
Definition at line 386 of file yocto_multicellweighscale.h.
|
static |
Retrieves a multi-cell weighing scale sensor for a given identifier. The identifier can be specified using several formats:
This function does not require that the multi-cell weighing scale sensor is online at the time it is invoked. The returned object is nevertheless valid. Use the method YMultiCellWeighScale.isOnline() to test if the multi-cell weighing scale sensor is indeed online at a given time. In case of ambiguity when looking for a multi-cell weighing scale sensor by logical name, no error is notified: the first instance found is returned. The search is performed first by hardware name, then by logical name.
If a call to this object's is_online() method returns FALSE although you are certain that the matching device is plugged, make sure that you did call registerHub() at application initialization time.
func | : a string that uniquely characterizes the multi-cell weighing scale sensor |
Definition at line 518 of file yocto_multicellweighscale.cpp.
|
inlinestatic |
Definition at line 410 of file yocto_multicellweighscale.h.
|
static |
Starts the enumeration of multi-cell weighing scale sensors currently accessible. Use the method YMultiCellWeighScale.nextMultiCellWeighScale() to iterate on next multi-cell weighing scale sensors.
Definition at line 652 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::get_cellCount | ( | void | ) |
Returns the number of load cells in use.
On failure, throws an exception or returns Y_CELLCOUNT_INVALID.
Definition at line 146 of file yocto_multicellweighscale.cpp.
string YMultiCellWeighScale::get_command | ( | void | ) |
Definition at line 453 of file yocto_multicellweighscale.cpp.
double YMultiCellWeighScale::get_compensation | ( | void | ) |
Returns the current current thermal compensation value.
On failure, throws an exception or returns Y_COMPENSATION_INVALID.
Definition at line 375 of file yocto_multicellweighscale.cpp.
double YMultiCellWeighScale::get_compTempAdaptRatio | ( | void | ) |
Returns the averaged temperature update rate, in percents. The averaged temperature is updated every 10 seconds, by applying this adaptation rate to the difference between the measures ambiant temperature and the current compensation temperature. The standard rate is 0.04 percents, and the maximal rate is 65 percents.
On failure, throws an exception or returns Y_COMPTEMPADAPTRATIO_INVALID.
Definition at line 287 of file yocto_multicellweighscale.cpp.
double YMultiCellWeighScale::get_compTempAvg | ( | void | ) |
Returns the current averaged temperature, used for thermal compensation.
On failure, throws an exception or returns Y_COMPTEMPAVG_INVALID.
Definition at line 316 of file yocto_multicellweighscale.cpp.
double YMultiCellWeighScale::get_compTempChg | ( | void | ) |
Returns the current temperature variation, used for thermal compensation.
On failure, throws an exception or returns Y_COMPTEMPCHG_INVALID.
Definition at line 346 of file yocto_multicellweighscale.cpp.
Y_EXCITATION_enum YMultiCellWeighScale::get_excitation | ( | void | ) |
Returns the current load cell bridge excitation method.
On failure, throws an exception or returns Y_EXCITATION_INVALID.
Definition at line 201 of file yocto_multicellweighscale.cpp.
double YMultiCellWeighScale::get_zeroTracking | ( | void | ) |
Returns the zero tracking threshold value. When this threshold is larger than zero, any measure under the threshold will automatically be ignored and the zero compensation will be updated.
On failure, throws an exception or returns Y_ZEROTRACKING_INVALID.
Definition at line 431 of file yocto_multicellweighscale.cpp.
|
inline |
Definition at line 397 of file yocto_multicellweighscale.h.
YMultiCellWeighScale * YMultiCellWeighScale::nextMultiCellWeighScale | ( | void | ) |
Continues the enumeration of multi-cell weighing scale sensors started using yFirstMultiCellWeighScale().
Definition at line 642 of file yocto_multicellweighscale.cpp.
|
virtual |
Registers the callback function that is invoked on every periodic timed notification. The callback is invoked only during the execution of ySleep or yHandleEvents. This provides control over the time when the callback is triggered. For good responsiveness, remember to call one of these two functions periodically. To unregister a callback, pass a NULL pointer as argument.
callback | : the callback function to call, or a NULL pointer. The callback function should take two arguments: the function object of which the value has changed, and an YMeasure object describing the new advertised value. |
Definition at line 590 of file yocto_multicellweighscale.cpp.
|
virtual |
Registers the callback function that is invoked on every change of advertised value. The callback is invoked only during the execution of ySleep or yHandleEvents. This provides control over the time when the callback is triggered. For good responsiveness, remember to call one of these two functions periodically. To unregister a callback, pass a NULL pointer as argument.
callback | : the callback function to call, or a NULL pointer. The callback function should take two arguments: the function object of which the value has changed, and the character string describing the new advertised value. |
Definition at line 550 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_cellCount | ( | int | newval | ) |
Changes the number of load cells in use.
newval | : an integer corresponding to the number of load cells in use |
On failure, throws an exception or returns a negative error code.
Definition at line 177 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_command | ( | const string & | newval | ) |
Definition at line 475 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_compTempAdaptRatio | ( | double | newval | ) |
Changes the averaged temperature update rate, in percents. The averaged temperature is updated every 10 seconds, by applying this adaptation rate to the difference between the measures ambiant temperature and the current compensation temperature. The standard rate is 0.04 percents, and the maximal rate is 65 percents.
newval | : a floating point number corresponding to the averaged temperature update rate, in percents |
On failure, throws an exception or returns a negative error code.
Definition at line 261 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_excitation | ( | Y_EXCITATION_enum | newval | ) |
Changes the current load cell bridge excitation method.
newval | : a value among Y_EXCITATION_OFF, Y_EXCITATION_DC and Y_EXCITATION_AC corresponding to the current load cell bridge excitation method |
On failure, throws an exception or returns a negative error code.
Definition at line 233 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_unit | ( | const string & | newval | ) |
Changes the measuring unit for the weight. Remember to call the saveToFlash() method of the module if the modification must be kept.
newval | : a string corresponding to the measuring unit for the weight |
On failure, throws an exception or returns a negative error code.
Definition at line 123 of file yocto_multicellweighscale.cpp.
int YMultiCellWeighScale::set_zeroTracking | ( | double | newval | ) |
Changes the compensation temperature update rate, in percents.
newval | : a floating point number corresponding to the compensation temperature update rate, in percents |
On failure, throws an exception or returns a negative error code.
Definition at line 406 of file yocto_multicellweighscale.cpp.
|
inline |
Definition at line 167 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 298 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 210 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 194 of file yocto_multicellweighscale.h.
|
inline |
Definition at line 142 of file yocto_multicellweighscale.h.
|
virtual |
Configures the load cells span parameters (stored in the corresponding genericSensors) so that the current signal corresponds to the specified reference weight.
currWeight | : reference weight presently on the load cell. |
maxWeight | : maximum weight to be expectect on the load cell. |
On failure, throws an exception or returns a negative error code.
Definition at line 637 of file yocto_multicellweighscale.cpp.
|
inline |
Definition at line 275 of file yocto_multicellweighscale.h.
|
virtual |
Adapts the load cells signal bias (stored in the corresponding genericSensor) so that the current signal corresponds to a zero weight.
On failure, throws an exception or returns a negative error code.
Definition at line 621 of file yocto_multicellweighscale.cpp.
|
inline |
Definition at line 289 of file yocto_multicellweighscale.h.
|
friend |
Retrieves a multi-cell weighing scale sensor for a given identifier. The identifier can be specified using several formats:
This function does not require that the multi-cell weighing scale sensor is online at the time it is invoked. The returned object is nevertheless valid. Use the method YMultiCellWeighScale.isOnline() to test if the multi-cell weighing scale sensor is indeed online at a given time. In case of ambiguity when looking for a multi-cell weighing scale sensor by logical name, no error is notified: the first instance found is returned. The search is performed first by hardware name, then by logical name.
If a call to this object's is_online() method returns FALSE although you are certain that the matching device is plugged, make sure that you did call registerHub() at application initialization time.
func | : a string that uniquely characterizes the multi-cell weighing scale sensor |
Definition at line 447 of file yocto_multicellweighscale.h.
|
friend |
Starts the enumeration of multi-cell weighing scale sensors currently accessible. Use the method YMultiCellWeighScale.nextMultiCellWeighScale() to iterate on next multi-cell weighing scale sensors.
Definition at line 458 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 93 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 100 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 98 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 95 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 96 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 97 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 94 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 102 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 101 of file yocto_multicellweighscale.h.
|
protected |
Definition at line 99 of file yocto_multicellweighscale.h.
|
static |
Definition at line 118 of file yocto_multicellweighscale.h.
|
static |
Definition at line 128 of file yocto_multicellweighscale.h.
|
static |
Definition at line 126 of file yocto_multicellweighscale.h.
|
static |
Definition at line 123 of file yocto_multicellweighscale.h.
|
static |
Definition at line 124 of file yocto_multicellweighscale.h.
|
static |
Definition at line 125 of file yocto_multicellweighscale.h.
|
static |
Definition at line 121 of file yocto_multicellweighscale.h.
|
static |
Definition at line 120 of file yocto_multicellweighscale.h.
|
static |
Definition at line 122 of file yocto_multicellweighscale.h.
|
static |
Definition at line 119 of file yocto_multicellweighscale.h.
|
static |
Definition at line 127 of file yocto_multicellweighscale.h.