add Balance lib
This commit is contained in:
80
IOT/lib/Balance/include/Balance.h
Normal file
80
IOT/lib/Balance/include/Balance.h
Normal file
@ -0,0 +1,80 @@
|
||||
#ifndef BALANCE_H
|
||||
#define BALANCE_H
|
||||
#include <Arduino.h>
|
||||
#include <HX711.h>
|
||||
|
||||
class Balance {
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* @brief constructeur
|
||||
*
|
||||
* @param doutPin : pin DOUT du module HX711
|
||||
*
|
||||
* @param sckPin : pin horloge du module HX711
|
||||
*
|
||||
* @param poidsRef : valeur de poids posée sur la balance ref en grammes
|
||||
*/
|
||||
Balance(int doutPin, int sckPin);
|
||||
|
||||
/**
|
||||
* @brief determine le poids
|
||||
*
|
||||
* @return poids (double)
|
||||
*/
|
||||
double getValue();
|
||||
|
||||
/**
|
||||
* @brief determine la moyenne poids
|
||||
*
|
||||
* @param nbMesure : nombre de mesure effectues pour la moyenne
|
||||
*
|
||||
* @return moyenne poids (double)
|
||||
*/
|
||||
double getAverage(int nbMesure);
|
||||
|
||||
/**
|
||||
* @brief tare et scale a 0, et recuperation de la valeur brut du plateau
|
||||
*/
|
||||
boolean initCalibration();
|
||||
|
||||
/**
|
||||
* @brief initialisation du calibrage
|
||||
*
|
||||
* @param[in] poidsRef : poid de reférence pour la calibration
|
||||
* @param[in] moyenne_calibration : nombre de valeurs a lire pour une mesure
|
||||
*
|
||||
* @return renvoi un true si calibration bien effectue
|
||||
*/
|
||||
boolean calibration(int poidsRef,int moyenne_calibration);
|
||||
|
||||
//TODO: faire doc setCalibration fact
|
||||
void setCalibrationFact(int caliFact);
|
||||
|
||||
|
||||
private:
|
||||
|
||||
/**
|
||||
* @brief true = calibration et false = erreur
|
||||
*/
|
||||
boolean initialized;
|
||||
|
||||
/**
|
||||
* @brief Facteur de calibration obtenu par : (val brute poids ref - val brute poids plexiglas)/ poids ref
|
||||
*/
|
||||
int calibrationFact;
|
||||
|
||||
/**
|
||||
* @brief Variable issue de la librairie HX711 qui permet d'utiliser les fonctions de celle-ci
|
||||
*/
|
||||
HX711 scale;
|
||||
|
||||
/**
|
||||
* @brief Valeur moyenne brute du poids sans rien sur la balance juste le plexiglas
|
||||
*/
|
||||
long initialVal;
|
||||
|
||||
};
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user