Visual Basic è un linguaggio di programmazione comune utilizzato in una varietà di applicazioni . Il linguaggio può essere usato in kit Lego Mindstorms robotica per creare varie applicazioni . Questi kit sono dotati di computer programmabile noti come "mattoni" che controllano i robot . Il software per questi kit può essere programmato per creare un power- up o start- up del programma per il robot . Cose che ti serviranno
Visual basic
Microsoft Robotics Studio
controller Xbox 360
adattatore Bluetooth
Lego Mindstorms NXT
Mostra più istruzioni
1 < p > Collegare il robot che è costruito utilizzando gli strumenti di base e le istruzioni fornite nel kit di robotica . Assicurarsi che l' opzione Bluetooth è attivata dal menu principale a LED utilizzata per configurare il vostro robot .
2
creare il servizio , che avrà il compito di guidare il robot prima . In Visual Basic , digitare " dssnewservice /language : VB /servizio: " seguito dal nome del servizio . Ad esempio, se si desidera assegnare un nome alla LegoBot servizio , inserire il seguente : « dssnewservice /language : VB /servizio: LegoBot " . Il risultato finale sarà una cartella contenente diversi file necessari per l'ulteriore configurazione del vostro programma di power- up .
3
Aprire il file LegoBot , che dovrebbe essere nominato LegoBot.sln . Impostare i riferimenti nel campo o nel menu che si apre quando si apre il file . Click sinistro " RoboticsCommon.proxy " e " XInputGamePad.Y2006.M09.proxy " nella directory LegoBot .
4
aprire il file .vb LegoBot.cs /aggiungere tre righe di Visual Basic codice :
Importazioni paraurti = Microsoft.Robotics.Services.ContactSensor.ProxyImports drive = Microsoft.Robotics.Services.Drive.ProxyImports gamepad = Microsoft.Robotics.Services.Sample.XInputGamepad.Proxy
5
Creare le porte che verranno utilizzate per comunicare con il dispositivo inserendo il seguente codice :
" partnership con paraurti , azionamento differenziale e gamepad < Partner ( " paraurti " , Contratto: = paraurti . Contract.Identifier , CreationPolicy : = PartnerCreationPolicy.UseExisting ) > _private _bumperPort Come bumper.ContactSensorArrayOperations = Nuovi bumper.ContactSensorArrayOperations ()
< Partner ( "guida", Contratto: = drive.Contract.Identifier , CreationPolicy : = PartnerCreationPolicy.UseExisting ) > _private _drivePort Come drive.DriveOperations = Nuovi drive.DriveOperations ()
< Partner ( " XInputGamepad " , Contratto: = gamepad.Contract.Identifier , CreationPolicy : = PartnerCreationPolicy.CreateAlways ) > _private _gamepadPort Come gamepad.XInputGamepadOperations = Nuovi gamepad.XInputGamepadOperations
6
iscriversi al tuo servizio gamepad inserendo " iscriversi alla pressione dei pulsanti e dei cambiamenti levetta sul 360 padDim gamepadNotify Come gamepad.XInputGamepadOperations = Nuovi gamepad.XInputGamepadOperations () _gamepadPort.Subscribe ( gamepadNotify ) Attiva ( Arbiter.Receive (Of gamepad.ThumbsticksChanged ) (Vero , gamepadNotify , AddressOf ThumbstickHandler ) ) Attiva ( Arbiter.Receive (Of gamepad.ButtonsChanged ) (Vero , gamepadNotify , AddressOf ButtonHandler "
7
Aprire l'oggetto LegoBotState e aggiungi " ' mantenere se i motori sono enabledPublic MotorEnabled come booleano "per indicare che i motori del robot sono abilitati .
8
Aggiungi il codice necessario per determinare come verrà gestito il bot : " ThumbstickHandler private Sub ( msg ByVal come gamepad.ThumbsticksChanged ) Se ( _state.MotorEnabled ) Then ' Sinistra /RightWheelPower si aspetta un valore da - 1.0f a 1.0f . ' i Thumbsticks restituirà un valore di forma - 1.0f a 1.0f . Comodo .
' Crea un requestDim req Come drive.SetDrivePowerRequest = New drive.SetDrivePowerRequest ( ) per
' assegnare il valuesreq . LeftWheelPower = msg.Body.LeftYreq.RightWheelPower = msg.Body.RightY
' posta la request_drivePort.SetDrivePower ( req ) End Sub IfEnd
ButtonHandler private Sub ( msg ByVal come gamepad.ButtonsChanged ) Se ( msg.Body.A ) Then_state.MotorEnabled = TrueEnd IfEnd Sub "
9
Istituito ti funzionalità paraurti inserendo : " 'Sottoscrivi paraurti notificationsDim bumperNotify Come bumper.ContactSensorArrayOperations = nuovo paraurti . ContactSensorArrayOperations () _bumperPort.Subscribe ( bumperNotify ) Attiva ( Arbiter.Receive (Of bumper.Update ) (Vero , bumperNotify , AddressOf BumperHandler ) ) "
10
attivare il gestore paraurti inserendo il necessario codice : " BumperHandler private Sub ( msg ByVal come bumper.Update ) Se ( msg.Body.Pressed ) ThenLogInfo ( " ! Premuto " ) per
_state.MotorEnabled = False
' creare un requestDim req Come drive.SetDrivePowerRequest = New drive.SetDrivePowerRequest ( ) per
' fermare il wheelsreq.LeftWheelPower = 0.0Freq.RightWheelPower = 0,0 F
' posta la request_drivePort.SetDrivePower ( req ) End Sub IfEnd "
11
eseguire il servizio di debug del programma e dire al programma per consentire ai dispositivi installati al di sopra di lavorare con la programmazione . clic destro sul comando" Proprietà " all'interno del progetto . sinistro del mouse su " Debug" e poi aggiunge " - manifesto : " . samples \\ config \\ LEGO.NXT.LegoBot.manifest.xml "" per la casella di testo " gli argomenti della riga di comando "