The weather tiles can be retrieved like normal "tiled web maps" oder "slippy maps".
The schema of the URL is the following:
https://weather.openportguide.de/tiles/actual/variable/timestep/zoom/X/Y.png

In the moment the following timesteps are available: 0h, 6h, 12h, 24h, 36h, 48h, 60h, 72h

Until August 1st, 2016 the timesteps had been defined by abstract numbers. Unfourtunatly ,this caused confusion some times. For this reason the timesteps are now defined by the period of time the forecast should be in the future.
Also the prediction times had been changed to more handy times. Now they represent half of full days (e.g. old: Timestep "27" representing 66h or 2.75 days in the future. New: Timestep "72h" representing 3 days in the future.
To prevent any issues for users which are using the old timestep scheme, the old timestep requests will be forewarded to the nearest available timesteps according to the table below.

old timestep ≈forecast time from 1.8.2016 new timestep ≈forecast time
5 actual time forwarded to 0h actual time
7 6h in the future forwarded to 6h 6h in the future
9 12h in the future forwarded to 12h 12h in the future
11 18h in the future forwarded to 24h 24h in the future
15 30h in the future forwarded to 36h 36h in the future
19 42h in the future forwarded to 48h 48h in the future
23 54h in the future forwarded to 60h 60h in the future
27 66h in the future forwarded to 72h 72h in the future

 

For a better understanding a detailed explanation of the old timesteps:

The stepsize between each single timestep is 3h. Not all theoretically possible timesteps (1, 2, 3, 4, 5, 6, 7 ,etc) are calculated, but only the above mentioned.
Timestep 1 represents the moment that the NOAA used as starttime for the calculation of the model. That´s about the point of time when their calculation is being started. Their supercomputer calculates for around 6h. Then openportguide.de retrieves the data and needs about another 6h to calculate the visualizations. Now timestep 1 is about 12h in the past and timestep 5 represents roughly the actual time.

Now it´s possible to understand the available steps:
timestep 5 ≈ actual time at the moment of the release (since the tiles are refreshed every 6h, timestep 5 is before the release of the next set of tiles 6h in the past)
timestep 7 ≈ 2*3h = 6h in the future
timestep 9 ≈ 4*3h = 12h in the future
timestep 11 ≈ 6*3h = 18h in the future
timestep 15 ≈ 10*3h = 30h in the future
timestep 19 ≈ 14*3h = 42h in the future
timestep 23 ≈ 18*3h = 54h in the future
timestep 27 ≈ 22*3h = 66h in the future

Since the actual time runs continously, but the forecasts are jumping 6h into the future every 6h, you need the exact time for every timestep of the forecast. These times can´t be calculated as explained above. You can retrieve these times from the server for every timestep. The time is saved in the file time.txt and you will find it at the following position:

https://weather.openportguide.de/tiles/actual/variable/timestep/time.txt

You have to replace "variable" and "timestep" with the values of the tiles you are retrieving.

Now the whole thing as an example with the first "0h" and last "72h" timestep for the variable "wind_stream":

timestep 0h:

In the frame you see the content of https://weather.openportguide.de/tiles/actual/wind_stream/0h/time.txt

Upper left picture, background: https://a.tile.openstreetmap.org/5/15/10.png
Upper left picture, foreground: https://weather.openportguide.de/tiles/actual/wind_stream/0h/5/15/10.png

timestep 72h:

In the frame you see the content of https://weather.openportguide.de/tiles/actual/wind_stream/72h/time.txt

Upper left picture, background: https://a.tile.openstreetmap.org/5/15/10.png
Upper left picture, foreground: https://weather.openportguide.de/tiles/actual/wind_stream/72h/5/15/10.png