I don´t have a lot of hardware skills. The thing is, I want to build a functional quadcopter. So I need to make this work together:
-Arduino Mega
-6 ultra sonic sensor (Two for each x,y,z direction.)
-4 motors (I would prefer bi-directional.)
-3 DOF gyroscope
-Battery
How hard is this to set up? I have the programming skills needed. I want the quadcopter to be able to fly in random directions and then chance direction when it is closer than 50 cm or something. Some questions:
- Is this possible to pull of, or will it be too heavy?
- How hard is it to set up?
- Where can I get a 4 channel motor drive? Do you know any? Can you use 2x2 channel motor drive? May this one work? (http://www.elecrow.com/arduino-compatiable-c-109/shield-c-109_110/four-channels-motor-shield-for-arduino-p-310.html)
- How should I set up the sonic sensors? How often can I update them? How long does the gap between each sensor use be?
Some other general questions:
- Is it easy to add more ports (pin)? How?
- If I want the robot to find it´s way to a point in the house? How should that be done? Sound source?
Thanks in advance 
I can't answer everything but I can help you a little.
As for the weight you should be fine as long as you build a big enough copter. You could use a Pro Micro controller to save some space/weight. https://www.sparkfun.com/products/11098
As for the distance sensing is their any reason your sold on ultra sonic? Infrared proximity sensors are smaller, cheaper, and lighter. They are a little less accurate then ultra sonic but for your application I don't think you need extremely exact measurements.
The setup should be fairly easy. To make everything go smoother you could go to Hobby King and by a frame with the right motors so that you know everything will interface properly.
For the motor controller try Hobby King, Spark fun, Robot shop, Robot marketplace, etc.
The sensors can provide you with pretty much continuous feed back.
As for adding more pins that will not be necessary especially if you go with a mega. It has more then you'll ever need for this project!
When it comes to finding a point try an IR Beacon!
Keep us updated!
As mentioned Hobby king et al
Brush-less motors (you want out runners) ARE bi-directional (but you can also use counter-rotating props = all motors trun same way)
For motor control, use ESCs (over spec them)
Personally I would start with a ready-made flight controller to test my airframe
KK MultiCopter Control Board - Blackboard V5.5 > Flight Control Boards > MULTICOPTERS > Main Page > Pyramid Models etc.
Once I have faith in the airframe, I would then start to play (as I am)
Remember you have to balance airframe weight against motor/prop dynamics against battery specs (prob. at least 2.2Ah 20C discharge 3S) to arrive at a sensible flight time.
This may help
http://www.ecalc.ch/xcoptercalc.htm?ecalc&lang=en
Have fun