I’m a beginner to PROS and I’m making a very basic exponential drive. Whenever I take the base decimal to the power of a variable, it reads as “invalid operands to the binary expression”. The error is on line 19 and 20. When I try to build an opcontrol file that does not have any errors, it fails. If someone could help with these problems, that would be much appreciated.
#include "main.h"
#define LEFTDRIVE_PORT 1,2
#define RIGHTDRIVE_PORT 3,4
void opcontrol() {
motor_set_gearing(LEFTDRIVE_PORT, 18) ;
motor_set_gearing(RIGHTDRIVE_PORT, 18) ;
while (true) {
int Joy2 = ((100*(controller_get_analog(1, 2)))/127) ; // percent power from joystick
int Joy3 = ((100*(controller_get_analog(1, 3)))/127) ; // percent power from joystick
int leftdrive = 0 ;
int rightdrive = 0 ;
int k = 0 ;
int rspeed = floorf((1.038944156^Joy2)-1) ; // takes percent and applies equation
int lspeed = floorf((1.038944156^Joy3)-1) ; // takes percent and applies equation
if (abs(Joy2) < k) {
rightdrive = 0 ;
}
else if (abs(Joy2) > k) {
rightdrive = 12000*rspeed ;
}
else {
rightdrive = 0 ;
}
if (abs(Joy3) > k) {
leftdrive = 0 ;
}
else if (abs(Joy3) < k) {
leftdrive = 12000*lspeed ;
}
else {
leftdrive = 0 ;
}
motor_move(RIGHTDRIVE_PORT, rightdrive) ;
motor_move(LEFTDRIVE_PORT, leftdrive) ;
}
delay(20);
}