Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support off board commands #960

Closed
4 tasks done
LorenzMeier opened this issue May 15, 2014 · 19 comments
Closed
4 tasks done

Support off board commands #960

LorenzMeier opened this issue May 15, 2014 · 19 comments

Comments

@LorenzMeier
Copy link
Member

Offboard roll / pitch / yaw or motor commands seem super popular, but are right now not implemented / enabled. Contributions welcome - please comment if you are willing to work on this and need some guidance in exchange for a pull request for the main project.

Tasks:

  • Parse offboard control message in MAVLink
  • Accept off board control commands in controller @DrTon
  • Log offboard control messages in sdlog2 app
  • Support an auto-arming strategy once these messages are received (e.g. using a circuit breaker, Add circuit breakers for key system components #961)
@LorenzMeier
Copy link
Member Author

Please contact @thomasgubler for questions on this 8).

@thomasgubler
Copy link
Contributor

There exists some old code which is sitting around until the navigator rewrite is done ;)

@andre-nguyen
Copy link
Contributor

Team Elikos from Polytechnique Montreal is in!
I can get a team of 4 guys on this.
1 undergraduate student in electrical engineering
2 undergraduate students in computer engineering
and 1 masters student in aerospace engineering - avionics and controls

@DrTon
Copy link
Contributor

DrTon commented May 15, 2014

Yes, ad Thomas said there is some work already. Look offboard2 branch.

@andre-nguyen
Copy link
Contributor

Branch offboard2 isn't listed.

@DrTon
Copy link
Contributor

DrTon commented May 16, 2014

Ah, sorry, it was in my repo (DrTon), pushed to PX4 now. Going to merge master to it now.

@DrTon
Copy link
Contributor

DrTon commented May 16, 2014

@LorenzMeier, we need to discuss the following offboard questions:

  • How mode switching should be done? Do we need OFFBOARD switch on RC (e.g. may be useful for manual recovery if something goes wrong)?
  • How should we handle failsafe?
    • In OFFBOARD state, offboard signal gone, RC is ok: should we RTL / LAND or switch to MANUAL?
    • In manual (MANUAL/ALTCTL/POSCTL) state, RC switched off and offboard signal available: should we switch to OFFBOARD or RTL / LAND?
  • Do we really need auto arm/disarm? As latest expirience shown, it is easier to use mavlink command for this: if user doesn't use RC he need to switch to OFFBOARD state somehow, in the same command he can put arming flag. Auto-arming may conflict with set_mode commands.

@DrTon
Copy link
Contributor

DrTon commented May 16, 2014

WIP already :) #968

@DrTon DrTon modified the milestone: First beta release May 16, 2014
@andre-nguyen
Copy link
Contributor

I can see that the quad swarm packets are transformed into an ORB topic registered as an offboard_control_setpoint, which is then picked up by the commander module. From what I understand, contrary to the manual_control_setpoint, this is where it stops and the data isn't transferred to any other modules.

I'm a bit at a loss as to what to do with the offboard setpoints next. Should I register it in the different controllers or should I transform it into a manual setpoint? Also, should the quad swarm packets be dropped in case the MAV is not in offboard control mode?

@LorenzMeier
Copy link
Member Author

@andre-nguyen What you need to do is to publish an attitude_setpoint in the mavlink app receiving the off board control packet. The system will already switch modes correctly, so you just need to get the setpoint from the mavlink module to the controller.

Do not use the manual control setpoint - the system is designed properly to have individual layers and this has nothing to do with manual control.

@DrTon
Copy link
Contributor

DrTon commented May 21, 2014

Working on it...

@DrTon
Copy link
Contributor

DrTon commented May 21, 2014

Initial support for offboard attitude and rates added, ready to test. See #968

@andre-nguyen
Copy link
Contributor

https://dl.dropboxusercontent.com/u/13822870/VID_20140524_232745.mp4

Finally got around to testing this out. Was able to fiddle around with some throttle values, looks good!

@mhkabir
Copy link
Member

mhkabir commented Jun 30, 2014

Now that the SET_POSITION_CONTROL_SETPOINT message is in MAVLink, I think we can use it instead of the hacky yaw pitch roll message.

@andre-nguyen
Copy link
Contributor

I'd be willing to close #1058 and redo it with the new messages as they are a big improvement but as I understand it, they haven't officially been merged yet and there's that navigator rewrite going on, so I guess it will have to wait.

@LorenzMeier
Copy link
Member Author

Probably done when this is done: #1983

@mhkabir
Copy link
Member

mhkabir commented Apr 9, 2015

Also this : #1856

@LorenzMeier
Copy link
Member Author

Implemented on master and according to testing currently operational.

@mandelyoni
Copy link

Is offboard working also for yaw and yaw rate commands?
any examples?

thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants