CControl

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Pedro.

    Hallo zusammen

    Ich habe eine CControl Anlage Die ich bisher mit Hyperterminal ausgelesen habe. Jetzt möchte ich sie mit VB2008 auslesen. Ich wäre froh wenn mir jemand ein ganz kurzes programm mit form erstellen könnte, damit ich es dann weiter ausbauen könnte. Im Forum habe ich nichts gefunden dass ich einsetzen kann.

    Zum voraus besten dank :)

    Pedro
    Hallo
    Das ging ja schnell.
    Also ich habe ein CControl I Bord, möchte über das rs232 kabel die temperatur messen. Bisher mit Hyperterminal. Leider habe ich dein Serial_versuch programm nicht zum laufen gebracht. Ich benutze VB2008 ob es an dem liegt?

    Gruss pedro
    ak-modul-bus.de/stat/c_control_experimentier_board.html

    Isses das?.
    C Controlls habe ich auch noch im Einsatz.
    Was und Wie sendest du zum PC.
    Seriell_versuch ist nur zum Senden und Empfangen von 1 Bytes.
    Muß natürlich verändert werden.
    Wenn du in dein Controll ein TestProg laden würdest.
    z.B.
    byte=0
    if rxd then get byte
    if byte=cod then put byte

    also empfang von einen Cod ,dann senden eines Bytes.

    Alles weitere später.

    Gruß
    Hallo
    Genau dass ist das teil.
    Mit CControl Basic komme ich einigermassen zu rande. Nun möchte ich es aber in VBA2008 umsetzen. Siehe das zip file. Ich wäre einfach froh wenn ich eine kleine Datei zum ausführen hätte auf die ich dann aufbauen könnte. Wenn dass möglich wäre?

    gruss pedro
    Dateien
    • messen.zip

      (831 Byte, 184 mal heruntergeladen, zuletzt: )
    Hallo

    #led
    if boilertemp =< 50 then ledr= on else ledg = off 'unter 50 grad
    if boilertemp >= 50 then ledg = on else ledr = off ' ueber 50 grad
    if kollektor < 30 then ledkol=off else ledkol =on
    return

    Das nochmals überdenken,doppelt gemoppelt und bei 50 was ist dann?

    Habe das Prog live angesehen,scheint in Ordnung zu sein.

    Du sendest alles immer als ASCII Werte.
    Der einfacherhalbe würde ich erst einmal ein Startbyte mit Put senden(z.B &HFE)
    Danach deine ASCII Daten mit einem EndeCod z.B Put &HFC.
    Dadurch braucht du Zeilenvorschub und Anderes nicht zu beachten.
    Das PC Prog wartet im empfangsevent auf auf den Startcod und liest dann ein,bis der endeCod erscheint.
    Jetzt kannst du auch Quittieren und die Daten weiterverarbeiten.

    Ich habe wenig Möglichkeiten (jetzt) das alles zu testen,da ich nicht zu Hause bin.
    Helfe meinen Enkel eine Kleinmodelbahn (Eigenbausatz) aufzubauen.
    Er ist aber erst 4 einhalb.

    P.S. Werde trotzdem versuchen das Empfangsprog anzupassen, ist eigentlich nicht kompliziert.


    edit: boilertemp = ad8 *2-268
    kollektor = 10*(ad1-40)/2
    funzt das wirklich?
    Gruß

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „fraju“ ()

    Hallo
    Ein ausdruck der gemessenen temp. im anhang. Wie du siehst geht es. Warscheinlich kann man das noch eifacher und profesioneller machen aber ich möchte es ja jetzt in VBA2008 ausführen. Leider fehlt mir einfach noch dass grundlegende wissen. Ich habe im Forum gesucht aber bin auch nicht gescheiter bis jetzt.

    gruss Pedro
    Bilder
    • hyper.jpg

      36,49 kB, 853×132, 165 mal angesehen
    Hallo

    edit: boilertemp = ad8 *2-268
    kollektor = 10*(ad1-40)/2

    ich meinte:Was passiert wenn z.B. ad8<164 -> Ergebnis neg
    oder ad1<40





    #Warten
    for n= 1 to (10*interval) 'normal 10 = 1 min. 50 = 5 min.
    pause 5 '50*20 ms = eine Sekunde
    if rxd then gosub unterbrechung
    next
    return

    wenn interval 1200 dann ist die Schleife aber nicht 20 Min.

    Das ist aber jetzt nur Nebensache.
    Jede sec fragst du die serielle ab.

    Du brauchst im VB Versuchsprogramm nur zwei Button einfügen und deine Steuerbefehle senden.
    Der Controller sollte antworten.
    Das letzte empfangene Zeichen wird als Byte angezeigt.
    Wenn das klappt sind wir einen Schritt weiter.

    edit:Eigendlich braucht du nur 1 mal bei der Leseanforderung die Zeit und 2 Temperaturen bis 99 Grad .Die Temp. kannst du
    auch in ein Byte packen.
    Alles andere macht dann der PC,aber das mußt du für dich entscheiden,was für dich Verständlicher ist.
    Es gibt noch viele Möglichkeiten des Sendens und Empfangen.

    Gruß

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „fraju“ ()

    Hallo

    Du schreibst ich lese jede Sekunde den Port ab. Aber wenn ich dass nicht mache kann ich die Daten nicht zu jeder zeit auslesen. Oder gibt es da noch eine bessere lösung?

    Bin immer noch am suchen nach einer VB2008 lösung. ?(

    Gruss Pedro
    Hallo
    Irrtum meinerseits,du fragst alle 100ms ab und sendest alle 20 Min ein Datenpaket welches du auch im EE speicherst.
    Mit einer leseanforderung sollen alle Datenpakete vom Pc gelesen werden,damit der PC nicht Ständig eingeschaltet zu sein brauch.

    Werde mal sehen was sich machen lässt.
    Kleines Primitives Prog,was du weiter entwickeln kannst.

    Wenn mein Enkel mir Zeit lässt.

    Testen kann ich aber hier nicht.

    Gruß
    Hallo.
    Vielen dank für dein programm, so etwas habe ich mir vorgestellt. Es wäre mir nie in den sinn gekommen das dass so viel aufwand gibt. Ich werde es einmal studieren, aber ich glaube da muss ich schon noch etwas daran sitzen um es zu verstehen.

    danke und gruss pedro