Hvordan sende serie kommandoer til en Stepper i Visual Basic
En trinnmotor er unik ved at den kan slå et bestemt antall grader og stoppe, snarere enn å slå kontinuerlig ettersom de fleste elektriske motorer gjør. Motoren styres elektronisk ved hjelp av en ekstern krets. Dette arrangement gir seg til programstyring, enten det er fastvaren innleiret i mikrokontrollenheten, eller fra et eksternt program. Visual Basic kan brukes til å utvikle programvare som kommuniserer med en motorrens styring krets gjennom den serielle eller parallelle port på en datamaskin. Når porten er åpen, kan programmet utøve kontroll over bevegelsene til motoren.
Bruksanvisning
1 Referere til Serial klasse i programmet. Denne sammenstilling kan anvendes sammen med Visual Basic, så vel som andre NET språk. Skriv følgende uttalelse på toppen av koden filen:
import System.IO.Ports
2 Sett portinnstillingene og åpne seriell port. Denne koden kan bli satt inn i en rekke steder i programmet slik "Load" hendelse av en form eller som reaksjon på en knapp blir presset. Følgende eksempel setter rammer for seriell port COM1:
Dim myComPort som ny Serial
Prøve
If Not myComPort.IsOpen Then
myComPort.PortName = "COM1"
myComPort.BaudRate = 1200
myComPort.Parity = Parity.None
myComPort.DataBits = 8
myComPort.StopBits = StopBits.One
myComPort.Handshake = Handshake.None
myComPort.ReadTimeout = 3000
myComPort.WriteTimeout = 5000
myComPort.Open ()
Slutt om
Catch --- (feil)
End Try
3 Send kontrollkodene til mikrokontrolleren er festet til trinnmotoren. Ulike kombinasjoner av styringer og motorer vil ha forskjellige kodekrav så du må se i produsentens dokumentasjon for de spesifikke koder og i hvilken form kontrolleren forventer å motta dem. Som et eksempel, sender følgende kode en kommando "GO" som 8-bits, ASCII-tegn:
myComPort.Writeline ( "GO")
svar = myComPort.Readline
4 Lukk porten når du er ferdig med å sende kommandoer. "Slutt å bruke" statement frigjør ressurser av seriell port og lukker den til kommunikasjon. Legg denne koden til enten "FormClosing" hendelseshåndterer eller til en bestemt meny eller kontrollsituasjonen:
Bruke myComPort
Hvis myComPort.IsOpen Deretter
Do While (myComPort.BytesToWrite > 0)
Loop
Slutt om
Slutt å bruke