This commit is contained in:
Max 2021-05-04 21:03:56 +01:00
parent 1505a4a24b
commit 8731b22a75
3 changed files with 65 additions and 0 deletions

BIN
Shield dimentions.sketch Normal file

Binary file not shown.

View File

@ -0,0 +1,43 @@
#define OUT_ROBOT 6
#define IN_ROBOT 8
#define OUT_PLAYER 7
#define IN_PLAYER 9
int input_value_player;
int input_value_robot;
const int score_threshold_robot = 750;
const int score_threshold_player = 950;
int cycles = 0;
void setup() {
Serial.begin(115200);
pinMode(OUT_ROBOT, OUTPUT);
pinMode(OUT_PLAYER, OUTPUT);
pinMode(IN_ROBOT, INPUT);
pinMode(IN_PLAYER, INPUT);
digitalWrite(OUT_PLAYER, HIGH);
digitalWrite(OUT_ROBOT, HIGH);
}
void loop() {
cycles++;
// delay(5);
input_value_player = analogRead(IN_PLAYER);
input_value_robot = analogRead(IN_ROBOT);
// Serial.println(input_value_player);
// Serial.println(input_value_robot);
if (input_value_player < score_threshold_player) {
Serial.println("***ROBOT SCORED***");
delay(500);
} else if (input_value_robot < score_threshold_robot) {
Serial.println("***PLAYER SCORED***");
delay(500);
} else {
if (cycles > 2000) {
Serial.println("...");
cycles = 0;
}
}
}

View File

@ -13,6 +13,28 @@ class Odrive:
def set_zero(self): def set_zero(self):
self.drive.axis0.encoder.set_linear_count(0) self.drive.axis0.encoder.set_linear_count(0)
self.drive.axis1.encoder.set_linear_count(0) self.drive.axis1.encoder.set_linear_count(0)
self.drive.axis0.controller.config.input_mode = 3
self.drive.axis1.controller.config.input_mode = 3
# self.drive.axis0.trap_traj.config.vel_limit = 100
# self.drive.axis1.trap_traj.config.vel_limit = 100
# self.drive.axis0.trap_traj.config.accel_limit = 50
# self.drive.axis1.trap_traj.config.accel_limit = 50
# self.drive.axis0.trap_traj.config.decel_limit = 50
# self.drive.axis1.trap_traj.config.decel_limit = 50
# self.drive.axis0.controller.config.inertia = 0.02
# self.drive.axis1.controller.config.inertia = 0.02
self.drive.axis0.controller.config.input_filter_bandwidth = 30
self.drive.axis1.controller.config.input_filter_bandwidth = 30
self.drive.axis0.motor.config.current_lim = 70
self.drive.axis1.motor.config.current_lim = 70
self.drive.axis0.motor.config.current_lim_margin = 30
self.drive.axis1.motor.config.current_lim_margin = 30
odrv0.axis0.motor.config.current_lim = 70
odrv0.axis1.motor.config.current_lim = 70
odrv0.axis0.motor.config.current_lim_margin = 30
odrv0.axis1.motor.config.current_lim_margin = 30
def set_idle(self): def set_idle(self):
self.drive.axis0.requested_state = AXIS_STATE_IDLE self.drive.axis0.requested_state = AXIS_STATE_IDLE