How do I fix this?

When I try to move my player it won’t move and this pops up. NullReferenceException: Object reference not set to an instance of an object
PlayerMotor.PerformMovement () (at Assets/PlayerMotor.cs:32)
PlayerMotor.FixedUpdate () (at Assets/PlayerMotor.cs:24) I don’t know how to fix my script. I am watching a youtube tutorial and my script says the same thing. Here is my script. using UnityEngine;

[RequireComponent(typeof(Rigidbody))]
public class PlayerMotor : MonoBehaviour {

private Vector3 velocity =Vector3.zero;

private Rigidbody rb;

void start ()
{
	rb = GetComponent<Rigidbody>(); 
}

// Gets a movement vector
public void Move (Vector3 _velocity)
{
	velocity = _velocity;	
}

// Run every physics iteration
void FixedUpdate ()
{
	PerformMovement();
}

//Preform movement based on velocity variable
void PerformMovement ()
{
	if (velocity != Vector3.zero) 
	{
		rb.MovePosition(rb.position + velocity * Time.fixedDeltaTime);
	}
}

}

Change start() to Start() (with uppercase ‘S’), otherwise this function isn’t called by unity and your variable ‘rb’ is not set. You then get a NullReferenceException in PerformMovement().