Du kannst mit deinem µC PWM erzeugen. Die Impulsbreite der PWM kannst du z.B. in 255 Schritte einstellen und sagst du über USB.
Du kannst mit deinem µC PWM erzeugen. Die Impulsbreite der PWM kannst du z.B. in 255 Schritte einstellen und sagst du über USB.
Den Microcontroller so zu Programmiern, dass er einen vom Computer vernünftig eingegebenen Wert bekommt und den auf eine X-Beliebige Art umzuwandeln ist kein Problem. Das einzige Problem was ich habe ist, dass hier zwei getrennte Stromkriese vorliegen, von welchem ein Stromkreis den anderen Steuern soll, nämlich der 5 Volt Stromkreis den 12 Volt Stromkreis. Das müsste mit einem Hochleistungstransistor oder nem Hochleistungs OPV kein Problem sein. Ich kenn nur leider die Bauteile in der Richtung nicht, weshalb ich gerne Hilfe bei der Wahl der Bauteile hätte. Der Tipp mit dem Motortreiber war dabei Gold wert Danke Ich war wie gesagt bisher nur Programmierer und Datenverarbeitungstechniker. Ich kenn mich mit Logikschaltungen aus wie zum Beispiel die 74..XX aber weiteres Wissen bin ich gerade erst dabei mir das anzueignen.
Ich habe jetzt das hier gefunden: Motortreiber.
besteht die chance das 4 Mal, also für jeden Motor einmal mit auf die Platine mit dem Microcontroller draufzupacken? Ich kann sehr gut löten, habe alle Materialien zur Verfügung, die zum Ätzen benötigt werden, habe also kein Problem mit SMDs in dieser Größe, wenn also jemand die Bezeichnungen und die Verschaltung dieser Bauteile kennt wäre mir sehr geholfen
Und noch etwas: Weiß jemand, ob der PIC18F4550 vier analoge Ausgäge hat oder ob ich für jeden Motor ein einzelnes USB gerät bauen muss, oder noch besser jemand dann einen anderen PIC kennt, der 4 analoge Ausgänge hat.
Vielen Dank für die große Geduld und die Hilfe
µCs mit analogen Ausgängen sind bei den kleineren Größen eher unüblich. Das Schlagwort dazu heißt übrigens DAC (Digital-Analog-Converter). Was dein gewählter PIC hat oder nicht hat, kannst du im Datenblatt nachlesen, um dessen Lektüre wirst du sowieso nicht umhin kommen.
Dir reicht die PWM-Funktionalität, die quasi jeder µC mit den Timern mitbringt. Mit dem Signal kannst du dann (bei gemeinsamer Masse von USB-Teil und Leistungsteil) direkt an den Motortreiber ran (Integrierte Treiber haben üblicherweise getrennte Anschlüsse für Logikspannung und Versorgungsspannung) oder du baust noch einen Optokoppler dazwischen, um die USB-Seite komplett vom Leistungsteil zu trennen. Letztere Variante hat den Vorteil, dass du dich deutlich mehr anstrengen musst, um den USB-Port zu rösten, der Nachteil besteht darin, dass du vielleicht etwas mehr Arbeit darin investieren musst, das PWM-Signal sauber durch den Optokoppler zu befördern.
Ach ja: Wenn du keinen PIC mit genug PWM-Ausgängen findest, kannst du auch einfach mit zwei PICs arbeiten die untereinander kommunizieren. Oder mit einem kleinen der sich um den USB-Kram kümmert, und einen größeren/spezialisierten der die Signalerzeugung macht. Letzterer kann dann über Optokoppler abgetrennt werden, dann kann der sein PWM-Signal direkt an die Motorendstufe weitergeben und der USB-Port ist dennoch entkoppelt/geschützt.
mfG
Markus
Tiny ASURO Library: Thread und sf.net Seite
Ich habe mir das Datenblatt des PICs angesehen und bin zu allem fündig geworden. Es wäre schön, wenn jemand die Schaltung für den Motortreiber von oben hätte, weil ich die ja zu gerne mit auf der Platine hätte. Der von mir gewählte PIC hat genügend Timer (genau 4 an der Zahl), was mir wie ich wahrscheinlich richtig vermute einiges an Fusselarbeit erspart.
Also falls jemand so eine Schaltung hat (kann auch mit nur einem Motorausgang sein) wäre ich sehr sehr glücklich. Ich bin echt am überlegen, ob ich statt angewandter Informatik nicht lieber Robotik studieren soll Macht irre viel spaß das alles zu recherchieren
@Timer: Wenn die vier Timer alle PWM mit geforderter Auflösung können ja.
@Motortreiber: Hubert hat bereits alles geschrieben, was du wissen musst. Der Motortreiber orientiert sich am Spitzenstrom der Motoren (+ etwas Reserve). Es gibt die Bausteine in verschiedenen Größen, und wie die verschaltet werden, kannst du normalerweise deren Datenblatt entnehmen. Einen Überblick gibt auch eine RN-Wissen-Seite
@Studium: Mach dir keine großen Hoffnungen, dass du im Studium auch nur ansatzweise so nah an die Praxis kommst wie mit solchen Projekten.
mfG
Markus
Tiny ASURO Library: Thread und sf.net Seite
@Timer: wenn nicht packe ich eben noch einen Frequenzteiler dahinter.
@Studium: Es ist trotzdem blöd sich alles zusammenklauben zu müssen, da schadet ein wenig grundwissen echt nicht...
@Motortreiber: Danke für die Seite, das war genau das was ich gesucht habe
@Timer: Das bringt dir nichts. Entweder du hast die nötige Anzahl an Ausgängen mit erforderlicher Auflösung oder nicht. Durch herunterteilen ändert sich die Auflösung nicht! Aber auch die "kleinen" Timer (8-Bit) sollten dir eigentlich genug Auflösung bieten.
Halb-OT: So Zeug lernst du nicht in einem Informatik-Studiengang. Auch nicht das nötige Grundwissen. Eher in einem Elektrotechnik-Studiengang, das kann ich aber nicht beurteilen. Aber Informatik? No Way. Die Robotiker kümmern sich eher darum, was sie dann mit der Hardware machen können, dem Arbeitsschwerpunkt geschuldet kommt da oft auch noch eine Hardwareabstraktionsschicht (Echtzeitbetriebssystem etc.) zum Einsatz.
mfG
Markus
Tiny ASURO Library: Thread und sf.net Seite
Welchen Motortreiber du verwendest hängt vom Strom ab den deine Motoren im Spitzenfall brauchen.
Es gibt die ICs dafür in vielen Leistungsklassen. Beginnend mit L293, L298, L6203 und viele andere.
Bei PIC kann ich dir allerdings nicht helfen.
Lesezeichen