View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000211 | Microcontrollers, shields, automation, arduino | [All Projects] General | public | 2017-02-20 15:05 | 2021-03-02 22:54 |
Reporter | DigitalMy | ||||
Priority | normal | Severity | major | Reproducibility | N/A |
Status | assigned | Resolution | open | ||
Summary | 0000211: Control DC motors (fans) powered by 12V with ESP8266 modules | ||||
Description | There are motor shields available, but they fit ATMEL only (5V) Currently in wSmartHome we use 3.3V levels from ESP8266 chip. Need to modify motor controller for 3.3V logic. Possibly use MOSFET. | ||||
Tags | No tags attached. | ||||
|
Tested MOS module IRF520. Power source is 12V DC 5A.max. On 3.3V signal it gives 5.2V to load. On 5.0V signal it gives 12.0V to load. ESP8266, as follows, can give 1.0V.max. Need level shifting. Found that ESP8266 chip pin A0 (ADC) cannot give any OUTPUT value. So, it is only analog input. |
|
Tested Adafruit v1 motor control shield for arduino UNO (has 13CNONK SN74HC595N chip + two L293D drivers), with Wemos D1 R2 main board (3.3V levels). Power supply connect to main board 12V 2A.max used. Jumper installed on the shield. Shield pinout: Side A, 2*6P: Analog pins are not connected (6 pins: A0-A5, num A00-A05) - not supported by ESP8266. VIN 09-12V (num A06) goes to jumper, power for motors. GND (num A07-A08), joined. 05V (num A09), power for chip(s). 3.3V (num A10) not connected. Reset (num A11) - has button. Side D, 2*8P: D00=RX=GPIO03, not connected D01=TX=GPIO01, not connected D02=IO=GPIO16, not connected D03=IO,SCL=GPIO05, to IC1 p09 (L293D) =EN M2 D04=IO,SDA=GPIO04, to IC3 p11 (74HC595) =SRCLK D05=IO,SCK=GPIO14, to IC2 p01 (L293D) =EN M4 D06=IO,MISO=GPIO12, to IC2 p09 (L293D) =EN M3 ->REASSIGN D07=IO,MOSI=GPIO13, to IC3 p13 (74HC595) =OE D08=IO,Pull-up=GPIO00, to IC3 p14 (74HC595) =SER D09=IO,pull-up,BUILTIN_LED=GPIO02, to servo2 S-pin D10=IO,pull-down,SS=GPIO15, to servo1 S-pin D11=MOSI=GPIO13, to IC1 p01 (L293D) =EN M1 ->REASSIGN D12=MISO=GPIO12, to IC3 p12 (74HC595) =RCLK D13=SCK=GPIO14, not connected D14=GND D15= unused, not connected So, original shield cannot be used on D1 R2 without modification, because GPIO13 and GPIO12 used twice (paralleled). Mods: Cut off D11 pin. Solder IC1-p01 to D09 pin instead. Cut off D06 pin. Solder IC2-p09 to D02 pin instead. |
|
Tested M2: Set max PWM=255 IC3-p04 (74HC595) -> IC1-p10 (L293D) ~ 4.3V IC1-p09 (L293D) ~ 0.82V 1kHz M2(+) ~ 3.5V , but expected 12V 12V goes from supply to IC1-p08 and IC2-p08 (L293D) noly (motor power load), but p16 is powered with 5.0V (chip power). Motor makes sound. Input voltage is too low. |
|
Next: solder Pololu socket over D1 mini shield. Make common power from 12V DC in. github.com DMSMDS On Mega2560 found SMD fuse "504S", on scheme L1812, line +5V. |
|
Tested ESP12E motor shield (with NodeMcu 1.0 type board), it has L293DD driver with "special" connection to pins: a row of IC - below driver: R1 = 010 = 1 Ohm - pin.11 of L293DD (enable B) to "GND"; R2 = 102 = 1 kOhm - enable B to "D2" pin - PWM B; T3 = switch for direction: 6pins: to "D3" + pin.2 of L293DD (input A-), to "D4" + pin.12 of L293DD (input B+), to 3.3V, to GND, to pin.19 of L293DD (input B-), to pin.9 of L293DD (input A+); R4 = 010 = 1 Ohm - pin.1 of L293DD (enable A) to GND R5 = 102 = 1 kOhm - pin.1 of L293DD (enable A) to "D1" pin - PWM A R6 = 202 = 2 kOhm - from +5V pin.20 of L293DD to LED on shield (not related to motor drive). GPIO0: Motor_A DirA, "D3", (button FLASH) GPIO5: Motor_A PWMA, "D1" GPIO2: Motor_B DirB, "D4" GPIO4: Motor_B PWMB, "D2" Board may be soldered wrong, in my case resistors do not fit original scheme (which is not published), so motor driver L293DD got no EN powers necessary for work (both PWM pins), there must be 010 SMD resistors to ground (1 Ohm), position R1 and R4 in a row below driver chip. Pin 3.3V near D4 must be powered up - it is connected to "T3". Enable pins will get from 0V to 3.3V*1/1001=0.003V... so, removed these resistors R1 and R4 - it started . |
|
|
|
NodeMcu_L293DD_motor_shield_R.png (811,742 bytes) |