Zusammenfassung
Vielleicht der kleinste und billigste Rover, den man drucken kann.
Die Schrittmotoren sind 4-adrige 2-Phasen-Mimi-Schrittmotoren, Mikro-Schrittmotoren D6xH11mm mit kleinem Kupfergetriebe:http://www.amazon.com/gp/product/B00M7QQIZ6?
Habe dieses Datenblatt online gefunden:http://www.nidec-copal-electronics.com/e/product/files/file/b862724e290bcc90376e42235e959fd090c36ad7.pdf
Es scheint, dass es etwa 300 mA für 3N ziehen kann, also versuche, bessere Batterien zu bekommen als die, die ich habe. Ich schlage vor, zwei 3,7 V 680 mAh Lithium-Ionen-Batterien in Serie an den Raw-Pin des Arduino anzuschließen. Hier ist, was ich zu upgraden plane:https://www.amazon.com/gp/product/B00MF3SAF2/ref=ox_sc_act_title_1?ie=UTF8&psc=1&smid=A3EFY0HU0G8BT6
Der Controller ist eine neue Version des Estone Pro Mini Moduls Atmega328 5v 16m, kompatibel mit Arduino:http://www.amazon.com/gp/product/B00GLES8BW?
Nach den 8 DIO, die für die Schrittmotoren benötigt werden, bleiben Ihnen 6 DIO und 8 AIO für jede Erkennung, die Sie hinzufügen möchten. Halten Sie die Batterien leicht, da die Schrittmotoren nicht mit zu viel Gewicht umgehen können. Viel Spaß!
UPDAte: Ich habe die Räder viel kleiner gemacht (weniger erforderliches Drehmoment auf den Motoren) und Batteriehalter hinzugefügt. Ich verwende 3,7V 110mAh Batterien aus einem Quadrocopter-Spielzeug (braucht nur eine Batterie für einen langen Lauf). Lassen Sie mich wissen, wenn Sie Fragen haben.
Druckeinstellungen
Flöße:
Ja
Unterstützt:
Ja
Auflösung:
0,1 mm
Füllung:
100%
Hinweise:
Da dieser Druck winzig ist, drucken Sie ihn natürlich zu 100% und mit einer möglichst hohen Auflösung und sehr langsam. Es wird sowieso nicht 10 Minuten dauern, um ihn zu drucken. Bei den Rädern drucken Sie wie es ist und erweitern das Ganze vorsichtig mit einem Bohrer, bis sie sich auf das Schrittmotorgetriebe schieben lassen - seien Sie jedoch vorsichtig, da Sie das Getriebe durch das Schrittmotorgehäuse sch
Post-Druck

Schritt 1: Löten Sie die Kabelanschlüsse an die Schrittmotoren (Entschuldigen Sie für das Bild). Seien Sie vorsichtig, da die Schrittmotor-Pins verbrennen oder abbrechen können.

Schritt 2: Schnappen Sie die Schrittmotoren ein (es sollte eine enge Passung sein - schnappen Sie nicht den Kunststoffstützen ein). Drücken Sie auch nicht direkt auf die Zahnräder, da sie durchdrücken können - was den Schrittmotor ruinieren kann.

Ich schneide die Drähte vorab und verzinne sie, um das Löten im Arduino zu erleichtern. Die Stiftpaare der Schrittmotorkohle sind senkrecht zur Schrittmotorwelle. Verkabeln Sie entsprechend (kann später sowieso im Code korrigiert werden).

Schritt 3: Löten Sie den Arduino an die Motoren. Ich habe DIO 6-9 für den linken Motor und 13-10 für den rechten Motor verwendet.

Schritt 4: Mach nicht das, was ich getan habe, und klebe die Leiterplatte mit Heißkleber auf das Gehäuse... das macht das Löten der Header-Pins zu einem Albtraum.

Schritt 5: Wackeln auf Rädern (es wird einige Feinabstimmungen mit einem Bohrer erfordern, aber drücken Sie nicht zu stark auf die Zahnräder), setzen Sie ein oder zwei Batterien ein, und Sie sind bereit zum Codieren.
Benutzerdefinierter Abschnitt
AccelStepper.h
Um mehrere Schrittmotoren gleichzeitig zu betreiben, schau dir die AccelStepper-Bibliothek auf GitHub an. Sie ist einfach, schlank und sehr einfach zu verwenden. Hier kannst du sie bekommen:
https://github.com/adafruit/AccelStepper
Arduino-Startcode
// MultiStepper.pde
// -- Modus: C++ --
//
// Zeigt, wie man mehrere Schrittmotoren gleichzeitig steuert
// Lässt einen Schrittmotor vorwärts und rückwärts laufen, wobei er beschleunigt und abbremst.
// an den Grenzen. Betreibt andere Schrittmotoren gleichzeitig.
//
// Copyright (C) 2009 Mike McCauley
// $Id: HRFMessage.h,v 1.1 2009/08/15 05:32:58 mikem Exp mikem $
einbeziehen
// Definieren Sie einige Schrittmotoren und die Pins, die sie verwenden werden.
AccelStepper stepper1(4, 6, 7, 8, 9);
AccelStepper stepper2(4, 13, 12, 12, 10);
void setup()
{
stepper1.setMaxSpeed(120.0);
stepper1.setAcceleration(100.0);
stepper1.moveTo(60);
)
void loop()
{
// Ändere die Richtung an den Grenzen
wenn (stepper1.distanceToGo() == 0)
stepper1.moveTo(-stepper1.currentPosition());
wenn (stepper2.distanceToGo() == 0)
stepper2.moveTo(-stepper2.currentPosition());
stepper1.run();
stepper2.run();
}
Источник модели
