this interactive notebook demonstrates the phase plot for whatever potential you want to use

Manipulate:

execute this first cell, drag the slider, note how quickly it counts the number of states Ω(ℰ) below the energy threshold ℰ
it’s best to delete the output graphic in this first cell when you are done with it, before moving on to the following cells.

U0=-50;a=2;{xmin,xmax}={-30,30};
U=U0 Exp[-Abs[(x+2a)/a]]+.95*U0 Exp[-Abs[(x-2a)/a]];
Manipulate[Ω=0;soln=NDSolve[{Φ''[x] + 2(ℰ-U) Φ[x]==0,Φ[xmin]==.1,Φ'[xmin]==.1, 
WhenEvent[Φ[x]==0,++Ω]},Φ[x],{x,xmin,xmax}][[1]]//Quiet;
GraphicsRow[{Plot[{U,ℰ},{x,xmin,xmax},PlotRange->All],
Plot[Tanh[Φ[x]/.soln],{x,xmin,xmax},PlotRange->{-1.1,1.1},PlotPoints->300,
PlotLabel->"ℰ="<>ToString[TraditionalForm@ℰ]<>"  Ω="<>ToString[Ω]]//Quiet}],
{{ℰ,U0},U0,0}]

track eigenvalues

once executed, this cell interactively displays the number of levels found below the energy cutoff, how many of the levels are located, and what they are.
If the first two numbers shown are the same, you have found all the levels.  If not, slow down the scanning animation. 
These energy levels are rough - accurate determination is done by sifting and refining as explained in GB book “Phase Method”.
Reset the starting energy in the animation below (drag the slider all the way left), then re-execute this cell to reset its values.

oldΩ=0;elist={ };
Framed@Dynamic[{Ω,Length[elist],elist}]

Animate with scanning

execute this cell to automatically scan the energy - levels are shown on the potential plot. 
Slow down the animation rate if not all levels are located. 
If the level structure is simple (e.g. Harmonic Oscillator) you can probably speed it up.
This is just an illustration - it is not to be used for obtaining accurate eigenvalues.
 Sifting/refining as described in the book is far more accurate.

U0=-50;a=2;oldΩ=0;etest={};mklvl[e_]:=Line[{{xmin,e},{xmax,e}}];
U=U0 Exp[-Abs[(x+2a)/a]]+0.95U0 Exp[-Abs[(x-2a)/a]];{xmin,xmax}={-20,20};
Animate[Ω=0;soln=NDSolve[{Φ''[x] + 2(ℰ-U) Φ[x]==0,Φ[xmin]==.1,Φ'[xmin]==.1, 
WhenEvent[Φ[x]==0,++Ω]},Φ[x],{x,xmin,xmax}][[1]]//Quiet;
If[Ω>oldΩ,AppendTo[elist,ℰ];oldΩ=Ω];  
GraphicsRow[{Plot[{U,ℰ},{x,xmin,xmax},PlotRange->All,Epilog->mklvl/@elist],
Plot[Tanh[Φ[x]/.soln],{x,xmin,xmax},PlotRange->{-1.1,1.1},PlotPoints->300,
PlotLabel->"ℰ="<>ToString[TraditionalForm@ℰ]<>"  Ω="<>ToString[Ω]]//Quiet}],
{{ℰ,U0},U0,0},AnimationRate->1,AnimationRepetitions->1]