PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotor ansteuern mit RS232



Ferdinand
18.09.2004, 22:38
Hi

Möchte einen Schrittmotor ansteuern mit RS232 und VB6
sorichtig mit geschwindikeits reglung und ales was da zu gehört
habe alerdings keine anung von programiren

gibt es irgend wie hilfe one das ich gelt aus geben mus hab nen schrittmotor und so ne VB6 studenden version

Danke

by Ferdinand

x-ryder
19.09.2004, 08:14
Hi!

Kostenlose Hilfe gibts hier ja immer, aber ich fürchte du wirst noch zusatzbauteile benötigen zusätzlich zu deinem Schrittmotor.

Was willst du denn machen?

LPT-Port oder wirklich RS232?

Martin

19.09.2004, 09:41
Wenn du rs232 nehmen willst, bietet sich die Schaltung rn-motor an. Da gibt´s hier eine Bauanleitung im Download Bereich. Es gibt auch einen Bausatz und Fertigmodul. Und VB-Programm mit Sourcecode ist auch dabei
https://www.roboternetz.de/phpBB2/viewtopic.php?t=1511

Ferdinand
21.09.2004, 12:04
jo genau ich möchte einen schrittmotor über die rs232 und VB an steuern

wen das geht ???

direkter link were nicht schlecht danke
by Ferdinand

21.09.2004, 12:47
Der Link war schon recht direkt ;-)
Aber hier noch einer:
https://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=159

Ferdinand
22.09.2004, 19:41
ok

hab es gefunden du hast geschriben das da ein VB prog dabei wäre

den ich wil das ja selber progen könen

ich brauche nur ein beispil ok.

Danke trotzdem

by Ferdinand

Frank
22.09.2004, 20:06
Hier hast du VB-Beispiel Steuerprogramm für RN-Motor



Option Explicit

Dim mybuffer As Variant
Dim low As Byte
Dim high As Byte


Private Sub buttlDrehLinks_Click()
SendBefehl "#rmd" & Chr(0) & Chr(0), "OK"
End Sub

Private Sub buttlDrehRechts_Click()
SendBefehl "#rmd" & Chr(0) & Chr(1), "OK"
End Sub

Private Sub buttlEndlosdrehen_Click()
SendBefehl "#rme" & Chr(0), "OK"
End Sub

Private Sub buttlGeschwindigkeituebermitteln_Click()
SendBefehl "#rmg" & Chr(0) & Chr(HScrolllgeschwindigkeit.Value), "OK"
End Sub

Private Sub buttLMotorAus_Click()
SendBefehl "#rma" & Chr(0), "OK"
End Sub

Private Sub buttLMotorEin_Click()
SendBefehl "#rmo" & Chr(0), "OK"

End Sub

Private Sub buttlmotorstop_Click()
SendBefehl "#rms" & Chr(0), "OK"
End Sub

Private Sub buttLSchritt_Click()
SendBefehl "#rmm" & Chr(0), "OK"
End Sub

Private Sub buttlSchritteuebermitteln_Click()
high = Int(HScrolllschritte.Value / 256)
low = HScrolllschritte.Value - (high * 256)
SendBefehl "#rmz" & Chr(0) & Chr(low) & Chr(high), "OK"
End Sub

Private Sub buttLschritteZeigen_Click()
SendBefehl "#rmp" & Chr(0), "OK"
End Sub

Private Sub buttLStatus_Click()
SendBefehl "#rmt", "OK"
End Sub

Private Sub buttLStrom_Click()
SendBefehl "#rmi" & Chr(0) & Chr(lmaxstrom.Value / 10), "OK"
End Sub

Private Sub buttrDrehLinks_Click()
SendBefehl "#rmd" & Chr(1) & Chr(0), "OK"
End Sub

Private Sub buttrDrehRechts_Click()
SendBefehl "#rmd" & Chr(1) & Chr(1), "OK"
End Sub

Private Sub buttrEndlosdrehen_Click()
SendBefehl "#rme" & Chr(1), "OK"
End Sub

Private Sub buttrGeschwindigkeituebermitteln_Click()
SendBefehl "#rmg" & Chr(1) & Chr(rHScrolllgeschwindigkeit.Value), "OK"
End Sub

Private Sub buttRMotorAus_Click()
SendBefehl "#rma" & Chr(1), "OK"
End Sub

Private Sub buttRMotorEin_Click()
SendBefehl "#rmo" & Chr(1), "OK"
End Sub

Private Sub buttrmotorstop_Click()
SendBefehl "#rms" & Chr(1), "OK"
End Sub

Private Sub buttrSchritt_Click()
SendBefehl "#rmm" & Chr(1), "OK"
End Sub

Private Sub buttRSchritteuebermitteln_Click()
high = Int(RHScrolllschritte.Value / 256)
low = RHScrolllschritte.Value - (high * 256)
SendBefehl "#rmz" & Chr(1) & Chr(low) & Chr(high), "OK"
End Sub

Private Sub buttrschritteZeigen_Click()
SendBefehl "#rmp" & Chr(1), "OK"
End Sub

Private Sub buttrStatus_Click()
SendBefehl "#rmt", "OK"
End Sub

Private Sub buttRStrom_Click()
SendBefehl "#rmi" & Chr(1) & Chr(rmaxstrom.Value / 10), "OK"
End Sub

Private Sub buttVref_Click()
frmVref.Show 1
End Sub

Private Sub Form_Load()
txtStrom = ""
txtLSchritte = ""
txtlGeschwindigkeit = ""

txtStromR = ""
txtRSchritte = ""
txtrGeschwindigkeit = ""

'txtStrom = lmaxstrom.Value
'txtLSchritte = HScrolllschritte.Value
'txtlGeschwindigkeit = HScrolllgeschwindigkeit.Value
txtlog = ""

ComboComPort.ListIndex = 0
MSComm1.CommPort = ComboComPort.ListIndex + 1
MSComm1.Settings = "9600,N,8,1"
MSComm1.InputLen = 0
MSComm1.PortOpen = True
End Sub

Private Sub Form_Unload(Cancel As Integer)
MSComm1.PortOpen = False
End Sub

Private Sub HScrolllgeschwindigkeit_Change()
txtlGeschwindigkeit = HScrolllgeschwindigkeit.Value
End Sub

Private Sub HScrolllschritte_Change()
txtLSchritte = HScrolllschritte.Value
End Sub

Private Sub lmaxstrom_Change()
txtStrom = lmaxstrom.Value
End Sub



Function SendBefehl(befehl As Variant, warteauf As String) As Boolean
Dim buffer As String
Dim rueckgabe As String
Dim n As Long
Dim bytefeld() As Byte
Dim anz As Integer
Dim i As Integer

anz = Len(befehl)
ReDim bytefeld(anz)
For i = 1 To anz
bytefeld(i - 1) = Asc(Mid(befehl, i, 1))
Next i

SendBefehl = False
buffer = ""
MSComm1.Output = befehl

n = 0
Do
If n > 100000 Then
Beep
Exit Function
End If
rueckgabe = MSComm1.Input
txtlog = txtlog & rueckgabe
DoEvents
buffer = buffer & rueckgabe
n = n + 1
Loop Until InStr(buffer, warteauf)

txtlog.SelStart = Len(txtlog.Text)
'txtlog.SelLength = 1
DoEvents
SendBefehl = True
End Function


Private Sub rHScrolllgeschwindigkeit_Change()
txtrGeschwindigkeit = rHScrolllgeschwindigkeit.Value
End Sub

Private Sub RHScrolllschritte_Change()
txtRSchritte = RHScrolllschritte.Value
End Sub

Private Sub rmaxstrom_Change()
txtStromR = rmaxstrom.Value
End Sub

Ferdinand
25.09.2004, 21:41
ales klar danke !!!