According to this we can explain what it says "ויאמר ה' אל משה לאמר" and not "וידבר ה' אל משה לאמר". Despite the fact that the act of wearing tzitzis is obligatory, the foundation and bais for the mitzva is the fulfillment of "וזכרתם" - "remembering". In order to remember the Torah commanded us to wear tzitzis. Since this fundamental matter is not an absolute obligation, the Torah couches the mitzva in terms of "ויאמר" [which denotes softness]. That also explains the "ו" of "ועשו" - You must remember all the mitzvos [ויאמר] AND as a result "ועשו" you have to wear tzitzis.
Now we can answer the question of the Alshich who asked why the psukim speak in the third person [לשון נסתר] as in "ועשו להם ציצית" and "ונתנו על ציצית" while in פסוק ל"ט it says "והיה לכם לציצית וזכרתם" [second person - לשון נוכח] and not "והיה להם לציצית"? Why the change?
When it talks about the primary matter of remembering the pasuk speaks to us directly "וזכרתם". But when talking about the outgrowth of the fundamental issue at hand i.e. the act of wearing the tzitzis, the pasuk speaks in the third person - "ועשו להם ציצית" "ונתנו על ציצית".
Now we can explain the command to fulfill this mitzva for all the generations "לדרתם". Tosfos in Menachos [43b] explain that tzitzis are a garment the display our servitude to the Creator. There is a qualitative difference between a temporary עבד and an eternal עבד [see Kiddushin 4a and Yevamos 70a "ואני אומר קנוי קניו עולם אינו אוכל"]. The tzitzis must be worn with the attitude that we are ETERNAL עבדים to Hashem [and not just that we have to keep the mitzvos for all the generations, because that applies to all mitzvos].
[עפ"י תורת מו"ר הגאון הגדול רבי ד"י מן זצ"ל]
[עפ"י תורת מו"ר הגאון הגדול רבי ד"י מן זצ"ל]