Here is a pneumatic flow control circuit by using a flow control valve.
Flow control valves are used to control extending or retracting speed of hydraulic or pneumatic cylinders. In reality it is harder to regulate speed of air cylinder because of air being compressible. If fine speed control is required for pneumatic circuits, it is advised that you should use air over oil circuit to do that.
A flow control valve is a needle valve with a check valve build in it. As you know needle valve restrict flow in both direction. However flow control valve allow flow go freely in one direction and restrict it in the other direction.
You can connect a flow control valve into a port of a cylinder in two ways. You can restrict flow out of cylinder (metering out) or you can restrict flow into the cylinder (metering in). There are reasons to use one over the other. In the circuit given above we use flow control valve in metering out when cylinder extending.
You should notice that we have a slider next to flow control valve. By pushing this slider you can move needle screw inward. This will make the gab in the inner orifice smaller. Thus restricting air or oil flow further.
When cylinder piston extends, air behind it is compressed because air can't escapes easily. That is why we have reddish color in front of piston. When you tighten this screw, movement of piston slows down and color become closer to red, because air is restricted even further.
At the end of extension, color changes to blue, because piston is not moving forward and there is no more compression, and air is leaking to the atmosphere.
Please also note how the ball and spring inside flow control valve is moving.
In the retraction mode pressurized air bushes internal ball and opens the check valve and that is why retraction is faster then extension.