- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 5 von 5

Thema: Roboterhauptprogramm

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.06.2011
    Ort
    Dresden
    Beiträge
    219
    hallo,
    ich verwende ich ähnliches, wie oben dargestelltes Prinzip:
    In einer Hauptschleife werden Status-Bytes auf ihren Zustand abgefragt und entsprechende Programmverzweigungen "angesprungen". z.B. Motor-Status hat sich geändert, verzeigen in die
    Motor-Routine, dort Ports/PWM einstellen und nach wenigen µs zurück zur Hauptschleife. Dieses Status-Byte wird dann bei erreichen des Ziels durch Interrrupt (Rotary-Encoder/Compare_Match_Int)
    wieder zurückgesetzt. Innerhalb der Hauptschleife gibt es den Aufruf einer Programm-Routine, falls ein Programm ausgeführt werden soll (wird beim Start durch Abfragen einer Dip-Schalterbank
    erkannt) wird in dieses Routine verzweigt. Aus einer 2-dim Tabelle nimmt sich diese state machine den nächsten "Auftrag" (1. dim = Programm-Nr.), setzt bestimmte Status-Bytes und kehrt wieder
    in die Hauptschleife zurück zur Abarbeitung dieser und inzwischen anderer angefallener Aufgaben. Ist die durch die state machine gestellte Aufgabe erledigt, wird ein flag task_ready gesetzt und
    der pointer auf die Aufgabentabelle erhöht. Am Ende jeder Tabellenzeile steht ein LOOP, die state machine setzt dann den pointer wieder auf den Anfang der Zeile. Um "regelmässige" Aufgaben
    zu erledigen läuft ausserdem im Hintergrund ein 10ms-timer, der u.a. alle 1min ein flag setzt, das die Hauptschleife bei "Untätigkeit" veranlasst, eine Routine zur Batteriekontrolle aufzurufen.
    mfg
    Achim

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von oderlachs
    Registriert seit
    17.05.2010
    Ort
    Oderberg
    Alter
    74
    Beiträge
    1.175
    Blog-Einträge
    1
    Hallo liebe Helfer !
    So ich möchte erst mal herzlichen Dank für Hinweise und Anregungen sagen !!!

    Mit meinen Asuro 1. habe ich noch mech. Probleme, die Motoren wollen einfach nicht in der Stellung fest bleiben, wo ich sie per Strapse fixiere, die werde ich wohl (ungern)kleben müssen. Beim Eigen-Nachbau (Foto Webseite) warte ich da noch auf Distanzstücke, die noch irgendwo auf dem Postwege umherschwirren..grr.
    So muss ich mich noch mit den Unterprogrammen befassen die ich so testen kann, der US-Sensor fehlt auch noch, aber das GPG Modul ist schon getestet und kann dann eingebunden werden, mehr so als "Luxus" in der Anzeige auf dem Display als wie zur <Notwendigkeit im Betrieb, Thermofühler gehen auch für den MotordriverIC...

    @Radbruch :
    ich werde mir mal die angegebenen Links zu Gemüte ziehen...mit den IRQ Routinen bin ich noch nicht so bewandert, das muss ich noch am "Trockenmodell" ausprobieren...

    @seite5 :
    Ja mit entsprechenden Flags hatte ich mir das schon so ausgedacht, kenne das aus anderer Programmierung, wo es darauf ankam verschiedene Statuspunkte abzufragen

    @ijjiij :
    Ob Basic, C, oder Assr ich durfte alles mal erlernen, will mich hier also noch nicht festlegen welches beim AVR die Standart-Sprache wird, da ich auf dem STK 500 fast alles in Bascom erledige, so ist doch der "Arduino & co." eigentlich mit C zu bewältigen..

    Gruss und Dank Gerhard
    Arduinos, STK-500(AVR), EasyPIC-40, PICKIT 3 & MPLABX-IDE , Linux Mint

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress