4 ms·
I'm starting to get really intrigued by the idea of programming quadcopters, especially with this demo. I think I could impress the people I am teaching program
by kevindeasis 10y ago
I'm starting to get really intrigued by the idea of programming quadcopters, especially with this demo. I think I could impress the people I am teaching programming with this type of projects.
I'd like to learn how to program a quadcopter and be able to fix the hardware just in case something goes wrong.
However, my main problem is that I don't know where to start. I do not have a hardware background.
Does anyone know some good resource? I'd prefer if it had nothing to do with the scratch language
- voltagex_ 10y agoWhat's your goal? Have a look at ArduPilot. Sidenote: I wonder what the Hello World of drones is.
- kevindeasis 10y agoGoal is to mostly be able to learn how to program the quadcopter. Be able to fix the hardware or the quadcopter if anything goes wrong. Then possibly something one day doing something like this: https://www.youtube.com/watch?v=Gl1xYyGom1g https://www.youtube.com/watch?v=Gl1xYyGom1g https://www.youtube.com/watch?v=QuXp_mnDH6w https://www.youtube.com/watch?v=QuXp_mnDH6w
- asimuvPR 10y agoAnother vote for ardupilot here. Easy hardware because its an arduino, great community and simple to use.
- Noseshine 10y agoArchived but still accessible: https://www.edx.org/course/autonomous-navigation-flying-robots-tumx-autonavx-0 https://www.edx.org/course/autonomous-navigation-flying-robo... > Autonomous Navigation for Flying Robots > You will learn how to infer the position of the quadrotor from its sensor > readings and how to navigate it along a trajectory. It was a good course, offered by the computer vision department of the Technical University of Munich, Germany. Unfortunately, unlike some American universities, TUM has done less than a handful of exploratory online courses ("trauma surgery", posted on Coursera, was really good too) and then stopped, seems like they have neither plan nor vision (pun intended) for online courses.
- fest 10y agoThe best (feature-wise) open-source quadcopter platforms are: * PX4, * ArduCopter (actually uses parts of PX4), * PaparazziUAV. These pack a lot of functionality: really advanced sensor fusion algorithms, position hold, waypoint/mission functionality, API for external control. At least PX4 has (working) integration with physics simulator (very useful for testing). All of them are great starting points if you want to develop additional useful functionality (e.g. package drop, autonomous mapping/patrol)- implementing even the bare minimum pitch/roll/yaw stabilization functionality takes a lot of effort. The easier way to enter this domain is using an on-board/companion computer (typically RaspberryPi/Odroid) to control the autopilot using high-level commands (e.g. fly to these coordinates, activate that output etc). Background: I have spent ~2 years working on (sadly) unreleased products in this domain.
- nfbush 10y agoWould it not be dangerous to use a non modified Raspberry Pi due to the lack of real time programming? or are you suggesting to use another board in conjunction with the sbc.
- abstractbeliefs 10y agoYes, he means using it in combination with a real time flight dynamics computer. Something small like an arduino can be used for attitude control, heading hold, etc., which is itself directed by a mission computer (the RPi) which can manage more complex, higher level behaviours.
- RealityVoid 10y agoI'm intrigued, are you able to say what kind of product did you work on? Who's doing these kind of products? I've done some things with the PX4 and I love it, the guys doing it are super smart. I've worked on some indoors navigation stuff but I wasn't very experienced at the time and the project turned into a mess.
- fest 10y agoSorry, I don't think I can give you a lot of details. Let's say that one of my previous employers did a project which was supposed to be indoor quadcopter for consumers. Regarding PX4- completely agree. People working on it definitely have high standards for software engineering practices and sense of responsibility. ArduPilot guys are also doing very good job, especially regarding state estimation (sensor fusion). Indoor navigation is sadly not fully solved problem, at least for open-source solutions. I have not tried it, but IMO the best option at the moment seems to be Qualcomm's drone platform, as that has high-resolution, wide angle camera and enough processing oomph for image processing. PX4Flow did work on some surfaces, but did not work too well on highly repetitive textures (e.g. office carpets). The image sensor, although is very good (global shutter, large, sensitive pixels) had limited resolution and even more limited was processor doing image processing. The fusion of flow data was also quite unstable for ArduCopter and PX4 (they both shared the state estimation code at that point). Some of the problems were implementation issues (e.g. a few bad measurements caused the rest of (now valid) measurements to be ignored) but some were fundamental ones. The algorithms in use relied on constant distance between camera and objects on scene (required for calculating velocity in uniform units) which was unrealistic assumption indoors (e.g. flying near walls, over tables, etc).