Also mein Problem ist:
Ich habe 3 Buttons im Form, und diese 3 Buttons steuern einen Motor. Der 1. in die Rechte Richtung, der 2. in die Linke richtung, der 3. ist für Stopp.
Problem ist nur, es gibt keinen Motor, der von 500 Umdrehungen/min nach rechts, ruckartig 500 Umdrehungen/Minute nach links machen kann, so brauche ich in den Buttons für die Rechte und Linke richtung eine "Timeout" von, sagen wir mal, 3 Sekunden. d.h. jedesmal wenn er die Richtung ändert soll er 3 Sekunden warten, dann die Richtung ändern, wie baue ich das ein???
Der Code:
Option Explicit
Dim Befehl, Te, T, Kette As String
Dim Multi As Integer
Private Sub Form_Load()
Multi = iopen("hpib,7,23")
Call itimeout(Multi, 10000)
Call itermchr(Multi, 10)
Te = Chr$(13) + Chr$(10)
End Sub
Private Sub Right_Click() <- Button für rechte Richtung
Rel1.Text = "Geschlossen"
Rel2.Text = "Offen"
Rel3.Text = "Offen"
Rel4.Text = "Geschlossen"
Richt.Text = "Right"
'Befehl für die Rechte Richtung
Kette = "1,1,2,0,3,0,4,1" <---------"Relais1,zu,Relais2,offen,Relais3,offen,Relais4,zu"
Befehl = "OB,7," + Kette + "T" + Te
Call iwrite(Mulit, ByVal Befehl, Len(Befehl), 0, 0&)
End Sub
Private Sub Left_Click()<- Button für Linke Richtung
Rel1.Text = "Offen"
Rel2.Text = "Geschlossen"
Rel3.Text = "Geschlossen"
Rel4.Text = "Offen"
Richt.Text = "Left"
'Befehl für die Linke Richtung
Kette = "1,0,2,1,3,1,4,0"
Befehl = "OB,7," + Kette + "T" + Te
Call iwrite(Mulit, ByVal Befehl, Len(Befehl), 0, 0&)
End Sub
Private Sub Stopp_Click()<- Button für Stopp
Rel1.Text = "Offen"
Rel2.Text = "Offen"
Rel3.Text = "Offen"
Rel4.Text = "Offen"
Richt.Text = "Stopp"
'Stopp-Befehl
Kette = "1,0,2,0,3,0,4,0"
Befehl = "OB,7," + Kette + "T" + Te
Call iwrite(Mulit, ByVal Befehl, Len(Befehl), 0, 0&)
End Sub
Private Sub End_Click()
Call iclear(Multi)
Call iclose(Multi)
Unload Me
End
End Sub
Vielleicht besser zu verstehen:
Ich klicke "rechts" - button, motor fängt an sich rechts zu drehen, dann klicke ich "links" - button,>>>>motor soll erstmal 2 - 3 Sek pausieren, dann erst nach links drehen<<<<< [gleiches gilt, wenn ich erst "links"-button drücke, und dann "rechts"-button], ich drücke auf "Stopp"-Button, motor soll erst nach 3 Sek. (oder sofort)zum Stillstand kommen. Ich hoffe, dass ich es genau genung beschrieben habe.
Ich wäre dankbar, wenn mir einer erklärt, und zusätlich vielleicht bissel Beispielcode befügt, MIT Kommentar, wenn's geht.
Vielen lieben Dank im Vorraus,
Void()