Hallo liebe community, Ich habe ein Problem: Wenn ich versuche mit diesem Code: $regfile = "m88def.dat" $crystal = 8000000 Config Portb.0 = Output Do Portb.0 = 1 Loop End Einen Motor anzutreiben, dreht er sich nicht, da er nicht genug strom hat. Wie kann ich nun dem Port mehr strom zuweisen? Schon mal danke im Vorraus für euere Hilfe.
Mit einem Transistor. Vergiss die Freilaufdiode nicht und berechne den Basiswiderstand richtig.
Gibt es keinen Befehl in Bascom wie ich das machen kann? oder kann ich einfach eine zusätzliche Batterie in den Stromkreislauf setzen?
Julian R. schrieb: > Gibt es keinen Befehl in Bascom wie ich das machen kann? > > oder kann ich einfach eine zusätzliche Batterie in den Stromkreislauf > setzen? Hast du mal das Datenblatt deines Controllers gelesen? Da steht drin wieviel Strom der liefern kann.
Julian R. schrieb: > Gibt es keinen Befehl in Bascom wie ich das machen kann? > > oder kann ich einfach eine zusätzliche Batterie in den Stromkreislauf > setzen? Der Ausgangsstrom wird alleine durch die Hardware-Konstruktion des Controllers bestimmt und ist oft 20mA oder 40mA. Du brauchst wie oben schon gesagt einen Transistor. Andreas M. schrieb: > 2 Dumme, ein Gedanke :-) Mist, zu langsam :o)
Julian R. schrieb: > Einen Motor anzutreiben, dreht er sich nicht, da er nicht genug strom > hat. > > Wie kann ich nun dem Port mehr strom zuweisen? Du mußt drei Vaterunser für den Port beten. Dann dafür sorgen, daß der Port sich jeglicher fleischlichen Gelüste entsagt (wenn nicht möglich, hilft allerdings auch eine zwischenzeitliche Beichte des Ports, allerdings nur, wenn der Port katholisch ist, sonstige Konfessionen müssen mit ihren Sünden weiterleben).
Und wenn der Chip anfängt sich in Rauch aufzulösen war der Port islamistisch veranlagt :)
>Kann mir mal jemand einen Schaltplan Schicken? http://embedded-lab.com/blog/wp-content/uploads/2010/12/Circuit_SingleTransistorDCMotor.png Gut gemeinter Rat: fang mit einer LED an, und nicht mit einem Motor. Und lerne vorher mal ein paar Grundlagen.
Das mit der Led klappt ja und töne kann ich auch erzeugen nur mit dem Motor ..... :(
Julian R. schrieb: > Portb.0 = 1 ' Skill up tha Ampere PowerB.0 = 3A ' Give power with 3 Ampere Wo ist das Problem?
Julian R. schrieb: > Überlaste ich so nicht die Usb buchse? Config USBPower = 5A, SteadyState, FuseEnabled
Sorry das ich dich nochmal frag Aber wie meinst du jetzt?` so?: $regfile = "m88def.dat" $crystal = 8000000 Config Usbpower = 3a , Steadystate , Fuseenabled Config Portb.0 = Output Do Portb.0 = 3 Loop End
@Julian du wirst grade mächtig gefoppt. NEIN, man kann nicht einfach irgendein Befehl absetzen, und dann rinnt mehr Strom aus der Controller-Leitung. Auch du wirst trotz aller gut gemeinten Befehle nur Buchstaben in den Schnee pinkeln können, und nicht den ganzen Schneemann wegspritzen. Da kommt halt nicht mehr raus aus der Leitung... Beispiel verstanden?
Der Lolf schrieb: > Und wenn der Chip anfängt sich in Rauch aufzulösen war der Port > islamistisch veranlagt :) Oder katholisch. Bei denen raucht es auch öfter in der Kirche...
Wegstaben Verbuchsler schrieb: > du wirst grade mächtig gefoppt. Blödsinn. Jetzt lass ihn mal nicht so in die Leere laufen. Julian R. schrieb: > Gibt es keinen Befehl in Bascom wie ich das machen kann? Doch schon. Dafür ist ja Bascom bestens geeignet. Wie Marc es oben ja schon geschrieben hat: -> Config USBPower = 5A, SteadyState, FuseEnabled Damit sagst du deinem Rechner, er soll Richtung USB-Port einfach mehr Strom schicken (5A), warten bis er benötigt wird (SteadyState) und eine Sicherung aktivieren, falls mal der Strom zu hoch sein sollte. Läuft bei uns in der Firma auch so. Alternativ gibt es auch noch den USBPower_Strong -Befehl, aber hier auf der Arbeit habe ich leider keinen Datenblatt dabei um die Werte rauszusuchen. G**gle müsste aber helfen. Oder nimm einfach den USBPower-Befehl, der geht definitiv. -> PowerB.0 = 3A Dieser Befehl gibt an PortB.0 maximal 3A aus. Wenn das nicht reicht, einfach 4 oder 5A hinschreiben.
Warum kommen solche Beiträge eigentlich vermehrt an Freitag Nachmittagen vor?
anderes ich schrieb: > Warum kommen solche Beiträge eigentlich vermehrt an Freitag Nachmittagen > vor? Weil das "t" und das "r" von Troll im Wort Freitag steckt?
Das Ohmsche Gesetz hilft bestimmt. Eine der drei Varianten ist die richtige.
Wenn ich das jetzt richtig verstanden habe (und ihr nicht nur spaß dran habt wie ich im dunkeln tappe) Dann sollte meine code jetzt so aussehen: $regfile = "m88def.dat" $crystal = 8000000 Config Usbpower = 5a , Steadystate , Fuseenabled Config Portb.0 = Output Do PowerB.0 = 3A Loop End
Nochmal für dich: > Der Ausgangsstrom wird alleine durch die Hardware-Konstruktion des > Controllers bestimmt und ist oft 20mA oder 40mA. Du brauchst wie oben > schon gesagt einen Transistor. Alles andere ist Verarschung. Und wenn du jetzt nochmal per Code den Strom hochdrehen willst dann bist du wohl einfach nur ein Troll. Ersetze das Relais durch deinen Motor: http://www.mikrocontroller.net/articles/Relais_mit_Logik_ansteuern gruß cyblord
Julian R. schrieb: > Wenn ich das jetzt richtig verstanden habe was war denn an meinem obigen Satz mißverständlich? Wegstaben Verbuchsler schrieb: > NEIN, man kann nicht einfach irgendein Befehl absetzen, und dann rinnt > mehr Strom aus der Controller-Leitung.
Diese Schaltung funktioniert zwar Aber nicht so wie sie soll . Der Motor läuft immer und auch wenn der microkontroller keinen Strom hat. Sagt mir bitte was ich anders machen muss damit der Motor nur läuft wenn auch ein Signal aus dem Port kommt.
Julian R. schrieb: > Diese Schaltung funktioniert zwar > Aber nicht so wie sie soll . > Der Motor läuft immer und auch wenn der microkontroller keinen Strom > hat. > Sagt mir bitte was ich anders machen muss damit der Motor nur läuft wenn > auch ein Signal aus dem Port kommt. Einen Schaltplan zeichnen.
Julian R. schrieb: > Überlaste ich so nicht die Usb buchse? Da hast du natürlich recht. Mehr als 0.1A darf man da (offiziell) nur auf Antrag rausholen und bei 0.5A ist (eigentlich) Schluß. Für mehr Strom brauchst du eine zusätzliche Stromversorgung und einen Treiber, der den Strom schalten kann.
Schau Dir doch mal die Links an die gepostet wurden... Und "Arduino Gleichstromotor" in Google eintippen sollte auch ned so schwer sein. Damit würde man z.B. sowas finden: http://www.arduino-tutorial.de/2010/06/motorsteuerung-mit-einem-transistor/ Im Arduino Forum wurde das Thema sicher auch noch nie behandelt... Wenn man gar keinen Plan hat könnte man sich auf Ebay auch ein Motor Shield für den 10er kaufen.
Was ist den jetzt an meiner Schaltung falsch? ich hab alles so verbunden wie in: http://www.mikrocontroller.net/articles/Relais_mit_Logik_ansteuern
Julian R. schrieb: > ich hab alles so verbunden wie in: Hast du nicht, sonst würde es funktionieren.
1. Wahrscheinlich hast du ein 12V Relais, das geht meistens nicht bei 5V 2. Tausch mal das komische Batterie->USB dingens gegen ein USB-netzteil
Hi
>währe ansonsten alles richtig ?
Ich sehe keinen Widerstand. Was ist das für ein Transistor.
Glaubst du ernsthaft, das dir das bei dem Bild sagen kann.
MfG Spess
Aber ist es vom grundprinzip richtig, dass ein kleines Stromsignal dem Transistor sagt, dass er den Großen externen Strom jetzt zu dem Motor durchlassen kann?
Irgendwie fehlt bei dem Foto von de mAufbau auch die Verbindung der Masse vom µC mit der Masse vom Transitor/Motor-Kreis.
Hi >Aber ist es vom grundprinzip richtig, dass ein kleines Stromsignal dem >Transistor sagt, dass er den Großen externen Strom jetzt zu dem Motor >durchlassen kann? Ja. Aber nur mit dem richtigen Transistor und der richtigen Schaltung. Bei deiner fehlt, wie gesagt, der Basisvorwiderstand und wenn ich das richtig sehe die Verbindung Controller-Masse zu Batteriemasse. MfG Spess
Motor, Controller und Batterie benötigen eine gemeinsame Masse !!! Zeichne ein vollständiges Schaltbild !!
Hmm schrieb: > Und "Arduino Gleichstromotor" in Google eintippen sollte auch ned so > schwer sein. Damit würde man z.B. sowas finden: > http://www.arduino-tutorial.de/2010/06/motorsteuerung-mit-einem-transistor/ Wozu wurden eigentlich Schaltzeichen und Schaltpläne erfunden?
Hi
>Wozu wurden eigentlich Schaltzeichen und Schaltpläne erfunden?
Musste wahrscheinlich auch den Fähigkeiten von Arduinobenutzern
angepasst werden.
MfG Spess
Es fehlt ein Basiswiderstand - der Motor muss zwischen Kollektor und Plus liegen - der Emitter an GND
Dir wurde doch oben ein Schaltplan gezeigt wie das zu verbinden ist, du behauptest du hättest es genau so gemacht und jetzt postest du eiskalt was völlig anderes? Auf die Art ist das bestenfalls ein Linearregler der dem Motor bei 3,3V Logikspannung ca 2,5V anlegt, falls der Transistor es aushält.
Es fehlt außerdem eine Freilaufdiode am Motor, sonst würde der Transistor beim Ausschalten des Motors, durch die Induktionsspannung zerstört werden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.