-
Gesamte Inhalte
3.658 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
8
Inhaltstyp
Profile
Forum
Articles
Wiki
Galerie
Kalender
Alle erstellten Inhalte von barney
-
Ich bitte ja explizit um Anmerkungen und Erweiterungen des Programms. Programmieren ist nicht gerade meine Kernkompetenz.
-
Bekomme ich deine Modifikation zugesendet?
-
WOW, Das nenne ich progressiv.
-
Kann ja sein, dass dein Sohn sich in der Pubertät befindet und du möchtest ggf. seiner Aufmüpfigkeit und Großmäuligkeit einen Dämpfer verpassen Ich kann das ja nicht wissen....
-
Nein, dass auf keinem Fall. Ich benutze halt zum Einschlagen eines Nagels für kleine Bilder keinen 15 Kg Schlägel, in meinem Fall möchte ich nur ein Servo ansteuern. Außerdem halte ich es für Frevel, einen 48MHz Prozessor mit Warteschleifen unnötig aufzuhalten. Die alte so wie die jetzige Fassung nutzen die Hardware des Mikrocontrollers. Der wird nicht im geringsten mit der Erzeugung der PWM behelligt. Was will man mehr?
-
Und ich kann viel feiner das Signal auflösen!
-
Hardware naher ging es nicht und belastet nicht die CPU! Und der Code spart auch einige kBytes ein.
-
Nein, die Arduino Version lässt sich nicht für den Teensy nutzen. Dafür habe ich eine ungetestet Teensy Version mit der Nummer Elektroskate 3.2. Ich bekomme nächste Woch zwei weitere Teensys 3.1! Ich würde gerne erstmal selber testen ob die Teensy Version funktioniert. Oder du versprichst mir, das du die ungetestete Version nicht auf der Straße prüfst! VG Barney
-
Polizei / Eboard / München / :-(
barney antwortete auf Christian83's Thema in: Rechtliches (Straßenverkehr, Versicherungen, eKFV)
Ist keine Lib! Es wird die Arduino IDE verwendet. Ich schwenke Hardwareseitig von Arduino auf Teensy 3.1 Bitte die Beiträge dazu von mir lesen. -
Polizei / Eboard / München / :-(
barney antwortete auf Christian83's Thema in: Rechtliches (Straßenverkehr, Versicherungen, eKFV)
Es geht darum das Board mit zwei maximalen Endgeschwindigkeiten betreiben zu können: 1. Igel: Der Aussteuerungsbereich des Motorstellers wird so eingeschränkt, dass man wie ein Igel, sich langsam vorwärts bewegt. 2. Hase: Maximaler Aussteuerungsbereich des Motorstellers. Full Speed. Das Ganze kann während der Fahrt verändert werden. Dies dient der Sicherheit des E-Board Benutzers. -
Richtiger Motor für gewünschte Endgeschwindigkeit
barney antwortete auf axx's Thema in: Elektro-Skateboard Werkstatt
Ist dem großen Reifendurchmesser geschuldet. Ist im Grundsatz nicht falsch. Du kannst versuchen mit einer starke Untersetzung die hohe KV und Reifengröße auszugleichen. Die Leistungsstarken Motoren haben meist eine niedrige KV Zahl. Wenn ich dass belegen könnte. Leider bekommt man von den Motoren im Allgemeinen keine Kennlinien. Ich vermute, dass es eine Mindestdrehzahl geben muss, damit sich ein vernünftiges Drehmoment ergibt. Und dass dieses Drehmoment mit steigender Drehzahl deutlich abnimmt. Diese Vermutung leite ich von den bekannten Kennlinien von Schrittmotoren ab. Vielleicht findet sich einer, der ein Messplatz für das Drehmoment von E-Motoren baut. Für ein Geländeboard würde ich das Anzugmoment priorisieren. VG Barney -
Egal, ich benutze den, wo 100mA dran steht.
-
Richtiger Motor für gewünschte Endgeschwindigkeit
barney antwortete auf axx's Thema in: Elektro-Skateboard Werkstatt
Hi Axx, hast du deine Werte mal mit meinem Luftwiderstandsrechner abgeglichen? VG Barney -
Hi Fabian, Hi Dude, hier ein kleiner Teensy 3.1 Code zum Testen eines Servos oder Motorstellers. Hier muss ich den Teensy Hersteller noch anschreiben, da stimmt was nicht mit der analogen Auflösung bei 50Hz noch nicht. Aber ein Servo lässt es sich schon damit ansteuern. #define AnalogWriteResolutionBits 16 // Festlegen der Aufloesung in Bit fuer die Digital Analog Umsetzer, hier die PWM Auflösung #define AnalogWriteResolutionValue (uint16_t) pow(2,AnalogWriteResolutionBits) // Festlegen der Aufloesung (Wertebereich) fuer die Analog Digital Umsetzer #define PWMFrequenz 50 // Festlegen der PWM Frequenz für die Ansteuerung des Motorstellers. Ueblicherweise alle 20ms ein Impuls #define UntererStellWertMotor (uint16_t) float(1*AnalogWriteResolutionValue*PWMFrequenz/1000) // Wert berechnen für 1ms Pulsweite #define LeerlaufStellWertMotor (uint16_t) float(1.5*AnalogWriteResolutionValue*PWMFrequenz/1000) // Wert berechnen für 1.5ms Pulsweite #define ObererStellWertMotor (uint16_t) float(2*AnalogWriteResolutionValue*PWMFrequenz/1000) // Wert berechnen für 2ms Pulsweite #define Pin_Motorstelleranschluss A9 // Pin A9 Motorsteller PWM-Anschluss uint16_t pos = LeerlaufStellWertMotor; // variable to store the servo position void setup() { // Die Motorsteller benoetigen ein PWM Signal mit einer Impulsweite von // 1ms bis 2ms alle 20ms. Diese PWM wird ueber den 16 Bit Timer in Hardware realisiert analogWriteFrequency(Pin_Motorstelleranschluss, PWMFrequenz); // Einstellen der PWM Parameter fuer den Motorsteller analogWriteResolution(AnalogWriteResolutionBits); // analogWrite Aufloesung analogWrite(Pin_Motorstelleranschluss, LeerlaufStellWertMotor); // Geschwindigkeitsvorgabe Motor delay(2000); // Ende PWM } void loop() { for(pos = UntererStellWertMotor; pos < ObererStellWertMotor; pos += 1) { // von 1ms to 2ms analogWrite(Pin_Motorstelleranschluss, pos); // Geschwindigkeitsvorgabe Motor delay(1); // waits 15ms for the servo to reach the position } for(pos = ObererStellWertMotor; pos >= UntererStellWertMotor; pos -=1) // von 2ms to 1ms { analogWrite(Pin_Motorstelleranschluss, pos); // Geschwindigkeitsvorgabe Motor delay(1); // waits 15ms for the servo to reach the position } }
-
Was heißt denn alles läuft, was hast du denn angeschlossen? Weiter gemacht? Samstag hat die Sonne so intensiv geschienen, dass mein Board von mir ausgeführt werden wollte Wie gesagt, ich habe noch keinen Empfänger geschrieben und benötige den zweiten Teensy derzeit für den BLDC. Das Tempo wird jetzt ein wenig einbrechen. Fang schon mal, an dir die Teensy Programmierung näher anzusehen. Wie ein Servo angesteuert wird, bekommst du noch von mir. Auch wie du die Daten empfängst, dann hoffe ich aber darauf, dass du denn kleine Module schreibst, die ich mit einbauen kann. Du bekommst noch ein weiteres Programm mit den Nunchuk als Empfänger. Hier muss "nur" noch die neue Fernbedienung eingearbeitet werden. VG Barney
-
Du hast gefragt: Also ganz einfach - In der Nunchuk Lib Nunchuk.cpp void Nunchuk::update() { byte count = 0; unsigned int values[6]; // crypto key data address Nunchuk::_sendByte(0x40, 0x00); Fehlte diese Zeile: Nunchuk::_sendByte(0x40, 0x00); Und der Nunchu.init Befehl wird jetzt 10 mal die Sekunde ausgeführt.
-
Hallo Dude, die neue Nunchuk Lib habe ich dir heute per E-Mail zu gesendet. Weil ich einige Erklärungen für die Teensy 3.1 Umgebung auf für das Andere Projekt machen muss, schaue dir mal das Wiki an: http://www.elektro-skateboard.de/wiki/eigenbauten/fernbedienung-btteensy Es immer für erste Tests hilfreich, die Demos der Libs auszuprobieren. D.h. wenn du die Nunchuk Lib installierst, findest du dazu in der Arduino IDE unter Beispiele -> Nunchuk -> NunchukElektroskate Wenn du dieses Beispiel aufrufst und den Nunchuk richtig angeschlossen hast, ist in der Seriellen Ausgabe in der Arduino IDE was zu sehen. VG Barney
-
Nunchuk Problem gelöst: Egal ob Wireless oder Wire, beide arbeiten jetzt einwandfrei. Also man hat jetzt mehrere Möglichkeiten: ● Nunchuk mit Wii Protokoll ● Joystick analog ● Carrera analog oder was noch irgendwie analog ist...
-
Bluetooth benutzt das Lizenzfreie ISM Frequenzband. Und die HC-05 Module werden in der Industrie im 10ner Pack verbaut. Ist alles Standard. Da hättest du dir keinen Kopf machen müssen.... Naja ist ja noch der Prototyp.
-
Die sind default 115200 Baud. Preislich ist ein Modul so teuer wie 12 von meinen HC-05. Ups.... Ich bin gespannt.
-
Schreib mal Sonni an, der hatte eine geniale Idee für einen Controller am Unterarm. Als Geber würde ich den Nunchuk nehmen. Ob dieser noch modifiziert wird, bin ich mir noch nicht sicher! VG Barney
-
Wenn die HC-05 Module kommen, so müssen diese noch auf 115200 Baud umgestellt werden. /* AT Kommandos muessen innerhalb 0,5 Sekunden nach Spannungsversorgung gesendet werden */ void setup() { Serial.begin(38400); // Default fuer AT-Mode HC-05 38400 Baud } void loop() { Serial.write("AT+NAME=Elektroskate-Controller\r\n"); Serial.write("AT+UART=115200,0,0\r\n"); Serial.write("AT+VERSION?\r\n"); Serial.write("AT+NAME?\r\n"); while (Serial.available() > 0) { Serial.write(Serial.read()); // Hat das Modul es geraft? } delay (1000); // Nur lesen! /* //Serial.write("AT+NAME?\r\n"); Serial.write("AT+VERSION?\r\n"); while (Serial.available() > 0) { Serial.write(Serial.read()); } delay (2000); */ } Für die Programmierung muss der Pin PIO11 auf +3.3V vor dem Einschalten gesetzt werden! Das Programm wird nicht erfolgreich durchlaufen, da es in der Zeile Serial.write("AT+UART=115200,0,0\r\n"); in der Datenrate umgestellt wird. Nach der Umstellung musst du die Baudrate auf 115200 umstellen sonst siehst du nichts! Die ersten beiden Zeilen: Serial.write("AT+NAME=Elektroskate-Controller\r\n"); Serial.write("AT+UART=115200,0,0\r\n"); mit // auskommentieren! Das FB-modul wird hiermit umbenannt und ist mittels BT Scan unter den Namen Elektroskate-Controller zu finden. Sollte es geklappt haben, PIO11 ablöten!
-
Gucks Du: http://www.elektro-skateboard.de/wiki/eigenbauten/fernbedienung-btteensy Das mit dem Buzzer sollte so nicht sein. 1. Was passiert, wenn du nichts anschließt? 2. Anstatt dem Buzzer eine LED nimmst? Es soll schlecht verarbeitete Teensy 3.1 geben, wo Lötstellen Kurzschlüsse verursachen.
-
Mit dem Servo hast du meine nächste Frage beantwortet. Also Servosignal. Zur Geschwindigkeit: Es werden 10 Messzyklen je Sekunde übertragen. D.h. wenn du schnell genug bist, kannst du per Taster, z.B. eine LED 5x je Sekunde ein und ausschalten und dabei 10x je Sekunde den Servo verstellen.
-
Guten Morgen Fabian, da steht leider nicht viel, bis auf 3V. Hast du auf die Polung geachtet? Ist ein Datenblatt mit dabei?