40 Commits

Author SHA1 Message Date
Daniel Agar
45912066d2 fix copyright header year range 2023-01-14 09:16:16 -05:00
Andrew Wilkins
22f7d913bd
rover_pos_control: thrust normalization for joystick input (#20885) 2023-01-13 20:11:39 -05:00
Matthias Grob
331cb21dee manual_control_setpoint: change stick axes naming
In review it was requested to have a different name for
manual_control_setpoint.z because of the adjusted range.

I started to investigate what naming is most intuitive and found
that most people recognize the stick axes as roll, pitch, yaw, throttle.
It comes at no surprise because other autopilots
and APIs seem to share this convention.

While changing the code I realized that even within the code base
the axes are usually assigned to a variable with that name or
have comments next to the assignment clarifying the axes
using these names.
2022-11-28 19:25:55 +01:00
Matthias Grob
8ca28f3796 Separate message for trajectory setpoint 2022-05-12 17:19:48 +02:00
Jaeyoung-Lim
106044be38 Initialize global local projection for rovers
This commit initializes the global and local projection for rovers
2022-03-24 08:57:53 -04:00
Daniel Agar
6135bb384b cleanup module callback registration failed errors 2022-03-23 20:44:50 -04:00
Jaeyoung Lim
28d34bf095 Convert L1 controller to local coordinates 2022-03-23 13:34:13 +01:00
Beat Küng
4becd6e4c7 rover: publish vehicle_thrust_setpoint & vehicle_torque_setpoint 2021-12-24 20:06:13 -05:00
Thomas Debrunner
8db7a6225b geo: Moved the map_projection_* functions and state into a self-contained C++ class 2021-12-06 14:30:14 +01:00
Matthias Grob
fabf865411 Use backwards compatible manual_control_setpoint instead of manual_control_input 2021-11-09 16:05:25 +01:00
Julian Oes
6a6b8d49fc msg: re-use manual_control_input in setpoint
This way we avoid duplication between manual_control_input and
manual_control_setpoint.
2021-11-09 16:05:25 +01:00
Daniel Agar
883624d915 lib/geo: move from ecl 2021-07-15 10:38:24 -04:00
benjinne
3664d9e4ce
rover: publish actuator controls with rate of gyro
Some ESC's with DShot don't initialize otherwise (as the 200Hz of the vehicle attitude rate is too low).
2021-04-26 08:53:20 +02:00
Daniel Agar
d37510a43d
update UUV and rover controllers to use trajectory_setpoint and cleanup unused position_setpoint fields 2021-03-09 10:36:34 -05:00
Daniel Agar
263b00b65f
ekf2 support SET_GPS_GLOBAL_ORIGIN and remove globallocalconverter usage
- vehicle_command cmd extended from uint16 to support PX4 internal commands that don't map to mavlink
2021-03-05 18:25:14 -05:00
Lorenz Meier
4c5d2363d4 Rover control: Use roll sticks
It is more intuitive to use the roll stick as lateral control input given that drones defined this category, plus this is how consumer car / rover radio controls have been working already.
2021-02-14 11:17:28 +01:00
Jaeyoung-Lim
fdd9b3ea51 Add support for stabilized flight mode for rovers
This commit adds support for stabilized flight mode for rovers, which enables the rover tracking a fixed heading that is set with a manual input
2021-02-14 11:17:28 +01:00
Jaeyoung-Lim
3c12573e93 Use uORB::Subscription for rover_pos_control
Modernize rover position control
2021-02-14 11:17:28 +01:00
Lorenz Meier
ec2cf70276 Rover position controller: Modernize implementation
This commit moves the steering output from yaw to the roll channel to better reflect the lateral control input / reaction mapping. It also removes old unused parameters and modernizes the mainloop to remove unnecessary polling.
2021-02-14 11:17:28 +01:00
Daniel Agar
1981519aad L1 position controller: use double precision floating point for all lat/lon 2021-02-12 21:59:56 +01:00
Daniel Agar
e56dfe6497
rover_pos_control: revert sensor_combined purge
- sensor_combined is only used for scheduling in this module under certain circumstances and should be reviewed and replaced 
 - fixes https://github.com/PX4/Firmware/issues/15628
2020-09-01 21:09:33 -04:00
Daniel Agar
53b3dfa64e rover_pos_control: remove unused sensor_combined subscription 2020-08-23 17:38:27 -04:00
Matthias Grob
e9eae1bd76 Refactor: Name manual_control_setpoint the same way everywhere 2020-06-22 12:06:27 -04:00
ealdaz
c96b5246ff Improved Hold behaviour
Added local position as a valid source of position
2020-05-13 13:08:41 +02:00
flbernier
45e88aa8d3 Correct Ki and Kd inversion in rover pid_set_parameters 2020-04-17 08:18:10 +02:00
Matthias Grob
eb3b0f6b55 mathlib: get rid of now duplicate sign() function
Instead use the one that was copied to the matrix library in
https://github.com/PX4/Matrix/pull/116/
2020-03-17 10:01:42 +01:00
Daniel Agar
a89b69b0ea
vehicle_global_position: remove velocity fields (duplicates of local vx, vy, vz)
* attitude_estimator_q: get velocity from local position (if available)
2020-03-11 23:57:43 -04:00
Jannik Beyerstedt
4ce03dfc1e Add support for offboard ActuatorControl set points to RoverPositionControl (fixes #13192) (#13314)
* fix formatting

* RoverPositionControl: Support Actuator Control Setpoints (fixes #13192)

* RoverPositonControl: remove control modes, that aren't currently implemented

* RoverPositionControl: use new Publication API
2019-11-20 15:01:51 +01:00
Jannik Beyerstedt
bbc028a9e9 RoverPositionControl: make offboard attitude usable without GPS 2019-11-19 10:05:25 +01:00
Jannik Beyerstedt
38103654e9 RoverPositionContro: Enable driving backwards in attitude control 2019-11-17 11:29:45 +01:00
JaeyoungLim
b999581d2f Rover: Handle velocity frames correctly for offboard velocity control 2019-11-05 16:29:04 -05:00
Jaeyoung-Lim
1951e416b1 Enable rover attitude setpoint 2019-11-03 09:54:22 -05:00
Daniel Agar
6f1e132286 clang-tidy: enable readability-redundant-control-flow and fix 2019-10-28 10:50:31 -04:00
JaeyoungLim
2fc5789d68 Support offboard velocity setpoints for rover (#13225)
* Enable velocity control for rover

* Address comments

* Use pid for speed control

* Calculate steering commands correctly

* Use local velocity estimates to avoid global position dependency
2019-10-24 10:40:20 +02:00
Daniel Agar
c8e59c4e39 parameter_update use uORB::Subscription consistently 2019-09-29 10:49:03 -04:00
JaeyoungLim
950dbc1d2e Rover: Enable Offboard support for Rover position control 2019-08-21 12:04:19 -04:00
Daniel Agar
a917f22b65
sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
Timothy Scott
80f2603b17 Fixed timing of rover pos control 2019-07-25 10:53:39 -04:00
Timothy Scott
2ed8ebf889 rover_pos_control: refactor to ModuleBase and use C++ Param API 2019-07-23 11:16:52 +02:00
Timothy Scott
2ed00c9cb6 Rover: Rewrote gnd_pos_control and removed gnd_att_control (#12239) 2019-07-11 09:39:13 -04:00