Hallo,
es ist zwar unwichtig, da nur eine Spaßschaltung, aber ich würde gerne wissen wie es geht.
Eine Solarzelle, ein Attiny, ein Goldcap, ein Motor und etwas Sensorik.
Die Solarzelle liefert Spannung. Der Goldcap puffert.
Jetzt soll der Motor erst laufen wenn 4 Volt sind. Aufhören wenn 2,5 Volt sind.
Im Arduino Kochbuch ist z. B. dieser Sketch. Der bezieht sich aber immer darauf das der Arduino 5 Volt oder x Volt Betriebsspannung hat.
Ein anderer Sketch bezieht sich auf %. Was ja eigentlich das gleiche ist.
Wenn ich jetzt sage 4 Volt, dann sind das bezogen auf 5 Volt Betriebsspannung 80%.
Ist die Betriebsspannung nur 2 Volt, dann sind die 80% ja 1,6 Volt.
Kann man den Schwellwert auf eine Spannung die "FEST" ist fixieren?
Wenn es nicht möglich ist, kein Problem.Code:/* * RespondingToChanges sketch * flash an LED to indicate low voltage levels */ long warningThreshold = 1200; // Warning level in millivolts - LED flashes long criticalThreshold = 1000; // Critical voltage level - LED stays on const int batteryPin = 0; const int ledPin = 13; void setup() { pinMode(ledPin, OUTPUT); } void loop() { int val = analogRead(batteryPin); // read the value from the sensor if (val < (warningThreshold * 1023L)/5000) { // in the line above, L following a number makes it a 32 bit value flash(val) ; } } // function to flash an led with on/off time determined by value // passed as percent void flash(int percent) { digitalWrite(ledPin, HIGH); delay(percent + 1); digitalWrite(ledPin, LOW); delay(100 - percent ); // check delay == 0? }
Analog ist das einfach.
Danke
Achim







Zitieren

Lesezeichen