This is a pretty common mistake for people new to electronics. Most power supplies are designed to provide a constant voltage (5v in your case). Your circuit then provides a resistance of some sort, with microcontrollers and capacitors and such the resistance will change with time, but for beginners its usually best to think of your circuit has having a constant resistance as well.
So V/R=I, since V and R are constant, I will stay the same also.
The current that is given for your power supply is just the max that the power supply can output and guaranty a steady 5v. So if you work the V/R equation out and get 1Amp, then a 500mA power supply wont work for you, but a 22Amp supply will.
Sometimes this analogy helps people understand what is happening
- voltage as the height above the ground you are
- current being the act of an object falling
- max current as how much area you have to fall down in
- an orange and an elephant as being 2 different circuits you have built
So if you have an elevator shaft that you drop an orange in from 100ft it will act the same (or close to if you ignore stuff like wind) as dropping an orange from 100ft off the top of the building. Now if you try to drop an elephant down an elevator shaft it will act much differently then if you drop an elephant off the top of a 100ft building.
So in the case of your original circuit (the orange) a 500mA max power supply (the elevator shaft) will act just the same as a 22amp power supply. (Off the top of the roof)
But when you go to your new circuit (the elephant) a 500mA max power supply will act much differently then a 22amp power supply.
A power supply that can output more current means that you have a greater chance of killing components if hooked up wrong. If you always hook stuff up correctly it wont ever be an issue, but I don't know anyone who has never accidentally hooked something up wrong.
Without knowing more specifics about your particular set-up, here are some ideas:
The best and safest option would be to use one strong (1.5A or 2A) regulated power supply that powers both the microcontroller (arduino) and the heavier load.
It would also be possible to use two separate supplies, but then, you would have to make sure that the stuff connected to the microcontroller will not back-supply the I/O pins, possibly causing damage to the microcontroller (see: clamp diodes), i.e. you would have to make sure that both supplies provide almost exactly the same voltage (within +/- 0.3 V).
Note: All references to 5 Volt supplies et cetera apply only to the standard Arduino boards that are based on a 5 Volt design. Boards like the Arduino Due, Fio, and 3.3 Volt versions of the Pro and Pro Mini, as well as 3.3 Volt Arduino clones, need to take this into account: Where you see 5 Volts mentioned, replace with 3.3 Volts for those boards.
First, the decision factors for type of power source:
What does your project do, how much power does it consume at peak (guesstimate if you can't measure it), and what percentage of time it is programmed to stay in low-power mode?
How physically accessible is the device, or how accessible do you want its insides to be?
Is portability or hand-held use intended?
Is a power line available at the permanent deployment location?
Is always-on relatively important?
Now, the wall-wart option:
If possible, use a high-quality 5 Volt regulated wall-wart (isolated mains power adapter with a clean 5 Volt DC output)
If quality of voltage regulation of the wall-wart is not assured, then using a wall wart designed for 7.5 to 9 Volt DC output is suggested, with the on-board voltage regulator IC doing the 5 Volt regulation:
If any parts of the permanent Arduino device, say a motor or Piranha LEDs, require high current - which for this discussion is anything greater than say 100 mA - then it is best to supply that subsystem with power directly from the wall-wart supply, in parallel to the supply being provided to the Arduino board itself.
For using a battery:
I hope the above notes provide at least an initial basis for designing the power solution for permanent deployment of your Arduino project.