read

The Idea of a drone based on Raspberry-pi:

Raspberry-pi is a very affordable powerful (for 30 euros) micro computer that can be used to build DIY project.

I always wanted to build a quadricopter myself, after some research and reading through the specs of the RPI (Raspberry-pi), a drone based on the RPI is quit feasible.

The main reason that this is possible and less complex is the RPI ability to out put PWM signals through the GPIO.

R-Drone

So the R-Drone will be able:

– To fly
– Hover mode (can be done with atmospheric sensor or ultra-sonic, using both have a better result)
– modes for switching the UAV behavior (Acrobatic mode and stable mode)
– Fly using the GPS (later update)
– Stream videos (later update)
– Tracking using OpenCV (later update)
– Obstacle avoidance using sensors and camera (later update)
– Why not Amazon-Air prime like !

here is the list of the components i got:

– Raspberry-pi model B
– 4 Brush-less motors 1000Kv
– 9*4.5″ (2 +2R) propellers
– 4 ESC 30A (PWM not the ones with I²C)
– Wifi EW-7811UN IEEE 802.11n USB (very small and power efficient)
– 10 IMU DOF (GY-86 10DOF MS5611 HMC5883L MPU6050, 3-axis gyro + 3 axis accelerometer + 3-axis magnetic field + atmospheric pressure)
– Frame (X252)
– AdaFruit GPS (for later updates)
– 3G USB (for later updates)
– 3s Lipo Battery

For the geeks:

After some benchmark, the processing is very feasible with Python no need to use C/C++ and the Linux RT.
Also to interface with the GPIO, a Python library is available with the Rasbian dest for the Raspberry-pi.
To get this project going some basic understanding of control system (PID) is required, also filters (Kalman, complementary filter), PWM, I²C, UART, GPS

After finishing this project I’ll be sharing the code on Github !

Nouri


Published on

Show Comments
  1. mike says:

    github link plz! I have all the exact same components but am currently rocking multiwii since there isn’t a suitable code base for what you describe above

    1. Nouri says:

      Hey Mike, there you go https://github.com/e-nouri/pyDrone, keep in mind this is not the full project, it is a set of modules to control the MUI, Motors, etc.

  2. Lucas Gennari says:

    Hey, i’m trying to build a quadcopter exactly like this. Did you made anything else?
    Thanks.

    1. Nouri says:

      You can find the code on the github repo, the rest was tweaking for the PID parameters. it depends on your quandricopter model, the latency of your motors, etc.

  3. Marios says:

    So to be able to use all the motors with raspberry you must get something like servoHAT or the raspberry can handle to use all the motors at the same time ? Thanks !

    1. mike says:

      Marios you can control the speed controllers directly from the pi afaik. The speed controllers will in turn control the brushless motors. Brushless motors can pull upward of 30 amps per, so they really need a seperate power input/control circut (ESCs).

  4. Nouri says:

    To control the brushless motor, you have to control the ESC.
    The ESC is controlled by the PWM coming from the rpi, you can use GPIO python library, check this link for the lib and some examples on how to use it: https://sourceforge.net/p/raspberry-gpio-python/wiki/PWM/


Leave a Reply

Your email address will not be published. Required fields are marked *

E-Nouri

Full Stack Cloudiologist Mind

Back to Home