![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
Classes et code de la partie pompe du Robot 2021
Dependencies: mbed ident_crac
Diff: bloc_monopompe.cpp
- Revision:
- 0:253443d82cba
- Child:
- 4:4bae30d48662
diff -r 000000000000 -r 253443d82cba bloc_monopompe.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/bloc_monopompe.cpp Fri Jan 15 07:36:28 2021 +0000 @@ -0,0 +1,54 @@ +#include "bloc_monopompe.h" + +bloc_monopompe::bloc_monopompe (PinName pompe, PinName electrovanne, PinName capteur) + : _pompe(pompe), _electrovanne(electrovanne), _capteur(capteur) +{ + _pompe.period_us(20) ; +} + +bool bloc_monopompe::aspirer (void) +{ + _pompe = PWM_POMPE ; + _electrovanne = ELEC_OUVERTE ; + wait_ms(100) ; + + if(_capteur.read() >= SEUIL_CPT) + { + _electrovanne = ELEC_FERME ; + wait_ms(100) ; + if(_capteur.read() >= SEUIL_CPT) + { + _pompe = 0 ; + _gobelet_en_place = 1 ; + } + else + { + _electrovanne = ELEC_OUVERTE ; + _gobelet_en_place = 0 ; + } + return _gobelet_en_place ; + } + +} + +bool bloc_monopompe::relacher (void) +{ + _electrovanne = ELEC_OUVERTE ; + wait_ms(100) ; + if(_capteur.read() >= SEUIL_CPT) + _gobelet_en_place = 1 ; + else + _gobelet_en_place = 0 ; + + return _gobelet_en_place ; +} + +bool bloc_monopompe::possession (void) +{ + if(_capteur.read() >= SEUIL_CPT) + _gobelet_en_place = 1 ; + else + _gobelet_en_place = 0 ; + + return _gobelet_en_place ; +} \ No newline at end of file