So, while programming my flywheel bot, I’ve almost finished the code for the driver control. However, there seems to be an issue that is undetected by output. Once again, I am using Robot Mesh C++ and any help debugging this would be greatly appreciated. Below is the complete driver control as well as the error code it gave:
Driver Control:
#include "vex.h"
using namespace vex;
//#region config_globals
vex::brain Brain;
vex::motor FrontLeft(vex::PORT1, vex::gearSetting::ratio18_1, false);
vex::motor BackLeft(vex::PORT2, vex::gearSetting::ratio18_1, false);
vex::motor FrontRight(vex::PORT3, vex::gearSetting::ratio18_1, true);
vex::motor BackRight(vex::PORT4, vex::gearSetting::ratio18_1, true);
vex::motor Intake(vex::PORT5, vex::gearSetting::ratio18_1, false);
vex::motor Flywheel(vex::PORT6, vex::gearSetting::ratio18_1, true);
vex::controller Controller(vex::controllerType::primary);
bool clickState = true;
bool motorState = false;
//#endregion config_globals
int main(void)
{
{
Brain.Screen.drawImageFromFile("Beeg.png", -75, -40);
}
while(1)
{
sleep(7);
{
Controller.Screen.print("Flywheel: %d", Flywheel.velocity(pct));
}
if(Controller.ButtonRight.pressing())
{
FrontLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 20,velocityUnits::pct);
BackLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 20,velocityUnits::pct);
FrontRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 20,velocityUnits::pct);
BackRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 20,velocityUnits::pct);
}
else if(Controller.ButtonA.pressing())
{
FrontLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
BackLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
FrontRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
BackRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
}
else if(Controller.ButtonLeft.pressing())
{
FrontLeft.spin(directionType::rev,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
BackLeft.spin(directionType::rev,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
FrontRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
BackRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
}
else if(Controller.ButtonY.pressing())
{
FrontLeft.spin(directionType::rev,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
BackLeft.spin(directionType::rev,Controller.Axis3.position(percentUnits::pct) + 75,velocityUnits::pct);
FrontRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
BackRight.spin(directionType::rev,Controller.Axis2.position(percentUnits::pct) + 75,velocityUnits::pct);
}
else if(Controller.ButtonUp.pressing())
{
FrontLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 100,velocityUnits::pct);
BackLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct) + 100,velocityUnits::pct);
FrontRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct) + 60,velocityUnits::pct);
BackRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct) + 60,velocityUnits::pct);
}
else
{
FrontLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct),velocityUnits::pct);
BackLeft.spin(directionType::fwd,Controller.Axis3.position(percentUnits::pct),velocityUnits::pct);
FrontRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct),velocityUnits::pct);
BackRight.spin(directionType::fwd,Controller.Axis2.position(percentUnits::pct),velocityUnits::pct);
}
if(Controller.ButtonL2.pressing() && Controller.ButtonR2.pressing())
{
Intake.spin(directionType::fwd,100,velocityUnits::pct);
}
else if(Controller.ButtonR2.pressing())
{
Intake.spin(directionType::fwd,50,velocityUnits::pct);
}
else if(Controller.ButtonL2.pressing() && Controller.ButtonR1.pressing())
{
Intake.spin(directionType::rev,50,velocityUnits::pct);
}
else if(Controller.ButtonR1.pressing())
{
Intake.spin(directionType::rev,15,velocityUnits::pct);
}
else
{
Intake.spin(directionType::rev,0,velocityUnits::pct);
}
if(Controller.ButtonL1.pressing() && clickState)
{
motorState = !motorState;
clickState = false;
}
if(!Controller.ButtonL1.pressing()) clickState = true;
if(motorState)
{
Flywheel.spin(vex::directionType::fwd, 100, vex::velocityUnits::pct);
}
if(!motorState)
{
Flywheel.spin(vex::directionType::fwd, 0, vex::velocityUnits::pct);
}
}
}
Error Code:
Downloading vm/library.
lib_type: [default]
Compiling: main.cpp
arm-none-eabi-g++: error: vex_smartdrive.cpp.o: No such file or directory
arm-none-eabi-g++: error: vex_motorgroup.cpp.o: No such file or directory
error: link failed
User build failed.
Compiling failed: Program has errors. See output for details. Time: 399 ms