Motors used in academic robots normally operate at 5, 6, 9, 12 or 24 volts. Depending on the model, the manufacturing method, price, etc., their current is about 100 mA to 5A. You can use motors in several ways. One method is to connect it directly to a battery, then it spins at its maximum speed in a particular direction, but in practice, we need to control the motors (on and off, speed control, direction control, and position control). Therefore, we must control motors using controllers (logic circuits or microcontrollers or PCs or computers). But as you know, the output of microcontrollers are 5V and 200mA and can not spin the motor. So we need intermediate circuits to connect the controller to the motor, called drivers. L293D is one of the most popular drivers in the market. There are several reasons which make L293D the preferred driver to the users, such as, cheap price (compared to other drivers), proper shape and size, easy control, no need for protective circuit and diodes, no need for heat sinks and good resistance to temperature and high-speed variations. This IC can set up motors with a voltage between 5V to 36V and a current of up to 600 mA. However, it can withstand a current up to 1200 mA in 100 microsecond and non-repetitive. The frequency of this IC is 5 kHz. If your motor matches these specifications, do not hesitate to use L293D.