Go Down

Topic: USB-verbindung für externe Schaltung notwendig (Read 903 times) previous topic - next topic

Bluetruck

Auf Anraten in diesem Thread http://arduino.cc/forum/index.php/topic,148970.45.html mache ich hier für ein weiteres Problem ein zweiten Thread auf xD

Und zwar messe ich ein PWM Signal mittels pulseIn() (von einer Funkfernsteuerung) und schalte, je nachdem, wie hoch/tief das Signal ist, eine LED an, bzw. wieder aus. Die genaue Schaltungsweise ist jetzt hier denk ich nicht so wichig.
Denn mein Problem ist folgendes: Wenn ich das USB-kabel entfernde, bleibt der Status der LED erhalten (also an, bzw. aus), aber ich kann den Status nicht mehr ändern. Sobald ich das Kabel wieder anstecke, funktioniert dies. Zur Info: Das Kabel verwende ich nur dazu, den Sketch zu übertragen. Sonstige Informationen werden nicht übertragen.

Hier mal meine Anschlussbelegung:

Ich habe ein 3-poliges Kabel zum Empfänger.
So ist es am Arduino angeschlossen
5V+: 5V
Ground: ?
Steuersignal: pin3

Dann noch ein Seperates Kabel für die Spannnung zwischen 6-12V:
7,2V+: VI

Leds sind zZt. nicht angeschlossen, sondern ich verwenden LED13.

Hier nochmals der Sketch:

Quote

void setup ()
{
pinMode (13, OUTPUT);
pinMode (3, INPUT);
}

void loop ()
{
int a = pulseIn(3,HIGH,24000);
int L1 = digitalRead(13);
if (a>1228 && a<1242 && L1==LOW){
  digitalWrite (13,HIGH);
  delay(1000);
}
if (a>1228 && a<1242 && L1==HIGH){
  digitalWrite (13,LOW);
  delay(1000);
}
}



So, jetzt müsstet ihr alle Infos haben, die ich euch geben konnte ;)

Achja, sorry für meine Überschrift, aber wie kann man sowas kurz erklären?

uwefed

Uns fehlen einige Infos:
Welchen Arduino hast Du?
Woher bekommst Du die 5V?
Woher kommen die 7,2V. Wo ist die Masse der 7,2V angeschlossen?
Was bedeutet Ground: ? ?

Ich erkläre mit die Symptome so daß das Pulsein nichts mißt. Als Grund tippe ich auf eine fehlende Masseverbindung.

Grüße Uwe

Bluetruck

#2
Mar 07, 2013, 07:14 am Last Edit: Mar 07, 2013, 07:16 am by Bluetruck Reason: 1
Arduino Mini. Sorry, hab ich vergessen.

5V und  7,2 V kommen vom RC-model. 7,2 V sind die Akku Spannung, 5V ist die reduzierte Spannung vom Empfänger. und ? ist - , bzw Masse. (Stimmt, hab ich falsch geschrieben :.) Aber die ist für 7,2V und 5V ja das gleiche, also auch ein Kabel.

uwefed

Laß mal die 5V am Arduino weg.
Grüße Uwe

Bluetruck

Macht überhaupt nix aus. "Symptome" bleiben gleich. Die LED bleibt auch an.

hab grad ein bisschen rumexperimentiert: der Arduino nimmt seine Spannung von beiden Kabeln (7,2 und 5 V) gleich an. Es ist egal, welches ich abstecke, er und die LED bleiben an.

uwefed

Ich kann nur annehmen, daß der Schalt-Bereich von 14µS bei 1235µS (das sind +/- 0,5%) etwas sehr knapp bemessen ist und durch die leicht unterschiedliche Versorgungsspannung das Ergebnis von Pulsein außerhalb des Schalt-Bereichs ist.

Versuch mal schrittweise, sagen wir in 5µS Schritten, den Schalt-Bereich zu vergrößern.

grüße Uwe

Bluetruck

Hat funktioniert!
Aber ich versteh nicht, welche Auswirkung pulseIn() auf die Versorgungspannung des Arduinos haben soll. Oder versteh ich da jetzt was falsch?

kurti

#7
Mar 08, 2013, 06:23 pm Last Edit: Mar 08, 2013, 08:37 pm by kurti Reason: 1
...
Zitat Jurs: falsche Verkabelung ist sowieso immer wenig förderlich für das Funktionieren der Hardware



hier könnte Ihre Werbung stehen

uwefed

#8
Mar 08, 2013, 06:28 pm Last Edit: Mar 08, 2013, 06:33 pm by uwefed Reason: 1

Hat funktioniert!
Aber ich versteh nicht, welche Auswirkung pulseIn() auf die Versorgungspannung des Arduinos haben soll. Oder versteh ich da jetzt was falsch?


Der ATmega328 auf dem Arduino mini R5 hat für die Takterzeugung einen Resonator. Diese sind nicht besonders genau. Wahrscheinlich, so stelle ich mir das vor, hat eine Spannungsänderung um 0,5V eine leichte Frequenzänderung des Taktes zur Folge, sodaß die pulseIn()-Funktion Werte mißt, die aus dem von Dir sehr knapp festgelegten Fenster fallen.

Hast Du mal das mit einem Arduino versucht der einen Quarz zur Takterzeugung hat? Gehts dann besser?

Grüße Uwe

Bluetruck

OK. Dann werde ich jetzt einfach noch ein wenig herumexperimentieren, wie klein ich den Bereich machen kann. Nein, einen anderen Arduino, sei es mit Quarz, hab ich nicht zum ausprobieren.

uwefed

Paß auf, auch die Fernsteuerung kann ein nicht stabiles Signal senden, sondern auch dieses ein wenig ungenau sein.

Grüße Uwe

Go Up