Show Posts
|
|
Pages: [1]
|
|
2
|
International / Deutsch / Re: Servo rattert nach einschalten der Stromversorgung
|
on: February 07, 2013, 01:57:52 pm
|
Schau mal ins Datenblatt des Servos, welche Spannung es braucht. Die Stromstärke sollte reichen  Ist die Masse der Stromversorgung mit Masse des Arduino verbunden? Passiert das Rattern auch, wenn du nur die Stromversorgung ran machst? Lässt sich das Servo ansonsten ansteuern bzw. tut es (in etwa) das, was es soll?
|
|
|
|
|
6
|
International / Deutsch / Re: [Einsteiger!] brauch Hilfe bei seinem projekt Windmesser
|
on: January 02, 2013, 02:06:57 pm
|
Ok, ich ging davon aus, dass die die Bft-Skala linear sein wird. Wenn dem nicht so ist, kannst ja die Schritt-Werte in ein Array packen: int schritte[]={4,6,9,...,29};
...
action(schritte[beaufort]-schritte[letzterwert],2);
ulli.
|
|
|
|
|
7
|
International / Deutsch / Re: [Einsteiger!] brauch Hilfe bei seinem projekt Windmesser
|
on: January 02, 2013, 01:14:40 pm
|
Hallo, um bei deinem Beispiel zu bleiben: if (windGeschw >= 0 && windGeschw <= 2) { beaufort = 0; action((beaufort-letzterwert)*4, 2); action(0, 0); letzterwert=beaufort; }
Damit speicherst du den letzten beaufort-Wert in die Variable "letzterwert". Beim erneuten Aufruf vergleichst du die Werte und drehst den Schrittmotor um 4x den Unterschied vor (positiver Wert) oder zurück (negativer Wert). Eleganter verpackt man das ganze noch in eine Funktion, dann musst nicht immer den ganzen Quark für jeden Bft-Wert eingeben. ulli. edit: "letzterwert" und "beaufort" bei "action" getauscht
|
|
|
|
|
8
|
International / Deutsch / Re: Motorkauf
|
on: January 02, 2013, 12:48:49 pm
|
|
Hallo Martin,
das sind leider ein bisschen wenig Infos. Was soll der Motor bewegen? Ist es interessant, ihn möglichst genau bewegen zu können (Schrittmotor)? Wie schauts mit der Stromversorgung aus? Der Arduino allein schafft einen Motor nicht wirklich...
ulli.
|
|
|
|
|
10
|
International / Deutsch / Re: 125khz rfid Reader - Problem
|
on: December 21, 2012, 02:07:05 pm
|
|
Sorry, Pylon... aber das sehe ich anders.
Nehmen wir mal last=80000, now=90000, schwellenwert 5000 (-> die Bedingung sollte TRUE sein)
now-last=10000 > 5000 true abs(now-last)=10000 > 5000 true last-now=-10000 < 5000 false abs(last-now)=10000 > 5000 true
nehmen wir vereinfachend an, dass der Arduino nach 99999 wieder bei 0 anfängt und nehmen last=95000, now=2000, schwellenwert 5000 (-> die Bedingung sollte TRUE sein)
now-last=-93000 < 5000 false abs(now-last)=93000 > 5000 true last-now=93000 > 5000 true abs(last-now)=93000 > 5000 true
Bei "rund um die 99999" in diesem Beispiel ist es nicht egal, welche Zahl ich von welcher abziehe; aber das sollte in der Realität (alle ~50 Tage) auch untergehen.
Oder sehe ich da was falsch?
ulli.
|
|
|
|
|
11
|
International / Deutsch / Re: 125khz rfid Reader - Problem
|
on: December 21, 2012, 12:40:41 pm
|
Hallo Lorenz, millis() gibt die Anzahl der Millisekunden (tausendstel!) zurück, die vergangen sind, seit der Arduino gestartet wurde. Mit if(abs(millis()-lastread) > 5000) sagst du dem Arduino "führ das folgende aus, wenn der Unterschied zwischen dem akuellen millis()-Wert und dem beim letzten Lesen mindestens 5000 ist", sprich wenn es länger als 5 Sekunden her ist. Bei dir sind es 0,12 Sekunden... bissl kurz vielleicht. abs() steht für "Absolutwert" (macht z.B. -2000 zu 2000). Das hat zwei Gründe: Erstens must du nicht aufpassen, welche Zahl zu von welcher abziehst und zweitens fängt millis() nach ca. 50 Tagen wieder bei Null an. ulli.
|
|
|
|
|
12
|
International / Deutsch / Re: 125khz rfid Reader - Problem
|
on: December 21, 2012, 12:35:17 am
|
Das ist eigentlich recht einfach. Du nimmst einfach die ID der aktuellen Karte und speichert sie. Jedes mal, wenn du nun eine neue Karte empfängst, vergleichst du die gespeicherte ID mit der, die du gerade gelesen hast. Wenn die beiden gleich sind, machst du nichts. Und wenn sie sich unterscheiden führst du deine Blinksequenz durch.
Für den Türöffner solltest du aber noch eine zeitliche Komponente einbauen, sonst kannst du die Tür mit dem selben Tag nicht mehr öffnen, bevor sie mit einem anderen Tag geöffnet wurde. Oder du machst es gleich nur mit einer gespeicherten Zeit. Beim Lesen des Tags speicherst du die Zeit in eine Variable: lastread = millis(); beim Auslösen des Öffners (oder LED) prüfst du, ob das letzte Lesen mehr als 5(?) Sekunden her ist: if(abs(millis()-lastread) > 5000){ //Aufmachen oder Blinken }
|
|
|
|
|
13
|
International / Deutsch / Re: Elektronisches Zahlenschloss für Garagentor
|
on: December 05, 2012, 03:07:19 pm
|
Hallo! Für Anfänger kann ich das Buch "Die elektronische Welt mit Arduino entdecken" von Erik Bartmann ( http://www.amazon.de/dp/3897213192) wärmstens empfehlen. Habe selber früher viel Basic und seit ein paar Jahren immer wieder mal PHP programmiert und bin mit dem Buch echt einfach in die Arduino-Programmierung gestartet. Ürigens: Schau mal aufs Cover! Das unten rechts ist ein Keypad, wie du es für dein Projekt brauchen kannst  ulli.
|
|
|
|
|