Liste der Anhänge anzeigen (Anzahl: 2)
Open-Servo-CAN
Hi Leute,
während ich mir Gedanken gemacht habe über die Servos, die ich im meinem Humanoiden Roboter, der in Planung ist, einsetzen will, bin ich auf das Open Servo Projekt gestoßen. Nun hab ich nach längeren Überlegungen begonnen ein eignes Open Servo Projekt zu erstellen, nur soll dieser über einen CAN-Bus verfügen, um auch den Leuten mit Echtzeitbetriebssystem eine Chance zu geben, eine Echtzeitsteuerung weiter zu realisieren. Ich habe angefangen mit diesem Projekt bin leider noch nicht ganz fertig, aber wollte trotzdem mal die ersten Schaltpläne online stellen und Tipps von euch ein zu holen, da momentan die Platinen sehr vollgeoackt wäre und nicht gut zu routen sind. Bitte um Verbesserungsvorschläge und Tipps zur Steuerung. Wollte nach erfolgreichen ersten Prototypen auch ein Wiki-Eintrag über dieses Projekt erstellen, damit jeder, der auch auf der Suche nach einer Servosteuerung ist darauf Zugriff hat.
Gruß,
Sven
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
so habe das so schnell es ging noch in eine ähm halbwegs verständliche Form gebracht und entschuldige mich schon mal. Hoffe hab keinen Bock reingebaut und ach frag nicht nach K6, es ist ein Steckverbinder zu einem Funkmodul und hat nix mit dem CAN zu tun :-b
Beim USI gibt es noch ein Fallstrick. Der MOSI Pin ist am Controller plötzlich nicht mehr Output sondern Input, gleiches gilt für den MISO nur halt umgekehrt. Am besten du schaust dir die Bezeichnungen im Datenblatt an.
Im Schaltplan habe ich einen Abschlusswiderstand vorgesehen. Den kann man aus Platzgründen gegebenen Falls in den Anschluß verlegen.
Wenn du keinen Wert darauf legst, dass der Controller den MCP reseten kann, möchtest du vielleicht den CLKOUT des MCP nutzen. Wenn du einen Quarz am MCP hast, kannst du damit auch den Controller takten.
Gruß
Jens
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
Zitat:
Zitat von McJenso
habe den Tiny2313 erfolgreich mit dem MCP ans Laufen bekommen. Mit dem USI war das zwar erst etwas gewöhnungsbedürftig, geht aber. Als Grundlage habe ich das Tutorial von
http://www.kreatives-chaos.com/ genommen und den SPI-Zugriff für das USI umgebogen.
In der CAN Bibliothek währe das für den ATTiny45/85 sogar schon eingebaut ;-) Für andere AVRs müssten nur ein paar Defines erweitert werden.
Allerdings ist der Flashspeicher des Tiny2313 etwas klein, ich glaube kaum das darin der gesamte Code unterzubringen wäre. Beim openservo-Projekt sind sie ja nicht umsonst vom ATTiny45 zum ATMega168 umgestiegen:
Zitat:
Because of the limited Flash memory the ATtiny45 version of the OpenServo is considered to be obsolete.
Die ganzen Chips auf 17x20mm unterzubringen halte ich für sehr sportlich bis ausgeschloßen. Auf dem Bild im Anhang ist quasi die Minimalbeschaltung für CAN zu sehen, damit ist die Oberseite schon komplett voll und es fehlt noch die komplette Ansteuerung des Servos sowieso sämtliche Anschlüsse.
Damit das eventuell auf die Fläche passt bräuchte man einen µC mit integriertem CAN Controller in der Größe des ATMega168, ich kenne allerdings keinen der da in Frage kommt.
Grüße
Fabian