Erro de ajuste `nls`: sempre alcance o número máximo de iterações, independentemente dos valores iniciais

Usando esta parametrização para um modelo logístico de curva de crescimento

Eu criei alguns pontos com: K = 0,7; y0 = 0,01; r = 0,3

df = data.frame(x= seq(1, 50, by = 5))
df$y = 0.7/(1+((0.7-0.01)/0.01)*exp(-0.3*df$x))

Alguém pode me dizer como posso ter um erro de ajuste se criar os dados com os iniciantes do modelo?

fo = df$y ~ K/(1+((K-y0)/y0)*exp(-r*df$x))

model<-nls(fo,
           start = list(K=0.7, y0=0.01, r=0.3),
           df, 
           nls.control(maxiter = 1000))
Error in nls(fo, start = list(K = 0.7, y0 = 0.01, r = 0.3), df, nls.control(maxiter = 1000)) : 
  number of iterations exceeded maximum of 1000

questionAnswers(1)

yourAnswerToTheQuestion