Help with Missile 2D

Hi folks. Thank you for your time.

I’m developing a 2D game in which I have a wasp-enemy that flies in a pattern and I’m doing that by giving it an array of waypoints. When the wasp is close enough to the waypoint that is currently targetted, the wasp targets the next waypoint in the array.

I would like to use the rigidbody2D to move the wasp, and I’m doing it by using the rigidbody.movetowards function, but when it reaches the current targetted waypoint and it changes to the next target waypoint, it looks like a sharp “curve” (or more like a vertex) and I don’t like that because it looks unnatural.

How can I make the wasp rotate towards its targetted waypoint, by an angular speed that is given by me, using the rigidbody, and in 2D?

Tank you for your time.

Transform target;
public int speed;
public int _dmg = 100;
private Health _Health;
void Start()
{
target = GameObject.FindGameObjectWithTag (“Enemy”).transform;

    //transform.GetChild(0).GetComponent<ParticleEmitter>().emit = true;
}

void FixedUpdate()
{
	if (target != null) {
		Vector3 dir = target.position - transform.position;
		float angle = Mathf.Atan2 (dir.y, dir.x) * Mathf.Rad2Deg - 90;
		transform.rotation = Quaternion.AngleAxis (angle, Vector3.forward);
		//transform.Translate(0, 0.1f, 0);
		transform.position = Vector3.MoveTowards (transform.position, target.position, speed * Time.deltaTime);
	}
}