In this tutorial, we will learn how to operate the SmartElex Motor Driver in RC Mode. We will take a look at some basic techniques for controlling DC motors and make one example through which we will learn how to operate the 15D SmartElex Motor Driver in RC Mode.
Basics of Motor Drivers:
Motor drives are circuits used to run a motor. In other words, we can say that they are commonly used for motor interfacing. These drive circuits can be easily interfaced with the motor and their selection depends upon the type of motor being used and their ratings (current, voltage).
A motor controller is a device or group of devices that serves to govern in some predetermined manner the performance of an electric motor. Brush DC motors are the most widely used drivers due to their low cost and simple drive control options. SmartElex motor driver has a lot of great specifications that make it useful for a wide variety of mechatronics.
The wide operating voltage range and easy to interface with microcontrollers (MCU) allow you to quickly adopt this module into applications.
SmartElex Motor Drivers Comparison table:
|Sr.No.||Name||Input Voltage||RC Mode||Analog Mode||PWM Mode||Max. Continuous Current||No. Of Channels|
|1||30D Dual Channel 30A Smart DC Motor Driver||7-30V||Yes||Yes||Yes||30A||2|
|2||15D Smart Motor Driver||7-30V||Yes||Yes||Yes||15A||2|
|3||15D Dual Channel DC Motor Driver||6.5-30V||No||No||Yes||13A||2|
|4||15S DC Motor Driver||6-30V||No||No||Yes||15A||1|
|5||10D Motor Driver For Arduino||7-30V||No||No||Yes||10A||2|
|6||10S Motor Driver For Arduino||7-30V||No||No||Yes||10A||1|
|7||10D DC Motor Driver HAT for Rpi||6.5-28V||No||No||Yes||10A||2|
|8||L298 Motor Driver with Arduino||9-15V||No||No||Yes||2A||1|
|9||L298 Motor Driver with Arduino with Micro-USB||9-15V||No||No||Yes||2A||1|
Motor speed Controlling Modes:
There are four different types of input mode:
- PWM mode
- RC mode
- Analog mode
- Serial Mode
There are many different ways to control the speed of DC motors but one very simple and easy way is to use Pulse Width Modulation. Pulse width modulation is a great method of controlling the amount of power delivered to a load without dissipating any wasted power. The use of pulse width modulation to control a small motor has the advantage in that the power loss in the switching transistor is small because the transistor is either fully “ON” or fully “OFF”. As a result, the switching transistor has a much-reduced power dissipation giving it a linear type of control which results in better speed stability.
Also, the amplitude of the motor voltage remains constant so the motor is always at full strength. The result is that the motor can be rotated much more slowly without it stalling.
Fig1.0. Pulse Width Modulated Wave
RC mode:(Radio Control Mode):
In this mode, Speed and direction of Motor are controlled by RC1 and RC2 channel of receiver or anything that can generate servo signals can be used to drive a SmartElex 30D in Radio Control mode.
In Analog input mode, the speed and direction of the motor are controlled by the Analog voltage. Analog Input voltage range is from 0V to 5V.
In Serial mode, the TX pin of SmartElex 30D is connected to the Rx pin of Controller and the Rx pin is connected to the TX pin of Controller. Baud rate can be simply set by using switches. Supported baud rates are 9600,19200,38400,57600.
Fig1.1 SmartElex 15D Motor Driver
SmartElex 15D is a dual channel motor driver capable of supplying 15 amps continuous with peak currents up to 30 amps (10Sec) per channel. The motor driver can be operated in radio control, analog, TTL serial, and PWM modes. A variety of operating modes including a mixed and independent mode in radio control, Analog and in PWM mode.
Operating modes allow for operation, such as switching between radio controls and PWM mode or switching between any of 4 modes via 4 position DPDT mode switch. MOSFETs are switched at 16 kHz to ensure quiet operation and no annoying whining sound.
Besides, it also equipped with a microcontroller unit to provide smart features such as multiple input modes and current limit and thermal protection. If the temperature of the board reaches 80 degrees then motor speed becomes half and speed will be normal once the temperature reaches below 70 degrees. The motor driver shut down at 100 degrees.
- Supplying 15 amps continuous with peak currents up to 30 amps (10 Sec) per channel
- Support motor voltage from 7V to 28V.
- Onboard Low Internal resistance MOSFETs are switched at 16 kHz frequency.
- Over-current protection and indication.
- Thermal protection.
- Multiple input modes: RC, Analog, PWM, Serial Packetized.
- Onboard push buttons for test and manual operation.
|2||Maximum Continous Current Imax||15A|
|3||Peak Motor Current for 10s||35A|
|4||VIOH(Logic Input-High Level)||3-5.5V|
|5||VIOL(Logic Input-Low Level)||0.5V|
Fig1.2 Pinout diagram of SmartElex 15D smart Motor Driver
Power Input: Connect to a 7V-28V Battery or Power Supply.
Motor 1 and Motor 2 Terminal: Connect Motor 1 to Motor 1 Terminal. Connect Motor 2 Motor 2 Terminal.
Mode Selection: It uses to set the operating mode and options.
Error (ERR) and Over Current (OC) LEDs: Error LED glows when Under-Voltage Lockout (Input Voltage less than 7V).Overcurrent LEDs glow due to current greater than 35 AMP.
RC Input: 2 channel Radio Controller receiver connected to these pins.
Refer the below table to set the DIP switch settings for each mode and the function for the input pin,
|MOTOR DRIVER MODES|
|0 0 – RC|
|0 1 – ANALOG|
|1 0 – PWM|
|SERIAL||0 0 – 9600 0 1 – 19200|
1 0 – 38400 1 1 – 57600
|1 1 – SERIAL|
1.SmartElex 15D Smart Motor Driver
4.Battery(12V)-(Forgiving Power supply to the Motor Driver)
5.Flysky FS-i6X 2.4GHz 6CH AFHDS 2A RC Transmitter with FS-iA10B 2.4ghZ 10CH Reciever
Connections and wiring:
Fig1.3 connection Diagram
How to operate the Motor in RC Mode:
SmartElex 15D is used with power supplies or batteries. The input power is connected to the center power terminals to the motor driver pins VIN and GND with the input voltage range 7V to 28V. The input current is dependent on the motors being used and the load placed upon them. Using undersized wire will lead to the wire getting hot, and can lead to elevated temperatures on the SmartElex 30D as well.
The main power connections to the SmartElex 15D are on the rear edge of the board. Connections made for large black screw terminals. These terminals will accept 10 to 28 gauge wire. Using stranded wire it is possible to run twinned 10 gauge wire connections to the battery terminals. This is often a good idea if your design will be running both motors near or above the 15 amp continuous limit. For the motor connections, single 12 gauge wires should be sufficient for all applications.
Now after the power connection to the SmartElex 15D motor driver connect the FS-iA10B 2.4ghZ 10CH Reciever module to the RC channels of the SmartElex motor driver as shown below Fig1.0. Now next step is to bind the Transmitter with Reciever.
How to Bind the Transmitter with the Receiver Module:
Process of binding Flysky FS-i6X 2.4GHz 6CH AFHDS 2A RC Transmitter with FS-iA10B 2.4ghZ 10CH Reciever is given below:
1. Power on the receiver while holding the bind button. If the receiver led is flashing it means it has entered bind mode.
After the successful binding, the transmitter will automatically the transmitter will return to the previous menu. If the binding is successful the receivers LED will stop flashing and remain solid.
3. Check if all the model and receiver work as expected. If anything does not work as expected restart this procedure from the beginning.
After the binding move, the throttle of the transmitter to operating the motor in forward and reverse direction.
Fig 1.4 Connection Diagram of RC receiver and motor with SmartElex 15D