Для этого нам потребуется;
1. Микроконтроллер, в нашем примере Ардуино уно.
2. Двигатель с источником питания.
3. Потенциометр.
4. Модуль драйвера двигателя, у нас это модуль драйвера IRF520 MOSFET
5. Библиотека HCMotor
6. Расходники (макетная плата, провода...)
7. Желание что то сделать и прямые руки
Собираем схему по вышеприведенной картинке и залив скетч
Код: Выделить всё
/* Include the library */
#include "HCMotor.h"
/* Установите контакт, который будет управлять двигателем. Обратите внимание, что это не обязательно должен быть штырь PWM -
Любой цифровой штырь будет делать!*/
#define MOTOR_PIN 7
/* Установите аналоговый вывод, по которому потенциометр будет подключен к. */
#define POT_PIN A0
/* Создать экземпляр библиотеки */
HCMotor HCMotor;
void setup()
{
/* Initialise the library */
HCMotor.Init();
/* Присоедините двигатель 0 к цифровому выходу 7. Первый параметр указывает
Номер двигателя, второй - тип двигателя, а третий -
Цифровой штырь, который будет управлять двигателем */
HCMotor.attach(0, DCMOTOR, MOTOR_PIN);
/* Установите рабочий цикл сигнала PWM с шагом 100uS.
Здесь 100 x 100uS = 1mS рабочий цикл. */
HCMotor.DutyCycle(0, 100);
}
void loop()
{
int Speed;
/* Прочтите аналоговый вывод, чтобы определить положение ручки регулятора. Карта
Функция принимает это значение, которое может быть где угодно между 0 - 1024
И уменьшает его до соответствия диапазону рабочего цикла 0 - 100 */
Speed = map(analogRead(POT_PIN), 0, 1024, 0, 100);
/* Установите время включения рабочего цикла в соответствии с положением ручки регулятора. */
HCMotor.OnTime(0, Speed);
}
проверяем работоспособность нашей поделки.