Acceleration

So I wish to have an object accelerate to a curtain speed limit and hold that speed - stop accelerating once it hits that limit. btw I cannot have a rigidbody attached to this object.

public float minSpeed = 1f;
public float topSpeed = 55f;
int Acceleration = 1;

void Update () 
	{
// Movement
transform.position = new Vector2 (transform.position.x + minSpeed * Time.deltaTime, transform.position.y);	

How would I do it?

  1. Read: Acceleration - Wikipedia
  2. Use v = v0+0.5at and set a to zero when v gets to 55.

Just to extend what Graham said. You need of course a variable to track your current speed. Something like this:

public float minSpeed = 1f;
public float topSpeed = 55f;
float Acceleration = 1;
float speed = 0f;
 
void Update ()
{
    // apply acceleration
    speed += Acceleration * Time.deltaTime;
    // clamp the speed between min and max
    speed = Mathf.Clamp(speed, minSpeed, maxSpeed);
    transform.Translate(speed * Time.deltaTime, 0, 0, Space.World);
}