Forum: Mikrocontroller und Digitale Elektronik Bascom atmega8


von Fabian (Gast)


Lesenswert?

Hi,

Hat jemand Lust ein Programm für mich in bascom zu schreiben?
Ich bekomm es nicht hin.
Würd es auch honorieren.

von N8schicht (Gast)


Lesenswert?

Hallo,
ein wenig mehr Information könnte die Motivation steigern...

Gruß
N8

von uC-user (Gast)


Lesenswert?

Fabian schrieb:
> Hat jemand Lust ein Programm für mich in bascom zu schreiben?

Ich finde Assembler einfacher, ist das auch ok?

Irgendein Programm, oder brauchst du etwas Bestimmtes?

von Fabian (Gast)


Lesenswert?

Atmega8

Es sollen nacheinander 2 Motoren per PWM angesteuert werden.
An jedem Motor ist ein Poti dran zur Positionsbestimmung.

Ein Schalter soll das Programm starten und beenden.

01. Schalter Eingang S1 Ein
02. Relais am Ausgang rel_1 setzen
03. Wert  von Potis Eingang Pa und Pb (ADC) Auslesen und Speichern 
(pos_mot_a und
      pos_mot_b)
04. Schalter Ein länger als 5 Minuten, beide Werte übernehmen und 
speicher als
      pos_mot_low_a und pos_mot_low_b ( überschreiben falls schon welche 
drin sind)
05. Ausgang Mot_a (PWM) ansteuern bis pos_mot_low_a erreicht
06. Ausgang Mot_b (PWM) ansteuern bis pos_mot_low_b erreicht
07. Schalter Eingang S1 Aus
08. Ausgang Mot_a (PWM) ansteuern bis pos_mot_a erreicht
09. Ausgang Mot_b (PWM) ansteuern bis pos_mot_b erreicht
10. Relais am Ausgang rel_1 zurücksetzen

von Fabian (Gast)


Lesenswert?

Assembler geht auch. Dafür brauch ich nur das AVR Studio?
Wichtig ist das es funktioniert und Kommentare drin sind damit ich das 
auch verstehe.

Zum Testen hab ich das myAVR Board V2.07

von Big Mac (Gast)


Lesenswert?

Fabian schrieb:
> An jedem Motor ist ein Poti dran zur Positionsbestimmung.
Das arme Poti.
Darf es auch ein (Modelbau-)Servo sein?

von Thomas D. (thomasderbastler)


Lesenswert?

Fabian schrieb:
> Ich bekomm es nicht hin.

Hast schon angefangen ?

von Fabian (Gast)


Lesenswert?

Die Motoren sind so fertig aufgebaut mit den Potis.
Möchte an der Hardware nichts ändern.

Hab mehrmals angefangen und bis jetzt immer alles verworfen. Ich glaub 
mittlerweile das ich zu doof dafür bin. Daher der Hilfeschrei

von udo (Gast)


Lesenswert?

Vielleicht liegt es daran,
das du dir zuviel vorgenommen
hast. Fang doch einfach mal klein an,
und lass mal eine LED blinken.

von Big Mac (Gast)


Lesenswert?

Du solltest die Motoren mit den Potis beschreiben (Getriebe ja/nein) 
oder besser ein Bild davon machen.

von Thomas D. (thomasderbastler)


Lesenswert?

Wenn willst könnte ich Dir bisschen helfen, aber Deinen Code komplett zu 
schreiben, habe ich selber wenig Zeit.

Ich denke, es gibt noch andere hier, die Dir auch helfen könnten.
Halte aber unwahrscheinlich, daß jemand Dein Code für Dich schreibt, es 
sein denn Du zahlt dann wirklich gut dafür..

von Fabian (Gast)


Lesenswert?

Es sind Getriebemotoren 12 Volt. Einer für Auf/Ab und einer für 
Links/Rechts. Beide Motoren hängen jeweils an einer H-Brücke, gespeist 
mit 12 Volt. Die Drücke benötigt ein Signal für die Pulsweitenmodulation 
und je ein Signal für die Richtung.

Die Motoren hängen an einer Steuerung. Die Kabel der Motoren zur 
Steuerung sollen wenn S1 Eingeschaltet wird über Wechsler Relais vom 
Steuergerät getrennt und an den Controller Kontaktiert werden und wenn 
S1 Ausgeschaltet wird, nach erreichen der ursprünglichen Position wieder 
ans Steuergerät.

Das ist eine angefangene Bastelei von meinem Bruder, der vor 2 Wochen 
verstorben ist. Nun möchte ich das schnellstmöglich fertig stellen. Ich 
kenn mich damit nicht so sehr aus, das war sein Gebiet. Ich hab nur 
seine Zeichnungen da.

Die H-Brücke ist aus dem Asuro Wiki.

von Fabian (Gast)


Lesenswert?

Keiner?

von nicht angemeldet (Gast)


Lesenswert?

... würd mich anmeldem!

von Fabian (Gast)


Lesenswert?

Niemand?

von Karl H. (kbuchegg)


Lesenswert?

Ich denke du solltest das tatsächlich selber schreiben.

Deine 'Logik-Beschreibung' da weiter oben ist nicht sehr logisch. Das 
klingt stark nach: Das wird ein endloses Projekt, weil du nicht in der 
Lage bist deine Anforderungen vernünftig zu beschreiben. Und das beginnt 
schon mit
>  Ein Schalter soll das Programm starten und beenden.
Ein Programm auf einem µC wird nicht gestartet oder beendet. Das läuft 
dauernd sobald Saft auf der Schaltung ist.

Alle in allem klingt die ganze Aufgabe nicht so schwer. Streich mal 
alles weg, was für den Anfang nicht unbedingt notwendig ist und fang mit 
den einfachen Dingen an. Kannst du zb deine Motoren per PWM ansteuern. 
Einfach nur ansteuern. Vergiss erst mal die Potis und speichern etc. 
etc. Einfach nur, dass die Motoren in die gewünschte Richtung 
entsprechend drehen. Nicht mehr.
Und von dort arbeitest du dich sukzessive in die Richtung vor, die du 
haben willst.

PS: die Sache mit den 5 Minuten klingt nicht besonders logisch. 
Überhaupt: der ganze Bedienungsvorgang klingt nicht sehr logisch. Für 
mich hört sich das alles nach irgdendeiner Art von Klappensteuerung an, 
wobei mir noch nicht klar ist, wie du da die Sollvorgabe eingeben 
willst, wenn alles was du hast die Motor-Positionspotis sind.

Im Ernst: Bei den wirren Vorgaben sieht jeder vor seinem geistigen Auge 
schon, dass das in eine stundenlange Umprogrammiererei ausartet und das 
alles nur aus dem Grund, weil du nicht in der Lage bist deinen 
Anforderungen konkret zu beschreiben. Und deswegen macht das auch keiner 
auch wenn das im Prinzip eigentlich recht einfach ist (für jemanden der 
Programmieren kann).

von Fabian (Gast)


Lesenswert?

Was bitte ist denn GENAU nicht zu verstehen?

von Nils S. (kruemeltee) Benutzerseite


Lesenswert?

Ich würde sagen - Berufsschule oder 10-12. Klasse, mach deine 
Hausaufgaben alleine!

von fritz (Gast)


Lesenswert?

Big Mac (Gast) schrieb

Fabian schrieb:
> An jedem Motor ist ein Poti dran zur Positionsbestimmung.
Das arme Poti.
Darf es auch ein (Modelbau-)Servo sein?

Ich glaube dir ist der Unterschied zwischen Reglung und Steuerung nicht 
klar!

von c-hater (Gast)


Lesenswert?

fritz schrieb:

> Ich glaube dir ist der Unterschied zwischen Reglung und Steuerung nicht
> klar!

Servos SIND GEREGELTE Getriebemotore. Das scheint DIR nicht klar zu 
sein.

von fritz (Gast)


Lesenswert?

>Servos SIND GEREGELTE Getriebemotore. Das scheint DIR nicht klar zu
>sein.
Das ist richtig!

Es ist aber zur Steuerung kein Regelkreis vorhanden.

von Fox Mulder (Gast)


Lesenswert?

Fabian schrieb:
> Was bitte ist denn GENAU nicht zu verstehen?

Einfach nur das:

Fabian schrieb:
> Es sollen nacheinander 2 Motoren per PWM angesteuert werden.
> An jedem Motor ist ein Poti dran zur Positionsbestimmung.
>
> Ein Schalter soll das Programm starten und beenden.
>
> 01. Schalter Eingang S1 Ein
> 02. Relais am Ausgang rel_1 setzen
> 03. Wert  von Potis Eingang Pa und Pb (ADC) Auslesen und Speichern
> (pos_mot_a und
>       pos_mot_b)
> 04. Schalter Ein länger als 5 Minuten, beide Werte übernehmen und
> speicher als
>       pos_mot_low_a und pos_mot_low_b ( überschreiben falls schon welche
> drin sind)
> 05. Ausgang Mot_a (PWM) ansteuern bis pos_mot_low_a erreicht
> 06. Ausgang Mot_b (PWM) ansteuern bis pos_mot_low_b erreicht
> 07. Schalter Eingang S1 Aus
> 08. Ausgang Mot_a (PWM) ansteuern bis pos_mot_a erreicht
> 09. Ausgang Mot_b (PWM) ansteuern bis pos_mot_b erreicht
> 10. Relais am Ausgang rel_1 zurücksetzen

Oder anders gesagt, GENAU DAS!

von fritz (Gast)


Lesenswert?

>Oder anders gesagt, GENAU DAS!

Wie ich erkennen kann eine Regelung!

von Hubert G. (hubertg)


Lesenswert?

Fabian schrieb:
> 01. Schalter Eingang S1 Ein
> 02. Relais am Ausgang rel_1 setzen

Die Motoren werden von der Steuerung getrennt.

> 03. Wert  von Potis Eingang Pa und Pb (ADC) Auslesen und Speichern
> (pos_mot_a und
>       pos_mot_b)
> 04. Schalter Ein länger als 5 Minuten, beide Werte übernehmen und
> speicher als
>       pos_mot_low_a und pos_mot_low_b ( überschreiben falls schon welche
> drin sind)
> 05. Ausgang Mot_a (PWM) ansteuern bis pos_mot_low_a erreicht
> 06. Ausgang Mot_b (PWM) ansteuern bis pos_mot_low_b erreicht

Bei 03. werden die Potwerte gespeichert
Bei 04. werden sie als pos_mot_low gespeichert
Bei 05. und 06. sollen die Motoren dort hinfahren wo sie schon sind?

> 07. Schalter Eingang S1 Aus
> 08. Ausgang Mot_a (PWM) ansteuern bis pos_mot_a erreicht
> 09. Ausgang Mot_b (PWM) ansteuern bis pos_mot_b erreicht
> 10. Relais am Ausgang rel_1 zurücksetzen

Bei 07. 08. 09. tut sich nichts, denn die Motoren haben sich noch nicht 
bewegt.
Bei 10. ist die Steuerung wieder aktiv.

Also doch ganz einfach, das Relais wird von Schalter S1 betätigt, damit 
kann die Steuerung die Motoren nicht bewegen.

Oder habe ich die Funktionsbeschreibung gänzlich missverstanden?

von Fabian (Gast)


Lesenswert?

01. Schalter Eingang S1 Ein
02. Relais am Ausgang rel_1 setzen (Motoren und Potis werden von der
    übergeordneten Steuerung getrennt)

03. Wert  von Potis Eingang Pa und Pb (ADC) Auslesen und Speichern
    (pos_mot_a und pos_mot_b)(Ausgangsposition des Motors)

04. Schalter Ein länger als 5 Minuten, beide Werte übernehmen und
    speicher als pos_mot_low_a und pos_mot_low_b
    (überschreiben falls schon welche drin sind)
    (Festlegung der Sollposition, durch die 5 Minuten veränderbar)

05. Ausgang Mot_a (PWM) ansteuern bis pos_mot_low_a erreicht
06. Ausgang Mot_b (PWM) ansteuern bis pos_mot_low_b erreicht


07. Schalter Eingang S1 Aus
08. Ausgang Mot_a (PWM) ansteuern bis pos_mot_a erreicht
09. Ausgang Mot_b (PWM) ansteuern bis pos_mot_b erreicht
10. Relais am Ausgang rel_1 zurücksetzen

Die Position der Motoren ist von Extern veränderbar, das Relais trennt 
die Verbindung zu dieser Steuerung.

Ich kann den Motor doch auf Sollposition bewegen, S1 betätigen und 5 
Minuten warten. Dann ist die Sollposition gespeichert.

Sind die Motoren auf Ausgangsposition und ich betätige S1, dann fahren 
beide nachdem die Ausgangsposition gespeichert wurde auf Sollposition 
und wenn ich S1 ausschalte wieder zurück auf Ausgangsposition. Das 
Relais geht wieder aus und die externe Steuerung ist wieder aktiv.

von Elektro L. (mathias_n)


Lesenswert?

@Fabian

schreib mir mal ne Mail elektronixer[ät]googlemail.com
Das Programm kann ich dir schreiben. Hast du einen Schaltplan dazu oder 
bist du frei an welchem Pin was kommt?

MfG
Mathias

von Winne Z. (rugbywinne)


Lesenswert?

vermutlich sind die Potis in 03. Stellpotis und nicht die potis an den 
Motoren ?

wo ist der Schaltplan ?

von Peter D. (peda)


Lesenswert?

Deine Beschreibung ist unlogisch. MCs können aber nur logische Programme 
abarbeiten.
Einen Ablauf muß man immer so erstellen, daß jeder Zustand und jeder 
Übergang in einen anderen Zustand eindeutig ist. Programme können nicht 
durch Gedanken gesteuert werden.

Fabian schrieb:
> 04. Schalter Ein länger als 5 Minuten, beide Werte übernehmen und
>     speicher als pos_mot_low_a und pos_mot_low_b
>     (überschreiben falls schon welche drin sind)
>     (Festlegung der Sollposition, durch die 5 Minuten veränderbar)

D.h. nach 5min wird die Position gespeichert.

> 05. Ausgang Mot_a (PWM) ansteuern bis pos_mot_low_a erreicht
> 06. Ausgang Mot_b (PWM) ansteuern bis pos_mot_low_b erreicht

Da bewegt sich nichts, wir sind doch schon auf der in 4. gespeicherten 
Position.


Beschreib dochmal den Sinn der Vorrichtung, vielleicht versteht man dann 
etwas.

von Fabian (Gast)


Lesenswert?

Stimmt!

Aber nehmen wir mal an wir machen das, dann habe ich eine fest 
definierte Position.
Wenn sie Motoren jetzt eine andere Position haben und ich S1 betätige 
dann bewegen sie sich in die zuvor gespeicherte Position und beim 
ausschalten von S1 wieder zurück, wenn dies unter 5 Minuten geschiet.

Oder bin ich mit meinen Gedanken komplett falsch?

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:
> Stimmt!
>
> Aber nehmen wir mal an wir machen das, dann habe ich eine fest
> definierte Position.

Schön. Nehmen wir das mal an.

> Wenn sie Motoren jetzt eine andere Position haben und ich S1 betätige
> dann bewegen sie sich in die zuvor gespeicherte Position

richtig.
Und 5 min später stehen sie immer noch in dieser zuvor gespeicherten 
Position. Welche dann erneut gespeichert wird.

-> Auf diese Art wirst du es nie schaffen eine neue abweichende Position 
zu speichern. Es sei denn sie wurde zuvor schon gespeichert. Wodurch 
sich die Katze in den Schwanz beißt.

Ich kann mich nur PeDa (erneut) anschliessen
> Beschreib dochmal den Sinn der Vorrichtung, vielleicht versteht man dann etwas.


Dieses ganze Konzept mit Relais umschalten etc. kommt mir seltsam vor. 
In den meisten Fällen ist es wesentlich einfacher, wenn der neue µC 
einfach alles übernimmt als das man einer vorhandenen Steuerung ins 
Handwerk pfuscht. Solange die nicht zu kompliziert ist, 
selbstverständlich.

von Charly B. (charly)


Lesenswert?

Hallo Fabian

schreib mir eine mail mit deiner Tel.nr. wo
und wann ich dich erreichen kann, tnx!

mc-besteller (aett) web.de

vlG
Charly

von Fox Mulder (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Beschreib dochmal den Sinn der Vorrichtung, vielleicht versteht man dann
> etwas.

Ich tippe auf: Hausaufgabe

von Fabian (Gast)


Lesenswert?

Wenn es so wäre, würd ich es sagen. Weiter oben hab ich geschrieben 
warum und wozu.
Und in diesem Fall ist es extrem frech etwas anderes zu behaupten.

Ich war mir der Meinung das solche Platformen dazu gedacht sind Gedanken 
und Erfahrungen auszutauschen und Hilfe zu bekommen und nicht um 
Mutmaßungen und Behauptungen gegenüber Personen zu äußern dessen 
Hintergrund man nicht kennt.

Mag sein das alles verwirrend klingt und ich wohl nicht in der Lage bin 
es deutlicher zu beschreiben.

Das ist auch der Grund warum ich frage. Wäre es anders würd ich es ja 
selber machen.

Ps. Aus dem Schulalter bin ich raus.

von Ralf G. (ralg)


Lesenswert?

Fabian schrieb:
> Weiter oben hab ich geschrieben
> warum und wozu.
Wo?

Fabian schrieb:
> Die Motoren sind so fertig aufgebaut mit den Potis.
> Möchte an der Hardware nichts ändern.
>
> Hab mehrmals angefangen und bis jetzt immer alles verworfen. Ich glaub
> mittlerweile das ich zu doof dafür bin.
So macht man das nicht. Fang einfach mit was (für dich) Einfacherem an. 
Grundlagen. LED.

So eine komplexe Sache aus der Ferne beurteilen, ist etwas schwierig.

Edit:

Fabian schrieb:
> Ich war mir der Meinung das solche Platformen dazu gedacht sind Gedanken
> und Erfahrungen auszutauschen und Hilfe zu bekommen und nicht um
> Mutmaßungen und Behauptungen gegenüber Personen zu äußern dessen
> Hintergrund man nicht kennt.

Genau. Hobbymäßig und in der Freizeit! Und da muss das auch Spaß 
machen...

Fabian schrieb:
> Hat jemand Lust ein Programm für mich in bascom zu schreiben?
> Ich bekomm es nicht hin.
> Würd es auch honorieren.
... da geht man in einen Laden. Das geht am schnellsten.

von Fabian (Gast)


Lesenswert?

Da!


Fabian schrieb:
> Es sind Getriebemotoren 12 Volt. Einer für Auf/Ab und einer für
> Links/Rechts. Beide Motoren hängen jeweils an einer H-Brücke, gespeist
> mit 12 Volt. Die Drücke benötigt ein Signal für die Pulsweitenmodulation
> und je ein Signal für die Richtung.
>
> Die Motoren hängen an einer Steuerung. Die Kabel der Motoren zur
> Steuerung sollen wenn S1 Eingeschaltet wird über Wechsler Relais vom
> Steuergerät getrennt und an den Controller Kontaktiert werden und wenn
> S1 Ausgeschaltet wird, nach erreichen der ursprünglichen Position wieder
> ans Steuergerät.
>
> Das ist eine angefangene Bastelei von meinem Bruder, der vor 2 Wochen
> verstorben ist. Nun möchte ich das schnellstmöglich fertig stellen. Ich
> kenn mich damit nicht so sehr aus, das war sein Gebiet. Ich hab nur
> seine Zeichnungen da.
>
> Die H-Brücke ist aus dem Asuro Wiki.

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:
> Da!
>
>
> Fabian schrieb:
>> Es sind Getriebemotoren 12 Volt. Einer für Auf/Ab und einer für
>> Links/Rechts. Beide Motoren hängen jeweils an einer H-Brücke, gespeist
>> mit 12 Volt. Die Drücke benötigt ein Signal für die Pulsweitenmodulation
>> und je ein Signal für die Richtung.
>>
>> Die Motoren hängen an einer Steuerung. Die Kabel der Motoren zur
>> Steuerung sollen wenn S1 Eingeschaltet wird über Wechsler Relais vom
>> Steuergerät getrennt und an den Controller Kontaktiert werden und wenn
>> S1 Ausgeschaltet wird, nach erreichen der ursprünglichen Position wieder
>> ans Steuergerät.
>>
>> Das ist eine angefangene Bastelei von meinem Bruder, der vor 2 Wochen
>> verstorben ist. Nun möchte ich das schnellstmöglich fertig stellen. Ich
>> kenn mich damit nicht so sehr aus, das war sein Gebiet. Ich hab nur
>> seine Zeichnungen da.
>>
>> Die H-Brücke ist aus dem Asuro Wiki.

Alles schon und gut.
Aber wozu das ganze?

Steuert das eine Web-Cam an, oder öffnet das im Kuhstall die Belüftung 
oder .... was?

Tritt mal einen Schritt zurück und beschreib das Problem das es zu lösen 
gilt und nicht wie angedacht war es zu lösen.

von Big Mac (Gast)


Lesenswert?

Fabian schrieb:
> Ps. Aus dem Schulalter bin ich raus.

Warum muß man dir dann alles aus der Nase ziehen?

von Fabian (Gast)


Lesenswert?

Es sind 2 Metallplatten, verbunden über eine kleine Box in der sich 2 
Getriebemotoren für 4 Richtungen befinden.

Gesteuert wird dies über 4 Tasten.

Die Idee ist jetzt, über einen Schalter beim einschalten eine Position 
anzufahren und beim ausschalten wieder zurück in die ursprüngliche 
Position.

Die Position, die es anzufahren gilt, soll veränderbar sein, auch 
mittels Schalter.

Im Normalfall ist der Schalter unter 5 Minuten betätigt.

Ich lege also den Schalter um und die Motoren bewegen sich auf eine 
Position, schalte ich aus, wieder zurück auf die vorherige Position.

Das ganze gehört zu einer Modell Schneeraupe.

von Karl H. (kbuchegg)


Lesenswert?

Das ganze hört sich danach an, als ob es 10 mal einfacher wäre, die 4 
Taster generell über den Mega zu führen und der Mega, und nur der Mega 
steuert die Motoren an. Also komplett ohne dieses ganze Relais Zeugswer.

Dazu noch ein 5.ter Taster, mit dem man dem Mega sagt: Jetzt merken
und ein Schalter mit dem man die gespeicherte Position wieder abrufen 
und arretieren kann (dann sind die Taster wirkungslos) bzw. die Wirkung 
der 4 Tasten wieder freigibt.

Pins hat der Mega genug, so dass das erst mal überhaupt kein Problem 
ist.

: Wiederhergestellt durch User
von Fabian (Gast)


Lesenswert?

Wenn nicht 100x einfacher. Aber die Steuerung soll bestehen bleiben.

von Karl H. (kbuchegg)


Lesenswert?

Fabian schrieb:
> Wenn nicht 100x einfacher. Aber die Steuerung soll bestehen bleiben.

Macht die irgendwas besonderes?

Abgesehen davon würde ich die Sache mit den 5 Minuten bleiben lassen. Da 
gibt es dann eben noch einen Taster mit der Funktionalität 'Jetzt 
merken'. Auch hier wiederrum: Pins hat der Mega genug. Es gibt da 
wirklich erst mal keinen Grund mit Gewalt alles an 'Bedienung' in einen 
einzigen Schalter zu quetschen.

von Fabian (Gast)


Lesenswert?

Einen Umschalter um andere Motoren zu steuern. Ich wollt mit dem Mega 
die Leitungen zu den 2 Motoren abgreifen, da nur diese Einheit dies 
Funktion haben soll.

Über einen 2ten Schalter/Taster hab ich auch schon nachgedacht, wenn es 
aber mit dem einen realisierbar ist wäre es schöner.

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.