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

Rebased Ackerman vehicle controllers #7175

Merged
merged 7 commits into from
Jun 6, 2017
Merged

Conversation

marcozorzi
Copy link
Contributor

This is a rebased and squashed version of #7139

@dagar
Copy link
Member

dagar commented May 2, 2017

I think this PR has gotten away with it so far, but one thing I'll need to look at before it's mergable is the vehicle type reported by vehicle_status (commander) and any module checking it.
Some parts of the code assume the vehicle is a FW if vehicle_status.is_rotary_wing == false.

@dagar dagar self-requested a review May 2, 2017 16:05
@dagar dagar added this to the Release v1.7.0 milestone May 2, 2017
@marcozorzi
Copy link
Contributor Author

Yes, agreed. While coding I was thinking that there could be a new vehicle status, which could be wheeled, ackerman or something else but I thought that would result in refactoring other apps.

bool task_running() { return _task_running; }

private:
orb_advert_t _mavlink_log_pub{nullptr};
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dagar this is unused, can we remove it? I also have a commit ready to fix the coding style, this should fix the checks issues once and for all

@TSC21
Copy link
Member

TSC21 commented May 5, 2017

To help on passing on travis:
https://travis-ci.org/PX4/Firmware/jobs/229043348#L416 (remove this, since it is not used)

https://travis-ci.org/PX4/Firmware/jobs/229043344#L414 (run make format and fix style)

circleci:
https://circleci.com/gh/PX4/Firmware/5223?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link (same error about unused variable as #L416)

@TSC21 TSC21 self-requested a review May 5, 2017 11:04
@marcozorzi
Copy link
Contributor Author

Thanks @TSC21, this should do it.

@TSC21
Copy link
Member

TSC21 commented May 5, 2017

Just picking up what I said in the other PR:
Also please add some documentation about this on https://dev.px4.io/. Create a subsection in https://dev.px4.io/en/airframes_experimental/ with the name "UGV/ROVER" or something like that (you can rename this same section to "UGV/Rover" only instead of "Boats, Submarines, Blimps, Rovers" so to be more specific), add a part list to build a RC car like yours (Traxxas Stampede VXL), an assembly guide, a general schematic of the different parts and how they are connected, the servo connections schematic, a list of mixers values and the PID tunning you used, and finally add some photos. Add everything you think it can be useful and informative.
This would help others that would like to build a UGV like yours or something similar.

@marcozorzi
Copy link
Contributor Author

Ops, I guess this last message got lost in the final rush of my thesis. Sorry about that. I am planning on doing the guide as soon as possible, I'll keep you posted.

@dagar
Copy link
Member

dagar commented May 26, 2017

I'm still very interested in this. As soon as v1.6.0 is released let's do a final pass to get this in a mergeable state and get it in.

@marcozorzi
Copy link
Contributor Author

As per the message above, I was finally able to create the Devguide page for this. @TSC21 let me know what you think!

@LorenzMeier
Copy link
Member

@dagar Can you have a pass? It looked good for me.

@TSC21
Copy link
Member

TSC21 commented Jun 3, 2017

@marcozorzi thanks for the add for the Devguide! This is ok to me as is also. We can work forward on developing the modes and control to make them more independent from the fw logic.

@TSC21
Copy link
Member

TSC21 commented Jun 3, 2017

@marcozorzi after this is meged you can update PX4/PX4-Devguide#169 so it points to the main repo instead of your repo.

@dagar
Copy link
Member

dagar commented Jun 5, 2017

I'll go through this again tomorrow, but it should be good to merge.

@dagar
Copy link
Member

dagar commented Jun 6, 2017

Merging!

@dagar dagar merged commit aef5225 into PX4:master Jun 6, 2017
@TSC21
Copy link
Member

TSC21 commented Jun 6, 2017

@marcozorzi and @dagar maybe we can schedule a call on how we can structure this to be more independent of fw code and also improve "flight" modes?

@marcozorzi
Copy link
Contributor Author

Awesome!! I'm up for a call, thanks for the great help!

@dagar
Copy link
Member

dagar commented Jun 6, 2017

I'm up for it if you have specific ideas to discuss. I view this as just the start.
We can create a new UGV tag for the repo and a project board (https://github.com/PX4/Firmware/projects) if necessary.

As for the modes the first step is generalizing the FW, MC, VTOL vehicle_status flags and then in the state machine we can block modes that don't make sense for cars (ie altitude, takeoff, landing).

I'm personally interested in expanding the manual modes which we could probably get away with calling 'acro', 'stabilized', etc. Speaking for my own terrible driving I think having some kind of crude traction control or even throttle slew rate would be helpful. I suppose manual input (stick or wheel?) would simply be a yaw rate command and possibly lock on to the current heading if input is neutral?

@marcozorzi
Copy link
Contributor Author

Sounds good to me!

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

Successfully merging this pull request may close these issues.

4 participants