Eigenbau: “Hau den Lukas” – Selfmade: High Striker
Mit einem Drucksensor (MPX5999D) in einer Wärmflasche und einem Arduino lässt sich ein toller “Hau den Lukas” bauen. Hier der passende Programmcode:
// the setup routine runs once when you press reset:
int sensorValue=0;
int sensorValueOld=0;
int sensorValueMax=0;
int bargraphWert=0;
int PowerFaktor=0;
int ledPin[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // LED-Array mit Pin-Werten
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600);
for(int i = 0; i < 10; i++)
pinMode(ledPin[i], OUTPUT); // Alle Pins des Arrays als Ausgang
}
void loop() {
// read the input on analog pin 5:
int sensorValue = analogRead(A5);
PowerFaktor= map(analogRead(A3),0,1023,42,80);
//PowerFaktor=50;
if (sensorValue > sensorValueOld){
sensorValueOld = sensorValue;
sensorValueMax = sensorValue;
}
// print out the value you read:
//Serial.println(sensorValue);
//Serial.println(sensorValueMax);
//Serial.println(bargraphWert);
Serial.println(PowerFaktor);
//bargraphWert = sensorValueMax - sensorValue;
bargraphWert = sensorValueMax - PowerFaktor;
for(int i = 0; i < 10; i++)
digitalWrite(ledPin[i], (bargraphWert >= i)?HIGH:LOW);
// if (bargraphWert < 1){
// digitalWrite(ledPin[0:9],LOW);
// }
// if (bargraphWert < 2)
// digitalWrite(ledPin[0],HIGH);
}
Viel Spaß beim nachbauen. Bei Fragen einfach kommentieren!
Hallo Mihu,
ich habe zwei Fragen zu deinem DIY High striker:
1. Wie funktioniert die Durchfürung/Abdichtung der Pins des Drucksensors durch den Deckel der Wärmflasche?
2. Wie hast du die 1000kPa des Drucksensors bemessen? Ist der Messbereich groß genug?
Danke für die tolle Idee und beste Grüße,
Hallo Tobias,
ich habe den Sensor einfach mit Heißkleber in den Deckel geklebt. Die Löcher wurden ebenfalls mit Heißkleber verklebt. Vom Meßbereich her ist der Sensor eher zu groß bemessen. Die oberen Druckwerte treten dabei niemals auf. Also lieber einen kleineren wählen und dafür genauer messen.
Viel Spaß beim Nachbauen wünscht MiHu-Works.com
Hallo, wie hast du denn das mit dem Druck gehandhabt, dass immer genau der gleiche Druck in die Wärmeflasche gefüllt wird?
LG
Hallo Marvin, das mit dem gleichbleibenden Druck in der Wärmflasche ist kein Problem. Ich habe sie lediglich mit ein wenig Luft darin verschlossen. Da sie sehr Dicht ist habe ich auch nach Jahren einem Jahr kein Problem. Ansonsten habe ich auch ein Potentiometer an den Arduino angeschlossen um den Schwierigkeitsgrad einzustellen.
Viele Grüße,
MiHu
Hallo,
meine Frage zum Programm.
if (p>340) digitalWrite(5, HIGH);
if (p>370) digitalWrite (6, HIGH);
Ich möchte das so lösen aber wenn der Druck wieder unter den Wert P fällt gehen die LEDs wieder aus. gibt ein da eine Art setz und rücksetz methode
Hi Can,
ja man muss einfach den gemessenen Wert mit dem Wert der vorher gemessen wurde vergleichen. Ist dieser Höher als des bisher vorhandene dann nimmt man diesen in eine andere Variable. Das ist einfach eine Max Hold Funktion. Diese findest du hier in meinem Programm:
if (sensorValue > sensorValueOld){
sensorValueOld = sensorValue;
sensorValueMax = sensorValue;
Ich hoffe das hilfft dir weiter. Viele Grüße, MiHu
Hi, Ich wollte fragen welchen Arduino du verwendet hast und welchen LED Strip. Cooles Projekt.
Hi, ich habe einfach einen Arduino genommen. Sollte aber aufgrund der wenig benötigten Pins auch mit den meißten anderen funktionieren. Bei dem LED Strip kann ich leider keine genaue Auskunft geben, da dieser einfach in der Bastelkiste lag. Aber auch hier kann man das Projekt auf jeglichen LED-Streifen anpassen. Viele Grüße,
MiHu
Vielen Dank für die Antwort. Es wurde also kein adressable LED-Strip verwendet wie zbsp. ws2812? Grüße.
Nein, es wurde kein adressierbarer LED Streifen verwendet. Aber, das ist kein Problem.
Hi, bin gerade mitten im Nachbauen. Habe hier aber einen adressierbaren LED-Strip und noch keinen Plan, wie ich den ansteuern soll. Gibt es da mittlerweile vielleicht einen passenden Sketch?
Hey Spence,
schön das du die Idee aufgreifst und den Hau den Lukas nachbaust. Leider habe ich keinen fertigen Sketch für dich um einen LED-Strip zu nutzen. Aber wenn du ein bisschen mit dem LED Strip rumspielst, wirst du mit den verfügbaren Libraries sehen das es gar nicht schwer ist. Eine gute Libraries für LED Strips ist die NeoPixel. Hier findest du Beispielsketche die dir für die Adaptierung helfen sollten: https://funduino.de/nr-17-ws2812-neopixel . Viele Grüße und noch Viel Spaß beim Nachbauen.
Danke. Ich schaue mal, ob ich mir da was zurecht stümpern kann. Eine Frage noch: wie ist der Drucksensor verdrahtet?
Der Chip macht es da einem einfach. Es sind nur 3 Pins anzuschließen. GND, Vin und Vout zum AnalogInput vom Mikrocontroller. Hier die dazugehörigen Bilder:
Viele Grüße
Hallo MiHu…könntest du mir so eine Platine Bauen …worauf der Druckschalter angeschlossen wird…das Handwerkliche ist kein Problem …aber mit Elektronik hapert es….möchte einen nachbauen für unser kinderschützenfest…LG tonto
Hallo Tonto, Sorry für die späte Antwort. Aber derzeit habe ich kaum freie Resourcen für andere Projekte. Hier ist ja eine eigene Platine fast nicht gerechtfertig. Es handelt sich ja nur um einen Arduino an denen die passenden Sensoren und LED´s angeschlossen werden.
Vg MiHu-Works