Carte de clic pour moteur à courant continu 16
Carte de clic pour moteur à courant continu 16
Le DC Motor 16 Click Board™ est une carte complémentaire compacte qui contient un variateur de moteur CC réversible monophasé hautes performances avec contrôle de vitesse. Cette carte comprend le ZXBM5210, une solution de variateur de moteur CC complète avec une capacité de courant moyenne allant jusqu'à 700 mA de Diodes Incorporated. Le ZXBM5210 dispose de plusieurs modes de fonctionnement sélectionnés par deux broches GPIO, d'une large plage de tension d'alimentation de 3 V à 18 V et d'une faible consommation d'énergie. Il possède trois modes de contrôle de vitesse et offre une protection contre les sous-tensions/surtensions, une limite de surintensité et une capacité d'arrêt thermique. Ce Click Board™ convient à un variateur de moteur et d'actionneur CC réversible, aux applications de jouets motorisés télécommandés, aux appareils électroménagers, aux outils électriques portatifs et bien d'autres.
Le DC Motor 16 Click Board™ est pris en charge par une bibliothèque compatible mikroSDK, qui comprend des fonctions qui simplifient le développement logiciel. Ce Click Board™ est un produit entièrement testé, prêt à être utilisé sur un système équipé de la prise mikroBUS™.
How Does The DC Motor 16 Click Board™ Work?
The DC Motor 16 Click Board™ is based on the ZXBM5210, a single chip solution for driving a single-coil reversible direct current (DC) fans and motors from Diodes Incorporated. The driver output stage is designed to minimize audible switching noise and electromagnetic interference (EMI) ensuring a low noise solution. The device has four motor operation modes:
- Standby
- Forward
- Reverse
- Brake Mode
These four modes are controlled by the FWD and REV pins routed to the RST and PWM pins of the mikroBUS™ used for controlling the motor rotation directions. In the Standby mode, all the internal circuits are turned off to minimize power consumption, while the Brake mode allows the motor to stop quickly. The power consumption in the Standby mode is less than in the Brake mode. To prevent the ZXBM5210 from entering the Standby mode during mode changes, the signal change should be completed within 125μs.
The ZXBM5210 also possesses three modes of motor speed control: VREF speed control mode, PWM speed control mode, and motor speed control by adjusting the supply voltage. Motor speed can be controlled by adjusting the duty cycle of the PWM signal while keeping the supply voltage pin at the nominal motor voltage or can be controlled by varying the supply voltage while the FWD and REV pins are set to either a logic high or low depending on needed motor direction. In PWM Mode the input voltage on the Vref pin of the ZXBM5210 must be greater than or equal to the supply voltage value.
The motor speed of the ZXBM5210 can be controlled by adjusting the DC voltage on the Vref pin. For this purpose, the DC Motor 16 Click Board™ employs the MCP4161 digital potentiometer from Microchip, which allows setting the corresponding voltage value via the SPI serial interface. The potentiometer terminal B is fixed to the Zero-Scale wiper value (which corresponds to a wiper value of 0x00 for both 7-bit and 8-bit devices), while the potentiometer terminal A is fixed connected to the Full-Scale wiper value (which corresponds to a wiper value of 0x100 for 8-bit devices or 0x80 for 7-bit devices). For this reason, it was chosen that when the user selects 0x100 as the desired value, the value on the Vref pin takes the value of supply voltage from the mikroBUS™ (VCC), while in the case of selecting 0x00 on the Vref pin value is equal to the 0.2*VCC. In this mode, FWD and REV pins are only used for direction control, and therefore high-frequency PWM control signal should not be applied to those pins.
The DC Motor 16 Click Board™ is designed to be operated with both 3.3V and 5V logic voltage levels that can be selected via VCC SEL jumper. This allows for both 3.3V and 5V capable MCUs to use the SPI communication lines properly. However, the Click board™ comes equipped with a library that contains easy to use functions and an example code that can be used as a reference for further development.
SPECIFICATIONS
Type | Brushed |
Applications | Can be used for a reversible DC motor and actuator drive, remote control motorized toy applications, home appliances, handheld power tools, and many more. |
On-board modules | The DC Motor 16 Click Board™ is based on the ZXBM5210, a single chip solution for driving a single-coil reversible direct current (DC) fans and motors from Diodes Incorporated. |
Key Features | Low power consumption, wide supply voltage range, under/over voltage protection, over current limit, thermal shutdown capability, and many more. |
Interface | GPIO,SPI |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Input Voltage | 3.3V or 5V |
PINOUT DIAGRAM
This table shows how the pinout onf the DC Motor 16 Click Board™ corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | REV | Reverse Direction PWM Control Signal |
|
Forward Direction | FWD | 2 | RST | INT | 15 | NC | |
SPI Chip Select | CS | 3 | CS | RX | 14 | NC | |
SPI Clock | SCK | 4 | SCK | TX | 13 | NC | |
NC | 5 | MISO | SCL | 12 | NC | ||
SPI Data IN | SDI | 6 | MOSI | SDA | 11 | NC | |
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | 5V | Power Supply |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
JP1 | VCC SEL | Left | Power Supply Voltage Selection 3V3/5V: Left position 3V3, Right position 5V |
DC MOTOR 16 CLICK ELECTRICAL SPECIFICATIONS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
External Supply Voltage | 3 | - | 18 | V |
FWD and REV Pin Voltage | -0.3 | - | 7 | V |
Maximum Output Current | - | 700 | 1200 | mA |
PWM Speed Control Signal Frequency | 8 | 25 | 100 | kHz |
Operating Temperature Range | -40 | - | +85 | °C |
Software Support
We provide a library for the DC Motor 16 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers all the necessary functions to control the DC Motor 16 Click Board™. There are functions for controlling motor speed, direction, starting and stoping.
Key Functions
void dcmotor16_set_direction( uint8_t dir )
- Set motor directionvoid dcmotor16_ctrl_vref( uint16_t value )
- Control motor VRef (speed)void dcmotor16_stop( void )
- Motor stop
Example Description
The application is composed of three sections :
- System Initialization - Initialization SPI module and all necessary GPIO pins
- Application Initialization - Initialization driver init
- Application Task - Start motor example with change motor direction and speed
void application_task ( ) { uint16_t cnt; mikrobus_logWrite( ">> Motor start with direction [FORWARD] <<", _LOG_LINE ); dcmotor16_set_direction( DCMOTOR16_DIR_FORWARD ); for( cnt = 0; cnt <= 0x0100; cnt+= 25 ) { dcmotor16_ctrl_vref( cnt ); Delay_ms( 250 ); } Delay_ms( 2000 ); mikrobus_logWrite( ">> Motor stop ", _LOG_LINE ); dcmotor16_stop(); Delay_ms( 1000 ); mikrobus_logWrite( ">> Motor start with direction [BACKWARD] <<", _LOG_LINE ); dcmotor16_set_direction( DCMOTOR16_DIR_BACKWARD ); for( cnt = 0; cnt <= 0x0100; cnt+= 25 ) { dcmotor16_ctrl_vref( cnt ); Delay_ms( 250 ); } Delay_ms( 2000 ); mikrobus_logWrite( ">> Motor stop ", _LOG_LINE ); dcmotor16_stop(); Delay_ms( 1000 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI Library
- UART Library
Additional Notes and Information
Depending on the development board you are using, you may need a USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The DC Motor 16 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Software Support
We provide a library for the DC Motor 16 Click Board™ on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers all the necessary functions to control the DC Motor 16 Click Board™. There are functions for controlling motor speed, direction, starting and stoping.
Key Functions
void dcmotor16_set_direction( uint8_t dir )
- Set motor directionvoid dcmotor16_ctrl_vref( uint16_t value )
- Control motor VRef (speed)void dcmotor16_stop( void )
- Motor stop
Example Description
The application is composed of three sections :
- System Initialization - Initialization SPI module and all necessary GPIO pins
- Application Initialization - Initialization driver init
- Application Task - Start motor example with change motor direction and speed
void application_task ( ) { uint16_t cnt; mikrobus_logWrite( ">> Motor start with direction [FORWARD] <<", _LOG_LINE ); dcmotor16_set_direction( DCMOTOR16_DIR_FORWARD ); for( cnt = 0; cnt <= 0x0100; cnt+= 25 ) { dcmotor16_ctrl_vref( cnt ); Delay_ms( 250 ); } Delay_ms( 2000 ); mikrobus_logWrite( ">> Motor stop ", _LOG_LINE ); dcmotor16_stop(); Delay_ms( 1000 ); mikrobus_logWrite( ">> Motor start with direction [BACKWARD] <<", _LOG_LINE ); dcmotor16_set_direction( DCMOTOR16_DIR_BACKWARD ); for( cnt = 0; cnt <= 0x0100; cnt+= 25 ) { dcmotor16_ctrl_vref( cnt ); Delay_ms( 250 ); } Delay_ms( 2000 ); mikrobus_logWrite( ">> Motor stop ", _LOG_LINE ); dcmotor16_stop(); Delay_ms( 1000 ); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI Library
- UART Library
Additional Notes and Information
Depending on the development board you are using, you may need a USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
The DC Motor 16 Click Board™ is supported with mikroSDK - MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
Carte de clic pour moteur à courant continu 16
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.