энкодер либо считает свои обороты, если это например датчик холла, либо время отражения света от мишени, если оптический, в любом случае это косвенный показатель по отношению к позиции заданной мотором
мотор ничего не умеет, у него 2 обмотки ( в случае принтера это nema17 )
драйвер даёт ему импульсы, из-за этих импульсов мотор дрыгает на заданное драйвером количество шагов, а сколько надо сделать дрыгов драйверу говорит прошивка, которая в свою очередь выполняет команды g-code