Go Down

Topic: LCD Display wird dunkel wenn servo steuert (Read 3277 times) previous topic - next topic

michael_x


Die Tastatur ist einfach per Kabel damit verbunden

Eine USB-Tastatur hat ein Kabel mit einem USB Stecker, und dann ?
Ein Arduino ist kein USB-Host, an den man USB devices anschliessen kann, meines Wissens. Da würde ich gern was lernen ...

Balisto

Sorry für die späte Antwort, war eine weile nicht hier.
Es gibt Tastaturen die sowohl als usb als auch ps2 funktionieren. Kennst bestimmt die Adapter für Tastaturen von usb auf PS2. Und so eine habe ich für mein Projekt genommen. Den Usb Stecker habe ich abgeschnitten und somit habe ich dann 4 Kabel. Plus, Minus, clk und data.
Hier der Anschluss von ps2 an den Arduino: http://nocommercialpotential.posterous.com/interfacing-the-ps2-keyboard
Eine Lib gibts auch dafür, heißt: ps2tastatur

michael_x

Quote
die Adapter für Tastaturen von usb auf PS2

... setzen nur die 4 USB Adern auf den PS2 Stecker um !

Lt. deinem Link braucht die Tastatur nur 5V und sendet dann selbst Clock und Daten - Signale, indem sie die pullups auf LOW zieht.

Super, einfach genug!

Danke !

Balisto

Ja, ist echt genial einfach :)
Ich habe gelesen das die USB-Tastatur ps2 fähig sein muss damit sie umschaltet. Normale usb-tastaturen sollen das nicht können. Weiß aber nicht ob es stimmt....Irgendwie wäre das auch unlogisch.

michael_x

Ich hab irgendwo so einen USB<-->PS2 Adapter als Zugabe zu einer Tastatur gesehen, aber ich glaube das war andersrum, damit die PS/2 Tastatur in eine USB-Buchse gesteckt werden kann. Muss mal kramen ...

Quote
Normale usb-tastaturen sollen das nicht können

Falls ich den Adapter finde und der andersrum ist, würde ich ihn erst ausprobieren, bevor ich den USB-Stecker abschneide.
( Oder so lang abschneiden, dass man wenigstens das abgeschnittene USB-Kabel sinnvoll verwenden kann ;)

Balisto

Habe den Usb-stecker auch großzügig abgeschnitten damit ich ihn noch verwenden kann :) War auch gut so, nur ein paar Tage später habe ich ihn gebraucht....
Aus Wikipedia:
Quote
ie vielen Mäusen und einigen Tastaturen beigelegten Adapter von oder auf USB sind rein mechanische Adapter zur Anpassung der Steckernorm bzw. -form; angeschlossene Geräte müssen anhand der Signalpegel unterscheiden, ob sie an eine USB- oder PS/2-Schnittstelle angeschlossen sind, und sich dementsprechend verhalten. Ein nicht auf USB ausgelegter PS/2-Anschluss funktioniert mit diesen Adaptern genauso wenig wie ein nicht auf PS/2 ausgelegtes USB-Gerät.

http://de.wikipedia.org/wiki/PS/2-Schnittstelle
Heißt also die Tastatur muss einen Kombichipsatz haben damit es funktioniert. Daher habe ich mir eine gekauft wo der Adapter dabei war.
Falls du keine Stecker abschneiden möchtest, dann halt die entsprechenden Stecker kaufen und selbst löten und dann:
http://www.practicalarduino.com/projects/ps2-keyboard-or-mouse


spaceball

#21
Feb 07, 2013, 10:06 am Last Edit: Feb 07, 2013, 01:46 pm by spaceball Reason: 1
Hallo,

da Dein Problem ja nur die kurze Zeit der Servoaktivität ist:
könnte ein fetter Elko die kurzte Zeit überbrücken?

Gruß
Reinhard

PS.: Vielleicht könntest Du auch ein kleineres (weniger stromhungriges) Servo verwenden, dann aber den vollen Servoweg ausnützen: Untersetzung (180°=7mm) -> weniger Belatung -> weniger Strom
PPS.: und wenn Du, solange das Servo läuft, LCD und Keyboard vom Strom nimmst? Dann würde die 9V-Batterie doch noch reichen.

Balisto

Das mit der 2. Stromversorgung ist schon ok.

Aber noch eine Frage.
Kann sein das ich den Servo durch einen Motor ersetze. Ist es da auch möglich eine zweite Stromversorgung anzuschließen?? Wüsste nicht wie, denn ein Pol vom Motor geht direkt an Pin2 vom Arduino...

michael_x

Quote
Ist es da auch möglich eine zweite Stromversorgung anzuschließen??
Wüsste nicht wie, denn ein Pol vom Motor geht direkt an Pin2 vom Arduino...


Das ist wohl das PWM Steuersignal, den du bei einem "normalen" Motor dann nicht mehr hast.
Einen Motor direkt an einem digitalWrite oder analogWrite - Pin betreiben geht sowieso normalerweise nicht,
ausser der Motor bräuchte nur 20 mA.

Signal-Pins liefern Signale und keine Stromversorgung.

Den Motor steuerst du also über einen Transistor ( oder eine H-Bridge, wenn er vorwärts/rückwärts laufen soll )
und dann ist die Frage nach der zweiten Stromversorgung geklärt, oder ?

Balisto

#24
Feb 07, 2013, 04:36 pm Last Edit: Feb 07, 2013, 06:38 pm by Balisto Reason: 1
Das ist ein kleiner Motor aus einem CD-Laufwerk, der wo die Schublade öffnet und schließt. Bei mir muss der nur für knapp eine Sekunde angesteuert werden und auch nur in einer Richtung.
Habe ihn schon mal versuchsweise an den Arduino angeschlossen und er funktioniert. Allerdings verbraucht er 30-50ma, was für den Arduino wohl etwas zu viel ist und ich wieder das Problem mit dem Display bekomme (das es dunkel wird wenn der Motor läuft).

Ich habe es nun so aufgebaut:

Der Arduino ist in dem Fall selbst versorgt und der Motor über eine externe Stromquelle. Und es funktioniert bestens bist jetzt  :D
Danke!


Edit:// Habe mal den Stromverbrauch am Arduino (Paperduino Schaltung siehe 1.Post) gemessen wenn der Motor läuft. Der Steigt in dem Moment wo der Motor läuft auf ~80mA an!! (Ohne Motor ~33mA) Warum?? Dachte der Motor bekommt nun sein Strom von der zweiten Stromversorgung (3 x 1,5v Mono). Kann mir das bitte jemand erklären, oder habe ich etwas falsch gemacht??

sth77

Wie und wo misst du denn? Meiner Erfahrung nach beherrschen viele nicht den Umgang mit dem Multimeter bzw. dem Amperemeter im Speziellen.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

uwefed

Quote
Edit:// Habe mal den Stromverbrauch am Arduino (Paperduino Schaltung siehe 1.Post) gemessen wenn der Motor läuft. Der Steigt in dem Moment wo der Motor läuft auf ~80mA an!! (Ohne Motor ~33mA) Warum?? Dachte der Motor bekommt nun sein Strom von der zweiten Stromversorgung (3 x 1,5v Mono). Kann mir das bitte jemand erklären, oder habe ich etwas falsch gemacht??


Der Transistor hat zwischen Basis und Emittor eine Diode (ca 0,7V). Du schließt praktisch den Ausgang des Arduino kurz. Schalte zwischen Arduino Ausgang und Basis Transistor einen Widerstand. Werte zwischen 220 Ohm und 1kOhm gehen gut.
Grüße Uwe

Balisto

Danke für den Tipp mit dem Widerstand, nun funktioniert alles so wie es soll und auch wenn der Motor angesteuert wird ändert sich die Stromaufnahme nur unwesentlich.

Wo anders las ich noch das man eine Diode und ein 1µF Kondensator parallel zum Motor schalten soll um Störungen zu unterdrücken.

uwefed


Wo anders las ich noch das man eine Diode und ein 1µF Kondensator parallel zum Motor schalten soll um Störungen zu unterdrücken.

unbedingt.
Die Diode mit der Kahode zum +Pol der Spannungsversorgung.
Grüße Uwe

Go Up