mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik C-Programmierung


Autor: Manouchehr Afkar (mafkar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
hab ein Projekt, in dem ich mit C-Code(PWM-Erzeugung) zuerst einen 
einzigen Servomotor(HSR-8498HB von Fa. HiTec) von 
Robonova-I(HiTec-Roboter) ansteuern aber extern d. h. mit eigenem 
µC(Evaluationsboard MCBXC88x von d. Fa Keil mit dem 8-bit Prozessor XC 
888 von d. Fa. Infinion) und nicht mit µC von dem Roboter! Hat einer von 
euch irgengdwelche Idee oder ähnlichen C-Code?

mfg
manouch

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> irgengdwelche Idee

Ideen zur Vorgehensweise, wie man das Thema überhaupt gestemmt bekommt?

Autor: CaH (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Irgendwie verstehe ich die Problemstellung nicht . Komplette und 
richtige deutsche Sätze würden das Verständnis erleichtern.

Autor: NEMESIS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vorsicht Anfänger

Hat nicht der MicroController des Robotters eine Bibliotek für eben 
diesen?
Also musste für den anderen Controller natürlich eine andere Bibliotek 
einbinden, die Befehle sind aber wohl weitestgehend einheitlich 
(zumindest wenn die Controller einem Hersteller entspringen) also 
XC888.h oder sowas...
http://www.keil.com/dd/docs/c51/infineon/xc888.h

Ich rat einfach mal auf Verdacht, korrigiere mich wenn ich falsch liege:
Du sollst eine Motorsteuerung für einen Servomotor(HSR-8498HB) durch 
eine selbstgebastelte ersetzten !
Dein Evaluationsboard hast du von deinem Lehrer bekommen, damit du den 
XC
888 Programmieren kannst, und wenn du glück hast sind auch schon 
steckanschlüsse für eine Schaltung daran.

Oft hilft das Datenblatt
http://www.keil.com/dd/docs/datashts/infineon/xc88...
z.B. weil dort Vddp = 3V3 oder 5V I/O Port supply (Pins7, 17, 43/
7, 25, 55)
Der Motor bekommt eine Andere Versorgungsspannung 6-7,4V
Wenn das soweit in Handware Vorhanden ist musste glaub ich nur nich den 
PWM Kanal verbinden mit dem PWM anschluss des Servos der hat 
PWM-Interface (RC Standard) Also Ist die Neutrale Position nicht null 
sondern 90° und der Schwenkwinkel +-90° (wird durch das PWM signal 
vorgegeben) musste mal schauen ob deine 5V vom Controller am Motor 
reichen um als High zu gelten aber ich denk schon und ob evtl eine 
maximalspannung angegeben ist...
Irgendwo gibts dazu auch ein datenblatt, da bin ich sicher...

>ähnlichen C-Code?
Das ist jetzt schon sehr speziell ^^ Da du keinen Code angehängt hast 
weiß doch jetzt niemand ähnlich zu was???
Aber keine angst hier gibt es ein wie ich finde ganz tolles und sehr 
gelungenes Tutorial (bis auf ein paar kleinigkeiten)
GCC hab ich noch nicht gelesen bin selber erst noch im AVR-Tutorial mit 
Assembler unterwegs....
Aber hier
http://www.mikrocontroller.net/articles/AVR-GCC-Tu...
wären die Grundlagen erklärt...

So den rest deiner Hausaufgaben kannste dann hoffentlich alleine 
schaffen.

Autor: Manouchehr Afkar (mafkar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zuerst danke dir, dass du mir geantwortet hast, Sorry ich weiß, dass 
meine Deutschsprache nicht gut ist aber trotzdem erkläre ich es 
nochmal(koprimiert).
Also ich mache meine Dipl. Arbeit und als die Vorbereitung muß ich einen 
einzigen Servomotor eines Roboters mit einem C-Code ansteuern d. h. mit 
einem PWM-Impuls, der auch im Code generiert wird, die Servoposition 
(Drehwinkel 0° bis 180°) ändern. Übrigens darf ich nur einen 
Portpin(P4_0) von meinem µC als den gleichzeitigen Aus-, bzw. Eingang 
verwenden(bi direktionale Kommunikation). Wenn ich auf die richtige 
Richtung komme erst dann geht, s los mit der Hauptaufgabe d. h. die 
Ansteuerung des rechten Arm vom Roboter(bestehend aus 3 Servos!!)...

LG
manouch

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> einzigen Servomotor eines Roboters
Meinst du z.B. einen AC-Synchronservo (also sowas: 
http://www.dierking-antriebe.de/ac-servomotoren.html), oder einen 
schnöden kleinen Modellbauservo (sowas: 
http://www.modellbau-wiki.de/wiki/Servo)?

Das erstere hat schon einen Anspruch, der zweite ist simpel...

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>HSR-8498HB
Scheint mir wie ein Modellbauservo angesteuert zu werden.

Ganz dick steht da unten auf der Hitec Seite übrigens:

>ACHTUNG: Jetzt neue Firmwareversion V1.10 - Ansteuerung direkt über >PC-COMport 
möglich!

Das man mit sowas ein Diplom bekommt... ich hätte DOCH studieren sollen 
:-)

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
doc schrieb:
>>HSR-8498HB
> Scheint mir wie ein Modellbauservo angesteuert zu werden.

Eher nein.

Laut
http://www.servocity.com/html/hsr-8498hb_hmi_robot...

  RS-232C Daisy Chain Interface up to 128 servos

D.h. die Dinger haben eine Serielle Schnittstelle.
Datenblatt besorgen. Servo an den PC anhängen. Hyperterminal starten und 
mal mit dem Teil rumspielen, was man ihm (laut Datenblatt) so senden 
muss, damit das Servo reagiert.

> Das man mit sowas ein Diplom bekommt... ich hätte DOCH studieren sollen
> :-)

Wenn alle studieren würden, wer würde dann noch die Fragen der 
Dimplomanden hier im Forum beantworten?

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Servo kann beides und zusätzlich noch ein propietäres Protokoll 
namens "HMI".

Kluges Teil. Schade, daß es nicht auch noch Kaffee kocht.

Autor: Ulli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> Kluges Teil. Schade, daß es nicht auch noch Kaffee kocht.

Viel schlimmer ist doch wohl, dass das Teil klüger ist als der Diplomand 
...

Laut seinem Post vom "Datum: 03.12.2009 14:51" soll er das Ding ganz 
normal mit Impulslängen füttern. Da muss er sich sein Diplom aber hart 
erarbeien, denn das haben vor ihm erst ca. 5000 andere auch getan ;-)

Übrigens ist das Teil ein ganz normaler "Digitaler Servo". Hersteller 
wie Graupner, Multiplex, ... haben solche Servos auch im Angebot. Nur 
haben die eigene Programmiergeräte dafür, mit welchen z.B. die 
Steuerkurven verändert werden können.
Ob die ein selbst gebasteltes Interface haben oder ob es nicht doch auch 
einfach nur RS232 ist weiss ich allerdings nicht.

Wo kommen denn all die Servos her? Wahrscheinlich gibt es doch eh nur 3 
Hersteller weltweit. Weiss das jemand ?

MfG
Ulli

Autor: P. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ulli schrieb:

> Wo kommen denn all die Servos her? Wahrscheinlich gibt es doch eh nur 3
> Hersteller weltweit. Weiss das jemand ?

Hitec ist einer, GWS ist auch einer. Den Dritten kenne ich nicht.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kluges Teil. Schade, daß es nicht auch noch Kaffee kocht.
Blockier doch einfach mal die Welle und leg den vollen Strom an. Dann 
kannst du sicher auch Kaffee drauf kochen  ;-)

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kein Wunder, daß das Ding so schlau ist.
Da ist schließlich ein Mega8 drin :-))

http://robosavvy.com/Builders/i-Bot/HSR8498HB%20Servo.pdf

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieviele Servos das sind, spielt fast keine Rolle.
Der Servokram müßte hier irgendwo auch in der Codesammlung rumfliegen, 
das ist wirklich einfach.
Den Brauchst du aber garnicht, da du rs232 verwenden kannst.

Falle es dich interessiert:

Ich habe mit 16 oder 17 schon 8 Servos über den "Userport" eines C64 
gesteuert. In Assembler.

Autor: doc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heh, wieso ist grade der Beitrag auf den ich mich bezog, verschwunden.
egal.

Autor: Kappo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich muss sagen, dass du deine Diplomarbeit nicht aus dem Netz holen 
solltest, sondern Forschen und Selbstmachen ist angesagt.
Wie bereits Ulli gesagt hat, haben ca. 5000 Leute vor dir es gemacht.Ich 
denke, dass du deinem Prof sehr leid getan hast, so eine einfache Arbeit 
als Dipl. Arbeit zu bekommen.
Dann kann auch nicht so schwer sein. Also Ärme hoch und mach es selbst.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.