HS-F10L-B Dual Channel MOC Motor Driver Module

HS-F10L-B Dual Channel MOC Motor Driver Module

1. Introduction

This is a motor driver board developed for the Lego technology building block motor and steering motor, compatible with most Lego motors, and also supports Lego battery power supply.You can control the rotation and stop of the Lego motor through the high and low levels of the two IO ports of the microcontroller, and you can also control the Lego steering motor. By switching the high and low levels of the two IO ports, you can achieve forward and reverse rotation.You can also use PWM pulse width to adjust the motor speed, the motor cannot rotate when the voltage is below a certain value.

2. Schematic

MOC dual motor driver board-HS-F10L-B schematicClick to view

Module Parameters

Pin Name

description

G

GND (Negative Power Input)

V

VCC (Positive Power Input)

B2

Motor B signal pin

B1

Motor B signal pin

A2

Motor A signal pin

A1

Motor A signal pin

  • Supply Voltage: 5V-9V

  • Connection Type: 2.54 pin 4P Dupont Wire

  • Installation method: double screw fixing/Lego assembly

4, Circuit Board Size

5 of Arduino IDE example program

Attention: If prompted with an error message about the library file during program upload, please import the library file first!
Arduino IDE Library Download and Import Tutorial:
Click to view

Example program (UNO development board):

void setMotor8833(int speedpin, int dirpin, int speed) {
  if (speed == 0) {
    digitalWrite(dirpin, LOW);
    analogWrite(speedpin, 0);
  } else if (speed > 0) {
    digitalWrite(dirpin, LOW);
    analogWrite(speedpin, speed);
  } else {
    digitalWrite(dirpin, HIGH);
    analogWrite(speedpin, 255 + speed);
  }
}

void procedure2() {
}

void procedure() {
}

void setup(){
  pinMode(5, OUTPUT);
  pinMode(4, OUTPUT);
  digitalWrite(5, LOW);
  digitalWrite(4, LOW);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
}

void loop(){
  setMotor8833(5, 4, 200);
    setMotor8833(6, 7, 200);
  delay(3000);
  setMotor8833(5, 4, 0);
    setMotor8833(6, 7, 0);
  delay(1000);
  setMotor8833(5, 4, -200);
    setMotor8833(6, 7, -200);
  delay(3000);
  setMotor8833(5, 4, 0);
    setMotor8833(6, 7, 0);
  delay(1000);

}

6, ESP32 Python Example (for Mixly IDE/Misashi)

Choose the development board Python ESP32 [ESP32 Generic(4MB)] and upload in code mode

Attention: If prompted with an error message about the library file during program upload, please import the library file first!
Download and import tutorial for Mixly IDE ESP32 library:
Click to view

Example program (ESP32-Python):

import machine
import time

pin12 = machine.Pin(12, machine.Pin.OUT)
pin13 = machine.Pin(13, machine.Pin.OUT)
pin14 = machine.Pin(14, machine.Pin.OUT)
pin15 = machine.Pin(15, machine.Pin.OUT)
while True:
pin12.value(1)
pin13.value(0)
pin14.value(1)
pin15.value(0)
time.sleep(2)
pin12.value(1)
pin13.value(0)
pin14.value(0)
pin15.value(1)
time.sleep(2)
pin12.value(0)
pin13.value(1)
pin14.value(1)
pin15.value(0)
time.sleep(2)
pin12.value(0)
pin13.value(1)
pin14.value(0)
pin15.value(1)
time.sleep(2)

7, Mixly example program (graphical language)

Example program (UNO development board):Click to download
Attention: If prompted with an error message about the library file during program upload, please import the library file first!
Download and import tutorial of Mixly IDE Arduino library:Click to view

Example Program (ESP32 Development Board):Click to download
Attention: If prompted with an error message about the library file during program upload, please import the library file first!
Download and import tutorial for Mixly IDE ESP32 library:
Click to view

8. Setting up the Test Environment

Arduino UNO Test Environment Setup

Prepare Components:

  • HELLO STEM UNO MOC PRO Development Board *1

  • USB TYPE-C DATA CABLE *1

  • LEGO motor *2

  • LEGO battery box *1

  • 10cm LEGO extension wire *1

  • 20cm LEGO extension wire *1

  • Motor drive module (HS-F10L-B) *1

  • 2.54 pitch 4P dual head DuPont wire

Circuit wiring diagram:

ESP32 Test Environment Setup

Prepare Components:Pending update...

Circuit wiring diagram:Pending update...

9, Video tutorial

Arduino UNOVideo tutorial:Click to view

ESP32 Python Video Tutorial:Pending update...

10, Test results

Arduino UNO Test Conclusion:

After the device is connected and the program is uploaded to the Arduino UNO development board, it will be found that the motor will rotate for 2 seconds and stop for 2 seconds and then continue to cycle.Now you must have mastered the basic theory and programming of DC motors.You can not only make it go forward and backward, but also adjust its speed.In addition, you can use the knowledge you have learned to make more wonderful applications.

ESP32 Python test conclusion: