Download Vex Robotics Driver

The VEX Robotics Design System offers students an exciting platform for learning about areas rich with career opportunities spanning science, technology, engineering and math (STEM). These are just a few of the many fields students can explore by creating with VEX Robotics technology. To update this firmware, you will need to download the VEXnet Firmware Upgrade Utility, the VEXnet Key 2.0 Firmware Upgrade Utility and the VEXnet Serial USB Driver. The VEXnet Firmware Upgrade Utility overwrites the Master Code on the VEX ARM® Cortex®-based Microcontroller or a VEXnet Joystick to the latest version.

This example shows how to use Simulink Coder Support Package for ARM Cortex-based VEX Microcontroller to implement both Autonomous mode and Driver mode in the same Simulink model. Autonomous mode, Driver mode and the switch between the two is a format that applies only to the VEX Robotics Competition. This model should be used only in a VEX Competition field where a VEX field controller controls the modes of the VEX Robot.(you can also use a VEX Competition Switch that simulates a VEX field controller for match practice )

Introduction

Simulink Coder Support Package for ARM Cortex-based VEX Microcontroller enables you to create and run Simulink models on a VEX microcontroller.

In this example you will learn how to program both Autonomous mode and Driver mode in the same Simulink model. The Driver mode will driver a DC motor mapped to the VEX gamepad, and the autonomous mode will driver a DC motor at maximum speed.

Prerequisites

  • If you are new to Simulink, we recommend watching the Simulink Quick Start video.

  • We recommend completing Getting Started with VEX Microcontroller Support Package.

Required Hardware

To run this example you will need the following hardware:

  • ARM Cortex-based VEX Microcontroller

  • VEXnet Gamepad and VEXnet keys

  • Standard DC Motor and Motor Controller

  • 7.2V Battery

  • USB type A-Male to A-Male cable

  • VEXnet Competition Switch(or the VEX field controller used in the actual VEX Robotics Competition )

Task 1 - Hardware Connections

Download

1. Connect the VEX Microcontroller to your computer with a USB cable.

2. Connect the DC motor to the motor pin3. Use the Motor Controller 29 cables to establish the connection between the motors leads and the pins on VEX Microcontroller.

3. Connect the battery supply to the VEX Microcontroller.

4. Connect the VEXnet Competition Switch to the Competition port on the VEXnet Gamepad using an Ethernet cable. On the VEXnet Competition Switch, set the Enable/Disable switch to Disable state and the Driver/Autonomous switch to Autonomous state.

Task 2 - Create a VEX Robotics Competition template model

1. In MATLAB, select HOME > New > Simulink Model > Blank Model > Create Model.

2. Click on the Library Browser to open the Simulink Library.

3. Select Simulink > Ports & Subsystems > Enabled Subsystem, drag and drop twice into your Simulink model. Rename the Enabled Subsystems Autonomous and Driver respectively.

4. Open vexarmcortexlib, drag and drop the Competition Switch block from the Gamepad library into your Simulink model.

5. Connect the Auto port of the Competition Switch to the Autonomous Enabled Subsystem, and the Driver port of the Competition Switch to the Driver Enabled Subsystem.

Task 3 - Implement Autonomous mode logic and Driver mode logic

1. Double click and open the Autonomous Enabled Subsystem. In the Autonomous Enabled Subsystem, delete the Inport, Outport and the connection between them.

Software

2. Drag the Constant block from the Utilities in the VEX Microcontroller library. Set the value of the Constant block to 127.

3. Drag the DC Motor block from the Actuators library within the VEX Microcontroller library to your model. Rename it to SetMotor. Set the value of the Motor Channel to 3. Motor Channel is the pin to which the DC motor is connected.

4. Connect the Constant block to the input of the SetMotor block.

5. Click the Up to Parent button to return to the top level of the model.

6. Double click and open the Driver Enabled Subsystem. In the Driver Enabled Subsystem, delete the Inport, Outport and the connection between them.

7. Drag the DC Motor block from the Actuators library and the Gamepad Joystick block from the Gamepad library within the VEX Microcontroller library into your Simulink model.

8. Set the value of the Motor Channel to 3.

Download Vex Robotics Drivers

9. Connect the output of the Gamepad Joystick to the input of the DC Motor.

10. Save your model.

Task 4 - Build and Download the Simulink model

In this task you will open the Simulink model created in Task 2 and Task 3, build and download it to the VEX microcontroller.

1. Make sure to connect the VEX Microcontroller to your computer with a USB A-Male to A-Male cable.

2. Open the model created in task 2 and task 3 or, open the pre-configured model included for your convenience.

3. In the Simulink model, click on the Configuration Parameters button.

4. When the Configuration Parameters page opens up, navigate to the Hardware Implementation pane.

  • Set the Hardware board to ARM Cortex-based VEX Microcontroller.

  • In the Target Hardware Resources section, set the Build options to Build, load and run to automatically download the generated binary file on to the connected VEX microcontroller.

Download Vex Robotics Driver Simulator

5. In the Configuration Parameters page, navigate to Solver pane and set the Solver to discrete (no continuous states).

6. Click OK.

7. In your Simulink model, click the Build Model button on the toolbar. The model will now be deployed to the VEX microcontroller.

Task 5- Use the VEXnet Competition Switch to set the model in Autonomous mode or Driver mode

In this task you will learn how to set the Example model in Autonomous mode or Driver mode.

1. Disconnect the USB cable from the PC, and connect the VEX Microcontroller to the VEX gamepad using VEXnet keys. Also ensure that the VEXnet Competition Switch is connected to the VEX Gamepad via an Ethernet cable.

2. Turn on the VEX microcontroller and the VEXnet gamepad.

Vex Drivers

3. Set the Enable/Disable switch to Enable state (the Driver/Autonomous switch is already set to Autonomous state in Task 1). Now the model is in Autonomous mode. You will observe that the motor rotates at Maximum speed.

4. Set the Driver/Autonomous switch to Driver state. Now the model is in Driver mode. The motor stops rotating at maximum speed. You can control the motor through joystick horizontal axis 1 on the VEX Gamepad.

5. Set the Enable/Disable to Disable state. This will disable the robot. All the actuators (motors) will be inactive in this state.

Summary

This example introduced the workflow for implementing Autonomous mode and Driver mode with the Simulink Coder Support Package for ARM Cortex-based VEX Microcontroller

Join the Free VEX Certification System and earn a certification that validates the learning outcomes of a VEX Robotics or REC Foundation Certification course.

Learn where, when, and how you want

The VEX Certification System demonstrates to other educators that VEX certified educators understand the fundamentals of using and implementing VEX Robotics. The VEX Certification System also allows REC Foundation volunteers to demonstrate competency in various aspect of running a REC Foundation event.

In addition to the lessons in the training courses, users will also have the opportunity to take practice exams, ensuring that they are completely prepared for the certification exam.

Once certified, you will gain access to a growing community of users and resources in various Professional Learning Communities (PLCs).

The VEX Certification System is available to all users at no cost.

Below are the available Certification Programs. Select a program to see the available certification offerings.

Download Vex

VEX Robotics Certification Programs

For all users getting started with VEX Robotics.

REC Foundation Certification Programs

Download Vex Robotics Driver Software

For all users getting started volunteering with the REC Foundation programs. These courses may have age restrictions.