Batteriemessung via AskSinPP / Externer Divider

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Antworten
J.C.
Beiträge: 15
Registriert: 13.08.2020, 19:11
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Batteriemessung via AskSinPP / Externer Divider

Beitrag von J.C. » 19.08.2020, 21:13

Guten Abend,

ich habe jetzt die Methodik der Batteriespannungsmessung via AskSin-Lib nachvollzogen und wollte mich erkundigen, ob ich es richtig verstehe, dass bei Messung über einen Spannungsteiler (Vraw -> R1 -> (zB) Pin 14 -> R2 -> Pin 9) mit Verwendung der Klasse

Code: Alles auswählen

template <uint8_t SENSPIN,uint8_t ACTIVATIONPIN,uint16_t VCC=3300>
class BatterySensorUni : public BattSensor<SyncMeter<ExternalVCC<SENSPIN,ACTIVATIONPIN,LOW,VCC,57> > > {
public:
  BatterySensorUni () {}
  virtual ~BatterySensorUni () {}
};
die "57" im Klassentemplate der Faktor, welcher sich aus dem Spannungsteiler ergibt, ist?
Wenn ja, dann wäre die zweite Frage, ob ich es richtig sehe, dass dieser hardcoded ist?
Mein Widerstandsverhältnis liegt anders, so dass ich mir bis jetzt geholfen haben, den Faktor zur Kompilierung in der BatterySensor.h zu überschreiben, ist aber ja keine zukunftsfähige Lösung - vergesse nach spätestens ein paar Wochen immer wieder alle Details zu den abgeschlossenen Projekten :shock: ...

Wünsche einen angenehmen Abend,

Joost

jp112sdl
Beiträge: 6166
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 283 Mal
Danksagung erhalten: 572 Mal
Kontaktdaten:

Re: Batteriemessung via AskSinPP / Externer Divider

Beitrag von jp112sdl » 19.08.2020, 21:24

Hi,
J.C. hat geschrieben:
19.08.2020, 21:13
die "57" im Klassentemplate der Faktor, welcher sich aus dem Spannungsteiler ergibt, ist?
ja.
J.C. hat geschrieben:
19.08.2020, 21:13
Wenn ja, dann wäre die zweite Frage, ob ich es richtig sehe, dass dieser hardcoded ist?
Nein. Nur für die BatterySensorUni Klasse. Die ist da eigentlich nur aus historischen Kompatibilitätsgründen.
Du kannst im Sketch z.B.
BattSensor<SyncMeter<ExternalVCC<SENSPIN,ACTIVATION_PIN,LOW,3300,57>>> nutzen und dort dann deine 57 anpassen.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

J.C.
Beiträge: 15
Registriert: 13.08.2020, 19:11
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal
Danksagung erhalten: 1 Mal

Re: Batteriemessung via AskSinPP / Externer Divider

Beitrag von J.C. » 19.08.2020, 22:47

Ah, vielen Dank, schon getestet, funktioniert bestens!

Falls es andere Unbedarfte wie mich interessiert, die Initialisierung sieht bei mir jetzt folgendermaßen aus:

Code: Alles auswählen

/**
 * Configure the used hardware
 */
typedef AvrSPI<10,11,12,13> SPIType;
typedef Radio<SPIType,2> RadioType;
typedef DualStatusLed<5,4> LedType;
//typedef BatterySensorUni<14,9,3360> BatterySensorType; 
typedef BattSensor<SyncMeter<ExternalVCC<14,9,LOW,3300,76>>> BatterySensorType; //76: angepasster Divider-Faktor
typedef AskSin<LedType,BatterySensorType,RadioType> HalType;
class Hal : public HalType {
  // extra clock to count button press events
  AlarmClock btncounter;
public:
  void init (const HMID& id) {
    HalType::init(id);
Hoffe so ist es gedacht, Grüße

Joost

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“