If I was to continue down the path of a 15^3 cube and 1 cycle consisted of 1000 milli seconds, the number of LEDs to be lit in one second would be 1000 (i.e. one LED for each milli second in a cycle), is that correct? If that is true, is it possible to manipulate the timing in a cycle, for example 2000 milli seconds?
Hm, I'm not sure I follow what you mean. 1 cycle = 1 frame? One LED pr millisecond? If you mean to light up 1 LED at a time, it would be a very, very dim LED at 1/1000 duty cycle (or 1/3375).
You can manipulate anything in principle, but there's always a tradeoff between something. Somewhere between one LED at a time and horrible framerate (or, if you somehow manage a decent framerate, at least a very dim cube), and all LED's simultaneously but very bright and with a LOT of wiring, components and the current/power requirements with that (except all that wiring would likely obstruct the view to the middle LEDs...)
Sorry if this sounded silly or something.. just about to go to sleep now.
(Btw, better not adress it to just me, I'm sure other can answer much better than I can, though I hope I have given some insight into the thing.. + I'm a pretty periodic/un-steady poster :P)
Also as Senso mentions, maybe you must consider a more powerful microcontroller than an Arduino for a 15³ cube. Me, I don't know, I haven't calculated anything regarding that, I have a feeling it might be feasible for a non-PWM one-colored 15ish³ cube, but not more.
To try and put some numbers down: Let say you aim for 50 Hz framerate (as a ballpark). To continue my former example of lighting up an entire layer at once (pretty demanding that also, with regards to current, nr of external driving circuits and transistor arrays etc):
1/50th second * 1/15 layer time = 1/750 s, or 1.33 milliseconds pr layer.
In that time 225 LEDs should be lit somehow...
There is not enough pins on any Arduino's, so some sort of trick has to be used. The Mega does have 54 pins though, + 16 analog pins, I assume these can also be used as digital outputs just like the regular Arduino, which I'm used to. So 70 pins total(?).
If you further multiplex those 225 LEDs 1/4, (56+56+56+57 LEDs) + some control outputs for this multiplexing, maybe serial I/O for debugging, and some buttons, then 70 digital I/O's should be about just enough. I assume here that each (multiplexed) LED is controlled directly by the Arduino Mega. The issue/questoin is speed. Pretty sure you would have to use direct port manipulation for speed.
So, 1.3333 ms / 4 = 333 us (microseconds) pr. multiplexed LED "block" (of 56 or 57 LEDs). Also note with this scheme any LED is on for 1/(15*4) seconds = 1/60. IE not too bright...
One Arduino instruction takes 62.5 ns (except jumps that takes 2, probably some other exceptions also I'm not a expert on that), or simply 16 instructions pr. us. 16*333us = 5328 instructions within one multiplexed set of LEDs. In that time you must find and prepare data for the next set of LEDs, process any button clicks etc.. (and allow for other interrupts that might be going on - in fact you should put the display/multiplexing routine as an interrupt). Unless I overlooked something, I think this looks promising.
With the possible exception of rather / very dim LEDs that is. So maybe not quite like this. Or maybe only visible indoor and in the dark. Of course this is not the only scheme possible, and dont take my word for it... I haven't actually built one of these myself yet (well at least not this type of cube, and not this size!). I do have a few dual color RG LEDS I was am planning to make a 5³ cube out of some time though
Speaking of cubes, here is a couple of others (you might have seen them though but I post them anyway, they are just too cool!)
An 8^3 with drawing software on the computer:
And an unbelievable 664824. Now that's not cheap...
Come to think about it, they ought to make stackable 3D LED blocks in one piece That way they could design the light to fill out one pixel better (I would think, or maybe that would be obstructing the mid-LEDs?), or make them with higher resolution. Would probably be pricey though.
This was a lot more than I originally thought writing. Hope some of it made sense.
Going to sleep now