Skip to content

Commit

Permalink
PWM in nanosec, actutors control ENB
Browse files Browse the repository at this point in the history
Allows for setting PWM in nanoseconds and adds normalized
actuator message to control the the motor ENB line.

Signed-off-by: Benjamin Perseghetti <[email protected]>
  • Loading branch information
bperseghetti committed Aug 18, 2023
1 parent 2d605fb commit 0f5f02a
Show file tree
Hide file tree
Showing 10 changed files with 369 additions and 236 deletions.
8 changes: 4 additions & 4 deletions app/elm4/boards/vmu_rt1170.conf
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@ CONFIG_ACTUATE_PWM_INDEX_0=0
CONFIG_ACTUATE_PWM_LINEAR_0=y
CONFIG_ACTUATE_PWM_LINEAR_M_0=400
CONFIG_ACTUATE_PWM_LINEAR_M_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_C_0=1500
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_B_0=1500
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_0=1

# throttle
CONFIG_ACTUATE_PWM_INDEX_1=0
CONFIG_ACTUATE_PWM_LINEAR_1=y
CONFIG_ACTUATE_PWM_LINEAR_M_1=1000
CONFIG_ACTUATE_PWM_LINEAR_C_1=1550
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_1=1
CONFIG_ACTUATE_PWM_LINEAR_B_1=1550
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_1=1

CONFIG_PWM=y

Expand Down
45 changes: 22 additions & 23 deletions app/mrbuggy3/boards/vmu_rt1170.conf
Original file line number Diff line number Diff line change
@@ -1,38 +1,37 @@
CONFIG_DREAM_SITL=n
CONFIG_ACTUATE_PWM=n
CONFIG_ACTUATE_PWM=y
CONFIG_ACTUATE_PWM_NUMBER=3

# can
CONFIG_VESC_CAN=y
CONFIG_ACTUATE_VESC_CAN=y
CONFIG_VESC_CAN_NUMBER=1
CONFIG_VESC_CAN_BUS_FD_0=y
#CONFIG_VESC_CAN_BUS_FD_1=y
CONFIG_VESC_CAN_BUS_ALIAS_CAN_N_0=0
#CONFIG_VESC_CAN_BUS_ALIAS_CAN_N_1=0
CONFIG_VESC_CAN_ID_0=60
#CONFIG_VESC_CAN_ID_1=61
CONFIG_VESC_POLE_PAIR_0=7
#CONFIG_VESC_POLE_PAIR_1=7
CONFIG_VESC_CAN_ACTUATOR_VEL_IDX_0=0
#CONFIG_VESC_CAN_ACTUATOR_VEL_IDX_0=1

CONFIG_BUGGY3_MOTOR_ENB_REQUIRED=y

# steering
CONFIG_ACTUATE_PWM_USE_POS_0=y
CONFIG_ACTUATE_PWM_INDEX_0=0
CONFIG_ACTUATE_PWM_LINEAR_0=y
CONFIG_ACTUATE_PWM_LINEAR_M_0=400
CONFIG_ACTUATE_PWM_LINEAR_M_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_C_0=1500
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_B_0=1500
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_0=1

# throttle
# motor enable
CONFIG_ACTUATE_PWM_INDEX_1=0
CONFIG_ACTUATE_PWM_LINEAR_1=y
CONFIG_ACTUATE_PWM_LINEAR_M_1=1000
CONFIG_ACTUATE_PWM_LINEAR_C_1=1550
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_1=1
CONFIG_ACTUATE_PWM_USE_NANO_SECONDS_1=y
CONFIG_ACTUATE_PWM_PULSE_MIN_1=0
CONFIG_ACTUATE_PWM_PULSE_MAX_1=50000
CONFIG_ACTUATE_PWM_PULSE_CENTER_1=25000


# throttle
CONFIG_ACTUATE_PWM_INDEX_2=0
CONFIG_ACTUATE_PWM_USE_NANO_SECONDS_2=y
CONFIG_ACTUATE_PWM_PULSE_MIN_2=0
CONFIG_ACTUATE_PWM_PULSE_MAX_2=50000
CONFIG_ACTUATE_PWM_PULSE_CENTER_2=25000
CONFIG_ACTUATE_PWM_LINEAR_2=y
CONFIG_ACTUATE_PWM_LINEAR_M_2=273158
CONFIG_ACTUATE_PWM_LINEAR_M_DIV_2=1000
CONFIG_ACTUATE_PWM_LINEAR_B_2=248474
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_2=10

CONFIG_PWM=y

Expand Down
8 changes: 4 additions & 4 deletions app/mrbuggy3/boards/vmu_rt1170.overlay
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@
pwms = <&flexpwm1_pwm0 0 PWM_HZ(50) PWM_POLARITY_NORMAL>;
};
aux1: aux1 {
pwms = <&flexpwm1_pwm1 0 PWM_HZ(18000) PWM_POLARITY_NORMAL>;
pwms = <&flexpwm1_pwm1 0 PWM_HZ(20000) PWM_POLARITY_NORMAL>;
};
aux2: aux2 {
pwms = <&flexpwm1_pwm2 0 PWM_HZ(18000) PWM_POLARITY_NORMAL>;
pwms = <&flexpwm1_pwm2 0 PWM_HZ(20000) PWM_POLARITY_NORMAL>;
};
aux3: aux3 {
pwms = <&flexpwm2_pwm0 0 PWM_HZ(50) PWM_POLARITY_NORMAL>;
Expand Down Expand Up @@ -66,11 +66,11 @@
};

&flexpwm1_pwm1 {
nxp,prescaler = <32>;
nxp,prescaler = <8>;
};

&flexpwm1_pwm2 {
nxp,prescaler = <32>;
nxp,prescaler = <8>;
};

&flexpwm2_pwm0 {
Expand Down
8 changes: 4 additions & 4 deletions app/rddrone/boards/vmu_rt1170.conf
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@ CONFIG_ACTUATE_PWM_INDEX_0=0
CONFIG_ACTUATE_PWM_LINEAR_0=y
CONFIG_ACTUATE_PWM_LINEAR_M_0=400
CONFIG_ACTUATE_PWM_LINEAR_M_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_C_0=1500
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_0=1
CONFIG_ACTUATE_PWM_LINEAR_B_0=1500
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_0=1

# throttle
CONFIG_ACTUATE_PWM_INDEX_1=0
CONFIG_ACTUATE_PWM_LINEAR_1=y
CONFIG_ACTUATE_PWM_LINEAR_M_1=1000
CONFIG_ACTUATE_PWM_LINEAR_C_1=1550
CONFIG_ACTUATE_PWM_LINEAR_C_DIV_1=1
CONFIG_ACTUATE_PWM_LINEAR_B_1=1550
CONFIG_ACTUATE_PWM_LINEAR_B_DIV_1=1

CONFIG_PWM=y

Expand Down
Loading

0 comments on commit 0f5f02a

Please sign in to comment.