Tecnología

Inicio

Cómo hacer un power-up de ladrillo en Visual Basic

Cómo hacer un power-up de ladrillo en Visual Basic


Visual Basic es un lenguaje de programación común usado en una variedad de aplicaciones. El lenguaje puede ser utilizado en Lego Mindstorms kits de robótica para crear diversas aplicaciones. Estos kits vienen con las computadoras programables conocidos como "ladrillos" que controlan los robots. El software para estos kits puede ser programado para crear un encendido o puesta en marcha del programa para el robot.

Instrucciones

1 Enchufe el robot que se construyen utilizando las herramientas básicas e instrucciones proporcionadas en el kit de robótica. Asegúrese de que la opción Bluetooth está activada desde el menú principal LED utilizada para configurar su robot.

2 Crear el servicio que va a ser responsable de la conducción de su primer robot. En Visual Basic, escriba "dssnewservice / idioma: VB / servicio:" seguido del nombre del servicio. Por ejemplo, si desea nombrar el LegoBot servicio, entre lo siguiente: "dssnewservice / idioma: VB / servicio: LegoBot". El resultado final será una carpeta que contiene varios archivos necesarios para su posterior configuración de su programa de encendido.

3 Abra el archivo LegoBot, que debe ser nombrado LegoBot.sln. Establecer las referencias en la caja o en el menú que se abre cuando se abre el archivo. clic izquierdo "RoboticsCommon.proxy" y "XInputGamePad.Y2006.M09.proxy" en el directorio LegoBot.

4 Abra el archivo LegoBot.cs / .vb añadir tres líneas de código de Visual Basic:

Las importaciones tope = Microsoft.Robotics.Services.ContactSensor.Proxy
Las importaciones en coche = Microsoft.Robotics.Services.Drive.Proxy
Las importaciones gamepad = Microsoft.Robotics.Services.Sample.XInputGamepad.Proxy

5 Crear los puertos que va a utilizar para comunicarse con el dispositivo introduciendo el siguiente código:

"asociaciones con parachoques, unidad diferencial y mando de juegos
<Socio ( "tope", Contrato: = bumper.Contract.Identifier, CreationPolicy: = PartnerCreationPolicy.UseExisting)> _
_bumperPort privada Como bumper.ContactSensorArrayOperations = Nuevos bumper.ContactSensorArrayOperations ()

<Socio ( "unidad", Contrato: = drive.Contract.Identifier, CreationPolicy: = PartnerCreationPolicy.UseExisting)> _
_drivePort privada Como drive.DriveOperations = Nuevos drive.DriveOperations ()

<Socio ( "XInputGamepad", Contrato: = gamepad.Contract.Identifier, CreationPolicy: = PartnerCreationPolicy.CreateAlways)> _
_gamepadPort privada Como gamepad.XInputGamepadOperations = Nuevos gamepad.XInputGamepadOperations

6 Suscribirse a su servicio la pista del juego mediante la introducción de "suscribirse a pulsaciones de botones y stick cambios en la almohadilla 360
Dim gamepadNotify Como gamepad.XInputGamepadOperations = Nuevos gamepad.XInputGamepadOperations ()
_gamepadPort.Subscribe (gamepadNotify)
Activar (Arbiter.Receive (De gamepad.ThumbsticksChanged) (Verdadero, gamepadNotify, AddressOf ThumbstickHandler))
Activar (Arbiter.Receive (De gamepad.ButtonsChanged) (Verdadero, gamepadNotify, AddressOf ButtonHandler "

7 Abra el objeto LegoBotState y añaden " 'mantienen si los motores están habilitadas
Pública MotorEnabled As Boolean "para indicar que los motores del robot están habilitadas.

8 Agregue el código necesario para determinar cómo se manejará el bot:
"Private Sub ThumbstickHandler (ByVal msg Como gamepad.ThumbsticksChanged)

If (_state.MotorEnabled) Then
' Left/RightWheelPower expects a value from -1.0f to 1.0f.
' the Thumbsticks will return a value form -1.0f to 1.0f. Convenient.

'Crear una solicitud
req tenue Como drive.SetDrivePowerRequest = Nueva drive.SetDrivePowerRequest ()

'Asignar los valores
req.LeftWheelPower = msg.Body.LeftY
req.RightWheelPower = msg.Body.RightY

'Publicar la solicitud
_drivePort.SetDrivePower (req)
Terminara si

End Sub

Private Sub ButtonHandler (ByVal msg Como gamepad.ButtonsChanged)

If (msg.Body.A) Then
_state.MotorEnabled = True
End If

End Sub "

9 Establecer que la funcionalidad del parachoques mediante la introducción: " 'suscribirse a notificaciones de calcomanías
Dim bumperNotify Como bumper.ContactSensorArrayOperations = Nuevos bumper.ContactSensorArrayOperations ()
_bumperPort.Subscribe (bumperNotify)
Activar (Arbiter.Receive (De bumper.Update) (Verdadero, bumperNotify, AddressOf BumperHandler)) "

10 Habilitar el controlador de parachoques introduciendo el código necesario: "Private Sub BumperHandler (ByVal msg Como bumper.Update)

If (msg.Body.Pressed) Then
LogInfo(&quot;Pressed!&quot;)

_state.MotorEnabled = False

'Crear una solicitud
req tenue Como drive.SetDrivePowerRequest = Nueva drive.SetDrivePowerRequest ()

'Detener las ruedas
req.LeftWheelPower = 0.0f
req.RightWheelPower = 0.0f

'Publicar la solicitud
_drivePort.SetDrivePower (req)
Terminara si

End Sub "

11 Ejecutar el servicio por depurar el programa y decirle al programa para permitir que los dispositivos instalados anteriormente para trabajar con la programación. Haga clic derecho sobre el comando "Propiedades" dentro del proyecto. Haga clic izquierdo en "depuración" y luego añadir "-manifest:" samples \ config \ LEGO.NXT.LegoBot.manifest.xml "" para el cuadro de texto llamado "argumentos de línea de comandos".