-         
+ Antworten
Ergebnis 1 bis 9 von 9

Thema: relai steuerung

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    20.07.2004
    Ort
    Hollabrunn
    Alter
    32
    Beiträge
    85

    relai steuerung

    hi all

    ich hab ne relai karte mit 8 relais die möcht ich für einen roboter arm verwenden der roboter arm soll einen gegen stand an heben und wo anders ablegen und das denn ganzen tag nur wie steur ich so eine karte über denn pc (hab nen älteren rechner herumliegen 1Ghz amd duron)
    nur leider hab ich absolut keine ahnung wie ich so einen code schreiben soll dafür und mit was für einem programm (freeware am besten)

    könnte mir da bitte wer weiter helfen
    vieleicht kennt ihr ja einen link wo ich ein programm dafür herbekomme

    thanks all

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.03.2004
    Ort
    Paderborn
    Alter
    32
    Beiträge
    614
    Was hast du denn genau für eine Karte? Gibt's da keine Doku vom Hersteller? Meines Wissens gibt es keinen Standart für Relais-Karten, mit dem man die alle einheitlich ansteuern könnte.

    Wie stellst du dir das mit dem Roboterarm genau vor? Mit Relais kannst du Motoren zwar in zwei Richtungen laufen lassen(und natürlich anhalten) aber relativ schlecht regeln(weil die Schaltfrequenz recht begrenz ist und du nur ganz oder garnicht durchschalten kannst.). Der Arm sollte also ausreichend träge sein.
    PS: Deine Rechtschreibung macht das Verfolgen des Betrags recht mühseelig.
    it works best if you plug it (aus leidvoller Erfahrung)

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    13.08.2004
    Ort
    Niedersachsen
    Alter
    36
    Beiträge
    96
    Genau.Relais sind zum Ansteuern eines Roboterarmes nicht besonders gut geeignet. Viel besser sind da Transistoren oder MOSFETs.

  4. #4
    Gast
    Schönen abend@all ich habe auch eine 8fach relaiskarte die von conrad, habe auch probleme mit der ansteuerung, würde dieses gerne mit vb 6 machen, ich bekomme die schnittstelle auf und auch was gesendet und auch wieder was zurück, nur komm ich damit nich wirklich klar, die doku gibts hier
    http://www.produktinfo.conrad.com/da...ch_seriell.pdf

    wäre nett wenn mir jemand helfen könnte, bin schon ne weile erfolglos

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    31
    Beiträge
    456
    Also...

    Die Verbindung zwischen den PC --> µC --> µC erfolgt durch eine einfache serielle Schnittstelle (19200 Baud etc, etc.)...

    Ok, da du schon soweit warst, kommt hier der lustige Teil, das Protokoll:

    4 Bites lang:

    1. COMMAND
    2. ID
    3. DATA
    4. CHECKSUM


    (Nebenbemerkung: DAS DING IST GEIL)

    Es arbeitet "fast" wie Netzwerk: empfange Daten --> gucke ob sie ganz sind --> gucke wem sie gehören --> wenn nicht mir --> schicke sie weiter

    Also, ab Punkt 4.4 geht es richtig los, aber ich glaube du kannst lesen

    ....

    Humm... Das in VB realisieren... Naja, würde eher C nutzten... aber nur ne Meinung...

    Code:
    void Send_CMD(int command, int ID, int DATA)
    {
        char send_buf[3];              //Wo wir unseren befehl hineintun...
        send_buf[0]=command; 
        send_buf[1]=ID;
        send_buf[2]=DATA;
        send_buf[3]=command^ID^DATA;  //Erstellen der Cheksumme...
    
        RC323.Send(send_buf,sizeof(send_buf); //senden nicht vergessen :D
    }
    
    void rec_answer(const char *buffer, const char *answer)
    {
        switch((int)buffer[0])  // Typecast (ist nicht ganz sauber, aber es sollte gehn)
        {
         case 255:                // Jaja, "Huston,-wir-haben-ein-Problem" Antwort....
               sprintf(answer,"WTF!!! Unit %d didn't understand your command (%d, DATA: %d)!!!",(int)buffer[1],(int)buffer[0],(int)buffer[2]);
                break;
          //[...]
        }
    }
    
    void rec()
    {
        char rec_buf[4];
        char temp[256];
    
        receive_RS323(&rec_buffer,sizeof(rec_buffer);
        rec_answer(rec_buf, &temp);
    }
    Na gut... so würde es (ca.) in C aussehen... Da ich aber grad keine Lust hab das durch nen Complier zu jagen (vor allem, weil grad keiner auf dieser Maschine installiert ist ), kann ich nicht für die Fehlerlosigkeit garantieren...

    Ansonsten: Happy coding
    MfG
    Mobius

    P.S.: Wenn du es dir ganz bequem machen willst, besorg dir nen QBasic sompiler und erstelle das Beispiel, welches am Ende der Datei reinkopiert ist

  6. #6
    Gast
    erstma vielen dank für deine antwort ;o)
    nu sag, hast du einen link wo ich so einen compiler herbekomme ?

    brauche ich für c dann noch ne oberfläche in der ich das prog schreibe damit ich es wandeln kann in etwas was vb versteht ???

    habe ich das so richtig verstanden ?

    in der doku der karte gibt es ein beispiel in qbasik, perfekt wäre nen compiler von qbasik in vb...
    damit ich überhaupt erstmal sehen kann was da für komandos in vb eingebaut werden, die ansteuerung der einzelnen relais bekomme ich denke ich dann hin ;o)

  7. #7
    Gast
    erstma vielen dank für deine antwort ;o)

    nu sag, hast du einen link wo ich so einen compiler von q basik in vb herbekomme ?
    damit ich überhaupt erstmal sehen kann was da für komandos in vb eingebaut werden, die ansteuerung der einzelnen relais bekomme ich denke ich dann hin ;o)

    danke für deine hilfe

  8. #8
    Gast
    sorry für das durcheinander hier *schäm*

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    31
    Beiträge
    456
    Also, um den C-Code in VB nutzten zu können kenn ich (zumindest bei Vb6) nur eine Möglichkeit: Du verkapselst die Befehle in einer Dll und bindest diese dann in Vb ein.

    Leider habe ich (wie schon oben erwähnt) keinen Compiler drauf, als kann ich dir nicht mit der Dll helfen

    MfG
    Mobius

+ Antworten

Berechtigungen

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