Z
Z
zyxerdima2014-01-14 17:26:16
linux
zyxerdima, 2014-01-14 17:26:16

Raspberry Pi (with RTOS) + python = quadcopter?

Looked at two questions that are akin to mine. Didn't find an answer.
The criteria in my question is not strict - I'm far from being a professional in programming and new to electronics. I'm just describing my desires. I would love to read your suggestions/alternatives.
I want to write software myself.
Is it possible to make a quadcopter, given the following needs:
1. Raspberry Pi . I don't want to deal with Arduino and others just yet. As far as I understand, the problem may be in the RTOS on the Rpi. Here is what I found. I would like to hear an opinion on this matter.
2.Python _. I understand that some modules are better written in C/C++. I'll read with interest what elements you consider worth writing in non-Python.
3. Video transmission (approximate FPS to expect?) and control via WiFi . I understand that FPV is better. Due to a modest budget - so far I decided to give up pleasure. If you make the signal directional, will WiFi lose much?
What is? Two years of Python; knowledge, a little higher than the initial ones in C ++. Previously, I "baited" the boards, there is help with electronics. Budget - about $300-400.
Thank you!

Answer the question

In order to leave comments, you need to log in

3 answer(s)
H
harabudjasim, 2014-01-30
@zyxerdima

I would advise to separate the management and the rest of the periphery. It will take too long to launch a real-time raspberry with all the stabilization and control, this is not taking into account the video. It will be easier to take a ready-made platform for control, on the same ATMegs or a simple workstation (do not be afraid of the lack of an OS, in general, controller programming can be brought to compilation and firmware with one button in one evening). This will solve the problem with position sensors and motor control and will allow you to get at least some intermediate result of your work. Then, based on this board, you can completely implement an autopilot and reduce the control of the copter to fly forward, turn around, climb higher, and so on.
Next, additionally install raspberries with regular Linux and set up video broadcasting. After that, it will be possible to make a communication channel between the raspberry and the flight controller and transmit control commands through the wifi-raspberry-interface.
A flight controller will cost somewhere between $20-60 and save a lot of time. Moreover, it is much more expensive to buy everything that is on it separately.
When I was assembling the quadcopter, I bought a Hobbiking flight controller with an ATMega32 on board. There are a lot of self-written firmware for them in C, I think they will also be in C ++. According to the existing firmware sources, I changed both the pre-flight configuration of the copter and the filters for stabilizing the copter in flight. Having advanced sensors on the flight controller (gyroscope, GPS, range finder) and enough memory, you can completely reduce manual control to nothing.

S
Sergey Lerg, 2014-01-14
@Lerg

"Will not take off" - we need gyroscopes and accelerometers.
I made a bunch of MultiWii - Crius All In One Pro with a mini computer MK808 with serial communication (via usb).
It worked, but because of the instability of the WiFi, the control was terrible.

L
Lilion, 2014-01-15
@Lilion

Disassemble harder than Arduino, much more.
1. We are talking about realtime, the problem is that the processor architecture does not allow you to completely ignore other tasks. And why not take a dual-core smartphone under android in which there is a gyroscope? - as a platform lighter and more powerful.
2. Not in C / C ++, but exactly in C, you should write a stabilization module, that is, something that will interrogate the gyroscope and interpret user commands so that balance is not lost immediately.
3. 15-20 frames, when the device is on the ground, when the modules are working, then the real-time application should kill the video transmission.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question