Adding a custom constraint to weighted least squares regression model
The model you are looking for is this:

$Y=\frac{A}{1+e^{-(\beta_0+\beta_1x+\beta_2log(x))}}$, this could not be obtained but a very similar was obtained.

This code in R might work:

R=data.frame(X=c(1,2,3,4,5,6,7,8,9),Y=c(1,2,3,3,3,3,3,3,3)) # Data in which X is a line, and Y has an still unknown limit.
model=nls(formula = Y~A/(1+exp(-(b0+b1*X))),data=R)
summary(model)


In the result you can see how $A$ says that the limit of 3 (previously unknown) is calculated.

There is a limitation to take into account, is explained in this link, is summarized in the impossibility for all possible models to exist, the "most inside" model should be linear.

The model $\beta_0+\beta_1x+\beta_2log(x)$ could not be used, the model $\beta_0+\beta_1x$ could be used, take this into account.

First steps with Non-Linear Regression in R

Singular Gradient Error in nls with correct starting values