Skip to content

Commit

Permalink
Make motor indexes definition const int and move them to motors.ino
Browse files Browse the repository at this point in the history
Remove motor indexes definitions from flix.ino
Add motors.ino to simulation code and implement required mocks
  • Loading branch information
okalachev committed Jan 9, 2025
1 parent 72033cd commit 404ceed
Show file tree
Hide file tree
Showing 7 changed files with 14 additions and 11 deletions.
1 change: 1 addition & 0 deletions flix/cli.ino
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

extern PID rollRatePID, pitchRatePID, yawRatePID, rollPID, pitchPID;
extern LowPassFilter<Vector> ratesFilter;
extern const int MOTOR_REAR_LEFT, MOTOR_REAR_RIGHT, MOTOR_FRONT_RIGHT, MOTOR_FRONT_LEFT;

const char* motd =
"\nWelcome to\n"
Expand Down
2 changes: 2 additions & 0 deletions flix/control.ino
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ Vector ratesTarget;
Vector torqueTarget;
float thrustTarget;

extern const int MOTOR_REAR_LEFT, MOTOR_REAR_RIGHT, MOTOR_FRONT_RIGHT, MOTOR_FRONT_LEFT;

void control() {
interpretRC();
failsafe();
Expand Down
5 changes: 0 additions & 5 deletions flix/flix.ino
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,6 @@
#define RC_CHANNEL_ARMED 4
#define RC_CHANNEL_MODE 5

#define MOTOR_REAR_LEFT 0
#define MOTOR_REAR_RIGHT 1
#define MOTOR_FRONT_RIGHT 2
#define MOTOR_FRONT_LEFT 3

#define ONE_G 9.80665

float t = NAN; // current step time, s
Expand Down
6 changes: 6 additions & 0 deletions flix/motors.ino
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@
#define PWM_MIN 0
#define PWM_MAX 1000000 / PWM_FREQUENCY

// Motors array indexes:
const int MOTOR_REAR_LEFT = 0;
const int MOTOR_REAR_RIGHT = 1;
const int MOTOR_FRONT_RIGHT = 2;
const int MOTOR_FRONT_LEFT = 3;

void setupMotors() {
Serial.println("Setup Motors");

Expand Down
3 changes: 3 additions & 0 deletions gazebo/Arduino.h
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,9 @@ void delay(uint32_t ms) {
std::this_thread::sleep_for(std::chrono::milliseconds(ms));
}

bool ledcAttach(uint8_t pin, uint32_t freq, uint8_t resolution) { return true; }
bool ledcWrite(uint8_t pin, uint32_t duty) { return true; }

unsigned long __micros;
unsigned long __resetTime = 0;

Expand Down
7 changes: 1 addition & 6 deletions gazebo/flix.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,6 @@

#define RC_CHANNELS 16

#define MOTOR_REAR_LEFT 0
#define MOTOR_FRONT_LEFT 3
#define MOTOR_FRONT_RIGHT 2
#define MOTOR_REAR_RIGHT 1

#define WIFI_ENABLED 1

#define ONE_G 9.80665
Expand All @@ -43,6 +38,7 @@ void controlAttitude();
void controlRate();
void controlTorque();
void showTable();
void sendMotors();
bool motorsActive();
void cliTestMotor(uint8_t n);
String stringToken(char* str, const char* delim);
Expand All @@ -61,7 +57,6 @@ inline Quaternion FLU2FRD(const Quaternion &q);
void setLED(bool on) {};
void calibrateGyro() { printf("Skip gyro calibrating\n"); };
void calibrateAccel() { printf("Skip accel calibrating\n"); };
void sendMotors() {};
void printIMUCal() { printf("cal: N/A\n"); };
void printIMUInfo() {};
Vector accBias, gyroBias, accScale(1, 1, 1);
1 change: 1 addition & 0 deletions gazebo/simulator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include "util.ino"
#include "rc.ino"
#include "time.ino"
#include "motors.ino"
#include "estimate.ino"
#include "control.ino"
#include "log.ino"
Expand Down

0 comments on commit 404ceed

Please sign in to comment.