If I understand you correctly you want to ramp the speed up to 30 and hold it at that speed for some length of time and then ramp it back down? If so, then you just need to not change it for that amount of time. A simple example would be to add a delay between the
for loops.
This page from the tutorial talk about power:
https://learn.adafruit.com/adafruit-mot ... ing-motors.
I notice that it recommends 5v-12v motors.
If you have a big enough supply you could run everything off the Arduino's DC barrel jack. That's what the VIN jumper is for. However, as mentioned on the above "power" page, it's generally not a good idea to share a power source between the controller board and motors.
You wouldn't need a separate supply for each shield. If you have enough current you can supply all the shields with one supply. Or have smaller groups of shields powered by smaller supplies (e.g. 1 small supply for every 2-3 shields.
What size power supply do you need? It depends on how much current your motors will require.
For example, if you use
https://www.adafruit.com/product/711, each motor will need a max of 250mA so with 4 on a shield, the shield will need 1A. I'd go a bit bigger beacause nothing is perfect. Say 3A for every pair of shield.
I don't see a good 6v supply but you could use
https://www.adafruit.com/product/4880 set to 6v for each ground of 4 shields. It's a 5A supply so it would handle the 4A requirement with some to spare.
If you went with 12v motors, there's a good 12v 5A supply:
https://www.adafruit.com/product/352.
But in general: a supply the same voltage as your motors with enough current capacity to handle some number of them (i.e. some number of shields with 4 motors per shield) when loaded.
Dave