If R(u,v)
In[104]:=
Clear[R,u,v]
R[u_,v_]:={2 Cos[u] Sin[v],2 Sin[u] Sin[v], 2 Cos[v]}
In[105]:=
nv=Cross[D[R[u,v],u],D[R[u,v],v]]
Simplify[nv]
Out[105]=
2 2
{-4 Cos[u] Sin[v] , -4 Sin[u] Sin[v] ,
2 2
-4 Cos[u] Cos[v] Sin[v] - 4 Cos[v] Sin[u] Sin[v]}
Out[106]=
2 2
{-4 Cos[u] Sin[v] , -4 Sin[u] Sin[v] , -2 Sin[2 v]}
Let's look at the point where u=v=Pi/4.
In[107]:=
normalv=vectorPlot[{R[Pi/4,Pi/4]},{R[Pi/4,Pi/4]+nv/.{u->Pi/4,v->Pi/4}}];

Oops! This normal vector will point inside the sphere. Let's use the opposite one.
In[108]:=
normalv=vectorPlot[{R[Pi/4,Pi/4]},{R[Pi/4,Pi/4]-nv/.{u->Pi/4,v->Pi/4}}];

In[109]:=
Show[sph,normalv];

In[110]:=
tp=ContourPlot3D[({x,y,z}-R[Pi/4,Pi/4]).(-nv/.{u->Pi/4,v->Pi/4}),
{x,-2,2},{y,-2,2},{z,-2,2}];

In[111]:=
Show[sph,normalv,tp];

Another option for the normal plane would be to use the formulation
n1(x-x0)+n2(y-y0)+n3(z-z0)=0.
Then you could use z=[-n1(x-x0)-n2(y-y0)+n3z0]/n3
and then use Plot 3D
In[112]:=
n1=(nv/.{u->Pi/4,v->Pi/4})[[1]]
n2=(nv/.{u->Pi/4,v->Pi/4})[[2]]
n3=(nv/.{u->Pi/4,v->Pi/4})[[3]]
x0=R[Pi/4,Pi/4][[1]]
y0=R[Pi/4,Pi/4][[2]]
z0=R[Pi/4,Pi/4][[3]]
Out[112]=
-Sqrt[2]
Out[113]=
-Sqrt[2]
Out[114]=
-2
Out[115]=
1
Out[116]=
1
Out[117]=
Sqrt[2]
In[118]:=
tp2=Plot3D[(-n1(x-x0)-n2(y-y0)+n3 z0)/n3,{x,-2,2},{y,-2,2}];

In[119]:=
Show[sph,normalv,tp2];

Up to Tangent Planes