Forum: Mikrocontroller und Digitale Elektronik 80C535


von Jörg Schmidtke (Gast)


Lesenswert?

Hallo Leute...

Ich muss im Rahmen meiner Medizintechnikprüfung eine Platine für einen
80C535 bestücken, löten, etc.
Nun hab ich persönlich leider mal ÜBERHAUPT keine Ahnung von so einer
Sache. Kann mir vielleicht da mal einer weiterhelfen, wenn nicht sogar
erstellen??? Platine hab ich und eine Liste der Bauteile, die man sonst
noch dafür braucht hab ich auch und habe diese Teile schon bei Reichelt
bestellt. Diese Liste habe ich von einem Kollegen, der die selbe
Platine benötigte, allerdings für eine ganz andere Funktion, als die,
die ich benötige.... Deswegen kann ich mir auch net vorstellen, dass
ich dieselben Bauteile benötige, die er hatte...
Bitte helft mir, ich hab nur knapp 3 Wochen für diese Sache Zeit..

Wäre guit, wenn einer aus dem Ruhrgebiet unter Euch wäre, der mir da
mal entscheidend weiterhelfen kann....

Lieben Gruß, Jörg

von Michael (Gast)


Lesenswert?

Wolle wir ihn reinlasse oder gibt's Schimpfe :-) ?

von peter dannegger (Gast)


Lesenswert?

Ist das jetzt pure Gemeinheit, daß die Dir so einen uralt Chip
aufgebrummt haben ?

Da muß doch noch ein Schaltkreisgrab drumherum, damit der läuft.

Da sind die 3 Wochen schnell vergurkt.

Nimm lieber eine 1-Chip-Lösung, z.B. AT89C51CC03 (gleicher CPU-Core,
gleicher Compiler).

Da geht dann auch die Softwareentwicklung viel leichter (über die UART
runterladen, kein EPROM brennen mehr nötig).


Peter

von Jörg Schmidtke (Gast)


Lesenswert?

Hey Peter....

Ja Du, ich weiß das auch nicht so genau....
Im Prinzip könnt ich nehmen, was ich will, hab halt nur so ne nackte
Platine von denen bekommen, die für´n 80C535 ist....

Wie gesagt, ich hab null Plan von dr ganzen Sache, da ich mit E-Technik
so gut wie nie was am Hut hatte. Deswegen sagen mir Deine anderen
Vorschläge leider herzlich wenig was....
Deswegen such ich ja einen kompetenten Mann (oder Frau), die mir so´n
Teil fertig macht, also die Platine zumindest. Das Programmieren später
wird schon irgendwie anderweitig noch klappen. Denke mal, dass ich da
einen finden werde, der Assembler drauf hat.

Aber ich kann Dir ja mal ganz grob unser Vorhaben schildern, und dann
kannst Du mir ja vielleicht eine adäquate Lösung bieten. Eine, die
einfacher ist, und nicht ganz so teuer ist....

Also: Realisiert werden soll ein Tisch, der auf 3 bestimmte Höhen
fahren soll, und dort dann stehen bleibt. Also, Taster 1 tasten, Tisch
fährt auf 100cm und bleibt dann stehen. Taster 2 tasten: Tisch auf 70cm
und bleibt dann stehen. Taster 3: Tisch auf 50cm...
Sobald der Tisch eine Höhe erreicht hat, sollte es noch eine leichte
nachregulierung über einen kleinen Schalter geben. Also, das man
vielleicht noch 0,5 - 1cm hoch oder runter fahren kann.

Zur Verfügung haben wir einen Schrittmotor, der mal als Verstellantrieb
für eine Sat-Schüssel diente. Dieser würde aber für unseren Zweck
reichen, da wir ja nur ein Modell bauen...

Also haben wir vor, über eine kleine Handfernbedienung, über die
Steuerung den Motor anzutreiben....

Hilft Dir das vielleicht etwas weiter?

Lieben Gruß, Jörg

von icke (Gast)


Lesenswert?

Zitat :

" Deswegen such ich ja einen kompetenten Mann (oder Frau), die mir
so´n
Teil fertig macht, also die Platine zumindest. "

" Denke mal, dass ich da
einen finden werde, der Assembler drauf hat. "


Wir sind doch hier im "Selbermachenforum" , oder ???

von tex (Gast)


Lesenswert?

ich bin ja nur ungern der Spielverderber, aber ist das nicht ehr eine
Aufgabe für analoge Regeltechnik? Ich meine, alles was man dafür
braucht sind 4 widestände, drei taster ein Opv 4 Transistoren und ein
bisschen kleinkram. Alles zusammne in SMD auf eine Platine nimmt den
Platz ein, den alleine ein 535 braucht, mal abgesehen von Eprom,
Oszillator, Resetschaltung, IO-Treiber, .... ? Ich weiß, hier werden
auch Blinkrelais mit 80C586 gebaut, ich wollts ja nur mal anmerken.

von thkais (Gast)


Lesenswert?

Auweia.
Mit Null Ahnung so etwas aufbauen - das ist hart.
Zunächst mal gibts Schimpfe: Im allgemeinen reagiere ich ziemlich
allergisch auf solche Geschichten wie : "Ich habe eine Prüfung zu
bestehen, Jahrelang nicht im Unterricht aufgepaßt und nun muß ganz
plötzlich eine Lösung her".

Es wird nichts helfen, Du wirst Dich gewaltig auf den Hosenboden setzen
müssen, um das noch hinzukriegen. Schick schonmal Deine Freundin für die
nächsten drei Wochen in Urlaub und sag Deinen Freunden vom Stammtisch,
daß Du mit ihr weg bist...

OK, genug geschimpft.

Erstmal brauchst Du Informationen über den Schrittmotor. Es gibt, grob
gesagt, Unipoloare und Bipolare. Vom Typ ist abhängig, wie die
Ansteuerung auszusehen hat. Wieviele Kabel kommen aus dem Ding raus,
bzw. kannst Du diese Information irgendwoher bekommen?
Dann poste bitte mal die Stückliste, die Du bei Reichelt bestellt hast.
So kann man sehen, ob die Bauteile überhaupt für eine
Schrittmotorsteuerung geeignet ist oder ob Du noch etwas brauchst.
Welche Software hast Du zum Programmieren zur Verfügung? Du brauchst
auch ein Betriebssystem für die 80C535-Kiste, oder einen
EPROM/EEPROM-Brenner. Kannst Du den Schaltplan der Platine mal posten?
Bist Du auf 80C535 bzw. MCS-51 festgenagelt? Ansonsten wäre auch ein
Atmel Mega-8 für diese Aufgabe mehr als ausreichend und man könnte eine
solche Schaltung ruck-zuck auf einer Lochraster-PLatine aufbauen.


Was ich aber noch bemerken möchte: Eine fix- und fertige Lösung gibts
nicht. Du wirst schon selbst mitarbeiten müssen. Wenn Du irgendwo nicht
weiterkommst, wird Dir natürlich geholfen.
Nicht böse sein, aber ich bin auch berufstätig und kann nicht jedem
sein Prüfungsprojekt zusammenbasteln...

von Jörg (Gast)


Angehängte Dateien:

Lesenswert?

Hallo thkais....

Also, ersteinmal: Ja, generell hast Du Recht mit Deiner Schimpferei,
sofern´s berechtigt ist. ABER, wie ich bereits erwähnte, habe ich weder
Elektronik gelernt, noch hat man als Medizintechniker die Aufgabe, sich
mit irgendwelchen Bestückungen und Realisierungen irgendwelcher
Platinen zu beschäftigen. Das, was wir hier auf der Schule gelernt
haben, reicht nicht im entferntesten daran, was ich hier machen
muss.... Nur zu meiner Entschuldigung...
Ist ja nicht so, dass ich ganz untätig bin.... Bin jetzt seit Montag
dran, mich mal mit der ganzen Materie zu beschäftigen und hab ja schon
einiges in Erfahrung gebracht....

Also, der Motor ist ein Schrittmotor, der einen Zähler beinhaltet. Es
kommen 4 Drähte heraus, wovon 2 logischerweise die Spg.-Versorgung ist.
Der Motor läuft auf 24V DC und zieht ohne Last 300mA. Wir haben uns
sagen lassen, dass er unter Last max. 3 A ziehen wird. Allerdings wird
ja nicht allzu viel Last dran hängen, da es ein Modelltisch wird, der
eine Breite von 40cm und eíne Länge von 100cm haben wird. Die
Höhenreguliering soll über ein Scherensystem laufen.

Zum Programmieren nachher steht uns eine Assembler Software zur
Verfügung. Aber wie gesagt, um die Programmierung mach ich mir erstmal
noch keine Gedanken, ich denke, dass ich das mit ner Unterstützung
hinbekommen werde. Wichtig für uns ist erst einmal, das wir die Platine
hinbekommen. Allerdings hab ich noch in Erfahrung gebracht, das der
Controller ja mit 5V arbeitet. Wie ist das zu realisieren und was muss
ich noch nach dem Controller schalten, damit er überhaupt erstmal den
Motor ansteuert??

Ich häng mal die Bauteil-Liste mit an und den Schaltplan für den
80C535....

Trotzdem erstmal vielen lieben Dank für Deine Antwort.... Die erste
wirklich Vernünftige, die ich bekommen hab.

LG, Jörg

Ach so, wir sind nicht unbedingt auf dem 80C535 festgenagelt, haben
halt nur schon die geätzte Platine dafür von der Schule bekommen und
"sollten" damit arbeiten....
Wenn Du meinst, dass die Lösung mit diesem Atmel Mega-8 wesentlich
einfacher ist, dann bin ich natürlich auch dafür offen, wobei mir das
alles natürlich genauso wenig sagt....

von Jörg (Gast)


Angehängte Dateien:

Lesenswert?

Und der der Schaltplan dazu....

von thkais (Gast)


Lesenswert?

Nun,... wo fangen wir am besten an....

in der Bauteilliste habe ich nichts entdeckt, das den Motor (was immer
das auch für einer ist) steuern könnte.
Du hast auch ein OTP-EPROM bestellt. Das ist ein One-Time-Programmable
Eprom, d.h. einmal programmieren und dann wegwerfen - nicht gerade
optimale Voraussetzungen für eine Software-Entwicklung.
Wie ist denn vorgesehen, das geschriebene Programm in den Controller
reinzukriegen? Gibt es da irgendwelche Vorgaben? Ich möchte dazu
erwähnen, daß µC im allgemeinen kein Betriebssystem oder etwas
ähnliches mitgeliefert bekommen, das müßte dann schon in das ROM
programmiert werden - hierzu brauchst Du ein entsprechendes
Programmiergerät. Ist so etwas überhaupt vorhanden? Wenn nicht, dann
wirds richtig schwierig und die Entscheidung, einen anderen Controller
mit einfacheren Programmiermöglichkeiten zu verwenden, vereinfacht.
Prinzipiell könte man das Programm auch aus dem RAM heraus ausführen,
dies setzt allerdings ein funktionierendes Betriebssystem voraus (das
Du Dir erstmal besorgen mußt) und nach dem Abschalten der Anlage ist
das Programm weg, muß also neu geladen werden.
Bei den Atmel-Controllern kostet ein Programmiergerät nicht mal 5 Euro,
die entsprechende Programmiersoftware ist kostenlos. Die Bauteile, die
Du bestellt hast, sind notwendig, um die 80C535-Kiste überhaupt zum
Laufen zu bekommen. Bei einem Atmel brauchst Du: 2 ICs (Controller und
Schnittstellenwandler), 8 Kondensatoren und ein Quarz.  Das wars.
Hinzuzufügen wäre noch, daß die Software in einem Flash-Rom abgelegt
wird - also jederzeit beim Einschalten verfügbar ist.
Wichtig ist allerdings, daß Du dann eine andere Software benötigst (der
Assembler vom 80C535 und Atmel ist nicht kompatibel), diese kann aber
kostenlos heruntergeladen werden.
Ich würde mir das echt nochmal überlegen - allerdings schau erstmal, ob
Du jemanden findest, der den Atmel dann auch in Assember programmieren
kann.

Dann der Schrittmotor:
Ein Schrittmotor besteht aus meistens 2 oder 4 Spulen, die in einer
bestimmten Reihenfolge gepulst werden müssen. Mit jeder Änderung läuft
der Motor einen Schritt weiter (deshalb Schrittmotor). Du schreibst von
einem Motor mit Zähler. Das wäre dann ein ordinärer Gleichstrom (?) -
Motor mit einem Impulsausgang. Das ist aber kein Schrittmotor... ein
Schrittmotor hat keinen Zähler.
Die beiden unterschiedlichen Motortypen müßten völlig unterschiedlich
angesteuert werden - deshalb ist es elementar wichtig, genau
herauszufinden, um was für einen Motor es sich handelt.
Wenn Du genau weißt, welche von den Kabeln die Stromversorgung des
Motors sind, kannst Du ihn ja mal an 24V anschließen. Dreht er sich,
abhängig von der Polarität, permanent in eine Richtung, ist es ein
Gleichstrommotor. Bewegt er sich nicht, ist er entweder defekt oder es
ist tatsächlich ein Schrittmotor.
Wenn es denn nun kein Schrittmotor ist, sondern ein Gleichstrommotor
mit Impulsausgang, müßte man dann auch noch wissen, in welcher Form die
Impulse da herauskommen (mechanischer Kontakt ? Dann könnte es Probleme
mit Kontaktprellen geben).
Bei einem Schrittmotor müßte man auf jeden Fall einen entsprechenden
Treiber verwenden, bei einem Gleichstrommotor könnte evtl. eine
Relaisschaltung genügen. Das Ganze soll ja nur ein Vorführmodell
werden, wenn ich das richtig verstehe - wie genau sollen die Positionen
denn angefahren werden?

von Jörg Schmidtke (Gast)


Lesenswert?

Hey thkais...

Zitat: "Bei den Atmel-Controllern kostet ein Programmiergerät nicht
mal 5 Euro,die entsprechende Programmiersoftware ist kostenlos. Die
Bauteile, die Du bestellt hast, sind notwendig, um die 80C535-Kiste
überhaupt zum Laufen zu bekommen.Bei einem Atmel brauchst Du: 2 ICs
(Controller und Schnittstellenwandler), 8 Kondensatoren und ein Quarz.
Das wars.
Hinzuzufügen wäre noch, daß die Software in einem Flash-Rom abgelegt
wird - also jederzeit beim Einschalten verfügbar ist.
Wichtig ist allerdings, daß Du dann eine andere Software benötigst
(der
Assembler vom 80C535 und Atmel ist nicht kompatibel), diese kann aber
kostenlos heruntergeladen werden."

Also, ich hab mich jetzt mal im Netz nach dem Atmel8 informiert... Das
hört sich wirklich alles wesentlich einfacher an, als der 80C535... Vor
allem mit viel weniger Aufwand....
Ich denke mal, mit vielleicht Deiner Hilfe (????), werd
ich mich mal an diesen Controller halten... Allerdings werd ich
natürlich, wie Du mir empfohlen hast, mich erstmal schlau machen
müssen, wer mich ein wenig nachher bei der Programmierung unterstützten
könnte...

Kannst Du mir vielleicht mal sagen, wo ich eine Bauteilliste
herbekomme, die für den Atmel8 erforderlich ist, um ihn überhaupt erst
zu betreiben? Vor allem, welchen Atmel8 brauch ich eigentlich? Es gibt
welche, die nennen sich am Ende -16DIP, -16TQ, -16PC, -16AC.
Desweiteren, welche Software brauche ich genau zum Progrmmieren, wie
heißt dieses Programmiergerät, was ich dafür brauche? Du warst mir bis
jetzt wirklich eine Super Hilfe und ich hoffe, das Du mir noch ein
wenig weiterhelfen kannst.

Noch mal zu dem Motor... Also, der Motor hat 4 Drähte... 2 für die
Spg-Versorgung und zwei weitere. Wenn ich ihn umpole, läuft er anders
herum. Die beiden anderen Drähte sind wohl für den Zähler, der darin
ist. Dieser zählt wohl die Umdrehungen, die der Motor macht.

Du redest oben von 2 Softwaren... Hast Du Dich dort nur wiederholt,
oder brauche ich wirklich 2?
(.....Programmiersoftware.....) (....Wichtig ist allerdings, daß Du
dann eine andere Software benötigst (der
Assembler vom 80C535 und Atmel ist nicht kompatibel), diese kann aber
kostenlos heruntergeladen werden......)

Lieben Gruß, Jörg

Ps.: Du könntest mir nicht evtl. bei der Programmierung des Atmel8
helfen, oder??

von Jürgen C (Gast)


Lesenswert?

Hallo,
nur so ein Gedanke; wie hat man vor 30 Jahren Aufzüge gesteuert?
Wenn der Prozessor keine Rolle spielt, warum dann keine
Schaltung mit Schaltern, Endschaltern und Relais.Die ersten
"Computer" funktionierten auch mit solchen Komponenten.
Dein Motor ist offensichtlich kein Schrittmotor und benötigt desshalb
auch keinen MC.

von Jörg Schmidtke (Gast)


Lesenswert?

Hallo Jürgen...

Doch, der Prozessor spielt ja eine Rolle.... Das ist es ja... :-(
Wir müssen irgendeine Prozessor-Steuerung auf die Beine stellen....
Sonst würd ich mir ja nicht so den Kopf zerbrechen....

Ich dachte nur nicht, dass es für die drei, vier Befehle, alles so
aufwendig ist... :-(
Nun muss ich da irgendwie durch.... Wie auch immer....

LG, Jörg

von thkais (Gast)


Lesenswert?

Ja nun, wie schon gesagt - Zeit ist ein knappes Gut... Prinzipiell wird
hier im Forum schon geholfen, aber es wird (wie bereits erwähnt) hier
im allgemeinen so gesehen: Hilfe zur Selbsthilfe. Wenn ich die Zeit
hätte, Software komplett zu schreiben, würde ich das nebenberuflich für
Geld machen - aber ich komme mit meinen eigenen Projekten nicht rum, und
man muß dann schon noch etwas übrig lassen, um seine sozialen Kontakte
(sprich: Freundin) zu pflegen ;)
Vielleicht findet sich auch ein Vollzeitprofi, der das gegen Bares fix
und fertig liefert - aber ist das der Sinn einer Prüfung?

Ich gebe zu, daß ich mich ein wenig mißverständlich ausgedrückt habe.
Du brauchst min. 2x Software:
1. Z.B. Assembler , um das Programm zu schreiben
2. Programmiersoftware, um das Programm in den Controller
hineinzubekommen.
Ich würde an Deiner Stelle das mit dem 80C535 auch sein lassen, denn
die Komplexität der Hardware (= Platine) ist um ein vielfaches höher -
und damit auch die Anzahl der möglichen Fehlerquellen.

Zu 1:
Assembler und Datenblätter bekommst Du bei http://www.atmel.com.
Der Controller läßt sich alternativ auch mit BASIC (BASCOM, es gibt
eine limitierte "Freeware", die für Deine Anwendung aber vollkommen
ausreichen würde) oder auch mit C, hierfür ist der kostenlose
"WINAVR" geeignet, der auf dem GCC aufsetzt. Einfach mal nach diesen
Begriffen hier im Forum oder bei Google suchen, damit Du einen
Überblick bekommst.
Zu 2:
Programmiersoftware und auch Schaltpläne für die Programmieradapter
bekommst Du z.B. bei Ponyprog. Es gibt aber immer wieder mal
Startschwierigkeiten, da kann es sein, daß man ein anderes
Programmieradapter verwenden muß - hierzu gibt es massenhaft Threads im
Forum, auch alternative Programmiersoftware.
Auf der Eingangsseite zum Forum gibt es einen Link zu einem Tutorial,
schau Dir das mal an, dann kannst Du Dich mit dem ATMega-8 schonmal
etwas anfreunden. Dort siehst Du auch, wie in etwa eine Schaltung mit
dem Mega-8 aufgebaut wird.
Bei Deiner Anwendung kannst Du sogar auf die serielle Schnittstelle
verzichten, dann wirds noch einfacher - sogar den Quarz kannst Du
weglassen. Dann besteht die komplette Controller-Platine nur aus dem
Controller selbst und etwas Kleinzeug.
Die genaue Stückliste checken wir später ab, erstmal müssen wir uns
Gedanken um die Motorsteuerung machen. Ein normaler Gleichstrommotor
macht die Sache um einiges leichter, wobei 3A kein Pappenstiel sind.
Auch wenn er das theoretisch nie erreicht, sollte man die Ansteuerung
sicherheitshalber dafür auslegen. Leider bin ich in dieser Richtung
nicht allzusehr bewandert. Es sollen ja auch zwei Geschwindigkeiten
gefahren werden (schnell zur Position und dann langsam zum exakten
ausrichten) - das macht es etwas komplizierter.
Prinzipiell gibts m.E. zwei Möglichkeiten (sicherlich auch noch
mehr...)
1 - Eine vollelektronische Steuerung über eine sog. Vollbrücke.
Da müßte man mal schauen, ob man das als fertigen IC bekommt.
2 - Die Steuerung der Geschwindigkeit über einen Transistor (oder
MosFet) und die Drehrichtungsumkehr über ein Relais.
Wie ich schon Eingangs schrieb - das werden drei harte Wochen für Dich.

von thkais (Gast)


Lesenswert?

Noch ein Nachtrag: Als Motor-Steuerung könnte man einen L298 verwenden,
kostet schlappe 2,70 bei Reichelt und macht bis 4 A mit.
Bei den Atmega-8 kannst Du sowohl den -16Dip als auch den -8L8Dip
verwenden. DIP ist ein normales IC-Gehäuse.
Wie schon gesagt - informiere Dich über die Forensuche, das Tutorial
und die Datenblätter, evtl. sind da schon viele Fragen beantwortet.
By the way: Welche Spannungsversorgung habt ihr zur Verfügung? Ein
Labornetzteil o.ä. oder mußt Du Dich da auch selbst drum kümmern?

von Jörg Schmidtke (Gast)


Lesenswert?

Hey thkais...

Also, als Spannungsversorgung haben wir einen 24V Akku.... Evtl muss er
noch erweitert werden auf 36V... Hab mich schon über nen
Festspannungsregler informiert, der für diesen Zweck geeignet wäre...
Denn werd ich wohl realisiert bekommen....

Hab mich jetzt mal genauer über den Atmel8 informiert, aber so ne
richtige "Grundschaltung" gibt es für den wohl nicht, wie für den
80C535?? Dafür hab ich wenigstens schon mal nen Stromlaufplan, ne
Bestückungsliste und ne Art Anschauungsobjekt....

Mal kurz zu Deinen Punkten:
Ich hab ja nie behauptet, dass es einer für mich machen soll.... Werd
natürlich versuchen, alles selber hin zu bekommen... Hab ja nur mal
erwähnt, dass es NICHT SCHLECHT wäre, wenn sich einer finden lässt, der
das gut drauf hat und für den das ein Kinderspiel wäre....

Nun mal zu der Software...
Ist sie für einen Anfänger wie mich gut zu erlernen, und gibt es sie
auch auf Deutsch? Ich hab da jetzt schon einige Seiten zu gefunden,
allerdings kann ich mit der ganzen "Sprache" überhaupt nichts
anfangen... Ist so etwas zu erlernen, überhaupt möglich in 3 Wochen,
wenn man vorher noch nie was damit am Hut hatte? :-(

Und mal zu dem Motor:
Ich glaub, diesmal hab ICH mich vielleicht ein wenig unmissverständlich
ausgedrückt. Also, der Motor muss nicht zwei Geschwindigkeiten haben, er
hat nur euín und dieselbe. Er soll einfach auf eine Position fahren,
wenn er sie erreicht hat, soll man lediglich mit nem Schalter ihn
vielleicht noch ein wenig höher (oder tiefer) fahren können. Mit
derselben Geschwindigkeit.

Also, ich hab mich ja bereits mit dem 80C535 beschäftigt und habe auch
schon eine Art Schaltplan dafür. Da hätt ich 3 Platinen bauen müssen.
Einmal VOR der Controllerplatine meine Festspannungsregelung, dann die
Controllerplatine, und DANACH eine Platine mit einem Umpolrelais,
diversen Optokopplern, etc....

Kann man jetzt nicht, statt der 80C535 Platine einfach die Atmega8
Platine nehmen? Müsste doch theoretisch gehen, oder nicht? Denn
Festspannungregelung bräucht ich eh und die Relaissteuerung danach ja
auch....

Das die nächsten 3 Wochen sehr hart werden, bin ich mir sehr wohl im
Klaren... Hab ja auch wirklich die 3 Wochen Zeit dafür... Also von
morgens bis abends... Ich träum schon fast nur noch von diesen ganze
Controllern, Platinen, Assembler, etc....

Bis hierher nochmal danke....

LG, Jörg

Ps.: Können wir nicht mal kurz anderweitig kommunizieren, per Telefon
vielleicht? Ich denke, dort ist alles viel einfacher zu erklären, bzw.
zu verstehen... Ist nur so eine Frage, bitte nicht böse sein....

von Peter D. (peda)


Lesenswert?

Wenn Du bereits mit dem 80C535 Erfahrung hast, dann solltest Du den
AT89C51ED2 ins Auge fassen, ist nämlich die selbe Familie.

Nimm Dir eine Universalplatine, baue diese Grundschaltung auf und
fertig ist Dein Board:

http://www.mikrocontroller.net/forum/read-1-25968.html#25968


Die LEDs und Tasten kannst Du natürlich weglassen.

Obwohl LEDs immer praktisch sind, um irgendwelche Zustände anzuzeigen.


Peter

von thkais (Gast)


Lesenswert?

Öhm - Grundschaltung für einen Mega-8?
Die besteht eben nur aus diesem Controller und zwei Kondensatoren. Da
gibts nicht viel Schaltung, denn ALLES ist integriert: ROM, RAM,
Oszillator etc.
Beim 80C535 ist das alles Extern, sprich: In getrennten ICs.

Der von Peter vorgeschlagene AT89C51ED2 ist natürlich eine Alternative,
mit denen habe ich mich noch nicht beschäftigt - in Anbetracht der Größe
des integrierten Speichers scheint das aber interessant zu sein.
Der AT89C51ED2 kann ebenfalls wie der Atmel "Stand alone" eingesetzt
werden, d.h. außer einem Quarz, 3-4 Kondensatoren, ein paar
Anschlußsteckern und der Betriebsspannung brauchst Du nichts.
Sowohl der Atmel als auch der AT89C51ED2 können "In System"
programmiert werden, d.h. mit einem Adapterkabel (meistens über den
Parallelport eines PC). Bei der 80C535-Kiste mußt Du bei jeder
Programmänderung ein neues EProm brennen. Alternative beim 80C535: Ein
Monitor-Betriebssystem, dann kann man das Programm im RAM laufen
lassen, ist aber nach Wegfall der SPannung weg. Habe ich ja alles
schonmal erwähnt.

Die Platine mit den Optokopplern + Umpolrelais erwähnst Du jetzt aber
zum ersten Mal, hast Du davon auch einen Schaltplan? Dann braucht man
sich ja nur noch um die Controllerplatine zu kümmern, und die ist mit
einem Mega-8 oder AT89C51ED2 ein Kinderspiel.

Die Datenblätter/Software gibts leider nur in englisch.

von Jörg Schmidtke (Gast)


Angehängte Dateien:

Lesenswert?

Hey thkais...

Kannst Du mal bitte hier auf den Link schauen, und mir sagen, ob in
etwas SO die Platine mit dem Mega8 aussehen sollte? Wenn ich richtig
sehe, ist da sogar schon eine Festpannungsregelung mit drauf, oder?
Würde diese Platine fdür unseren Zweck denn reichen?

http://shop.mikrocontroller.net/csc_article_details.php?nPos=0&saArticle[ID]=29&VID=dUA1PbEaCRGvqvvV&saSearch[word]=&saSearch[category]=AVR&saSearch[special]=

Ich habe mich gerade mit einem Unterhalten, der Assembler programmieren
kann... Er hat mal den Assembler vom 80C535 mit dem vom Mega8 verglichen
und meinte, das sich da nur geringfügig die Befehle ändern würden. Also
denke ich mal, das wir das irgendwie hinbekommen würden.... Wie auch
immer...

Zu dem Umpolrelais:
Ich war am Samstag bei nem Kollegen, der hat mir grob erklärt, wie ich
das zu realisieren hab mit diesen Optokopplern und dem Relais...
Er hat mir ne Handskizze mitgegeben, aus der ich nicht wirklich so
schlau draus werde... Aber vielleicht kannst Du was damit anfangen....
Vielleicht kannst Du mir genau sagen, was ich für Bauteile dafür genau
brauche, dann kann ich ja schon mal anfangen, wenigstens DIESE Platine
zu erstellen.....

Ach so: Und tu mir bitte einen kleinen Gefallen: Red nicht von
"Kinderspiel", bitte...... ;-)
Ich bin mit meinen Nerven schon fast am Ende und Du redest von
Kinderspiel.... ;-)

LG, Jörg

von Gerhardt (Gast)


Lesenswert?

Hallo,
http://www.goblack.de/desy/mc8051chip/mc80535/

schau mal unter dieser Adr.dort findest du was du suchst!
MfG Gerado

von Jörg (Gast)


Lesenswert?

An thkais...

Sag mal, wie bekomme ich denn nach der Controllerplatine meine
benötigte Spannung/Strom, um erstmal dieses Umpolrelais anzusteuern?
Ich hab mir sagen lassen, da müsste noch ein Treiberbaustein zwischen,
der die Ströme und Spannungen verstärkt...
Was ist das für ein Treiberbaustein? Weißt Du das? Das Relais arbeitet
ja mit 12V...

LG, Jörg

von Markus_8051 (Gast)


Lesenswert?

Hallo Jörg,

Hast Du Dich jetzt schon auf einen Prozessor festgelegt?

Die Einwände gegen den 80535 wegen viel externer Beschaltung und der
fehlenden Möglichkeit ihn per ISP zu programmieren sind berechtigt. Ich
selbst programmieren ihn jedoch schon seit Jahren und benutze dazu ein
entsprechendes Experimentierboard und einen EPROM-Emulator. Aber für so
eine einmalige Sache wie Deine Tischsteuerung ist das natürlich ein sehr
großer Anschaffungsaufwand.

Wenn Du schon Erfahrung im Gebiet der 8051-Familie (dazu gehört der
80535 sowie der 89C51, 89C2051, 89S8252 etc.) solltest Du dabei
bleiben. (Als Hardwaretipp: schau mal bei Elektor nach dem
89S8252-Flash-Board)

Zum Motor: Also, die Handskizze für die Relaisplatine zur
Motorsteuerung ist definitiv NICHT für Schrittmotoren geeignet. Du
Schriebst in deinem ersten Artikel noch etwas von einer
Motorsteuerungsplatine. Ist das die beschriebene Relaiskarte? Wenn
nicht, beschreib diese mal bitte.

Zum Ort: Ruhrgebiet paßt! Ich pendel so zwischen Woche und Wochenende
zwischen Ratingen und Moers.

Also, wenn Du noch weitere Fragen zur Elektronik oder 8051-Familie in
Hard- oder Software hast, kann ich Dir sicher weiterhelfen. Aber, da
ich auch berufstätig bin, eher abends zwischen 18:00 und 24:00 Uhr.

Gruß,
Markus_8051

von thkais (Gast)


Lesenswert?

@Markus_8051:
Es sind keine Vorkenntnisse vorhanden - somit wäre es egal. Der Motor
hat sich als Gleichstrommotor entpuppt.

@Jörg:
Nach Deiner Handskizze werden die Spulen des Umpolrelais (man kann auch
zwei ordinäre Wechsler-Relais verwenden, sind sicherlich einfacher
beschaffbar - oder den schon erwähnten L298, das wäre dann
vollelektronisch) mit 12V versorgt. Diese 12V mußt Du entweder getrennt
bereitstellen oder per 78S12 (Festspannungsregler) aus den 24V gewinnen.
Wenn nicht unbedingt notwendig, würde ich es bei den 24V belassen und
das mit den 36V nicht empfehlen - irgendwann ist bei den
Festspannungsreglern Schluß mit der Eingangsspannung. Ich würde sowieso
empfehlen, die Versorgungsspannung für die Elektronik (5V) nicht direkt
aus den 24V zu gewinnen, sondern abgestuft aus den 12V für die
Relaisspule. Also: 24V -(78S12)- 12V -(7805)- 5V
Du mußt bedenken, daß die Festspannungsregler die nicht benötigte
Spannung einfach in Wärme umwandeln. Benötigt beispielsweise das Relais
100mA (i.a. sind es weniger), dann würden die 12V, die bei der Regelung
auf 12V übrigbleiben, komplett in Wärme umgewandelt, das wären dann
1,2Watt - da wirds schon mollig, ein Kühlkörper für den
Festspannungsregler schadet da auf keinen Fall.
Den Treiberbaustein hast Du auf Deinem Schaltplan schon drauf - die
beiden Transistoren, die die Spulen des Relais ansteuern. Die
zusätzlich vorgesehenen Optokoppler sind nicht unbedingt notwendig,
schaden aber keineswegs - lieber doppelt abgesichert als hinterher
einen Prozessor durch Induktionsspannung geschlachtet.
Die Platine aus dem Link ist durchaus in Ordnung - aber sehr teuer. Um
Lötarbeiten wirst Du so oder so nicht herumkommen, die auf der Platine
vorhandene serielle Schnittstelle brauchst Du eigentlich nicht. So eine
Schaltung (nebst Spannungsreglern + Ansteuerung Motor inkl. Relais)
kriegt man ohne Probleme auf einer Lochrasterplatine unter. Ich würde
es garnicht auf mehrere Platinen verteilen - dann hast Du nur
Kabelsalat.
Was noch fehlt: Die Impulse des Motors sollen ja sicherlich gezählt
werden, damit die gewünschte Position immer wieder exakt gefunden wird.
Und dann brauchst Du noch einen Schalter für eine Referenz-Position
(Endlagenschalter), da Du sonst nicht die Nullposition feststellen
kannst, wenn mal der Strom mitten drin abgeschaltet wird.
Was bei Deiner Stückliste nicht fehlen sollte: Eine Sicherung(nebst
Ersatzsicherungen)! Wenn Du irgendwo in der Schaltung einen Fehler hast
und dabei ein Kurzschluß produziert wird, fliegt Dir bei der Versorgung
per Akku einiges um die Ohren.
Nochmal zum Prozessor: Prinzipiell ist es egal, welchen Du verwendest,
sofern es einer mit internem Flash-ROM und internem RAM ist.
Die Atmels unterscheiden sich allerdings in einigen Feinheiten von den
MCS-51, z.B. haben die Atmels Datenrichtungsregister für die Ports, so
etwas kennen die MCS-51 Derivate nicht.
Ist aber keine unmögliche Aufgabe.

von thkais (Gast)


Lesenswert?

Schau mal hier:
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&category=10662&item=5751921735&rd=1&ssPageName=WDVW

Das Display kannst Du ja weglassen, sind aber schon zwei Relais mit
drauf. Man müßte mal schauen, ob diese Relais den Motor schon direkt
schalten können, ansonsten hängt man noch das Umpolrelais hinten dran.
Da kannst Du Dir dann die Transistoren / Optokoppler komplett sparen.

von Jörg Schmidtke (Gast)


Lesenswert?

Hey thkais....

Um jetzt erstmal Deinen ersten Absatz zu bereiningen:
Ein Fehler meinerseits, dass ich bisher nicht erwähnt hatte, dass unser
24V Akku aus 2 x 12V bestehen, also nur zusammen geschlossen sind. Also
kann ich mir meine 12V doch von einer Batterie abgreifen und dann
über´n 7805 auf 5 V bringen, oder? Hab mir heute morgen schon eine
kleine Platine mit dem Festspannungsregler zusammengelötet... Sieht
ganz gut aus, glaub ich... Die brauch ich ja eh, egal welcher
Controller nun...
Wahrscheinlich hast Du recht damit, das alles auf eine Platine passen
würde, aber jetzt hab ich sie ja schon fertig und Deine Nachricht zu
spät gelesen...
Das mit dem Kühlkörper weiß ich bereits... Ein Freund von mir sagte,
dass es reichen würde, wenn ich oben eine kleine Metallplatte mit
anbringen würde... Ich denke, deswegen ist das Loch oben an dem 7805,
oder?

Das Umpolrelais hab ich mir auch schon von Conrad besorgt. Egal, ob
ich´s nun brauche oder nicht.... Hat ja nicht die Welt gekostet...

Was genau meinst Du mit Endlagenschalter, und wo muss der hin? In dem
Motor ist so eine Endabschaltung, die man mit zwei kleinen Schräubchen
selber verstellen kann... Meinst Du sowas, oder noch einen
zusätzlichen, der noch an den Tisch mit dran soll?
Und Du sprachst von Sicherungen. Stimmt eigentlich, man sollte so was
schon absichern, bevor noch irgendwas passiert. Aber wo genau muss dann
so eine Sicherung hin und wie groß muss die sein?

Der Markus, der mir oben zurückgeschrieben hat, hat mir ebenfalls seine
Hilfe angeboten, er könnte mich evtl. bei der Programmierung
unterstützen... Das ist doch schon mal was... :-)

Ich werd mich mal mit ihm unterhalten und mal sehen, was er zu der
ganzen Geschichte sagt....

Nun mal zu der Platine aus Deinem Link bei ebay....
Die sieht ja ganz gut aus... Die könnte ich für meinen Zweck auch
gebrauchen? Wäre es denn möglich, das Umpolrelais noch hinter diesen
beiden vorhandenen zu schalten? Also verstehe ich das dann richtig,
dass diese beiden Relais dann das Umpolrelais schaltet und dieses dann
wiederum meinen Motor?
Ist denn auf dieser Platine dieser Treiberbaustein mit drauf, den ich
benötige, um überhaupt erst so´n Relais anzusteuern? Das sind dann
wahrscheinlich diese beiden halbrunden Dinger, die direkt davor sind,
oder?

Mann, so langsam macht mir die Elektronik sogar richtig Spaß.. Ich
find´s bisher voll interessant....

Ich hoffe nur, dass ich das wirklich in den drei Wochen noch
hinbekommen....

LG, Jörg

von Markus_8051 (Gast)


Lesenswert?

Habe mir die Platine bei ebay mal angesehen. Da brauchst Du gar kein
Umpol-Relais mehr, Du kannst den Motor da direkt mit schalten. Es sind
ja zwei Relais mit je einem Umschalter. Also drei Kontakte pro Relais.
Nennen wir sie mal NC (normaly closed) NO (normaly open) und COM
(common, der gemeinsame, mittlere Kontakt). Dann legst du die
NC-Kontakte von beiden Relais auf Masse, die NOs an 24V und zwischen
die beiden COMs hängst Du den Motor, fertig.

Gruß,
Markus_8051

von thkais (Gast)


Lesenswert?

@Markus: Ich wäre mir nicht ganz sicher, ob die Relais auf der Platine
die max. 3 Ampere verkraften. Evtl. mal den Verkäufer anfragen...


@Jörg:
Jep, ansonsten ist auf dieser Platine alles drauf, was Du brauchst. Und
wenn Du vielleicht doch noch die Elektronik als Hobby entdeckst, hast Du
schon ein Display inklusive... ;)

Wegen der Versorgungsspannung:

Masse (-) Akku1 (+)---(-) Akku2 (+)---- 24V
                    |
                    |
                   12V

Du hast dann zwischen "Masse" und "12V" die 12V für die Ansteuerung
des Relais zur Verfügung, dort kannst Du auch die 5V generieren.
Zwischen "Masse" und "24V" hast Du dann die 24V für den Motor.
Wichtig ist, daß Du immer "Masse" als Bezugspotential nutzt.

Die vorhandene Endabschaltung kannst Du natürlich auch verwenden. Es
geht eben darum, daß der Controller beim Einschalten nicht weiß, wo
sich der Motor gerade befindet - der Impulsgeber gibt die Impulse von
sich, ob nun der Tisch oben, in der Mitte oder sonstwo steht. Deshalb
muß man nach Einschalten der Anlage erst einmal einen Referenzpunkt
anfahren, meistens verwendet man hierzu eine Endstellung, man kann ihn
aber auch beliebig irgendwohin setzen. Schaltet dieser Endschalter nur
den Motor ab, oder sind Anschlüsse nach außen geführt, die man mit dem
Controller auswerten könnte?
Die weiteren Positionen werden dann einfach abgezählt, also inkremetal
verfahren.

Wenn Dir Markus_8051 beim Programmieren helfen kann, würde ich einen
Controller benutzen, der ihm entgegenkommt ;) - ich bin leider
zeitmäßig sehr beschränkt, sonst wäre es auch kein Problem.

Wegen der Platinen: Viele Wege führen nach Rom. Im Endeffekt ist es
egal, wie Du es machst, hauptsache, es funktioniert hinterher.

Ach so, denke rechtzeitig dran, daß Du auch einen Programmieradapter
brauchst (einen sog. ISP - Adaper). Es gibt universelle, die sowohl die
AT89... Serie als auch die Mega-XX programmieren können, entweder selber
basteln für ein paar Euro oder kaufen - habe ich in ebay auch schon
gesehen. Vielleicht kann Dir Markus ja in Hinsicht auf die AT89... noch
ein paar Tipps geben.

von Jörg Schmidtke (Gast)


Lesenswert?

Hey thkais....

Also, mal meine aktuelle Situation:

Der Markus hat mir bei der Programmierung seine Hilfe angeboten. Und
wie Du schon richtig erwähntest, sollte ich ihm dann natürlich auch
entgegenkommen. Sein Gebiet ist die 8051 Familie, somit also auch der
80C535.... Und da ich ja bereits schon die Platine habe, und die
benötigten Bauteile bestellt sind( die übrigens immer noch nicht da
sind :-(   ) haben wir uns jetzt darauf geeinigt, dass ich sie dann
doch nehmen sollte. Klar sagt er auch, das es mit dem Atmel8 weniger
Aufwand wäre, speziell sogar mit der Platine von ebay, weil halt schon
alles drauf ist, was ich benötige, er aber sich dann auch erstmal
schlau machen muss, über dessen Programmierung.
Und da es, wie Du schonmal erwähntest, es ja nicht im Sinne des
Erfinders liegt, mit Fertigteilen seine Prüfung zu absolvieren, sind
wir jetzt so verblieben, dass ich halt alles, was ich benötige
anfertige, er mir natürlich noch genauer sagt, wie und was, und er mir
dann anschliessend bei der Programmierung hilft.

Trotzdem muss ich nochmal in aller Deutlichkeit erwähnen, das Du mir
wesentlich weitergeholfen hast mit Deinen Tips, Anregungen und
Vorschlägen. Dafür bedanke ich mich bis hierher schon mal recht
herzlich und würde Dich auch gerne, sofern Du es erlaubst, namentlich
in meiner Dokumentation erwähnen.

Denn bis vor einer Woche hatte ich mal Null Ahnung von der ganzen
Thematik und mittlerweile hab ich mich schon soweit damit befasst, dass
es mir wirklich Spaß macht. Selbst mein erster "Lötversuch" heut
morgen ( Festspannungsregler ) hat mir total Spaß gemacht und sieht,
meiner Meinung nach, auch recht passabel aus. Ob er funktioniert, kann
ich leider erst Morgen testen...

Also, wie gesagt, nochmal herzlichen Dank an Dich und ein tolles Lob an
dieses Forum hier.

Lieben Gruß, Jörg

Ps.: Für eine namentliche Nennung muss ich nur eoin bischen mehr haben
als thkais.... ;-)

von thkais (Gast)


Lesenswert?

Na, wunderbar, alles wird gut... ;)
Mit etwas Hilfe wird das mit dem 80C535-Board dann schon klappen, aber
als absoluter Anfänger ist das echt hart.
Die Welt der Elektronik und speziell der µController ist unglaublich
vielfältig, wenn ich etwas mehr Zeit und Platz hätte, würde ich mir
eine Eisenbahnanlage hinstellen - da kann man sich austoben...
Ich würde Dir empfehlen, dieses aufglimmende Interesse nicht verlöschen
zu lassen.

Hm - Du machst mich ja ganz verlegen... Man versucht schon sein Bestes,
anderen zu helfen. Als ich mit dem 80C535 kämpfte (ist schon einige
Jährchen her) mußte ich mich ganz allein da durchwurschteln - da kann
ich nachvollziehen, wie sehr man den einen oder anderen Tipp zu
schätzen weiß.

Mein Nickname ist eigentlich von meinem realen Namen abgeleitet:
Thomas Kaiser
Den Namen gibts aber sehr oft - thkais nur einmal g

Gruß

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.