BehaviorTree.CPP
ardupilot
BehaviorTree.CPP | ardupilot | |
---|---|---|
4 | 72 | |
2,731 | 9,970 | |
3.9% | 2.3% | |
9.3 | 10.0 | |
9 days ago | 3 days ago | |
C++ | C++ | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
BehaviorTree.CPP
- Coroutines make robot code easy for high schoolers
-
ROS2 task/schedule/statemachine discussion
Have a look at Behavior Trees, especially the BehaviorTreeCpp library https://www.behaviortree.dev The method is simple to understand, scales better than State Machines and if you implement the actions well they’re inherently modular. Nav2 uses them, and also BostonDynamics in their Spot SDK.
-
Facts about State Machines
Unrelated to javascript, but in the robotics industry there is a trend towards Behaviour Trees. https://www.behaviortree.dev/ is a C++ library that was originally designed for controlling robots via ROS, but it appears to be decoupled from the ROS ecosystem so it could be used for other projects.
There is a basic UI available for editing the tree https://github.com/BehaviorTree/Groot
- BehaviorTree.CPP: C++ behavior tree library, batteries included
ardupilot
- Reading Sensor Data From Flight Controller Mateksys F405-TE - Integrated IMU - No Documentation
- Someone is selling my stuff on Etsy, can I do anything?
-
Kalman Filter Tutorial: Kalman Filter from the Ground Up
They are widely used in narrow circles :)
Two of (arguably the best) open source RC aircraft flight controllers (ArduPilot and PX4) are using extended Kalman filters in their state estimators (essentially sensor fusion that provides attitude/position estimate):
https://github.com/ArduPilot/ardupilot/tree/master/libraries...
https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/e...
I'm not that familiar with cleanflight/betaflight/inav scene to know what the FPV racer flight controllers use.
-
Tell HN: Parrot abandoned their Bebop and Disco drones
2. https://ardupilot.org/
-
here pro vs here 4 GNSS RTK performance
Trimble also has some nice stuff, I think the BD940 is interesting. I do not know if it's recommended or not, but Ardupilot has a driver for the Septentrio GPS (https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_GPS/AP_GPS_SBF.cpp), as well for Trimble GPS (https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_GPS/AP_GPS_GSOF.cpp). So people have used these brands for drones.
-
Book on programming my own autopilot
For programmable open source autopilot: Arduino > Ardupilot (https://ardupilot.org).
-
How do I make a flight controller and what do I need?
You might also want to look at something like Ardupilot
-
Robotics team is entering in an autonomous boat competition, need some advice.
I'd like to emphasize the reference to Ardupilot bc there is a lot of material already developed there: a lot about navigation and guidance from UAVs, and the low-level stuff. Check this out
- Does anyone know about a good avionics related open source project for learning purposes?
- Programming transmitter
What are some alternatives?
ros2_control_demos - This repository aims at providing examples to illustrate ros2_control and ros2_controllers
inav - INAV: Navigation-enabled flight control software
navigation - ROS Navigation stack. Code for finding where the robot is and how it can get somewhere else.
PX4-Autopilot - PX4 Autopilot Software
carla - Open-source simulator for autonomous driving research.
ESP32 - DroneBridge for ESP32. A transparent short range wifi based telemetry (serial to WiFi) link. Support for MAVLink, MSP, LTM (iNAV) or any other protocol
linorobot - Autonomous ground robots (2WD, 4WD, Ackermann Steering, Mecanum Drive)
MicroPython - MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems
pros - Source code for PROS kernel: open source C/C++ development for the VEX V5 microcontroller
fprime - F´ - A flight software and embedded systems framework
quaint-lang - An experimental statically typed procedural language with first-class resumable functions.
paparazzi - Paparazzi is a free and open-source hardware and software project for unmanned (air) vehicles. This is the main software repository.