loading

(ONGOING Project, currently need to solder the circuit)

This is Arduino based, 3D printed micro Quadcopter project for 8.5 mm diameter DC motors. However if you have some experience (or just have an hour of free time) you can adapt the design to fit to a different size motors.

I am doing this during my free time while I study in the university, thus I think it should take quite some time to finish (exams approaching!).

I decided to control the Quadcopter through Bluetooth using an Android phone/tablet. In the future I might redesign a bit to control it using Wifi or some radio communication. I will also write and publish an Android App for the control using bluetooth.

So lets get it started@!

P.S. The robot is dedicated for M.O.N.T.E. (Mobile Omnidirectional Neutralization and Termination Eradicator) killer robot from The Big Bang Theory :D

Step 1: Frame & Plastic

I wanted the frame to be light-weight and strong, thus decided to use a 3D printer. This also saved me loads of time. Which printer to use I'll leave up to you as I do not actually own a 3D printer myself and use the one that is in the University. The total wight of the design was around 10 - 15 g (The University didn't have any scales...) but it will vary depending on the printer and the plastic

For the design I used a free web design tool TinkerCAD, which is probably the best design tool for beginners or for smaller projects.

I added the files here so that you could go and print it right away. However if you want to look into the design from all angles then visit Thingiverse. Likewise, you can visit TinkerCAD to modify my previous design the way you like it (change the name of the Quadcopter?).

For a single quadcopter you need to print oneQuadcopter_bottom_3.stl and oneQuadcopter_top_2.stl. I tried printing everything myself and noticed that the printer I had did not print the screws very well (I could not fit the screws in the holes), so I do not even suggest printing them as well... You could of course try doing that thus I also add Quadcopter_screw_2.stl if you're curious... I redesigned the bottom part so that you could stick in the top part and then you could simply use some plastic ties to hold everything together.

Step 2: The Rest of the Parts + Price

Microcontroller

We need some small chip/microcontroller board for this Micro Quadcopter. A cheap option is to use Arduino Nano, which from China cost ~£1-2. Additionally, to lower the weight, alternatives could be Arduino Beetle or Arduino USB chip, which is a Chinese copy of original Beetle (Cheaper, works (tested) the same way and connectors are easier to solder). You could also follow this tutorial to program bare chips of ATMEL ATmega328/168, which you can get for free from ATMEL website (If you're a student go to Atmel -> samples -> order a sample) or ebay otherwise. As for prototyping I will use Arduino Nano as it is easier to deal with. I think the next stage would be either use bare metal Atmel chip or look into Arduino Beetle BLE as you can also find them cheaply in some places, however they only have 2xPWM output, thus a register shifter might have to be used in addition. The weight of each chip varies depending on the microcontroller: Arduino Micro ~13g, Arduino Beetle ~5g, bare chip + crystal ~4-5g(?).

Motors

I myself used a little more expensive motors from here. They are supposed to be a lot faster than the original Hubsan X4 motors. I plan to use custom made hardware thus I need fast motors to lift the weight. If I was to buy a new motor set now, I would most likely buy them from the same shop, however the ones which say speed: insane. There are a few types of those as well, so choose the ones with the best reviews. The difference is quite significant with speed: insane as they can reach at max 3.2 A instead of 2.75 A with speed: fast (somehow still says that thrust is 40g/motor for both motor types). For those you can't afford expensive motor, there is always an alternative from ebay or even cheaper from China. They, of course do not fly that fast, at least I assume that from performance curves. I haven't tried myself, but max current is 1.85 A and thrust is 34g/motor, which is lower than on previous motors. (Total weight ~20g)

Bluetooth

For the project I used the usual HC-06 Bluetooth module. It works as a slave only, which is what we need if we want to control it using a smart phone. As you can see from the added picture, I bent the connectors and then shortened them. I might look into an option of adding a Bluetooth 4.0 module later, which has opposite connections so then you won't need to do that. (Total weight ~5g)

MPU

For the project I used MPU6050 which I already had bought some long time ago. It has 3 axis Gyroscope and a 3 axis Accelerometer only. In later releases I might use some more expensive MPU, which would have Barometer and a Magnetometer. (Total weight ~1.4g)

Batteries

For the motors and electronics you will need two 1S 3.7V LiPo batteries. One is used to power up the motors and another only the electronics. Finding a battery for electronics is easy. Simply choose the smallest available battery on the market (e.g. 1s 3.7V 100mAh (3g)). You can also buy them from HobbyKing pretty cheaply.

Getting a battery for the motors is more tricky. There are a few important points to note when buying them, capacity (mAh), max allowed discharge (C) and average discharge rate (C). The larger the capacity, the longer the quadcopter will run on a single charge and the larger the discharge rate, the more power it will be able to provide for the motors (larger currents for constant and for peak times). There is often a rule of thumb that multiplication of both, the discharge rate and the capacity, will give the current that the batteries can supply. For example, you have a battery with 500 mAh and 10 C of average/constant discharge. 500 mAh * 10 C = 5 A. Thus on average such a battery can supply 5 A. Then add around 20 % safe margin and you should be good to go. Well, this might work in some cases, however we have extremely powerful motors, thus discharge rate MUST be a lot higher than that. I Previously tried Turnigy nano-tech 650mAh 1S 15c (13g) with absolutely no luck. They only managed to fully power a single motor and didn't even turn up 4 motors a bit, which meant that the discharge rate was simply too small (capacity surely was enough). I then looked into Turnigy nano-tech 1s 260mAh 35-70C (14g) batteries. They managed to power up all 4 motors, however at the time when I bought them they cost half the price you see here. I suggest looking into HobbyKing for similar or alternative batteries e.g. Turnigy nano-tech 300mah 1S 45~90C (9g) or even Turnigy Graphene 600mAh 1S 65C (15g) which seem to be very promising. If you have a few $/£ extra, buy Graphene batteries as they are lighter when compared to alternative batteries with the same capacity and provide a lot higher discharge rates (at least on the paper). I didn't try them myself but would be really interesting to see how they compare in reality as I think the currently provided 35C discharge rate is a bit smallish as well.

Let's calculate how long the batteries will last. Lets say that apart from the motors the rest of electronics uses around 100 mA of current constantly. Total current = 2.75 * 4 + 0.1 = 11.1 A = 11.1 * 1000 = 11100 mAh. The batteries I bought have capacity of 260mAh, thus Time (min) = 260 * 60 / 11100 = 1.4 min. Doesn't seem a lot at all does it? I tested when I attached the quadcopter with the threads to the ground and it seems like the numbers are reasonable, I really couldn't hold the quadcopter in the air even 2min. Well, for longer flight rates you will have to either add bigger batteries, use cheaper Hubsan X4 motors or somehow lower the weight of the whole thing. (Total weight ~16 g)

Motor Connectors

The motors usually use mini JST type connectors, thus you would need to get some (4 pcs) from either Farnell or ebay to be able to connect the motors to the whole circuit. Make sure you buy the connectors as the ones in the image. There are very similar ones (e.g. micro JST), however they ARE different.

Battery Connectors

Many of the batteries from ebay and HobbyKing use micro JST connectors. The charger I used (given in later sections) has a slightly different JST connector (I know, a bit confusing as al of them have the same name), so I decided to order some of these from ebay and solder them on every battery instead. This also allowed later nicely connecting the battery to the PCB.

Propellers

Many of you might want to use Hubsan X4 propellers and you can do that if you want to, however I will use Walkera LadyBird props. They are a little pricey if you buy them in UK (around 5 times more when comparing with original Hubsan X4 props), however really cheap from China. If you yet do not have props, then I would recommend using them either - if I am correct, I read somewhere that they provide more thrust, thus giving our little beast more speed (Well, after all, Walkera LadyBird is known to be the best micro quadcopter up to date! I wonder who tested that but lets just trust them for now...) (A few grams in total ~3-5g)

Transistors

We need 4x MOSFET transistors and choosing one might be tricky. Firstly, they need to withstand the used power and current by the motors and secondly, the threshold voltage has to be quite low, otherwise Arduino won't be able to turn them ON fully (in the case of N-type MOSFET). In my case the max current is 2.75 A with voltage of 3.7 V. This means I need a MOSFET, which would at least withstand around 4 - 5 A just in case (will also heat up less). I ordered some from Farnell (MOSFET Transistor, N Channel, 6 A, 20 V) but you are free to look into alternatives such as MOSFET Transistor, N Channel, 8 A, 20 V (these are actually identical to the previous ones but they have additional legs to be soldered to ground to work as a heat-sink. This isn't needed as previous ones didn't heat up at all). Both of them had threshold voltages of 600mV, which is good. If you are to look for alternatives, try not to go more than 1V, but also if you want to use the provided PCB, make sure the sizing is the same, plus the given transistors in here already have a free-wheeling diodes inside thus will save some space on the PCB. (Total weight <1g).

Resistors

For the project I needed a 6x10 kOhm and 2x56 kOhm resistors (to be decided, but this is not needed until the end), which you can find in any electronics shop. (Total weight <1g)

Capacitors

A single electrolytic capacitor will be used to smooth the voltage on the battery used for mottors of size 47uF, 50V. It can be bought at any electronics shop. (Total weight <1g)

Charger

You might already have a good chargers, however in case you don't you can always get something like this. It uses JST type connectors, thus you will have to get the connectors mentioned before. Alternatively you could get a chip based charger module like this. This might be useful in later projects as the chip can become part of the circuit in that case.

Price

Probably many of you would like to know the price of the thingy. Well, lets just calculate that using some rough calculations as the price will depend on the supplier:
Expensive motors:

£2 (Arduino) + £3 (MPU6050) + £20 (Motors) + £3 (Motor Battery) + £2 (Electronics Battery) + £2 (Propellers) + £2 (MOSFETs) + £5 (HC-06) + £2 (The rest of electronics + plastic) + £1 (Connectors) + £3 (Charger) = £45 (adding only the used components, when they are bought in multiples)

Cheap Motors:

£45 - £15 = £30

Conclusions:

Overall price is not that big and if you have the connectors and the charger, it will decrease significantly! Using very fast motor implementation I managed to fit into £50 price range if all the parts had to be bought.

Step 3: Weight Calculations

Expensive motors:

For our quadcopter to fly nicely there is a rule of thumb that 50 % of the max thrust of motors should be equal to the weight of the quadcopter itself. Thus meaning that the quadcopter will be in the constant height when giving 50% of its full power. The motors that I bought have 40g/motor of thrust. In total that adds up to 160g. 50% of that is 80g. Now lets add up all of the electronics + the frame:

15g (frame) + 20g (motors) + 23g (battery) + 5g (bluetooth module) + 5g (microcontroller) + 1.4g (MPU) + 2g (transistors) + 1g (diodes) + 1g (resistors) = 73.4g, which is more or less what we need! Of course there will be some additional weight from wires, etc. but they are small and at most it will increase the weight until 75g, which is still 6% lighter than what we could afford.

Cheap motors:

Total thrust from motors is 4 * 34g/motor = 136g. 50% of that is 68g. Total electronics will be more or less the same, just the battery will be 10g lighter, giving around 65g in total with everything, which is still lighter than 50% of the thrust! Actually, it will not fly as good as with faster motors, but oh well, you are using at least 4 times cheaper motors!

Conclusion:

The quadcopter should fly! With more expensive motors it will fly better/faster, but yet still both quadcopter should fly.

Step 4: Circuit Diagram

I left the previous circuit using Arduino Beetle but also added Arduino nano connections. Most of the things should be the same just using Beetle I found several problems. Firstly, there is not enough of dedicated pins. So for example some PWM pins are being used as I2C, therefore it is difficult to decide which of the connections should be fixed using code and which using the provided pins. Also I only had an option of making a single sided PCB, thus it was difficult to make connections for Beetle board. I ended up using Arduino nano.

Arduino nano has a two-battery solution and Beetle doesn't. This is very important as Bluetooth won't work using a single battery. Additionally, if Beetle board is used, using two batteries, another >10uF capacitor should be added between positive and negative pins.

At the bottom of Arduino nano circuit I added the alternative connections for the transistor which was being used for the PCB instead of the one making connections.

Step 5: PCB

It is a lot easier to solder all the components on an already prepared PCB (Printed Circuit Board). Sadly, getting an access to a machine to make one is not always possible. We had one at the University, thus I designed a PCB using Target 3001! Software. To open the *.T3001 file you will have to download Target 3001 software, which is sadly, only Windows compatible. I might export the project to Eagle later. Adding Target3001, .xps, .tif and .src (export to Eagle) for those who intend to make a PCB at home.

The printed and soldered result looks as in the provided image. I added red circles showing the soldered transistors, yellow circles showing the JST connectors for the motors, green circle marking the battery connectors, supplying power to the motor ONLY, and blue circle marking the battery connectors, supplying the power to the rest of the electronics (Arduino, MPU6050, etc.). As you can see, there is some fixes made next to both of the power connectors. You don't need to do that as the PCB was updated after making the first working model. Basically, the problem was that at first the PCB only had a single power supply. During the testing it appeared that the Bluetooth module kept constantly disconnecting from the phone as the battery voltage was dropping to low levels (< 3V). Not only that but Arduino also had issues with that, which were fixed by lowering brownout voltage. You can do that easily yourself as it only required modifying a single file in the Arduino IDE, however it is more of a hack as the higher the frequency, the higher voltage is needed. In the end, something else might break in the future or you might loose all available power, etc. Anyway, implementing two-battery system worked nicely, especially that the battery, powering electronics weight only around 3g.

When soldering on the motor connectors, make sure that they are soldered the correct way! On each side one of the connector is facing one way and another another way. Either check which is positive, which is negative or connect motors prior to soldering and solder according to the image (red/white wire colour is positive and black/blue is negative terminals)

On the other side of the PCB I added a green square showing the not compulsory 1x02 connectors. I thought it would be nice to be able to connect something to the quadcopter in the future thus I made available PWM and Analogue pins easily accessible. I additionally marked the positive connector on both batteries.

Step 6: Code

I wrote a library and an example program using mbed for a quadcopter which you can find in here. Mbed is a lot faster than Arduino and it has more memory thus it could be used for larger quadcopter. In here I adapted everything to Arduino, plus used the available libraries.

Reading Battery Voltage

As a reference point Arduino uses the power supply voltage, thus if we connected two resistors in series between the power and ground and read the voltage in the middle, it would always be constant. In here we use a two-battery system, thus there are two approaches for reading the voltage on motor battery.

1) We can always keep the battery, powering electronics charged. This means that we always ensure that the voltage on it is around 4.2V. This approach would require charging both of the batteries all the time. Additionally, what would happen if we also wanted to monitor the electronics battery?

2) Use interval voltage reference. This is equal to 1.1V on Atmega328, however we then need to ensure that whatever is connected to A0, doesn't go more than 1.1V. Therefore I added X kOhm resistor in series with Y kOhm resistor to create a potential divider circuit. The code for reading and smoothing the battery voltage is:

#define ALPHA 0.1
#define MULTIPLIER 6.67
float motorBattery;

void setup () {
  pinMode(A0, INPUT);
  analogReference(INTERNAL); // Set internal reference source of 1.1V
  // float tmp = analogRead(A0) / 1023.0 * MULTIPLIER; // make units Voltage
  motorBattery = 5.0;
}
void loop () {
  motorBattery = smoothBattery(motorBattery, analogRead(A0) / 1023.0 * MULTIPLIER, ALPHA);
}

float smoothBattery (float prevEntry, float newEntry, float alpha) {
  return (1-alpha) * prevEntry + alpha * newEntry;
}

MPU6050

MPU6050 library is available by Jeff Rowberg 2012. The provided example code MPU6050_DMP6 is used as the main code for the project.

If you decided to use my frame & motors, most likely you won't need to modify the code any more as the PID controller was already set for more or less good performance. However if you use a different frame, you will need to set new values for the PID controller. It takes quite some time if you're doing it for the first time.

Stabilising Motors

In the control systems a PID controller is a very popular way to stabilise the system. In here we will want to stabilise the pitch and roll of MPU6050. I used library PID_v1 for this purpose. In the code given below I will setup both motors and PID controller. I will then add a function to stabilise the motors depending on the required speed.

#define FL_MOTOR 3
#define FR_MOTOR 9
#define BR_MOTOR 10
#define BL_MOTOR 11
//---------------------------------PID------------------------------------
//Define Variables we'll be connecting to
double rollSetpoint, rollInput, rollOutput;
double pitchSetpoint, pitchInput, pitchOutput; 

//Define the aggressive and conservative Tuning Parameters<br>double consKp = 1, consKi = 0.05, consKd = 0.25;
PID pitchPID(&rollInput, &rollOutput, &rollSetpoint, consKp, consKi, consKd, DIRECT);
PID rollPID(&pitchInput, &pitchOutput, &pitchSetpoint, consKp, consKi, consKd, DIRECT);

void setup() {
//------------------------------PID----------------------------------
  pitchInput = 0.0;
  rollInput = 0.0;  
  pitchSetpoint = 0.0;
  rollSetpoint = 0.0;
  //turn the PID on
  pitchPID.SetMode(AUTOMATIC);
  rollPID.SetMode(AUTOMATIC);
  pitchPID.SetOutputLimits(-20, 20);
  rollPID.SetOutputLimits(-20, 20);
  //-------------------------------------------------------------------
  for (int i = 0; i < 4; i++) {
    targetSpeed[i] = 0;
  } 

  pinMode(FL_MOTOR, OUTPUT);
  pinMode(FR_MOTOR, OUTPUT);
  pinMode(BR_MOTOR, OUTPUT);
  pinMode(BL_MOTOR, OUTPUT);

void loop() {
  pitchPID.Compute();
  rollPID.Compute();
  int actSpeed[4];
  stabilise (targetSpeed, actSpeed, rollOutput, pitchOutput);
  //    targetSpeed = actSpeed; // should this be here or not
}
void stabilise (int* currSpeed, int* actSpeed, float rollDiff, float pitchDiff) {
  //actual Speed is calculated as follows +- half rollDiff +- half pitchDiff
  actSpeed[0] = (int) currSpeed[0] + (rollDiff / 2) - (pitchDiff / 2);
  actSpeed[1] = (int) currSpeed[1] + (rollDiff / 2) + (pitchDiff / 2);
  actSpeed[2] = (int) currSpeed[2] - (rollDiff / 2) + (pitchDiff / 2);
  actSpeed[3] = (int) currSpeed[3] - (rollDiff / 2) - (pitchDiff / 2);
  for (int i = 0; i < 4; i ++) {
    if (actSpeed[i] < 0) actSpeed[i] = 0;  
  }
}
void runIndividual (int* actSpeed) {
  analogWrite(FL_MOTOR, actSpeed[0]);
  analogWrite(FR_MOTOR, actSpeed[1]);
  analogWrite(BR_MOTOR, actSpeed[2]);
  analogWrite(BL_MOTOR, actSpeed[3]);
}

Bluetooth Module

Communication from the quadcopter to the phone will be through HC-06 Bluetooth module. The good thing about it is that there is no need to hack anything around as the module uses serial RS232 communication to talk to Arduino, thus you will use it identically the same way as you would Arduino Serial library. For this purpose you will need Arduino SoftwareSerial library. In the code given below I will send the speed which is to be set for all of the motors.

SoftwareSerial mySerial (7, 8); //RX, TX
void setup() {
  mySerial.begin(9600);
}
void loop () {
  if (mySerial.available()) {
  myReading = mySerial.parseInt();
    for (int i = 0; i < 4; i++) {
      targetSpeed[i] = myReading;
    }
    //flushing anything that wasn't read
    while (mySerial.available())  
      mySerial.read();
  }
}

Adding Bits Together

As for the whole code, I am always working on it, so I decided not to add it here. You can find the latest version of code in GitHub. I will notify in this Instructable when the code is finished. At the moment I need to setup correct PID constants...

<p>i'm using IRF2502 mosfet, Do use RESISTOR 1K ??</p>
<p>I wouldn't recommend these mosfets as they have very high gate threshold voltage (2-4V) and as mentioned before, we have batteries of 3V (dis-charged) 4.2V (fully-charged), thus in the case of a bad luck we might not be able to fully turn the transistor on. Anyway, any resistor 1k, 10k, etc. will be ok. (have a look, I modified slightly as to use 10k resistors in the instructable)...</p>
<p>can I use IRF530 mosfet transistors or TIP120 transistors?? because i will be using breadboard instead of PCB board.</p>
<p>IRF530 have gate-source threshold voltage of 2V (Min) up to 4V (Max), so Arduino might not be able to turn the transistor completely on. You may find that it works because you get good transistors. You see, Li-po batteries only have 3-4.2V, thus they might not work, you would have to install a voltage converter from 3.7-to-5V. TIP120 might work, but make sure you use correct connections, also you may want to have a look into similar projects for driving motors such as https://www.instructables.com/id/Use-Arduino-with-TIP120-transistor-to-control-moto/.</p>
<p>That's GREAT project, and I have all the parts at hand right now, except the motors...</p><p>But, I would like to explore the possibility of a custom made small transmitter/controller, utilizing a small arduino board and a corresponding BT module (master) with 2 thumb joystick modules as inputs.</p><p>Any ideas at to how could that be realized?</p><p>Any libraries or modules already exist?</p>
<p>There is too many options in here. What exact communication do you want? You might want to explore Nodics... https://www.rapidonline.com/Seeed-113990011-nRF24L01-Module-2-4GHz-RF-Transceiver-75-0422?IncVat=1&amp;pdg=kwd-307993934394:cmp-757438067:adg-42338105440:crv-178952908744:pid-75-0422&amp;gclid=CjwKEAjwoLfHBRD_jLW93remyAQSJABIygGpxXgBwIDly8XTCqhBpY-NVNJCZUrfCsYaonk21rY2hxoCjTLw_wcB</p>
<p>I made it with arduino nano but the code was written for mbed. How we change it to build in arduino? I setup the libraries but always one problem with it. Just codes i couldnt..</p>
<p>If you are still interested in the project, I am working on the code bit atm. I could have a look into your and tell what is the problem if you add it somewhere.</p>
<p>hello, what is the mosfet you used? Will Irml2502 suit the motors?</p><p>And how did you get the thrusts of the motors?</p><p>Pls reply quickly...</p>
<p>If you still need it, yes Irml2502 should be fine. I added some example mosfets myself. I looked into documentation for the thrust.</p>
<p>How do you control the quadcopter? From an app? a software? In that case... Whats the name of the software?</p>
<p>At the moment for testing I use Bluetooth terminal app from Google Play Store. This is for testing only. After making things stable I will write a small app myself. </p>
Do not be complete?
<p>At the moment writing some software.</p>
<p>Do you have any photos of the finished project?</p>
<p>Sorry, took me awhile to come back to this project, just added.</p>
how can I get get the code<br>
<p>i love it. I might need a bit of advice while building this. Instead of ordering gyro board I'm using wiimote circuit. Same connections I assume?</p>
<p>Mhm, can you give me some more insight about how do you want to connect it? The whole wiimote circuit or just the gyro?</p>
<p>Hi, I have a same build with an arduino nano, but i don't know how to share the same battery for arduino and motor, could you tell me how to do that ?</p><p>Thank a lot</p>
<p>Right, so hopefully you have a 3.7V Li-Po Battery. Arduino nano works fine with this voltage when it is connected directly to Vin pin (look into pinout schematic to identify which pin it is http://christianto.tjahyadi.com/wp-content/uploads... <br>Now motors use lots of power which is due to high currents. This will drop the voltage on the battery thus you needs some high value Cap (&gt;20uF) to be placed in parallel to 3.7V and ground to hold the voltage constant for the Arduino nano cause otherwise if the voltage drops too much Arduino will reset. <br>So from that you can now know that to achieve this you need to connect 3.7V pin to Vin &amp; to the motor (well, a combination of motor and mosfet). Then add a cap in parallel close to the Arduino nano.</p>
<p>Hey,</p><p>What is the MOSFET that you have used in this project ? Can you give me the number of MOSFET.</p>
<p>If by some way the code for Arduino Beetle become available here it will be one of the most reliable appliable projects I had ever found on the NET. Please let us know if the project had been completed!!!</p>
<p>Sorry, I've been busy with my exams :D You will have to wait until around the new year for the code for beetle. A bit more until fully completed code as I though of implementing pico threads or smth similar for some parallel work...</p>
<p>Do you have a code to program Arduino Beetle? I am impressed by this project but i must ask a question= Is it completed for Arduino at all????</p><p>daniel.i.denev@gmail.com</p>
<p>Do you have a code to program arduino? </p><p>Best project, I want it! :D I'm going to do it by myself :D</p>
<p>Cheers, man :D Sorry, you will have to wait until around New Year as currently I am a bit busy with the exams... :D </p>
<p>Haha, ok :) App for android will be avaiable too after New Year? :) </p>
I'm assuming you changed the motor orientation, because in the diagram they all were connected the same.<br><br>Probably an oblivious question but I'm just asking.<br><br>Nice project and thanks for sharing! - Sam
<p>Hey, yeah, there might be a little misunderstanding with that as I just finished drawing that yesterday and noticed some inconsistencies, I will update that ASAP! Basically, the motors are already predesigned to have (+) and (-) wires, although it doesn't necessarily mean that they all spin the same way. You see, they are made to rotate best in one direction only. If you connect them oppositely, they will have shorter lifetime, most likely the speed will drop as well.<br>If you go to <a href="http://www.micro-motor-warehouse.com" rel="nofollow"> www.micro-motor-warehouse.com</a> you can find at the bottom of each motors it says:<br>&quot;All motor packs contain equal amounts of clockwise and counter clockwise motors. To maximize performance and life span, don't run them in reverse!</p><p>Motor rotation and correct polarity is indicated by the wire color:<br>clockwise: red +, blue -<br>counter clockwise: white +, black -&quot;<br>Thanks for noticing, I will change the colours to white &amp; black for 2 of the motors!!</p>
<p>I can't wait till it's finished so I can see it in action! </p>

About This Instructable

17,601views

76favorites

License:

More by Montvydas:Arduino Micro Quadcopter  PS2 Keyboard for FPGA Image from FPGA to VGA 
Add instructable to: