PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brushlessmotor mit esc und Arduino ansteuerun



D3nni5
07.04.2015, 14:07
Hallo,
ich will einen Brushlessmotor mit einem esc über einen Arduino Uno ansteuern. Nun habe ich lange gesucht und habe allerdings noch keine gute Erklärung gefunden.
Als Motoren möchte ich diese benutzen : www.amazon.de (http://www.amazon.de/gp/search/ref=as_li_qf_sp_sr_tl?ie=UTF8&camp=1638&creative=6742&index=aps&keywords=B00DK9JCYS&linkCode=ur2)
Als esc diese : http://www.amazon.de/gp/product/B00LN5SMC4/ref=s9_simh_gw_p21_d0_i1?pf_rd_m=A3JWKAKR8XB7XF&pf_rd_s=center-2&pf_rd_r=17W97A5V711Q06RWZCFH&pf_rd_t=101&pf_rd_p=455353807&pf_rd_i=301128

Nun habe ich Schaltungen wie diese gefunden : http://www.breadboarding.de/wp-content/gallery/brushless-motor/Arduino-Poti-ESC.jpg

Die erste Frage die ich dazu hätte ist warum ein Anschluss nicht belegt ist. So wie ich das verstanden habe reicht ein Anschluss für die Datenübertragung aus. Wofür dann allerdings der andere Anschluss ist weiß ich nicht.
Den Potentiometer möchte ich weglassen und das Ganze über C# und einen Xbox360 Controller steuern, was an sich kein Problem sein sollte allerdings reagiert der Arduino nicht wenn ich über ein C# Programm Zahlen übertrage die beispielsweise verschiedene LEDs ansteueren sollen.

Rabenauge
07.04.2015, 16:43
Lerne mal die Grundlagen. Wird helfen, glaubs mir...

Zu der Schaltung: wahrscheinlich (ist ja nix richtig beschriftet) soll das bedeuten, dass dieser Regler über ein BEC verfügt.
Da der Arduino in der Schaltung offenbar keinen Strom braucht (???) macht das Sinn- ich pesönlich würd den Anschluss genau dafür benutzen: nämlich den Arduino mit hübschen 5V (das hat nen normales BEC) versorgen unter umgehung des bordeigenen Spannungsreglers.
Hier kommt ne kleine Tücke: wenn man mehr als einen solchen Regler anschliesst, muss man zwingend die anderen BEC-5V-Leitungen weglassen, so wie das dort gemacht ist. Niemals mehrere BEC ohne weitere Tricks zugleich verwenden!
Ansonsten ist das da soweit ok: den Arduino extern versorgen und du kannst den Motor genauso ansteuern, wie man es mit nem Servo macht.

Was deine Übertragung mittels irgendwelcher C#-Programme angeht, müsstest du das schon genauer erklären-oder die ersten beiden Sätze meines Beitrags genauer beachten. Ich vermute mal, dass du diese Zahlen da per serieller Schnittstelle übertragen willst- hast du das wirklich drauf?
Korrekte Baudrate eingestellt?

D3nni5
07.04.2015, 18:18
Erstmal danke für die Antwort.

Warum der Arduino in der Schaltungen keinen Strom braucht ist mir auch nicht klar. Darauf hab ich auch garnicht geachtet. Der Arduino wird natürlich extern versorgt. Mir ging es aber eigentlich um den Anschluss des ESC, da ich nicht wusste warum ein Anschluss offen blieb. Ich gehe dann jetzt mal davon aus, dass bei dem esc das ich verwende die zwei blauen äußeren Kabel + und - sind und das mittlere die Drehgeschwindigkeit. Und die unteren Kabel die selbe Funktion wie die in der Schaltung haben.
Was das C# Programm angeht habe ich versucht das Ganze über die serielle Schnittstelle zu übertragen und die Baudrate war auf 9600. Ich probiere da einfach noch ein bisschen rum.
Ich entschuldige mich mal dafür, dass einige Fragen sehr anfängerhaft sind aber das ist mein erster Quadrocopter den ich bauen werde und ich habe bis jetzt noch kein esc und Brushlessmotor verwendet weil ich dazu keine guten Erklärungen gefunden habe.

Nachtrag :

Das C# Problem hat sich gerade erledigt ich habe den Fehler gefunden.

Geistesblitz
07.04.2015, 22:28
Wie hast du es denn gelöst bzw. was war der Fehler?

Ich sehe da jedenfalls nicht so ganz durch, bei dem dreipoligen Anschluss würde ich eigentlich an einen üblichen RC-Anschluss denken (also Gnd, 5V und PWM mit 20ms Periodendauer und 1-2ms On-Time). Was soll das denn für eine serielle Schnittstelle sein? Oder habe ich da was falsch verstanden?

Rabenauge
08.04.2015, 11:01
Falls es genau der Regler von deinem Link ist dann sieht das so aus:
Rot + Schwarz dick=Akku.
3xBlau: zum Motor (die sind gleichfarbig, weil man die je nach erforderlicher Drehrichtung verbinden muss)
Das dünne Kabel ist nen ganz normaler Servostecker: Schwarz Masse (unbedingt mit der Arduino-Masse verbinden),Weiss ist Signal (die eigentliche Steuerleitung), Rot ist Plus.
Falls du den Arduino wirklich extern mit Spannung versorgen willst, musst du den roten da entfernen (kann man meist vorsichtig aus dem Stecker fummeln, und isolieren), da der Regler angeblich ein 3A-BEC hat (wäre ich bissel skeptisch bei dem Preis, aber steht so da).
Ich persönlich würd das nehmen (von _einem_ der Regler, nie mehrere BEC zusammen benutzen!), um die Bordelektronik zu versorgen.
Dafür isses nämlich da und so braucht der Arduino nix eigenes..

D3nni5
08.04.2015, 11:34
Ok danke dafür.
Das hat mich einiges weiter gebracht. Ich denke mal, dass die Elektronik somit endlich geklärt ist. Das war genau die Erklärung nach der ich gesucht habe :).

@Geistesblitz : Ich habe mich gestern Abend nochmal damit beschäftigt und das Ganze neu geschrieben. Es wird demnach nur ein kleiner Fehler gewesen sein da ich die das Programm genauso nochmal geschrieben habe. Ich wollte es nur nochmal schreiben um zu sehen wo der Fehler ist was sich dann allerdings glücklicherweise erledigt hat. Über die serielle Schnittstelle kann man Infromationen zwischen Arduino und PC austauschen. Das geht dann über die Serial Befehle und den seriellen Montior. Es geht dann auch komplexer wenn man ein C# Programm einbindet. In diesem Programm muss man nur eine serielle Übertragung starten in dem man die Baudrate angibt und den USB-Anschluss (COM1,COM2,...) und dann kann man Informationen austauschen.

Geistesblitz
08.04.2015, 12:49
Achso, du kommunizierst darüber mit dem PC, das ging für mich nicht aus dem Beitrag hervor. Dachte, du würdest das für die Steuerung des ESC verwenden wollen, was für mich irgendwie Quatsch wäre...