frgen zum usb-hub

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo Costi!
Costi hat geschrieben:omg, ich muss alles selber reinstecken und loeten!
:mrgreen: :mrgreen: :mrgreen: :lol: :P

Was glaubst du, warum ich dir einen Link zum "BAUSTEIN" um 46,11 EUR geschickt habe. Ich hätte ja auch einen Link zum billigeren "BAUSATZ" zeigen können. -- Aber das habe ich nicht gemacht. ;-)

Costi hat geschrieben:um die resistoren reinzustecken brauch man ja unglaublich viel geduld.
Nimm eine kleine Spitzzange und biege die Widerstände zurecht, bevor du diese rein steckst. Und halte dich peinlich genau an die (hoffentlich beigelegte) Anleitung.

Und ganz wichtig!!! Löte nicht einfach drauf los, sondern übe vorher ein wenig. Und nimm kein Lötfett! Und nimm nur dünnes Lötzinn. Und ein guter Lötkolben ist Gold wert.

Du wärst nicht der Erste, der einen Bausatz durch unsachgemäßes Löten zerstört!

mfg
Gerold
:-)


PS: http://www.strippenstrolch.de/index.html (auf der Linken Seite: "1 Elektronikbasteln" anklicken)


.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:farbcodes interpretieren
http://www.elektronik-kompendium.de/sit ... 109051.htm

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

ja, ja, ja unglaublich witzig!


ich werd dan einfach die dinger nach farbmuster sortieren und dan zaehlen wie wiele resistoren pro art es gibt und dan muesste ich es haben.

beim loeten hilft mir (hofentlich) der vater eines freundes (absoluter elektronik-nerd)
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:beim loeten hilft mir (hofentlich) der vater eines freundes (absoluter elektronik-nerd)
Hallo Costi!

Dann lass ihn bitte die Bauteile selber einsetzen und zurechtbiegen.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

das ding hat nur zwei analoge outputs der rest sind digitale outputs heist das ich kann nur ein motor anschliessen?? (wenn ich relays benutze)
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:das ding hat nur zwei analoge outputs der rest sind digitale outputs heist das ich kann nur ein motor anschliessen?? (wenn ich relays benutze)
Hallo Costi!

Digitale Ausgänge sind wie Ein-/Aus-Schalter. Mit diesen kannst du die Relais schalten.
Mit den analogen Ausgängen könntest du später, in Verbindung mit Transistoren oder auch mit dem L298, die Geschwindigkeit der Motoren regeln. Aber erst mal ein Schritt nach dem anderen.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

Digitale Ausgänge sind wie Ein-/Aus-Schalter.
digitale ausgaenge unterbrechen einen stromkreis?
(entschuldige meine unwisenheit)


es ist schon alles dranmontiert, ich geh jetzt zu conrad los und hol mir zwei relais, loetzinn und evtl loetkolben und einen multimeter (mein taschengeld... :cry:)

und noch was um den treiber zu instalieren: die instalation ala make findet usb.h nicht. Wie kann ich ihm sagen wo er diese datei findet?
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo Costi!
Costi hat geschrieben:loetkolben
http://www.aaroncake.net/electronics/solder.htm
Costi hat geschrieben:multimeter
Das braucht man immer.
Costi hat geschrieben:instalation ala make findet usb.h nicht
Ich habe keine Ahnung davon! Lies die Readme-Dateien und informiere dich über die bereits hier im Thread aufgezeigten Links. :-)

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Costi hat geschrieben:und noch was um den treiber zu instalieren: die instalation ala make findet usb.h nicht. Wie kann ich ihm sagen wo er diese datei findet?
Mit ``-I`` gibtst du dem GC den Pfad zu den Includes an.

Andererseits: Wozu? Debian hat doch ein Paket python-pyusb. Das nimmt man einfach und schon ist das Problem gelöst. Selbstkompilieren tut man nur, wenn man spezielle Anforderungen hat.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:
Digitale Ausgänge sind wie Ein-/Aus-Schalter.
digitale ausgaenge unterbrechen einen stromkreis?
Hallo Costi!

Digital bedeutet ja nur dass etwas über zwei Zustände geschaltet wird. Oft gilt diese Faustregel:

0-30% der Versorgungsspannung (VCC)= 0
31-69% VCC = unbestimmt
70-100% VCC = 1

Das bedeutet meist, dass ein Eingang/Ausgang "LOW" (0) ist, wenn dort weniger als 30% der Versorgungsspannung anliegt.
Wenn an einem Eingang/Ausgang mehr als 70% der Versorgungsspannung anliegt, dann ist der Eingang/Ausgang "HIGH" (1).
Alles was zwischen drinnen ist, kann willkürlich ein HIGH oder ein LOW liefern. Das sollte man also vermeiden.

Aber es betrifft dich hier nicht direkt, da du es ja mit "offenen Kollektoren" zu tun hast.

Und was deine Ausgänge betrifft: Im PDF-File steht, dass die Digitalausgänge "offene Kollektoren" sind. Ein Kollektor ist ein Anschluss eines Transistors. Ein offener Kollektor ist meist gegen GND hin offen (HIGH) oder geschlossen (LOW).

Eine LED kannst du z.B. so anschließen:
Bild

Ein Relais kannst du z.B. so anschließen:
Bild

Schließe aber das Relais nicht an, bevor du nicht gemessen hast, wie viel mA dieses Ding Strom zieht. Nur so kannst du vermeiden, den ULN2803 zu zerstören.

Info: Du hast es an den Ausgängen mit diesem IC zu tun: http://www.alldatasheet.com/view.jsp?Searchword=ULN2803

mfg
Gerold
:-)


PS: Messen des Stroms:
- http://www.elektronik-kompendium.de/sit ... 110203.htm (suche nach "Messen des elektrischen Stroms")
- http://www.dieelektronikerseite.de/Lect ... 20Muss.htm


PS2: Wenn du dein Multimeter so einstellst, dass du damit Strom (A) messen kannst, und du fährst damit in eine Steckdose, dann ist das Multimeter hin, es Blitzt recht kräftig und die Sicherung fliegt raus.

.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

Code: Alles auswählen

$ cowsay `lsusb | grep Velleman`
 ________________________________________
/ Bus 002 Device 002: ID 10cf:5503       \
| Velleman Components, Inc. 8055         |
\ Experiment Interface Board (address=3) /
 ----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Nett -- was die Kuh so spricht. :-)

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

juhuu ich kann das ding nun ueber python ansteuern und mein roboter ist fast fertig
Schließe aber das Relais nicht an, bevor du nicht gemessen hast, wie viel mA dieses Ding Strom zieht. Nur so kannst du vermeiden, den ULN2803 zu zerstören.
was genau meinst du mit "dieses ding"? und wie kann ich das messen?


als ich zwei relais kaufen ging, fragte mich der verkaufer, mit wie viel strom der relais umgeschaltet werden muessten.
der strom fuer die ausgaenge geht jeweils ueber einem braun-schwarz-roten wiederstand, dan ueber einem LED und schlieslich in die - aehh - "mini-steckdose".
kann ich mit diesen angaben schaetzen was da fuer strom rauskommt und wie empfindlich also mein relais also sein muss?
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hallo Costi!
Costi hat geschrieben:juhuu ich kann das ding nun ueber python ansteuern und mein roboter ist fast fertig
Lass uns bitte auch daran teilhaben. Wie steuerst du das USB-Board an und was musstest du dafür installieren?

Costi hat geschrieben:als ich zwei relais kaufen ging, fragte mich der verkaufer, mit wie viel strom der relais umgeschaltet werden muessten.
Hast du jetzt Relais gekauft oder nicht? Wenn ja, welche Relais?

Costi hat geschrieben:der strom fuer die ausgaenge geht jeweils ueber einem braun-schwarz-roten wiederstand, dan ueber einem LED und schlieslich in die - aehh - "mini-steckdose".
kann ich mit diesen angaben schaetzen was da fuer strom rauskommt und wie empfindlich also mein relais also sein muss?
Da kommt kein Strom raus -- das sind offene Kollektorausgänge!!!
Und die LEDs und Widerstände (braun:1, schwarz:0, rot:2x0; = 1000 Ohm) haben nichts damit zu tun. Schaust du dir die Beschreibung und die Schaltpläne nicht an?

Du hast 9V-Motoren. Also brauchst du eine 9V-Batterie und der Strom dieser 9V-Batterie wird auch zum Schalten der Relais verwendet. Aber vorher brauch ich mal die Info, ob du schon Relais gekauft hat und wenn ja, welche. Wenn nicht: Wo würdest du sie kaufen?

mfg
Gerold
:-)

PS: Dass ich es nicht vergesse. Das hier sind die besten Kandidaten bei Conrad. Ich weiß nur nicht, warum er keine 9V-Relais anbietet???

- http://www.conrad.de/goto.php?artikel=502852
- http://www.conrad.de/goto.php?artikel=504393

NOCH NICHT KAUFEN! Du brauchst auch passende Widerstände dafür! Und was für welche du brauchst, kommt auf das Relais an. Also bitte zuerst meine Fragen beantworten.

.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

Wie steuerst du das USB-Board an und was musstest du dafür installieren?
das war wirklich einfach:
das programm von http://libk8055.sourceforge.net/ runterladen.
und es via make instalieren.
unter FreeBSD ist dies mir nicht gelungen, unter ubuntu muss man voher libusb-dev instalieren (weil man usb.h braucht)

unter python kann man nun wunderbar (als root) alles steuern:

Code: Alles auswählen

In [1]: 

In [1]: from pyk8055 import k8055

In [2]: k = k8055(0) #ob hier 0, 1, 2, oder 3 uebergeben muss haengt von der konfiguration an der platine ab

In [3]: k.SetAnalogChannel(1) #erster analoge ausgang auf volle power
Out[3]: 0

In [4]: k.
k.Buttons                 k.DebugOff                k.OutputAnalogChannel     k.ReadCounter             k.SetCounterDebounceTime  k.__module__
k.ClearAllAnalog          k.DebugOn                 k.RawInput                k.ReadDigitalChannel      k.SetDigitalChannel       k.__str__
k.ClearAllDigital         k.DumpInput               k.ReadAllAnalog           k.ResetCounter            k.WriteAllDigital         k._k8055__opentest
k.ClearAnalogChannel      k.DumpOutput              k.ReadAllDigital          k.SetAllAnalog            k.__class__               k.dev
k.ClearDigitalChannel     k.OpenDevice              k.ReadAllValues           k.SetAllDigital           k.__doc__                 
k.CloseDevice             k.OutputAllAnalog         k.ReadAnalogChannel       k.SetAnalogChannel        k.__init__                

In [4]: k.WriteAllDigital(int('10000001', 2)) #erster un letzter digitaler ausgang an
Out[4]: 0

In [5]: k.WriteAllDigital(0) #alle digitale ausgaenge aus
Out[5]: 0

In [6]: k.CloseDevice() # fertig
Out[6]: 0
zu beachten ist das die api ein par maken hat. so gibt es zum beispiel bei exceptions keine exceptions, es wird -1 zurueckgegeben!

natuerlich kann man auch die konsolenorientierte loesung (k8055 --help) benutzen

Da kommt kein Strom raus -- das sind offene Kollektorausgänge!!!
aso, gut. ich hab mich nur gewundert, weil die ausgaenge direkt an einem LED angeschlossen sind und beim "oefnen" eines ausgangs der entprechende LED leuchtet


relais habe ich noch keine gekauft, sag mir was ich brauche und ich gehe los :lol:
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:relais habe ich noch keine gekauft, sag mir was ich brauche und ich gehe los :lol:
Hallo Costi!

Also wenn du beim Conrad kaufst, dann stehen sowiso nur zwei Relais in akzeptabler Größe und Preisklasse zur Diskussion:

Denkhilfe für mich: :-)

Relais 1: http://www.conrad.de/goto.php?artikel=502852
5 V Nennspannung
165 Ohm Spulenwiderstand
Das gibt 5/165 = 0,030 A
5 V * 30 mA = 150 mW
Die restlichen 4 Volt können durch einen Widerstand verbrannt werden.
4 V / 0,030 A = 133,33 Ohm
4 V * 30 mA = 120 mW

Also bei diesem Relais würde ich einen 120 Ohm Widerstand verwenden.

Relais 2: http://www.conrad.de/goto.php?artikel=504393
5 V Nennspannung
178 Ohm Spulenwiderstand
Das gibt 5/178 = 0,028 A
5 V * 28 mA = 140 mW
Die restlichen 4 Volt können wieder durch den Widerstand verbraten werden.
4 V / 0,028 = 142,86 Ohm
4 V * 28 mA = 112 mW

Sieht gut aus. Auch hier kann man mit einem 120 Ohm Widerstand arbeiten.

Wenn möglich dann "Relais 2" nehmen. "Relais 1" ist eine gute Alternative. Dann brauchst du noch für jedes Relais einen 120 Ohm Widerstand und eine 1N4148 Diode als Freilaufdiode. Bei den Widerständen genügen 0,25 Watt-Widerstände. Aber wenn du 0,5-Watt-Widerstände kriegst, dann ist das auch nicht schlecht.

Um "einen" Motor "vor" und "zurück" und "ein" und "aus" schalten zu können, brauchst du zwei Relais. Vier Relais für zwei Motoren.

Code: Alles auswählen

WIDERSTAND KOHLE 0,5 W 5% 120R BF 0411
  Artikel-Nr.: 405140

DIODE 1N4148 500MW
  Artikel-Nr.: 162280

MINIATUR-RELAIS FRT5-DC05V 1A/30VDC
  Artikel-Nr.: 504393
oder:
RELAIS RY-05W-K
  Artikel-Nr.: 502852

Und auf solchen Platinen lässt sich das schön aufbauen und verdrahten:
LOCHRASTERPLATTE 790-5 HP 160 x 100
  Artikel-Nr.: 529618
mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

erstmal:
@gerold: vielen dank fuer die ausfuerliche und muehvolle hilfe!

zwei relais pro motor? ich dachte ich muesste das so machen: http://www.strippenstrolch.de/1-4-6-polwender-1.html

ich hab uebrigens die motoren einfach so -ohne elektronische teile- angeschlossen und es funktioniert!

hier mein script um es zu steuern:
http://paste.pocoo.org/show/33218/
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:ich hab uebrigens die motoren einfach so -ohne elektronische teile- angeschlossen und es funktioniert!
Hallo Costi!

Ja, der ULN2803 ist ein super Teil. Der kann bis zu 500 mA je Schaltausgang verkraften. Gehe aber davon aus, dass ein Motor unter Last viel mehr Strom zieht als ein freilaufender Motor.

Mit den Relais als Schalter bist du bis über 1 A sorgenfrei und der ULN2803 raucht dir nicht ab, wenn du mit dem Fahrzeug gegen eine Wand fährst oder etwas den Motor blockiert.

Bild

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Costi
User
Beiträge: 545
Registriert: Donnerstag 17. August 2006, 14:21

kann ich eigentlich um die geschwindigkeit des motors variieren zu koennen auf die pwm ausgaenge verzichten, in dem ich dem entsprechendem digitalen ausgang ganz schnell an und aus schalte. Damit der motor dan nicht so ruckelt "begratrigt" ein kondensator den strom??
cp != mv
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Costi hat geschrieben:kann ich eigentlich um die geschwindigkeit des motors variieren zu koennen auf die pwm ausgaenge verzichten, in dem ich dem entsprechendem digitalen ausgang ganz schnell an und aus schalte. Damit der motor dan nicht so ruckelt "begratrigt" ein kondensator den strom??
Hallo Costi!

Das wird auf dem Board bereits über RC-Filter und Operationsverstärker für die DAC-Ausgänge versucht. Aber beim Glätten der Spannung geht ziemlich viel verloren. Du hast an den Außängen nicht mehr die Leistung zur Verfügung um die Motoren kraftvoll ansteuern zu können. Das müsste man wieder über eine Verstärkerschaltung ausgleichen. Davon verstehe ich nichts.

Außerdem kannst du die digitalen Ausgänge über den Computer nie so schnell ansteuern, wie es der Mikrocontroller, direkt auf dem Board, kann. Du würdest den Computer auslasten und jede kleine Verzögerung bei der Datenübertragung würde das Fahrzeug ruckeln lassen.

Aber damit du dich nicht darum kümmern musst, sind ja die zwei PWM-Ausgänge da. Nur darfst du mit diesen Dingern ***NIEMALS!!!*** ein Relais ansteuern. Du würdest damit in kürzester Zeit das Board und die Relais zerstören. Und wenn du Pech hast, dann bekommst du eine Stromwatsch'n, da so ein schnell ratterndes Relais eine ziemlich hohe Spannung produzieren kann.

Aber nicht verzagen. Du brauchst nur zwei Widerstände und einen Transistor den du statt dem Ein-/Ausschalter-Relais zum Schalten, über die PWM-Ausgänge, heranziehen kannst. Der Transistor muss nur stark genug sein um ca. 1 A schalten zu können.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten